/* Chart workspace. Shared tokens also keep library and deployment surfaces coherent. */
:root {
  --bg-near-black: #07080c;
  --bg-card: #0e1017;
  --bg-card-elevated: #151822;
  --border-subtle: #242936;
  --text-body: #c9ceda;
  --text-muted: #858d9f;
  --text-headline: #f5f7fb;
  --lume-ice: #ddf7ff;
  --lume-glacier: #80c5ff;
  --lume-blue: #397ed8;
  --lume-cobalt: #245cc6;
  --lume-navy: #102a66;
  --accent-blue: var(--lume-glacier);
  --accent-violet: var(--lume-blue);
  --accent-cyan: #40e0d0;
  --gradient-hero: linear-gradient(105deg, var(--lume-glacier) 0%, var(--lume-blue) 52%, var(--lume-navy) 100%);
  --gradient-action: linear-gradient(120deg, var(--lume-blue) 0%, var(--lume-cobalt) 58%, var(--lume-navy) 100%);
  --gradient-surface: linear-gradient(135deg, rgba(128,197,255,.10), rgba(57,126,216,.08) 52%, rgba(16,42,102,.06));
  --shadow-float: 0 24px 70px rgba(0,0,0,.55), 0 0 0 1px rgba(255,255,255,.025) inset;
}

html, body { color-scheme: dark; overflow:hidden; }
select, option { color-scheme: dark; background-color:#11141c; color:#e4e9f2; }
.toolbar-popover, dialog, #main, #chat-panel, #strategy-editor { color-scheme: dark; }

/* Scrollbars are workspace chrome: quiet at rest, discoverable on hover, and
   consistent across the chart, drawers, editors, tables, and result panels. */
* {
  scrollbar-width: thin;
  scrollbar-color: #536078 #090b11;
}
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-track {
  background: #090b11 !important;
  border-left: 1px solid rgba(255,255,255,.025);
}
*::-webkit-scrollbar-thumb {
  min-height: 42px;
  border: 2px solid #090b11;
  border-radius: 999px;
  background: linear-gradient(180deg,#506274,#39577a) !important;
  box-shadow: inset 0 0 0 1px rgba(151,220,255,.08);
}
*::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg,#66bfe8,#397ed8) !important;
  box-shadow: 0 0 10px rgba(78,196,230,.22),inset 0 0 0 1px rgba(224,246,255,.14);
}
*::-webkit-scrollbar-thumb:active { background: linear-gradient(180deg,#80c5ff,#245cc6) !important; }
*::-webkit-scrollbar-button { display:none !important; width:0 !important; height:0 !important; background:#090b11 !important; }
*::-webkit-scrollbar-corner { background:#090b11; }
.toolbar-popover {
  scrollbar-width:thin !important;
  scrollbar-color:#59667d #0a0d14 !important;
}
.toolbar-popover::-webkit-scrollbar { width:8px !important; height:8px !important; }
.toolbar-popover::-webkit-scrollbar-track { background:#0a0d14 !important; }
.toolbar-popover::-webkit-scrollbar-thumb {
  border:2px solid #0a0d14 !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,#596b80,#39577a) !important;
}
.toolbar-popover::-webkit-scrollbar-button { display:none !important; width:0 !important; height:0 !important; }
.timeframe-picker { flex:0 0 auto; }
#chart-toolbar #timeframe-btn { min-width:104px; justify-content:space-between; }
.toolbar-caret { margin-left:8px; color:#9aa8b9; font-size:12px; }
.timeframe-popover { width:252px; max-height:min(540px,72vh); padding:8px; }
.timeframe-search {width:100%;height:36px;margin:0 0 7px;padding:0 11px;border:1px solid #2b3e59;border-radius:8px;background:#090d15;color:#edf6ff;font:600 12px/1 inherit;outline:none;box-sizing:border-box;}
.timeframe-search:focus {border-color:#397ed8;box-shadow:0 0 0 3px rgba(57,126,216,.16);}
.timeframe-list {max-height:min(458px,62vh);overflow:auto;padding-right:2px;}
.timeframe-group {padding:11px 9px 5px;color:#71839a;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.timeframe-option {
  display:flex;align-items:center;justify-content:space-between;gap:12px; width:100%; margin:0; padding:9px 10px; border:0; border-radius:7px;
  background:transparent; color:#c8d1dc; font-size:12px; font-weight:600; text-align:left;
}
.timeframe-option:hover,.timeframe-option:focus-visible { background:#1a2634; color:#f3f8ff; }
.timeframe-option[aria-checked="true"] {
  color:#effcff; background:linear-gradient(90deg,rgba(57,126,216,.34),rgba(16,42,102,.3));
  box-shadow:inset 2px 0 #397ed8;
}
.timeframe-option kbd {color:#71839a;font:700 10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;}
.timeframe-option[aria-checked="true"] kbd {color:#a8c9ff;}
.timeframe-no-results .timeframe-list::after {content:'No supported interval matches';display:block;padding:18px 10px;color:#71839a;text-align:center;font-size:11px;}
.chart-style-picker {flex:0 0 auto;}
#chart-style-btn {min-width:94px;justify-content:flex-start;}
.chart-style-glyph {width:17px;color:#9ec5ff;font-size:14px;text-align:center;}
.chart-style-popover {width:270px;padding:7px;}
.chart-style-popover>button {display:grid;grid-template-columns:24px 1fr;grid-template-rows:auto auto;width:100%;margin:0;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:#bdc7d5;text-align:left;cursor:pointer;}
.chart-style-popover>button>span {grid-row:1/3;align-self:center;color:#7897c7;font-size:15px;text-align:center;}
.chart-style-popover>button>strong {font-size:12px;font-weight:650;color:#e6edf7;}
.chart-style-popover>button>small {font-size:9.5px;color:#728096;}
.chart-style-popover>button:hover,.chart-style-popover>button:focus-visible {background:#182333;outline:none;}
.chart-style-popover>button[aria-checked="true"] {background:linear-gradient(90deg,rgba(57,126,216,.30),rgba(16,42,102,.24));box-shadow:inset 2px 0 #397ed8;}
.chart-style-popover .chart-style-settings {margin-top:5px;border-top:1px solid rgba(255,255,255,.07);border-radius:0 0 7px 7px;}
body {
  position:relative;
  isolation:isolate;
  background:#07080c;
  background-image:
    radial-gradient(ellipse 62% 44% at 10% -12%, rgba(46,196,255,.13), transparent 68%),
    radial-gradient(ellipse 48% 38% at 92% -8%, rgba(36,92,198,.12), transparent 70%);
  background-attachment:fixed;
  font-size:13px;
}
#main {overflow-x:hidden;}
body::before {
  content:"";
  position:fixed;
  z-index:-1;
  inset:-30%;
  pointer-events:none;
  opacity:.45;
  background:
    radial-gradient(circle at 28% 32%, rgba(38,201,255,.12), transparent 22%),
    radial-gradient(circle at 68% 26%, rgba(57,126,216,.11), transparent 24%),
    radial-gradient(circle at 58% 78%, rgba(16,42,102,.09), transparent 20%);
  filter:blur(42px);
  animation:algopro-ambient-shift 22s ease-in-out infinite alternate;
}
@keyframes algopro-ambient-shift {
  0% { transform:translate3d(-2%, -1%, 0) scale(1); }
  50% { transform:translate3d(2%, 2%, 0) scale(1.05); }
  100% { transform:translate3d(1%, -2%, 0) scale(1.02); }
}
@media (prefers-reduced-motion:reduce) { body::before { animation:none; } }
button, input, select, textarea { font: inherit; }
button { transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s; }
button:hover:not(:disabled) { filter:brightness(1.09); }
button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible {
  outline: 2px solid var(--accent-blue); outline-offset: 3px;
}
button:disabled { opacity: .4; }

/* LumeCharts shell: deep neutral surfaces with a restrained glacier-blue edge. */
#topbar {
  position:relative;z-index:1200;
  background:rgba(9,10,15,.94);
  border-bottom-color:rgba(110,123,153,.22);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
  backdrop-filter:blur(18px) saturate(125%);
}
#topbar::after {
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent 5%,rgba(128,197,255,.72) 29%,rgba(36,92,198,.68) 62%,transparent 95%);
  background-size:180% 100%;
  animation:algopro-edge-flow 12s ease-in-out infinite alternate;
}
@keyframes algopro-edge-flow { from { background-position:0 0; } to { background-position:100% 0; } }
@media (prefers-reduced-motion:reduce) { #topbar::after { animation:none; } }
#brand-mark,#brand-name {
  background:var(--gradient-hero);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
#brand-name { font-weight:780;letter-spacing:-.015em; }
#rail,#chat-panel,#strategy-editor { background:rgba(12,14,20,.96); }
#main { background:rgba(7,8,12,.82); }
#chart-toolbar,#chart-range-controls,#chart-tools-bar,#results-collapse-bar {
  background:rgba(12,14,20,.90);
  backdrop-filter:blur(14px) saturate(120%);
}

/* Compact market tabs keep independent symbol, interval and tool state in one
   workspace. The strip stays visually quiet until a tab is hovered. */
#chart-tabs-bar {
  display:flex;min-height:34px;padding:0 8px;align-items:stretch;gap:2px;overflow:visible;
  border-bottom:1px solid rgba(255,255,255,.07);background:#111216;
}
#chart-tabs {display:flex;min-width:0;align-items:stretch;overflow-x:auto;scrollbar-width:none;}
#chart-tabs::-webkit-scrollbar {display:none;}
.chart-tab {position:relative;display:flex;flex:none;align-items:center;border-right:1px solid rgba(255,255,255,.055);}
.chart-tab-select {
  display:flex;min-width:126px;max-width:220px;height:33px;padding:0 28px 0 9px;align-items:center;gap:6px;border:0;
  background:transparent;color:#8f949e;font-size:10.5px;cursor:pointer;
}
.chart-tab-select:hover {background:rgba(255,255,255,.035);color:#dfe1e6;}
.chart-tab-select[aria-selected="true"] {background:#191a1f;color:#f0f1f4;box-shadow:inset 0 -2px #5ebee4;}
.chart-tab-mark {display:grid;width:15px;height:15px;place-items:center;border-radius:50%;background:#353953;color:#b9c8ff;font-size:7px;}
.chart-tab-select strong {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:720;}
.chart-tab-select small {color:#737984;font-size:9px;}
.chart-tab-close {position:absolute;right:5px;width:20px;height:20px;padding:0;border:0;border-radius:5px;background:transparent;color:#727883;opacity:0;cursor:pointer;}
.chart-tab:hover .chart-tab-close,.chart-tab:focus-within .chart-tab-close {opacity:1;}
.chart-tab-close:hover {background:rgba(255,255,255,.07);color:#fff;}
#chart-tab-add-wrap {position:relative;display:flex;flex:none;align-items:stretch;}
#chart-tab-add {flex:none;width:32px;height:32px;padding:0;border:0;background:transparent;color:#858b95;font-size:18px;cursor:pointer;}
#chart-tab-add:hover {background:rgba(255,255,255,.045);color:#fff;}
#chart-tab-add:disabled {opacity:.28;cursor:default;}
.chart-tab-menu {
  position:absolute;top:calc(100% + 4px);left:0;z-index:120;min-width:290px;padding:7px;
  border:1px solid #353740;border-radius:14px;background:#1b1c20;box-shadow:0 18px 46px rgba(0,0,0,.5);
}
.chart-tab-menu[hidden] {display:none!important;}
.chart-tab-menu button {
  display:grid;width:100%;min-height:40px;padding:8px 10px;grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;color:#e7e8eb;
  font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;text-align:left;cursor:pointer;
}
.chart-tab-menu button:hover,.chart-tab-menu button:focus-visible,.chart-tab-menu button[aria-expanded="true"] {
  outline:0;background:#292a30;color:#fff;
}
.chart-tab-menu button:disabled {opacity:.4;cursor:default;background:transparent;}
.chart-tab-menu-icon {display:grid;width:18px;height:18px;place-items:center;color:#c6c8ce;font-size:15px;}
.chart-tab-menu kbd {color:#979aa3;font:500 12px/1 inherit;}
.chart-tab-menu b {color:#b6b8be;font-size:19px;font-weight:500;}
.chart-tab-submenu-wrap {position:relative;}
.chart-tab-submenu {top:-7px;left:calc(100% + 8px);min-width:300px;max-height:min(420px,70vh);overflow-y:auto;}
.chart-tab-workspace-copy {display:flex;min-width:0;flex-direction:column;gap:3px;}
.chart-tab-workspace-copy strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;}
.chart-tab-workspace-copy small {color:#8f929a;font-size:11px;font-weight:500;}
.chart-tab-menu-empty {display:block;padding:12px;color:#92959d;font-size:12px;}
#chart-tab-menu,#chart-tab-workspace-menu {
  border-color:#353740!important;background:#1b1c20!important;color:#e7e8eb!important;
}
#chart-tab-menu button,#chart-tab-workspace-menu button {
  border:0!important;background:transparent!important;color:#e7e8eb!important;box-shadow:none!important;
}
#chart-tab-menu button:hover,#chart-tab-menu button:focus-visible,
#chart-tab-menu button[aria-expanded="true"],#chart-tab-workspace-menu button:hover,
#chart-tab-workspace-menu button:focus-visible {
  background:#292a30!important;color:#fff!important;
}
body:not(.product-charts) #chart-tabs-bar {display:none!important;}

/* Persistent status pills repeated information already available in market
   settings and Alerts. Only an actual chart alert may reclaim this area. */
body.workspace-chart-mode #chart-readout-change,
body.workspace-chart-mode #chart-market-state,
body.workspace-chart-mode #chart-live-actions>#live-signal-history,
body.workspace-chart-mode #chart-live-actions>#live-signal-latest,
body.workspace-chart-mode #chart-live-actions>#live-signal-alert-status {display:none!important;}
body.workspace-chart-mode #chart-live-controls:not(:has(
  #alert-toast:not([hidden]),
  #price-alerts[open],
  #live-webhook-alerts[open],
  #alert-manager[open]
)) {display:none!important;}
/* The chart already owns the current price and candle countdown on its axis.
   Do not repeat feed/source and live-price pills beside the OHLC readout.
   Alert dialogs and actionable signal controls may still use this surface. */
body.product-charts #chart-market-state {display:none!important;}
body.product-charts #chart-live-controls:not(:has(
  #chart-live-actions>#create-chart-alert:not([hidden]),
  #chart-live-actions>#signal-options:not([hidden]),
  #chart-live-actions>#alert-manager[open],
  #chart-live-actions>#live-signal-history[open],
  #alert-toast:not([hidden]),
  #price-alerts[open],
  #live-webhook-alerts[open],
  #live-signal-alert-status:not([hidden]),
  #live-signal-latest:not([hidden])
)) {display:none!important;}
#chart-toolbar {
  position:sticky;top:0;z-index:32;flex:0 0 auto;
  border-bottom:1px solid rgba(100,112,140,.18);
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.toolbar-btn,.icon-btn,.rail-btn {
  border-color:transparent;
  border-radius:8px;
  color:#aeb6c6;
}
.toolbar-btn:hover,.icon-btn:hover,.rail-btn:hover,.rail-btn.active {
  border-color:rgba(105,215,255,.28);
  background:linear-gradient(135deg,rgba(128,197,255,.11),rgba(36,92,198,.10));
  color:var(--text-headline);
  box-shadow:0 0 24px rgba(89,163,255,.08);
}
#ai-toggle,[data-primary="true"],.sb-btn.sb-primary,.lib-btn-primary,.dep-btn-primary {
  border-color:rgba(106,214,255,.55);
  background:var(--gradient-action);
  color:#fff;
  box-shadow:0 8px 24px rgba(77,100,255,.18),inset 0 1px rgba(255,255,255,.16);
}
#ai-toggle:hover,[data-primary="true"]:hover,.sb-btn.sb-primary:hover,.lib-btn-primary:hover,.dep-btn-primary:hover {
  box-shadow:0 10px 30px rgba(83,125,255,.28),0 0 20px rgba(67,215,255,.12);
}
dialog,.toolbar-popover,.chart-picker-card,.community-card,.lib-card,.dep-panel {
  box-shadow:var(--shadow-float);
}
dialog {
  border-color:rgba(116,128,158,.34)!important;
  background:linear-gradient(145deg,rgba(18,20,29,.985),rgba(9,11,17,.99))!important;
}
dialog::backdrop { background:rgba(2,3,7,.76)!important;backdrop-filter:blur(9px)!important; }
.headline-strip {
  background:linear-gradient(105deg,rgba(12,15,23,.97),rgba(19,18,31,.94));
  border-block-color:rgba(113,125,155,.20);
}
.headline-strip .hs-metrics strong,.headline-strip .hs-metrics b {
  background:var(--gradient-hero);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
#results-next-step,.strategy-chooser-paths>button:first-child {
  border-color:rgba(94,210,255,.34);
  background:var(--gradient-surface),rgba(13,16,24,.96);
}
#strategy-chooser-dialog {width:min(780px,94vw);max-width:94vw;max-height:88vh;box-sizing:border-box;padding:0;overflow:hidden;border:1px solid #3b536b;border-radius:18px;background:#101a26;color:var(--text-body);box-shadow:0 30px 100px #000b;}
#strategy-chooser-dialog::backdrop {background:#030914c9;backdrop-filter:blur(6px);}
.strategy-chooser-shell {display:flex;flex-direction:column;max-height:88vh;padding:24px;box-sizing:border-box;}
.strategy-chooser-shell header {display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;}
.strategy-chooser-shell header small {color:#6ec7e8;font-size:10px;font-weight:800;letter-spacing:.15em;}
.strategy-chooser-shell h2 {margin:5px 0 0;color:#f0f7ff;font-size:24px;letter-spacing:-.03em;}
#strategy-chooser-context {margin:-9px 0 16px;color:#9bb9cc;font-size:12px;}
#strategy-chooser-close {width:34px;height:34px;margin:0;border:1px solid #385068;border-radius:9px;background:#1a2a3b;color:#dce9f7;font-size:23px;line-height:1;}
#strategy-chooser-current {margin:-6px 0 18px;padding:12px;border:1px solid #3b7082;border-radius:11px;background:#102b37;}
#strategy-chooser-current[hidden] {display:none;}
#strategy-chooser-current h3 {margin:0 0 9px;color:#c9ebf1;font-size:12px;}
#strategy-chooser-current-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:150px;overflow-y:auto;}
#strategy-chooser-current-list button {margin:0;padding:10px 12px;border:1px solid #4d8297;border-radius:8px;background:#1d4351;color:#f0fbff;text-align:left;font-size:12px;}
.strategy-chooser-paths {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:19px;}
.strategy-chooser-paths > button {display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:62px;margin:0;padding:10px 13px;border:1px solid #466482;border-radius:11px;background:linear-gradient(145deg,#1a3851,#162637);color:#eef7ff;text-align:left;}
.strategy-chooser-paths > button:first-child {grid-column:1 / -1;border-color:#549cc5;background:linear-gradient(145deg,#1b4b65,#163144);}
.strategy-chooser-paths > form {grid-column:1 / -1;display:grid;grid-template-columns:112px 120px minmax(0,1fr) auto;gap:7px;margin-top:-3px;padding:9px;border:1px solid #355b74;border-radius:10px;background:#0c1a28;}
#strategy-chooser-community {grid-column:1 / -1;}
.strategy-chooser-paths > form label {display:grid;gap:4px;min-width:0;color:#788497;font-size:8.5px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;}
.strategy-chooser-paths > form :is(select,input) {box-sizing:border-box;width:100%;min-width:0;height:36px;margin:0;padding:7px 9px;border:1px solid #3e5d76;border-radius:7px;background:#081521;color:#e2f4ff;font:inherit;letter-spacing:normal;text-transform:none;}
.strategy-chooser-paths > form button {height:36px;margin:0;padding:0 13px;border:1px solid #35a8a0;border-radius:7px;background:#176b70;color:#fff;font-size:11px;font-weight:750;white-space:nowrap;}
.strategy-chooser-paths strong {font-size:12px;line-height:1.3;}
.strategy-chooser-paths span {color:#adcae0;font-size:11px;line-height:1.35;}
.strategy-chooser-flow {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:-7px 0 19px;padding:0;list-style:none;}
.strategy-chooser-flow li {display:flex;align-items:center;gap:8px;min-width:0;padding:8px 10px;border:1px solid #2f465b;border-radius:9px;background:#0d1824;color:#aac0d2;font-size:10px;}
.strategy-chooser-flow strong {display:grid;place-items:center;flex:0 0 20px;height:20px;border-radius:50%;background:#193d55;color:#8ed2f0;font-size:10px;}
.strategy-chooser-starters {margin:-4px 0 19px;}
.strategy-chooser-starters h3 {margin:0 0 8px;color:#a9bed1;font-size:11px;font-weight:700;letter-spacing:.03em;}
.strategy-chooser-starters>div {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
.strategy-chooser-starters button {margin:0;padding:10px 12px;border:1px solid #354c61;border-radius:8px;background:#152535;color:#dbeaf8;text-align:left;font-size:12px;}
.strategy-chooser-starters button:hover {border-color:#6fadd3;background:#1c354b;}
.strategy-chooser-starters p {margin:10px 0 0;color:var(--text-muted);font-size:12px;line-height:1.4;}
.strategy-chooser-search {display:grid;gap:7px;color:#dceafa;font-size:12px;font-weight:700;}
#strategy-chooser-query {width:100%;box-sizing:border-box;margin:0;padding:10px 12px;border:1px solid #50687e;border-radius:9px;background:#0a1420;color:#eef7ff;font-weight:400;}
#strategy-chooser-count {margin:12px 0 8px;color:#9eb3c8;font-size:11px;}
#strategy-chooser-results {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:70px;overflow-y:auto;padding:2px 3px 3px 0;}
.strategy-chooser-card {display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0;padding:12px;border:1px solid #30455b;border-radius:10px;background:#172332;color:#dce8f5;text-align:left;}
.strategy-chooser-card:hover,.strategy-chooser-card:focus-visible {border-color:#72bff1;background:#1c3448;}
.strategy-chooser-card strong {color:#f0f7ff;font-size:12px;}
.strategy-chooser-card span {font-size:11px;line-height:1.4;}
.strategy-chooser-card small {margin-top:auto;color:#84c7e8;font-size:10px;}
.strategy-chooser-card:disabled {cursor:not-allowed;opacity:.68;border-color:#405060;}
.strategy-chooser-card:disabled:hover {background:#172332;border-color:#405060;}
.strategy-chooser-card:disabled small {color:#c6a778;}
@media(max-width:620px) {.strategy-chooser-shell{padding:16px}.strategy-chooser-paths{grid-template-columns:1fr}.strategy-chooser-paths > button{min-height:0}.strategy-chooser-paths > button:first-child,#strategy-chooser-community{grid-column:auto}.strategy-chooser-paths > form{grid-column:auto;grid-template-columns:1fr}.strategy-chooser-flow{grid-template-columns:1fr}.strategy-chooser-results{grid-template-columns:1fr}}
#portfolio-preview-open {margin:6px 0 0;padding:8px 10px;width:100%;font-size:11px;text-align:left;}
#portfolio-preview-dialog {width:min(900px,94vw);max-width:94vw;max-height:90vh;overflow:auto;box-sizing:border-box;padding:0;border:1px solid #35475c;border-radius:16px;background:#111a25;color:var(--text-body);box-shadow:0 28px 90px #000a;}
#portfolio-preview-dialog::backdrop {background:#020710b8;backdrop-filter:blur(5px);}
.portfolio-preview-shell {padding:clamp(18px,3vw,30px);}
.portfolio-preview-heading {display:flex;gap:16px;justify-content:space-between;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--border-subtle);}
.portfolio-preview-heading h2 {margin:3px 0 7px;font-size:25px;letter-spacing:-.03em;color:var(--text-headline);}
.portfolio-preview-heading p {margin:0;max-width:620px;color:var(--text-muted);font-size:12px;line-height:1.5;}
.portfolio-preview-eyebrow {font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#76c9e8;}
#portfolio-example-offer {margin:16px 0 0;padding:14px;border:1px solid #5b8cc5;border-radius:10px;background:#132741;}
#portfolio-example-offer[hidden] {display:none;}
#portfolio-example-offer strong {color:#e6f2ff;font-size:13px;}
#portfolio-example-offer p {margin:6px 0 9px;color:#bad0e8;font-size:11px;line-height:1.5;}
#portfolio-example-offer details {color:#bcd1e5;font-size:11px;}
#portfolio-example-offer summary {cursor:pointer;}
#portfolio-example-review {box-sizing:border-box;max-width:100%;max-height:180px;overflow:auto;white-space:pre;font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;}
#portfolio-example-offer > div {display:flex;flex-wrap:wrap;gap:8px;margin-top:11px;}
#portfolio-example-offer button {width:auto;margin:0;padding:8px 11px;font-size:11px;}
#portfolio-preview-close {margin:0;width:32px;height:32px;flex:none;}
.portfolio-preview-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:20px 0;}
.portfolio-preview-grid label,.portfolio-preview-code-label {display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--text-headline);}
.portfolio-preview-grid label span,.portfolio-preview-code-label span {font-size:11px;font-weight:400;color:var(--text-muted);}
.portfolio-preview-grid input,.portfolio-preview-grid select,#portfolio-source {min-width:0;width:100%;box-sizing:border-box;margin:0;border:1px solid #344154;border-radius:8px;background:#0b131e;color:var(--text-headline);padding:10px 11px;}
.portfolio-imported-markets {display:grid;gap:10px;margin:-5px 0 18px;padding:13px 15px;border:1px solid #3f637f;border-radius:10px;background:#10283b;}
.portfolio-imported-markets[hidden] {display:none;}
.portfolio-imported-markets strong {color:#e5f3ff;font-size:13px;}
.portfolio-imported-markets p {margin:4px 0 0;color:#a9bfd2;font-size:12px;}
.portfolio-imported-choices {display:flex;flex-wrap:wrap;gap:8px;}
.portfolio-imported-choices button {min-width:0;border:1px solid #6b9fd3;border-radius:8px;background:#1d4972;color:#f2f8ff;padding:8px 11px;font-weight:650;}
.portfolio-imported-choices button:hover {background:#2a628f;}
#portfolio-source {height:230px;resize:vertical;tab-size:4;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;}
.portfolio-preview-actions {display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:16px 0 8px;}
.portfolio-preview-actions span {font-size:11px;line-height:1.5;color:var(--text-muted);}
#portfolio-preview-run {width:auto;margin:0;padding:10px 18px;white-space:nowrap;background:#4e83dc;color:white;border-color:#6b9fff;}
.portfolio-preview-buttons {display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end;}
.portfolio-preview-buttons button {width:auto;margin:0;padding:10px 14px;white-space:nowrap;}
#portfolio-experiment-list {display:grid;gap:7px;margin:10px 0;padding:12px;border:1px solid #35475c;border-radius:10px;background:#0d1724;}
#portfolio-experiment-list[hidden] {display:none;}
#portfolio-experiment-list button {width:100%;margin:0;padding:9px 11px;text-align:left;border:1px solid #35475c;border-radius:7px;background:#18273a;color:var(--text-headline);}
#portfolio-experiment-list p {margin:0;color:var(--text-muted);font-size:12px;}
.portfolio-experiment-row {display:flex;align-items:center;gap:9px;min-width:0;}
.portfolio-experiment-row input {flex:none;width:17px;height:17px;accent-color:#6ab9ff;}
.portfolio-experiment-row button {flex:1;min-width:0;}
.portfolio-comparison {overflow:auto;color:var(--text-body);font-size:12px;}
.portfolio-comparison h3 {margin:6px 0 8px;font-size:14px;color:var(--text-headline);}
.portfolio-comparison p {margin:6px 0 10px!important;line-height:1.5;}
.portfolio-comparison table {width:100%;border-collapse:collapse;white-space:nowrap;}
.portfolio-comparison th,.portfolio-comparison td {padding:7px 9px;border-bottom:1px solid #35475c;text-align:right;}
.portfolio-comparison th:first-child,.portfolio-comparison td:first-child {text-align:left;}
.portfolio-variant-tester {margin-top:18px;padding:15px;border:1px solid #365879;border-radius:10px;background:#102438;}
.portfolio-variant-tester h3 {margin:0 0 6px;font-size:15px;color:var(--text-headline);}
.portfolio-variant-tester p {margin:0 0 12px;color:var(--text-body);font-size:12px;line-height:1.5;}
.portfolio-variant-controls {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.portfolio-variant-controls select,.portfolio-variant-controls input {min-width:145px;flex:1 1 180px;}
.portfolio-variant-controls button {flex:0 0 auto;}
#portfolio-preview-result .portfolio-save, #portfolio-preview-result .portfolio-replay {width:auto;margin:14px 9px 0 0;padding:10px 14px;border:1px solid #70b8e0;border-radius:8px;background:#244365;color:#e4f1ff;font-weight:700;}
.chat-msg .portfolio-use-source {display:block;width:auto;max-width:100%;margin:12px 0 0;padding:8px 11px;border:1px solid #70b8e0;border-radius:7px;background:#244365;color:#e4f1ff;font-size:11px;font-weight:700;white-space:normal;text-align:left;}
#chat-messages .chat-msg[hidden] {display:none;}
#watchlist-strip {display:flex;align-items:center;gap:10px;min-width:0;min-height:42px;box-sizing:border-box;
  padding:5px 15px;border-bottom:1px solid #25354a;background:linear-gradient(90deg,#131f2e,#101923 55%,#101820);}
#watchlist-strip[hidden] {display:none;}
#watchlist-title {flex:none;color:#9db1ca;font-size:10px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;}
#watchlist-star {display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;margin:0;padding:0;
  border:1px solid #334b69;border-radius:7px;background:#182a40;color:#bad0e9;font-size:17px;line-height:1;white-space:nowrap;}
#watchlist-star span {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
#watchlist-star:hover:not(:disabled) {border-color:#79a7ee;background:#223a58;color:#eaf3ff;}
#watchlist-star[aria-pressed="true"] {border-color:#6f9de2;background:#20395a;color:#d8e9ff;}
#watchlist-star:disabled {opacity:.55;cursor:default;}
#watchlist-symbols {display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:thin;}
.watchlist-empty {color:#7f95ac;font-size:11px;white-space:nowrap;}
.watchlist-item {display:inline-flex;align-items:center;flex:none;border:1px solid #2b415b;border-radius:7px;background:#152436;overflow:hidden;}
.watchlist-item:has(.watchlist-open[aria-current="true"]) {border-color:#80adf3;background:#244164;box-shadow:inset 0 -2px #83b4ff;}
.watchlist-item button {width:auto;margin:0;border:0;border-radius:0;background:transparent;color:#b6cee8;font-size:11px;font-weight:650;}
.watchlist-item .watchlist-open {padding:6px 8px 6px 10px;}
.watchlist-item .watchlist-remove {padding:5px 7px;color:#849ab2;font-size:15px;line-height:1;}
.watchlist-item button:hover {background:#304b6c;color:#fff;}
#watchlist-strip button:focus-visible,#watchlist-star:focus-visible {outline:2px solid #8db7ff;outline-offset:-2px;}
#watchlist-status {flex:none;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a8c6eb;font-size:11px;}
#watchlist-status:empty {display:none;}
@media(max-width:760px) {#watchlist-title {display:none;}#watchlist-strip {gap:6px;padding-inline:10px;}#watchlist-status {max-width:110px;}}
.portfolio-proposal-card p {margin:8px 0;color:var(--text-body);line-height:1.5;}
.portfolio-proposal-card pre {white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;}
#portfolio-preview-status {min-height:22px;margin:8px 0 0;font-size:12px;color:#acd8ee;line-height:1.5;}
#portfolio-preview-status.is-error {color:#ff9aa8;}
#portfolio-preview-result .portfolio-discuss {display:block;width:auto;margin:16px 0 0;padding:10px 15px;border:1px solid #6b9fff;border-radius:8px;background:#243d62;color:#e4f1ff;font-weight:700;}
#portfolio-preview-result .portfolio-discuss:hover {background:#31517e;}
#portfolio-preview-result {margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle);}
.portfolio-metrics {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.portfolio-metric {padding:13px;border:1px solid #2b394b;border-radius:10px;background:#162130;}
.portfolio-metric span {display:block;font-size:10px;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;}
.portfolio-metric strong {display:block;margin-top:6px;font-size:20px;letter-spacing:-.02em;color:var(--text-headline);font-variant-numeric:tabular-nums;}
.portfolio-metric strong.positive {color:#62d3ac;}.portfolio-metric strong.negative {color:#ff9aa8;}
.portfolio-equity {margin-top:13px;padding:12px;border:1px solid #2b394b;border-radius:10px;background:#0b131e;}
.portfolio-equity-title {display:flex;justify-content:space-between;color:var(--text-muted);font-size:11px;margin-bottom:7px;}
.portfolio-equity-controls {display:inline-flex;flex-wrap:wrap;max-width:100%;gap:3px;margin:0 0 9px;padding:3px;border:1px solid #2b394b;border-radius:8px;background:#121e2c;}
.portfolio-equity-controls button {width:auto;flex:none;margin:0;border:0;border-radius:5px;background:transparent;color:var(--text-muted);padding:5px 11px;font:inherit;font-size:11px;white-space:nowrap;cursor:pointer;}
.portfolio-equity-controls button:hover {color:var(--text-headline);background:#203047;}
.portfolio-equity-controls button.is-active {color:#eaf4ff;background:#304c74;box-shadow:0 1px 4px #050c18a8;}
.portfolio-equity-controls button:focus-visible {outline:2px solid var(--accent-blue);outline-offset:2px;}
.portfolio-equity svg {display:block;width:100%;height:145px;overflow:visible;}
.portfolio-path-legend {display:flex;flex-wrap:wrap;align-items:center;gap:5px 14px;margin:7px 10px 0;color:#bcd1e5;font-size:10px;}
.portfolio-path-legend[hidden] {display:none;}
.portfolio-path-legend small {color:#92a8bf;font-size:10px;}
.portfolio-path-key {display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.portfolio-path-key::before {content:"";display:inline-block;width:16px;border-top:2px solid var(--net-line,#62d3ac);}
.portfolio-path-key.gross::before {border-color:#7eb5ff;border-top-style:dashed;}
.portfolio-exposure-legend {display:flex;flex-wrap:wrap;gap:5px 14px;margin:7px 10px 0;color:#a9bdd2;font-size:10px;}
.portfolio-exposure-legend[hidden] {display:none;}
.portfolio-exposure-legend small {font-size:10px;color:#92a8bf;}
.portfolio-exposure-legend span {display:inline-flex;align-items:center;gap:6px;}
.portfolio-exposure-legend i {display:inline-block;width:9px;height:9px;border-radius:2px;}
.portfolio-preview-detail {display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:13px;}
.portfolio-equity-readout {margin:5px 12px 0;color:#acd8ee;font-size:11px;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.portfolio-preview-detail > div {padding:12px;border:1px solid #2b394b;border-radius:10px;background:#162130;min-width:0;}
.portfolio-preview-detail h3 {margin:0 0 7px;font-size:12px;color:var(--text-headline);}
.portfolio-preview-detail p {margin:4px 0;color:var(--text-muted);font-size:11px;line-height:1.5;overflow-wrap:anywhere;}
.portfolio-fill-ledger {margin-top:13px;border:1px solid #2b394b;border-radius:10px;background:#101925;}
.portfolio-fill-ledger summary {padding:12px 14px;cursor:pointer;color:#c5dcf6;font-size:12px;font-weight:700;}
.portfolio-fill-scroll {overflow-x:auto;max-width:100%;border-top:1px solid #2b394b;}
.portfolio-fill-scroll table {width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;}
.portfolio-fill-scroll th,.portfolio-fill-scroll td {padding:9px 11px;text-align:right;border-bottom:1px solid #263447;}
.portfolio-fill-scroll th:first-child,.portfolio-fill-scroll td:first-child {text-align:left;}
.portfolio-fill-scroll th {color:var(--text-muted);font-weight:700;background:#132032;position:sticky;top:0;}
.portfolio-fill-scroll tr:last-child td {border-bottom:0;}
@media(max-width:620px) {.portfolio-preview-grid,.portfolio-preview-detail {grid-template-columns:1fr;}.portfolio-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}.portfolio-preview-actions {align-items:stretch;flex-direction:column;}.portfolio-preview-buttons {flex-direction:column;}.portfolio-preview-buttons button {width:100%;}.portfolio-equity-title {flex-direction:column;gap:4px;}}
#chat-input-row {align-items:flex-end;}
#chat-input {min-width:0;box-sizing:border-box;min-height:64px;max-height:180px;resize:none;overflow-y:auto;line-height:1.5;white-space:pre-wrap;background:var(--bg-near-black);color:var(--text-headline);border:1px solid var(--border-subtle);border-radius:8px;padding:9px 12px;}
#chat-input:focus,#chat-input:focus-visible {outline:none;}
#chat-compose-hint {font-size:10px;color:var(--text-muted);padding:5px 0 0;}
#chat-draft-notice {font-size:11px;line-height:1.5;color:#e7c891;padding:8px 0;}
#chat-tool-context:not([hidden]),#chat-draft-context:not([hidden]) {display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:7px 9px;border:1px solid #34566f;border-radius:6px;background:#102332;color:#b9dff4;font-size:11px;}
#session-choice[hidden] {display:none;}
.chat-starter-note {margin:0 0 12px;color:var(--text-muted);font-size:11px;line-height:1.5;}
#drawing-status:not([hidden]) {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 16px;border-bottom:1px solid #304763;background:#122033;color:#bad5f5;font-size:12px;}
#drawing-status button {width:auto;background:transparent;border:1px solid #405975;border-radius:5px;padding:4px 9px;color:#d7e7fa;}
#chart-container.drawing-active {cursor:crosshair;}
#chart-context-menu {
  position:fixed;z-index:1200;min-width:258px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow-y:auto;box-sizing:border-box;padding:5px;
  background:#18191d;color:#d7d9de;border:1px solid #36383e;border-radius:7px;box-shadow:0 16px 40px #000a;
}
.chart-context-heading {padding:7px 10px 5px;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;}
.chart-context-heading:not(:first-child) {margin-top:5px;border-top:1px solid var(--border-subtle);padding-top:10px;}
#chart-context-menu button {display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:31px;padding:5px 7px;text-align:left;border:0;border-radius:5px;background:transparent;color:inherit;font:11px/1.25 Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer;}
#chart-context-menu button.has-separator {margin-top:4px;padding-top:8px;border-top:1px solid #2f3035;border-radius:0 0 5px 5px;}
#chart-context-menu button:hover,#chart-context-menu button:focus-visible {background:#26282d;color:#fff;outline:0;}
#chart-context-menu .chart-context-icon {display:grid;place-items:center;color:#9699a2;font-size:14px;}
#chart-context-menu .chart-context-label {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#chart-context-menu kbd {color:#747780;font:9px/1 ui-sans-serif,system-ui,sans-serif;white-space:nowrap;}
#tools-popover.open {display:flex;flex-direction:column;left:auto;right:0;max-height:min(690px,calc(100vh - 120px));overflow:hidden;}
#tools-popover > :not(#drawing-inventory) {flex-shrink:0;}
#tools-popover #annotation-controls {flex-shrink:1;max-height:300px;}
#drawing-inventory {flex:1 1 auto;min-height:0;overflow:auto;margin-top:12px;border-top:1px solid var(--border-subtle);padding-top:10px;font-size:12px;}
#drawing-inventory h4 {font-size:12px;margin:8px 0;color:var(--text-headline);}
#chart-shell {box-sizing:border-box;transition:padding-right .18s ease;}
#chart-shell:has(#chart-data-window:not([hidden])) {padding-right:304px;}
#chart-data-window {position:absolute;z-index:18;top:8px;right:8px;bottom:8px;width:288px;box-sizing:border-box;overflow:auto;padding:14px;background:rgba(8,8,11,.985);border:1px solid rgba(255,255,255,.11);border-radius:10px;box-shadow:0 12px 32px #0008;color:var(--text-headline);font-size:12px;}
#chart-data-window[hidden] {display:none;}
#chart-data-window>header {display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.09);}
#chart-data-window>header strong {font-size:14px;}
#chart-data-close {width:27px;height:27px;padding:0;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:5px;color:var(--text-body);font-size:20px;}
#chart-data-bar {display:grid;gap:5px;}
#chart-data-bar>small {color:#a7c0d5;}
#chart-data-trades {margin-top:14px;padding:10px;border:1px solid #38516b;border-radius:8px;background:#172b3c;}
#chart-data-trades[hidden] {display:none;}
#chart-data-trades h3 {margin:0 0 7px;color:#a9c6df;font-size:11px;text-transform:uppercase;letter-spacing:.06em;}
#chart-data-trades .chart-data-row:last-child {border-bottom:0;}
#chart-data-outputs {margin-top:14px;border-top:1px solid #38516b;}
#chart-data-outputs h3 {margin:12px 0 8px;color:#a9c6df;font-size:11px;text-transform:uppercase;letter-spacing:.06em;}
.chart-data-group {margin:4px 0;border:1px solid #2b455d;border-radius:7px;background:#14283a;}
.chart-data-group summary {cursor:pointer;padding:9px 10px;color:#d8eafa;font-weight:650;line-height:1.35;overflow-wrap:anywhere;}
.chart-data-group summary:hover,.chart-data-group summary:focus-visible {background:#213d55;outline-color:#6dd5e3;}
.chart-data-group[open] summary {border-bottom:1px solid #2b455d;}
.chart-data-actions {display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 10px 3px;}
.chart-data-actions button {min-width:0;padding:6px;border:1px solid #4b8ba1;border-radius:6px;background:#1b4357;color:#e8faff;cursor:pointer;font-size:11px;font-weight:650;}
.chart-data-actions button:hover,.chart-data-actions button:focus-visible {background:#285c71;outline-color:#70d5e7;}
.chart-data-group .chart-data-row {margin:0 10px;}
.chart-data-row {display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #233a50;}
.chart-data-row span {min-width:0;overflow-wrap:anywhere;color:#b7cadc;}
.chart-data-row strong {flex:none;text-align:right;font-variant-numeric:tabular-nums;}
@media(max-width:760px) {
  #chart-shell:has(#chart-data-window:not([hidden])) {padding-right:0;}
  #chart-data-window {position:relative;inset:auto;width:auto;max-height:42dvh;margin:8px;background:#08080b;box-shadow:none;}
}
.drawing-inventory-note {font-size:11px;color:var(--text-muted);line-height:1.5;}
.drawing-inventory-row {display:grid;gap:5px;padding:9px 0;border-bottom:1px solid var(--border-subtle);overflow-wrap:anywhere;}
.drawing-inventory-row small {color:var(--text-muted);font-size:10px;}
.drawing-inventory-row.is-hidden strong {color:var(--text-muted);}
.drawing-inventory-actions {display:flex;flex-wrap:wrap;gap:6px;}
.drawing-inventory-actions button {width:auto;margin:0;padding:5px 8px;font-size:11px;}
.chart-tool-dialog.drawing-settings {width:min(460px,92vw);max-height:85vh;overflow:auto;}
.drawing-settings textarea {width:100%;box-sizing:border-box;resize:vertical;min-height:88px;
  padding:10px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-near-black);color:var(--text-headline);font:inherit;}
.drawing-settings .drawing-style-preview > :last-child {white-space:pre-wrap;}
.drawing-settings h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.drawing-editor-note {font-size:12px;color:var(--text-muted);line-height:1.5;}
.drawing-style-fields {display:grid;grid-template-columns:70px 1fr 1fr;gap:12px;}
.drawing-coordinate-fields {display:grid;gap:10px;margin:14px 0;}
.drawing-coordinate-fields fieldset {min-width:0;border:1px solid var(--border-subtle);border-radius:8px;padding:10px;display:grid;gap:8px;}
.drawing-coordinate-fields legend {font-size:12px;color:var(--text-headline);padding:0 5px;}
.drawing-coordinate-fields input {width:100%;min-width:0;box-sizing:border-box;}
:is(#opening-range-dialog,.chart-tool-dialog).drawing-settings .drawing-coordinate-fields label {margin:0;min-width:0;}
.drawing-coordinate-fields .drawing-endpoint {grid-template-columns:150px minmax(0,1fr);gap:12px;}
.drawing-coordinate-fields .drawing-editor-note {margin:0;}
@media(max-width:520px) {.drawing-coordinate-fields .drawing-endpoint {grid-template-columns:1fr;}}
.drawing-style-fields input[type=color] {width:100%;height:36px;padding:3px;cursor:pointer;}
.drawing-style-preview {display:flex;align-items:center;gap:16px;min-height:64px;margin:16px 0;padding:12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-near-black);}
.drawing-style-preview > :first-child {width:80px;flex:none;}
.drawing-style-preview > :last-child {min-width:0;overflow-wrap:anywhere;font-size:12px;color:var(--text-headline);}
.drawing-settings .drawing-style-preview {min-height:36px;margin:12px 0;padding:10px;}
:is(#opening-range-dialog,.chart-tool-dialog).drawing-settings footer .secondary {background:transparent;border:1px solid var(--border-subtle);color:var(--text-headline);}
#chat-tool-context-label,#chat-draft-context-label {flex:1;min-width:0;overflow-wrap:anywhere;}
#chat-tool-context-clear,#chat-draft-context-clear {width:auto;flex:none;margin:0;padding:2px 6px;min-width:26px;background:transparent;color:#b9dff4;font-size:17px;}
.study-chip.is-chat-selected {outline:1px solid #81c4ed;outline-offset:1px;}
:is(#opening-range-dialog,.chart-tool-dialog).chart-tool-review {box-sizing:border-box;width:min(850px,94vw);max-height:85vh;overflow:auto;}
.chart-tool-review pre {max-height:55vh;overflow:auto;white-space:pre;tab-size:4;font:12px/1.6 Consolas,monospace;background:var(--bg-near-black);padding:16px;border-radius:6px;}
.chart-draft-summary {margin:14px 0;border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;background:var(--bg-near-black);}
.chart-draft-summary h4 {margin:0;padding:10px 12px;color:var(--text-headline);font-size:12px;font-weight:600;border-bottom:1px solid var(--border-subtle);}
.chart-draft-summary table {width:100%;table-layout:fixed;border-collapse:collapse;font-size:11px;line-height:1.5;}
.chart-draft-summary th,.chart-draft-summary td {padding:8px 10px;text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid var(--border-subtle);}
.chart-draft-summary thead th {color:var(--text-muted);font-size:10px;font-weight:500;}
.chart-draft-summary tbody th {color:var(--text-body);font-weight:500;}
.chart-draft-summary tbody td:last-child {color:var(--text-headline);}
.chart-draft-summary p.chart-draft-summary-note {margin:0;padding:9px 12px;color:var(--text-muted);font-size:10px;line-height:1.5;}
.chart-draft-source-changes {margin:10px 0;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-near-black);min-width:0;}
.chart-draft-source-changes summary {padding:9px 12px;color:var(--text-headline);font-size:12px;font-weight:600;cursor:pointer;}
.chart-draft-source-changes pre {margin:0;padding:10px 12px;max-height:240px;max-width:100%;overflow:auto;border-top:1px solid var(--border-subtle);color:var(--text-body);font:11px/1.55 Consolas,monospace;white-space:pre;}
.chart-draft-swatch {display:inline-block;width:9px;height:9px;margin-right:6px;border:1px solid #ffffff38;border-radius:3px;vertical-align:baseline;}
.chart-tool-draft pre {white-space:pre;overflow-wrap:normal;max-width:100%;tab-size:4;}
.chart-tool-draft {box-sizing:border-box;min-width:0;max-width:100%;overflow-wrap:anywhere;}
.chart-tool-draft .pine-observation-preview {box-sizing:border-box;min-width:0;max-width:100%;}
.chart-tool-draft .pine-observation-breakdown {margin:10px 0;border-top:1px solid #365966;}
.chart-tool-draft .pine-observation-breakdown summary {padding:9px 0;color:#a4ede0;font-size:12px;font-weight:700;}
svg.ui-icon { width: 18px; height: 18px; flex: none; vertical-align: middle; }
#topbar { height: 54px; min-height: 54px; padding: 0 18px; gap: 20px; background: #111720; flex-wrap: nowrap; }
#brand { gap: 6px; min-width: 136px; }
#brand-mark { display: flex; align-items: center; color: #8daeff; }
#brand-name { font-size: 16px; letter-spacing: -.04em; }
#topbar-title { display: none; }
#workspace-controls { margin-left: auto; flex-wrap: nowrap; gap: 10px; }
#workspace-controls select { width: 180px; height: 32px; background: transparent; }
#workspace-controls input { width: 145px; height: 32px; background: transparent; border-color: transparent; }
#workspace-controls input:hover, #workspace-controls input:focus { border-color: var(--border-subtle); }
#workspace-controls #workspace-name[hidden], #workspace-controls #workspace-rename[hidden] { display: none; }
#workspace-controls.renaming #workspace-select { display: none; }
#workspace-controls.renaming #workspace-name { display: block; width: 180px; border-color: var(--border-subtle); }
#workspace-rename { flex: 0 0 32px; width: 32px; height: 32px; padding: 0; }
#workspace-status { max-width: 210px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#workspace-recovery {position:relative;display:flex;align-items:center;gap:5px;flex:none;}
#workspace-recovery[hidden] {display:none;}
#workspace-recovery>button,#workspace-recovery-more>summary {
  box-sizing:border-box;width:auto;min-width:0;height:30px;margin:0;padding:6px 9px;
  border:1px solid rgba(241,197,120,.24);border-radius:8px;background:rgba(87,62,18,.24);
  color:#efca82;font-size:10px;font-weight:720;line-height:16px;white-space:nowrap;cursor:pointer;
}
#workspace-recovery>button:hover,#workspace-recovery-more>summary:hover,
#workspace-recovery-more[open]>summary {border-color:rgba(241,197,120,.42);background:rgba(112,77,18,.38);color:#ffe1a7;}
#workspace-recovery-more {position:relative;}
#workspace-recovery-more>summary {list-style:none;}
#workspace-recovery-more>summary::-webkit-details-marker {display:none;}
#workspace-recovery-more>summary::after {content:'⌄';margin-left:6px;color:#af9360;}
#workspace-recovery-more[open]>summary::after {content:'⌃';}
#workspace-recovery-menu {
  position:absolute;z-index:1100;top:calc(100% + 7px);right:0;display:grid;gap:5px;width:210px;padding:8px;
  border:1px solid rgba(255,255,255,.10);border-radius:10px;background:rgba(11,11,15,.98);
  box-shadow:0 18px 48px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.035);
}
#workspace-recovery-menu p {margin:0 0 3px;padding:5px 6px;color:#aaa18e;font-size:9px;line-height:1.4;}
#workspace-recovery-menu button {width:100%;min-height:32px;margin:0;padding:7px 9px;text-align:left;}
#workspace-new { white-space: nowrap; }
#rail { width: 52px; gap: 10px; padding-top: 16px; background: #10161f; }
.rail-btn { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 8px; }
.rail-btn:hover { color: var(--text-headline); background: #1b2533; }
.rail-btn.active { color: #9dbaff; background: #1a2a43; border-color: transparent; }
#main { padding: 0; background: var(--bg-near-black); container: chart-main / inline-size; }
#chart-toolbar { min-height: 49px; flex-shrink: 0; padding: 7px 14px; gap: 6px; border-bottom: 1px solid var(--border-subtle); flex-wrap: wrap; }
#chart-toolbar #symbol { width: 138px; min-width: 138px; padding-inline: 4px; font-weight: 650; height: 32px; background: transparent; border-color: transparent; }
#instrument-search-open {
  display:flex;align-items:center;width:190px;min-width:172px;height:38px;min-height:38px;box-sizing:border-box;
  gap:9px;margin:0;padding:0 9px 0 7px;border:1px solid rgba(255,255,255,.085);border-radius:10px;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.014));color:#eef0f4;
  box-shadow:inset 0 1px rgba(255,255,255,.025);line-height:1;text-align:left;
}
#instrument-search-open:hover,#instrument-search-open:focus-visible {
  border-color:rgba(103,203,221,.34);outline:0;background:linear-gradient(135deg,rgba(67,202,218,.07),rgba(111,82,215,.075));
  box-shadow:0 0 0 3px rgba(76,192,213,.045),inset 0 1px rgba(255,255,255,.04);
}
.market-selector-mark,.instrument-mark {
  position:relative;display:grid;place-items:center;overflow:hidden;flex:none;border:1px solid rgba(255,255,255,.10);border-radius:50%;
  background:#242630;color:#dde1ea;font-weight:800;box-shadow:inset 0 1px rgba(255,255,255,.08),0 2px 8px rgba(0,0,0,.22);
}
.instrument-logo {position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;background:#f4f5f7;object-fit:cover;opacity:0;transition:opacity .14s ease;}
.crypto-token-logo {display:block;width:72%;height:72%;overflow:visible;color:currentColor;filter:drop-shadow(0 1px 1px rgba(0,0,0,.24));}
:is(.market-selector-mark,.instrument-mark)[data-has-vector-logo="true"] {font-size:0;}
:is(.market-selector-mark,.instrument-mark)[data-has-logo="true"] {border-color:rgba(255,255,255,.16);background:#f4f5f7;color:transparent;box-shadow:0 2px 9px rgba(0,0,0,.28);}
:is(.market-selector-mark,.instrument-mark)[data-has-logo="true"]>.instrument-logo {opacity:1;}
.market-selector-mark {width:25px;height:25px;font-size:12px;letter-spacing:-.04em;}
.market-selector-copy {display:grid;min-width:0;flex:1;gap:2px;line-height:1;}
.market-selector-symbol {min-width:0;overflow:hidden;color:#f2f3f6;font-size:11.5px;font-weight:760;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;}
.market-selector-meta {min-width:0;overflow:hidden;color:#747c89;font-size:8px;font-weight:650;letter-spacing:.055em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;}
.market-selector-caret {display:grid;width:16px;height:22px;flex:none;place-items:center;color:#717987;}
.market-selector-caret svg {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
:is(.market-selector-mark,.instrument-mark)[data-tone="btc"] {border-color:rgba(247,147,26,.42);background:linear-gradient(145deg,#f7a12d,#d9780a);color:#fff;}
:is(.market-selector-mark,.instrument-mark)[data-tone="eth"] {border-color:rgba(180,166,255,.38);background:linear-gradient(145deg,#7466b7,#373257);color:#fff;}
:is(.market-selector-mark,.instrument-mark)[data-tone="sol"] {border-color:rgba(86,242,190,.36);background:linear-gradient(145deg,#8a5cff,#12d8b0);color:#08090b;}
:is(.market-selector-mark,.instrument-mark)[data-tone="xrp"] {border-color:#4c535e;background:#111318;color:#f5f7fa;}
:is(.market-selector-mark,.instrument-mark)[data-asset-class="equity"] {border-color:rgba(95,158,255,.28);background:linear-gradient(145deg,#365b9b,#1b2b49);color:#e8f1ff;}
:is(.market-selector-mark,.instrument-mark)[data-asset-class="fund"] {border-color:rgba(142,118,239,.30);background:linear-gradient(145deg,#594690,#29223e);color:#eee9ff;}
:is(.market-selector-mark,.instrument-mark)[data-asset-class="index"] {border-color:rgba(100,220,225,.32);background:linear-gradient(145deg,#315d74,#2c335e);color:#d7fbff;}
:is(.market-selector-mark,.instrument-mark)[data-asset-class="futures"] {border-color:rgba(74,201,229,.30);background:linear-gradient(145deg,#20546a,#102d3b);color:#b8eff9;font-size:9px;}
:is(.market-selector-mark,.instrument-mark)[data-asset-class="forex"] {border-color:rgba(72,213,172,.26);background:linear-gradient(145deg,#235d50,#12342e);color:#bdffeb;}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker {box-sizing:border-box;width:min(900px,95vw);max-height:86vh;overflow:hidden;display:flex;flex-direction:column;gap:14px;padding:22px;}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker h2 {font-size:20px;text-transform:none;letter-spacing:0;margin:0;}
.instrument-picker #instrument-search {width:100%;box-sizing:border-box;margin:0;padding:12px 14px;font-size:15px;}
.instrument-filters {display:flex;flex-wrap:wrap;gap:6px;overflow:visible;padding-bottom:4px;flex:0 0 auto;}
.instrument-filters button {width:auto;flex:0 0 auto;margin:0;padding:6px 12px;background:#182330;border:1px solid #2d3b4e;border-radius:18px;color:#a9bacd;font-size:12px;}
.instrument-filters button[aria-pressed="true"] {background:#233758;border-color:#6489ff;color:#d6e5ff;}
.instrument-product-filters {display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:0 0 auto;}
.instrument-product-filters label {display:flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid #2d3b4e;border-radius:8px;background:#131d29;color:#8499b2;font-size:11px;font-weight:650;}
.instrument-product-filters select {width:auto;min-width:132px;margin:0;padding:5px 28px 5px 8px;border:0;background-color:#1b2939;color:#e0ebf7;font-size:12px;}
.instrument-catalog-state {display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px 12px;padding:9px 11px;border:1px solid #2d4962;border-radius:8px;background:#112434;color:#b8cde2;font-size:11px;line-height:1.35;}
.instrument-catalog-state strong {color:#e6f2ff;font-size:12px;}
.instrument-catalog-state[data-tone="healthy"] {border-color:#216b5e;background:#0d2b27;}
.instrument-catalog-state[data-tone="healthy"] strong {color:#75e4c5;}
.instrument-catalog-state[data-tone="warning"] {border-color:#765526;background:#2b2112;}
.instrument-catalog-state[data-tone="warning"] strong {color:#f4c66d;}
.instrument-session-prompt {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px;border:1px solid #4774a4;border-radius:10px;background:#172b42;}
.instrument-session-prompt[hidden] {display:none;}
.instrument-session-prompt>strong {grid-column:1/-1;color:#e6f0ff;font-size:13px;}
.instrument-session-prompt button {display:grid;gap:3px;margin:0;padding:10px 12px;text-align:left;border:1px solid #45617e;border-radius:8px;background:#20354d;color:#dcecff;}
.instrument-session-prompt button:hover,.instrument-session-prompt button:focus-visible {border-color:#83aaff;background:#284467;}
.instrument-session-prompt button span {font-size:12px;color:#b9d5f3;}
.instrument-session-prompt button small {font-size:12px;line-height:1.4;color:#bfd0e1;}
@media (max-width:650px) {.instrument-session-prompt {grid-template-columns:1fr;}}
#instrument-results {flex:0 1 auto;min-height:46px;max-height:min(440px,48vh);overflow:auto;border:1px solid #28384a;border-radius:9px;scrollbar-color:#49627d #13202e;scrollbar-width:thin;}
.instrument-section {position:sticky;top:0;z-index:1;padding:9px 14px 6px;background:#172434;border-bottom:1px solid #2a3b51;color:#91b5e0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.instrument-result {display:grid;grid-template-columns:28px minmax(150px,175px) minmax(120px,1fr) 140px 125px 30px;align-items:center;gap:12px;min-height:49px;box-sizing:border-box;padding:8px 14px;border-bottom:1px solid #223040;scroll-margin-top:32px;cursor:pointer;}
.instrument-result:last-child {border-bottom:0;}
.instrument-result[aria-selected="true"],.instrument-result:hover {background:#1d304a;}
.instrument-result strong {min-width:0;color:#e4edf8;font-size:13px;white-space:nowrap;overflow:hidden;overflow-wrap:normal;word-break:keep-all;text-overflow:ellipsis;line-height:1.2;}
.instrument-result span {color:#94a9c2;font-size:12px;min-width:0;}
.instrument-result .instrument-name {color:#d5e1ef;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.instrument-result mark {padding:0 1px;border-radius:2px;background:#31577c;color:#f3fbff;font-weight:700;}
.instrument-result .instrument-kind {text-align:right;color:#aabbd0;}
.instrument-result .instrument-availability {text-align:right;font-size:12px;}
.instrument-result .instrument-mark {display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#30415a;color:#dbeaff;font-size:14px;font-weight:700;}
.instrument-result .instrument-mark-crypto {background:#78501c;color:#ffe1a3;}
.instrument-result .instrument-mark-futures {background:#153e5b;color:#9ce1ff;}
.instrument-result .instrument-mark-forex {background:#244a42;color:#b1f7dc;}
.instrument-result .instrument-mark-equity {background:#3c355d;color:#d5c4ff;}
.instrument-result .instrument-mark-fund {background:#304a53;color:#a8ecdd;}
.instrument-result .instrument-mark-index {background:#293d5b;color:#bbf7ff;}
.instrument-result .instrument-favorite {border:0;background:transparent;color:#aabbd0;font-size:23px;line-height:1;cursor:pointer;padding:3px;}
.instrument-result .instrument-favorite:hover,.instrument-result .instrument-favorite:focus-visible {color:#fbbf24;}
@media (max-width:650px) {
  .instrument-filters {flex-wrap:wrap;overflow:visible;}
  .instrument-filters button {padding:6px 10px;}
  .instrument-result {grid-template-columns:26px minmax(145px,165px) minmax(80px,1fr) 28px;gap:3px 8px;padding:8px 10px;}
  .instrument-result .instrument-mark {grid-column:1;grid-row:1/3;}
  .instrument-result strong {grid-column:2;grid-row:1;}
  .instrument-result .instrument-name {grid-column:3;grid-row:1;}
  .instrument-result .instrument-kind {grid-column:2;grid-row:2;text-align:left;font-size:11px;}
  .instrument-result .instrument-availability {grid-column:3;grid-row:2;text-align:left;}
  .instrument-result .instrument-favorite {grid-column:4;grid-row:1/3;}
}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker .instrument-status,:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker .instrument-note {margin:0;font-size:12px;line-height:1.5;color:#a8bdd5;}
.instrument-picker .instrument-status-row {display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:22px;}
.instrument-picker .instrument-status-row .instrument-status {min-width:0;flex:1;}
.instrument-picker .instrument-retry {width:auto;flex:0 0 auto;padding:5px 9px;border:1px solid #527ca6;border-radius:6px;background:#18314b;color:#d9ecff;font-size:11px;cursor:pointer;}
.instrument-picker .instrument-retry[hidden] {display:none;}
.instrument-picker .instrument-data-note {font-size:12px;color:#a8bdd5;}
.instrument-picker .instrument-data-note summary {cursor:pointer;color:#a8bdd5;}
.instrument-picker .instrument-data-note .instrument-note {padding:7px 0 0;}
.instrument-imports {flex:0 0 auto;min-height:0;border:1px solid #355575;border-radius:10px;background:#142131;color:#dbe9f8;}
.instrument-imports[open] {flex:0 1 auto;max-height:min(42vh,340px);overflow:auto;}
.instrument-imports summary {cursor:pointer;padding:11px 14px;font-size:13px;font-weight:650;}
.instrument-imports summary:hover {background:#1a3048;}
.instrument-import-list {display:grid;gap:10px;padding:0 10px 10px;}
.instrument-import-tabs {display:flex;gap:6px;}
.instrument-import-tabs button {flex:1;margin:0;padding:7px 10px;border:1px solid #36516e;border-radius:7px;background:#142335;color:#9fb5cd;font-size:12px;}
.instrument-import-tabs button[aria-pressed="true"] {background:#2b5c9b;border-color:#78a8ee;color:#fff;}
.instrument-import[hidden] {display:none;}
.instrument-import {display:grid;gap:10px;padding:14px;border:1px solid #355575;border-radius:10px;background:linear-gradient(125deg,#162c43,#142131);}
.instrument-import strong {color:#e6f2ff;font-size:13px;}
.instrument-import-controls {display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;align-items:stretch;min-width:0;}
.instrument-import-controls > button:last-child:nth-child(3) {grid-column:1/-1;}
.instrument-import-controls input,.instrument-import-controls select {min-width:0;width:100%;margin:0;}
.instrument-import-market {margin:0;background:#111c2b;border-color:#46617c;color:#e4eef8;}
.instrument-import-button {width:100%;min-width:0;margin:0;border:1px solid #78a8ee;border-radius:7px;background:#2b5c9b;color:#fff;font-weight:650;}
.instrument-import-button:hover {background:#376fb6;}
.instrument-import-button:disabled {opacity:.55;cursor:wait;}
#chart-toolbar #timeframe { width: 118px; flex:none; height: 32px; background: transparent; border-color: transparent; }
#startup-error:not([hidden]) {display:flex;align-items:center;justify-content:space-between;gap:20px;margin:16px;padding:18px;border:1px solid #754550;border-radius:10px;background:#271820;color:#f3ccd3;}
#startup-error p {margin:8px 0 0;font-size:12px;}
#startup-reload {width:auto;flex:none;}
.toolbar-btn { display: inline-flex; gap: 6px; align-items: center; justify-content: center; padding: 7px 9px; border-color: transparent; background: transparent; color: var(--text-body); border-radius: 5px; white-space: nowrap; }
.toolbar-btn:hover, .icon-btn:hover { background: var(--bg-card-elevated); }
#ai-toggle[aria-pressed="true"], #editor-toggle[aria-pressed="true"] { background: #1a2a43; border-color: transparent; color: #a8c1ff; }
#ai-toggle { border: 1px solid #4e78a8; background: linear-gradient(110deg,#183555,#1a2947); color: #d5eaff; font-weight: 650; }
#ai-toggle:hover, #ai-toggle:focus-visible { border-color: #83c4ff; background: #254769; color: #fff; }
#sizing-current { display: none; }
#timeframe-note:empty { display: none; }
#timeframe-note {position:relative;flex:none;font-size:11px;}
#timeframe-note details {position:relative;}
#timeframe-note summary {padding:5px 8px;border:1px solid #35506d;border-radius:6px;background:#16283d;color:#bed1e6;font-weight:650;white-space:nowrap;cursor:pointer;list-style:none;}
#timeframe-note summary::-webkit-details-marker {display:none;}
#timeframe-note.warning summary {border-color:#806039;background:#332718;color:#ffd184;}
#timeframe-note details p {position:absolute;z-index:80;top:calc(100% + 7px);right:0;box-sizing:border-box;width:300px;max-width:calc(100vw - 40px);margin:0;padding:10px 12px;border:1px solid #56677b;border-radius:8px;background:#172435;color:#d8e4f2;box-shadow:0 12px 28px #0009;line-height:1.45;}
#timeframe-note.warning details p {border-color:#806039;background:#302417;color:#ffe0aa;}
.toolbar-popover { border-radius: 10px; box-shadow: 0 16px 45px #0008; }
#strategy-bar { margin: 0; flex-shrink: 0; padding: 10px 16px; min-height: 54px; border: 0; border-bottom: 1px solid var(--border-subtle); border-radius: 0; background: #101620; gap: 8px; }
#strategy-editor > #strategy-bar {min-height:0;padding:9px 18px;background:#151f2b;align-items:flex-start;}
#strategy-editor > #strategy-bar #sb-identity {flex:1 1 100%;}
#strategy-editor > #strategy-bar #sb-actions {flex:1 1 100%;flex-wrap:wrap;}
#strategy-editor > #strategy-bar .sb-btn {padding:5px 9px;font-size:11px;}
#sb-identity { gap: 8px; }
#sb-name { font-size: 13px; font-weight: 600; }
#sb-state { font-size: 11px; letter-spacing: 0; font-weight: 500; }
#sb-actions { gap: 6px; }
.sb-btn { padding: 7px 12px; border-radius: 5px; font-size: 12px; }
.sb-btn.sb-primary-outline { background: #6495ff; color: #081325; border-color: #6495ff; }
.sb-btn.sb-primary { background: #1b2d46; color: #a8c1ff; border-color: #344969; }
#version-status { margin: 6px 16px; flex-shrink: 0; line-height: 1.5; overflow-wrap: anywhere; }
#run-message, #broad-search-panel { margin: 10px 16px; }
#chart-readout {display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:20px 16px;flex-shrink:0;align-items:center;gap:1px 16px;height:44px;min-height:44px;box-sizing:border-box;padding:3px 18px;border-bottom:1px solid #1b2939;background:linear-gradient(90deg,#142133 0%,#0c141f 48%,#0b1017 100%);font-size:12px;}
#chart-readout-identity {grid-area:1 / 1;display:flex;align-items:center;gap:7px;min-width:0;}
#chart-readout strong {font-size:16px;font-weight:750;letter-spacing:.01em;color:var(--text-headline);}
#chart-asset-class {padding:2px 5px;border:1px solid #355373;border-radius:4px;background:#19304a;color:#b6d5f4;font-size:9px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;}
#chart-readout-values {grid-area:1 / 2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c2d1e2;font-variant-numeric:tabular-nums;}
#chart-readout-change {grid-area:1 / 3;white-space:nowrap;padding:3px 7px;border-radius:6px;background:#1b293a;font-variant-numeric:tabular-nums;color:#b8c7d9;}
#chart-readout-change[data-direction=up] {color:#49c6ae;}
#chart-readout-change[data-direction=down] {color:#ef8494;}
#chart-readout-time {grid-area:2 / 1 / 3 / -1;justify-self:end;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a1b3ca;font-size:11px;margin-left:0;}
#chart-data-note:empty {display:none;}
#chart-data-note {padding:0 18px 10px;color:#8198b1;font-size:11px;}
#chart-data-note.fixed-history {box-sizing:border-box;margin:0 16px 8px;padding:0;color:#e6bc79;line-height:1.4;}
#chart-data-note.fixed-history details {display:inline-block;max-width:100%;border:1px solid #66502c;border-radius:9px;background:#1b1915;vertical-align:middle;}
#chart-data-note.fixed-history summary {padding:5px 10px;cursor:pointer;list-style:none;font-weight:600;}
#chart-data-note.fixed-history summary::-webkit-details-marker {display:none;}
#chart-data-note.fixed-history summary::after {content:'⌄';display:inline-block;margin-left:9px;color:#9a815c;}
#chart-data-note.fixed-history details[open] summary::after {transform:rotate(180deg);}
#chart-data-note.fixed-history details p {margin:0;padding:1px 10px 9px;color:#bba883;font-weight:400;}
#chart-data-note.fixed-history .chart-market-link {display:inline-flex;width:auto;align-items:center;justify-content:center;margin-left:8px;padding:5px 8px;border:1px solid #66502c;border-radius:8px;background:#1b1915;color:#f0d7aa;font:inherit;font-weight:600;cursor:pointer;vertical-align:middle;}
#chart-data-note.fixed-history .chart-market-link:hover,#chart-data-note.fixed-history .chart-market-link:focus-visible {border-color:#d4a452;background:#29241a;outline:none;}
#chart-data-note:is(.observed-history,.imported-history) {box-sizing:border-box;margin:0 16px 8px;padding:0;color:#9cd5e9;line-height:1.4;}
#chart-data-note:is(.observed-history,.imported-history) details {display:inline-block;max-width:100%;border:1px solid #2f596b;border-radius:9px;background:#10232d;vertical-align:middle;}
#chart-data-note:is(.observed-history,.imported-history) summary {padding:5px 10px;cursor:pointer;list-style:none;font-weight:600;}
#chart-data-note:is(.observed-history,.imported-history) summary::-webkit-details-marker {display:none;}
#chart-data-note:is(.observed-history,.imported-history) summary::after {content:'⌄';display:inline-block;margin-left:9px;color:#72a8bd;}
#chart-data-note:is(.observed-history,.imported-history) details[open] summary::after {transform:rotate(180deg);}
#chart-data-note:is(.observed-history,.imported-history) details p {margin:0;padding:1px 10px 9px;color:#a5c2d0;font-weight:400;}
#chart-data-note .chart-evaluation-note {display:inline-block;margin-left:8px;color:#c9a770;}
#chart-data-note .chart-evaluation-recovery {display:inline-block;margin-left:8px;color:#e7c986;text-decoration:underline;text-underline-offset:2px;}
#chart-data-note .chart-evaluation-recovery:hover,#chart-data-note .chart-evaluation-recovery:focus-visible {color:#fff0c9;}
#chart-container { position:relative;z-index:0;height: var(--chart-stage-height, min(850px, max(280px, calc(100dvh - 320px)))); min-width: 0; min-height:var(--chart-pane-min-height,280px); }
#chart-live-price-label,.chart-layout-live-price-label{position:absolute;right:0;z-index:12;display:flex;flex-direction:column;
  align-items:flex-end;justify-content:center;min-width:68px;min-height:34px;padding:2px 6px;
  transform:translateY(-50%);border-radius:0;background:#0c8f80;color:#f5fffd;
  font:600 11px/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;pointer-events:none;
  box-shadow:-1px 0 0 rgba(8,15,22,.55)}
#chart-live-price-label[hidden],.chart-layout-live-price-label[hidden]{display:none}
#chart-live-price-label[data-state="stale"],.chart-layout-live-price-label[data-state="stale"]{background:#8b6a35}
:is(#chart-live-price-label,.chart-layout-live-price-label) .chart-live-countdown{font-size:10px;font-weight:500;color:rgba(245,255,253,.82)}
#chart-load-status {
  position:absolute;top:16px;left:50%;z-index:3;transform:translateX(-50%);
  display:flex;align-items:center;gap:9px;min-height:38px;
  max-width:min(520px,calc(100% - 32px));padding:8px 12px;overflow:hidden;
  border:1px solid #344352;border-radius:9px;background:rgba(14,20,28,.96);
  color:#d9e2ec;box-shadow:0 7px 22px rgba(0,0,0,.42);
  font-size:11px;font-weight:600;line-height:1.4;letter-spacing:.005em;pointer-events:none;
}
#chart-load-status[hidden] {display:none;}
#chart-load-status::before {
  content:"";flex:0 0 14px;width:14px;height:14px;border:2px solid #3c4956;
  border-top-color:#63c8b8;border-radius:50%;
  animation:lume-chart-loader-spin .8s linear infinite;
}
#chart-load-status::after {display:none;}
#chart-load-status.updating:not([hidden]) {
  top:auto;bottom:12px;left:auto;right:12px;transform:none;min-height:36px;
  max-width:min(340px,calc(100% - 24px));padding:7px 11px;border-radius:8px;
  box-shadow:0 5px 18px rgba(0,0,0,.38);text-align:left;
}
#chart-load-status.error {
  border-color:#60484a;background:rgba(25,18,20,.97);color:#e7dadd;
  box-shadow:0 7px 20px rgba(0,0,0,.38);
}
#chart-load-status.error::before {
  content:"!";display:grid;place-items:center;flex-basis:18px;width:18px;height:18px;
  border:1px solid #966d59;border-radius:50%;background:#2a1d1b;color:#efb286;
  font-size:11px;font-weight:800;line-height:1;animation:none;
}
@keyframes lume-chart-loader-spin {to {transform:rotate(360deg);}}
@media (prefers-reduced-motion:reduce) {
  #chart-load-status::before {animation:none;}
}
#chart-empty-state.visible { box-sizing: border-box; flex: 0 0 auto; height: var(--chart-stage-height, min(850px, max(280px, calc(100dvh - 320px)))); background: #0d1520; }
.chart-busy-recovery {display:grid;justify-items:center;gap:13px;max-width:420px;margin:clamp(50px,12vh,150px) auto 0;padding:20px;color:#c6d9eb;text-align:center;line-height:1.5;}
.chart-busy-recovery p {margin:0;}
.chart-busy-recovery button {width:auto;margin:0;padding:9px 15px;}
#chart-container:focus-visible { outline:2px solid #70cde5;outline-offset:-3px; }
#chart-container.strategy-marker-hover canvas {cursor:pointer!important;}
.strategy-marker-detail {
  position:fixed;z-index:10000;display:grid;gap:3px;min-width:168px;max-width:240px;
  padding:10px 12px;border:1px solid rgba(115,130,157,.3);border-radius:9px;
  color:#d8dde7;background:rgba(11,14,20,.96);box-shadow:0 12px 30px rgba(0,0,0,.42);
  pointer-events:none;backdrop-filter:blur(8px);
}
.strategy-marker-detail[hidden] {display:none;}
.strategy-marker-detail strong {font-size:11px;font-weight:700;letter-spacing:.01em;}
.strategy-marker-detail span {color:#eef2f8;font-size:10px;font-variant-numeric:tabular-nums;}
.strategy-marker-detail small {color:#858e9f;font-size:9px;line-height:1.35;}
@media (max-width: 1100px) {
  /* The condensed toolbar wraps above the canvas at tablet widths. */
  #chart-container { height: var(--chart-stage-height, min(850px, max(280px, calc(100dvh - 350px)))); }
  #chart-empty-state.visible { height: var(--chart-stage-height, min(850px, max(280px, calc(100dvh - 350px)))); }
}
#chart-region-highlight { position:absolute;z-index:2;box-sizing:border-box;pointer-events:none;overflow:hidden;background:rgba(100,149,255,.10);border-inline:1px solid rgba(129,170,255,.8); }
#chart-region-highlight[hidden] { display:none; }
#chart-region-highlight span { position:absolute;top:6px;left:6px;padding:3px 6px;border-radius:4px;background:#172b48;color:#c2d7ff;font-size:10px;white-space:nowrap; }
#chart-region-highlight.pending { background:transparent;border-inline:1px dashed #81aaff;overflow:visible; }
#chart-shell {flex-shrink:0;}

/* Vela-style multi-chart layouts. The primary cell keeps the complete chart
   workbench; surrounding cells are real canvas charts driven by the same
   loaded model while Symbol / Interval sync is enabled. */
.chart-layout-picker {position:relative;}
#chart-layout-btn {gap:7px;}
.chart-layout-glyph {display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);gap:2px;}
.chart-layout-glyph i {display:block;border:1px solid currentColor;border-radius:1px;opacity:.82;}
.chart-layout-popover {width:286px;padding:14px;grid-template-columns:132px 1fr;gap:0 15px;}
.chart-layout-popover.open {display:grid;}
.chart-layout-section-head {grid-column:1;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;}
.chart-layout-section-head strong,.chart-layout-sync>strong {color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;}
#chart-layout-preview-label {text-transform:none;letter-spacing:0;color:var(--text-body);}
#chart-layout-matrix {grid-column:1;display:grid;grid-template-columns:repeat(4,24px);grid-template-rows:repeat(4,24px);gap:5px;align-content:start;}
#chart-layout-matrix button {width:24px;height:24px;min-height:0;margin:0;padding:0;border:1px solid var(--border-subtle);border-radius:4px;background:var(--bg-card-elevated);box-shadow:none;}
#chart-layout-matrix button:is(.selected,.preview) {background:var(--text-headline);border-color:var(--text-headline);}
#chart-layout-presets {grid-column:1;display:grid;grid-template-columns:repeat(3,36px);gap:6px;margin-top:11px;align-items:center;}
#chart-layout-presets>button {display:grid;place-items:center;width:36px;height:27px;min-height:0;margin:0;padding:0;border:0!important;border-radius:3px;background:transparent!important;box-shadow:none!important;}
.chart-layout-preset-icon {display:grid;width:30px;height:23px;gap:2px;}
.chart-layout-preset-icon i {display:block;min-width:0;min-height:0;border:1px solid var(--border-subtle);border-radius:2px;background:var(--bg-card-elevated);}
.chart-layout-preset-icon[data-preset-icon="large-left-2"] {grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(2,1fr);}
.chart-layout-preset-icon[data-preset-icon="large-left-2"] i:first-child {grid-area:1 / 1 / 3 / 2;}
.chart-layout-preset-icon[data-preset-icon="large-left-3"] {grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(3,1fr);}
.chart-layout-preset-icon[data-preset-icon="large-left-3"] i:first-child {grid-area:1 / 1 / 4 / 2;}
.chart-layout-preset-icon[data-preset-icon="large-right-2"] {grid-template-columns:.8fr 1.2fr;grid-template-rows:repeat(2,1fr);}
.chart-layout-preset-icon[data-preset-icon="large-right-2"] i:nth-child(1) {grid-area:1 / 2 / 3 / 3;}
.chart-layout-preset-icon[data-preset-icon="large-right-2"] i:nth-child(2) {grid-area:1 / 1 / 2 / 2;}
.chart-layout-preset-icon[data-preset-icon="large-right-2"] i:nth-child(3) {grid-area:2 / 1 / 3 / 2;}
.chart-layout-preset-icon[data-preset-icon="large-top-2"] {grid-template-columns:repeat(2,1fr);grid-template-rows:1.2fr .8fr;}
.chart-layout-preset-icon[data-preset-icon="large-top-2"] i:first-child {grid-area:1 / 1 / 2 / 3;}
.chart-layout-preset-icon[data-preset-icon="large-top-3"] {grid-template-columns:repeat(3,1fr);grid-template-rows:1.2fr .8fr;}
.chart-layout-preset-icon[data-preset-icon="large-top-3"] i:first-child {grid-area:1 / 1 / 2 / 4;}
.chart-layout-preset-icon[data-preset-icon="large-bottom-2"] {grid-template-columns:repeat(2,1fr);grid-template-rows:.8fr 1.2fr;}
.chart-layout-preset-icon[data-preset-icon="large-bottom-2"] i:nth-child(1) {grid-area:2 / 1 / 3 / 3;}
.chart-layout-preset-icon[data-preset-icon="large-bottom-2"] i:nth-child(2) {grid-area:1 / 1 / 2 / 2;}
.chart-layout-preset-icon[data-preset-icon="large-bottom-2"] i:nth-child(3) {grid-area:1 / 2 / 2 / 3;}
#chart-layout-presets>button:is(.selected,.preview) .chart-layout-preset-icon i {border-color:var(--text-headline);background:var(--text-headline);}
.chart-layout-sync {grid-column:2;grid-row:1 / span 3;display:flex;flex-direction:column;gap:7px;padding-left:15px;border-left:1px solid var(--border-subtle);}
.chart-layout-sync>strong {margin-bottom:3px;}
.chart-layout-sync button {display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:25px;margin:0;padding:0;border:0;background:transparent;color:var(--text-body);font-size:12px;font-weight:550;box-shadow:none;}
.chart-layout-sync button i {position:relative;width:31px;height:18px;flex:none;border-radius:10px;background:#3a3d45;transition:background .15s ease;}
.chart-layout-sync button i::after {content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#9ba0aa;transition:transform .15s ease,background .15s ease;}
.chart-layout-sync button[aria-checked="true"] i {background:#e7e9ec;}
.chart-layout-sync button[aria-checked="true"] i::after {transform:translateX(13px);background:#17191e;}
#chart-layout-grid {display:grid;grid-template-columns:repeat(var(--chart-layout-columns,1),minmax(0,1fr));grid-template-rows:repeat(var(--chart-layout-rows,1),minmax(0,1fr));gap:1px;height:var(--chart-stage-height,min(850px,max(280px,calc(100dvh - 320px))));min-height:0;overflow:hidden;background:var(--border-subtle);}
.chart-layout-pane {position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--bg-near-black);}
.chart-layout-pane.active {z-index:1;}
#chart-shell.multi-chart-layout .chart-layout-pane.active::after {content:"";position:absolute;z-index:20;inset:0;box-sizing:border-box;border:2px solid var(--text-headline);pointer-events:none;}
.chart-layout-pane:focus-visible {outline:none;}
#chart-shell #chart-layout-grid #chart-container {width:100%;height:100%!important;min-height:0!important;}
.chart-layout-canvas {position:absolute;inset:0;}
.chart-layout-secondary>header {position:absolute;z-index:2;top:8px;left:9px;display:flex;align-items:center;gap:6px;max-width:calc(100% - 18px);pointer-events:none;color:var(--text-headline);text-shadow:0 1px 2px var(--bg-near-black);}
.chart-layout-secondary>header strong {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;}
.chart-layout-secondary>header small {color:var(--text-muted);font-size:9px;}
.chart-layout-asset {color:#f7931a;font-size:9px;}
#chart-shell.multi-chart-layout .chart-layout-primary :is(#chart-output-readouts,#chart-value-tables,#pine-chart-tables) {
  max-width:100%;
}
#chart-shell.multi-chart-layout .chart-layout-primary #pine-chart-tables {overflow:hidden;contain:paint;}
/* Fallback containment while an older workspace DOM is being upgraded. */
#chart-shell.multi-chart-layout > #pine-chart-tables {
  right:auto!important;bottom:auto!important;
  width:max(0px,calc(100% / var(--chart-layout-columns,1) - 88px))!important;
  height:max(0px,calc(100% / var(--chart-layout-rows,1) - 24px))!important;
  overflow:hidden;contain:paint;
}
@media (max-width:720px){
  .chart-layout-popover {position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:58px;width:auto;}
  #chart-layout-grid {min-height:0;}
}
[data-theme="light"] .chart-layout-sync button[aria-checked="true"] i {background:#16181c;}
[data-theme="light"] .chart-layout-sync button[aria-checked="true"] i::after {background:#fff;}
[data-theme="light"] .chart-layout-pane {background:#fff;}
#chart-range-controls {display:flex;align-items:center;flex-wrap:wrap;gap:4px;flex-shrink:0;padding:5px 14px;background:var(--bg-card);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:11px;}
#chart-range-controls[hidden] {display:none;}
#chart-range-controls > span:first-child {margin-right:5px;text-transform:uppercase;letter-spacing:.08em;font-size:10px;}
#chart-range-controls button {width:auto;min-width:34px;margin:0;padding:4px 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-body);font:inherit;cursor:pointer;}
#chart-range-controls button:hover,#chart-range-controls button:focus-visible {background:var(--bg-card-elevated);border-color:var(--border-subtle);color:var(--text-headline);}
#chart-range-controls #chart-load-older {border-color:var(--border-subtle);color:var(--text-headline);}
#chart-older-history-status {max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);}
#chart-date-jump {display:inline-flex;align-items:center;gap:5px;margin:0 0 0 10px;}
#chart-date-jump label {white-space:nowrap;}
#chart-date-jump input {box-sizing:border-box;width:130px;margin:0;padding:4px 6px;border:1px solid var(--border-subtle);border-radius:5px;background:var(--bg-card-elevated);color:var(--text-headline);font:inherit;color-scheme:dark;}
#chart-date-zone {color:#8ea9bd;white-space:nowrap;}
#chart-range-controls #chart-timezone {box-sizing:border-box;width:122px;margin:0 0 0 auto;padding:4px 6px;border:1px solid var(--border-subtle);border-radius:5px;background:var(--bg-card-elevated);color:var(--text-headline);font:inherit;}
#chart-date-feedback {margin-left:auto;color:#b8d7e7;}
#chart-date-feedback:empty {display:none;}
#chart-range-status {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
#main:has(:is(#headline-strip,#pine-headline-strip):not([hidden])) #chart-container { height: var(--chart-stage-height, min(800px, max(260px, calc(100dvh - 350px)))); }
#main:has(:is(#headline-strip,#pine-headline-strip):not([hidden])) #chart-empty-state.visible { height: var(--chart-stage-height, min(800px, max(260px, calc(100dvh - 350px)))); }
#chart-legend { min-height: 34px; flex-shrink: 0; padding: 7px 16px; gap: 12px; background: transparent; border-top: 1px solid #1b2533; font-size: 10px; }
#chart-trade-legend {display:flex;align-items:center;gap:12px;min-width:0;}
#chart-trade-legend[hidden] {display:none;}
#chart-legend .legend-label-compact {display:none;}
#marker-source { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
#chart-legend:not(:has(#chart-trade-legend:not([hidden]),#pine-observation-legend:not([hidden]))) {display:none;}
#chart-brand-mark {position:absolute;z-index:2;left:10px;bottom:34px;width:28px;height:28px;opacity:.78;pointer-events:none;filter:saturate(.82) brightness(1.08);}
@media (max-width: 1400px) {
  #chart-legend {gap:8px;}
  #chart-trade-legend {gap:8px;}
  #chart-legend .legend-label-full {display:none;}
  #chart-legend .legend-label-compact {display:inline;}
  #marker-source {max-width:150px;}
}
#confidence-panel-wrap,#confidence-meta {min-width:0;max-width:100%;overflow-wrap:anywhere;}
#confidence-meta details {max-width:100%;margin-top:5px;}
#confidence-meta details summary {width:max-content;max-width:100%;cursor:pointer;color:#8db7ff;}
#confidence-meta details pre {box-sizing:border-box;max-width:100%;max-height:260px;overflow:auto;white-space:pre;
  margin:6px 0 0;padding:8px 10px;border:1px solid #2b3b50;border-radius:6px;background:#0b1420;color:#c4d3e6;font-size:11px;}
#workspace-manage {position:relative;flex:none;}
#workspace-manage > summary {list-style:none;cursor:pointer;min-width:28px;text-align:center;padding:5px 7px;
  border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-body);}
#workspace-manage > summary::-webkit-details-marker {display:none;}
#workspace-manage > summary:hover,#workspace-manage[open] > summary {background:var(--bg-card-elevated);}
#workspace-manage-menu {position:absolute;z-index:110;top:calc(100% + 7px);right:0;width:min(320px,calc(100vw - 24px));
  max-height:380px;overflow:auto;box-sizing:border-box;padding:12px;border:1px solid #3b4d65;border-radius:9px;
  background:#132033;box-shadow:0 18px 42px #000a;color:var(--text-body);}
#workspace-manage-menu > strong {display:block;margin:12px 0 6px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;}
#workspace-manage-menu button {width:100%;margin:0 0 5px;padding:8px 10px;text-align:left;font-size:12px;white-space:normal;}
#workspace-manage-menu button:disabled {opacity:.5;cursor:default;}
#workspace-claim-note {display:block;margin:-1px 2px 9px;color:var(--text-muted);font-size:11px;line-height:1.45;}
#workspace-archived-list {display:grid;gap:5px;}
#workspace-archived-list button {display:grid;gap:2px;}
#workspace-archived-list small {color:var(--text-muted);}
#workspace-manage-status {margin:6px 0 0;color:var(--accent-warn);font-size:11px;overflow-wrap:anywhere;}
#headline-strip { margin: 0; flex-shrink: 0; padding: 12px 18px; border-radius: 0; border: 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); gap: 24px; background: #111923; }
#pine-headline-strip:not([hidden]) { display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;min-height:42px;box-sizing:border-box;padding:6px 18px;border-top:1px solid #244059;border-bottom:1px solid #244059;background:#101e2d;color:#d8e9f6;font-size:12px; }
#pine-headline-identity {min-width:180px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#pine-headline-metrics {display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;font-variant-numeric:tabular-nums;}
#pine-headline-metrics span {white-space:nowrap;}
#pine-headline-metrics strong {color:#f0f8ff;}
#pine-headline-strip #pine-headline-trades {margin-left:auto;padding:5px 10px;border:1px solid #39718a;border-radius:6px;background:#153b52;color:#d8f3ff;font-size:11px;font-weight:700;cursor:pointer;}
#hs-metrics { gap: 30px; }
.hs-metric .hs-value { font-size: 19px; font-weight: 600; font-variant-numeric: tabular-nums; }
#results-collapse-bar { margin: 0; border-radius: 0; border: 0; padding: 7px 16px; background: #101620; gap:12px; }
#results-collapse-copy {display:flex;align-items:center;gap:10px;min-width:0;}
#results-collapse-status {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8da5ba;font-size:10.5px;font-weight:500;letter-spacing:0;text-transform:none;}
#results-collapse-actions {display:flex;align-items:center;gap:8px;flex:none;}
#results-primary-action {width:auto;margin:0;padding:5px 10px;border:1px solid #4d93cf;border-radius:7px;background:#173e5e;color:#e8f6ff;font-size:10.5px;font-weight:750;white-space:nowrap;cursor:pointer;}
#results-primary-action:hover,#results-primary-action:focus-visible {border-color:#7bc7f5;background:#205478;outline:none;}
#results-primary-action[hidden] {display:none;}
#results-panel { margin: 0; border: 0; border-radius: 0; padding: 0 18px 18px; background: #101620;
  max-height: min(52dvh, 560px); overflow-y: auto; overscroll-behavior: contain; }
#strategy-tester-journey {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0 12px;padding:0;list-style:none;}
#strategy-tester-journey[hidden] {display:none;}
#strategy-tester-journey li {display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;align-items:center;min-width:0;padding:8px 10px;border:1px solid #2b4055;border-radius:8px;background:#0c1723;color:#8fa6b9;}
#strategy-tester-journey li strong {grid-row:1 / 3;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#182a3c;color:#8eabc3;font-size:10px;}
#strategy-tester-journey li span {font-size:11px;font-weight:750;color:#adc0d1;}
#strategy-tester-journey li small {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;color:#71899e;}
#strategy-tester-journey li.is-complete {border-color:#27675e;background:#0c201f;}
#strategy-tester-journey li.is-complete strong {background:#1d5a4e;color:#9aead6;}
#strategy-tester-journey li.is-current {border-color:#477da9;background:#112b40;box-shadow:inset 0 0 0 1px #5ca6dc24;}
#strategy-tester-journey li.is-current strong {background:#28618a;color:#e7f7ff;}
#strategy-tester-journey li.is-current span {color:#edf8ff;}
.backtest-job-activity {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:9px 11px;border:1px solid #31516c;border-radius:8px;background:#0d1c2a;color:#b8cbda;}
.backtest-job-activity[hidden] {display:none;}
.backtest-job-activity > div:first-child {display:grid;gap:2px;min-width:0;}
.backtest-job-activity strong {color:#e4f3fc;font-size:11px;}
#backtest-job-status {font-size:10px;line-height:1.35;color:#91aabe;overflow-wrap:anywhere;}
.backtest-job-actions {display:flex;gap:6px;flex:none;}
.backtest-job-actions button {width:auto;margin:0;padding:5px 9px;font-size:10px;}
.backtest-job-history {margin:-6px 0 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);color:var(--text-muted);font-size:11px;}
.backtest-job-history[hidden] {display:none;}
.backtest-job-history > summary {padding:7px 10px;cursor:pointer;color:var(--text-body);font-weight:700;}
#backtest-job-history-list {display:grid;gap:1px;padding:0 6px 6px;}
.backtest-job-history-row {display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px;border-top:1px solid var(--border-subtle);}
.backtest-job-history-copy {display:grid;gap:2px;min-width:0;}
.backtest-job-history-copy strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-body);}
.backtest-job-history-copy span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.backtest-job-history-row button {width:auto;margin:0;padding:4px 8px;white-space:nowrap;}
#results-panel #result-tabs { position: sticky; top: 0; z-index: 2; background: #101620; }
#results-run-contract {display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:9px 10px 10px;color:#a9bfd1;font-size:11px;border-top:1px solid rgba(255,255,255,.055);}
.results-run-details {margin:0 0 8px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(10,11,15,.54);}
.results-run-details>summary {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:32px;padding:6px 10px;color:#b6bac5;font-size:10.5px;font-weight:700;cursor:pointer;list-style:none;}
.results-run-details>summary::-webkit-details-marker {display:none;}
.results-run-details>summary::before {content:'›';color:#62decd;font-size:16px;line-height:1;transition:transform .16s ease;}
.results-run-details[open]>summary::before {transform:rotate(90deg);}
#results-run-summary {flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.results-run-summary-hint {color:#696e7a;font-size:9.5px;font-weight:600;white-space:nowrap;}
.results-run-details[open] .results-run-summary-hint {font-size:0;}
.results-run-details[open] .results-run-summary-hint::after {content:'Hide assumptions';font-size:9.5px;}
.results-run-details[hidden],
#results-next-step[hidden] {display:none!important;}
#results-run-contract .run-contract-chip {display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid #2d4355;border-radius:999px;background:#111e2a;white-space:nowrap;}
#results-run-contract .run-contract-chip:first-child {border-color:#37677a;background:#15303d;color:#d6f4ff;font-weight:700;}
#results-run-contract .run-contract-warning {border-color:#7a5b2e;background:#342611;color:#f2ca83;}
.results-reconciliation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px;}
.results-reconciliation-head small{color:var(--accent-blue);font-size:10px;font-weight:800;letter-spacing:.12em;}
.results-reconciliation-head h3{margin:3px 0 0;color:var(--text-headline);}
#results-reconciliation-alert{width:auto;margin:0;padding:7px 11px;white-space:nowrap;}
.results-reconciliation-chain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0;padding:0;list-style:none;counter-reset:reconcile-step;}
.results-reconciliation-chain li{min-width:0;padding:12px;border:1px solid var(--border-subtle);border-radius:10px;background:#121c28;}
.results-reconciliation-chain li::before{counter-increment:reconcile-step;content:counter(reconcile-step);display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:50%;background:#29445f;color:#dcedfa;font-size:10px;font-weight:800;}
.results-reconciliation-chain li[data-state="complete"]{border-color:#267763;background:#102c28;}
.results-reconciliation-chain li[data-state="attention"]{border-color:#9b6727;background:#342714;}
.results-reconciliation-chain strong{display:block;margin:8px 0 4px;color:var(--text-headline);}
.results-reconciliation-chain span{display:block;color:var(--text-muted);font-size:11px;line-height:1.45;overflow-wrap:anywhere;}
#results-reconciliation-checks{display:grid;gap:8px;}
#results-reconciliation-checks details{padding:9px 11px;border:1px solid var(--border-subtle);border-radius:8px;background:#0e1722;}
#results-reconciliation-checks details[data-parity="mismatch"]{border-color:#a34f5f;background:#321c24;}
#results-reconciliation-checks summary{cursor:pointer;color:var(--text-body);font-weight:700;}
@media(max-width:760px){.results-reconciliation-chain{grid-template-columns:1fr;}.results-reconciliation-head{align-items:stretch;flex-direction:column;}}
#results-panel.research-tools-only { max-height: min(34dvh, 360px); }
#results-panel.research-tools-only #result-tabs,
#results-panel.research-tools-only .tab-content {
  display: none !important;
}
#results-panel.research-tools-only #results-empty-state {
  margin-bottom: 0;
}
body.pine-results-focus #workspace {display:flex!important;}
body.pine-results-focus #strategy-editor,
body.pine-results-focus #strategy-editor-resize,
body.pine-results-focus #chat-panel,
body.pine-results-focus #assistant-resize,
body.pine-results-focus #chat-panel-collapse {display:none!important;}
body.pine-results-focus #main {flex:1;min-width:0;}
body.pine-results-focus #results-panel {max-height:min(74dvh,900px);}
#results-focus-toggle {width:auto;min-height:27px;margin:0;padding:4px 9px;font-size:10px;white-space:nowrap;}
body.pine-results-focus.workspace-tester-mode #chart-container {height:92px!important;min-height:92px;opacity:.58;}
/* Focus results is a real report workspace. Keeping the market toolbar, a
   miniature chart and range controls above the report made the
   equity curve begin below the fold and left users scanning two competing
   surfaces. "Show more chart" removes this class and restores the complete
   chart/report split without losing the retained result. */
body.pine-results-focus.workspace-tester-mode #chart-toolbar,
body.pine-results-focus.workspace-tester-mode #chart-readout,
body.pine-results-focus.workspace-tester-mode #chart-shell,
body.pine-results-focus.workspace-tester-mode #chart-empty-state,
body.pine-results-focus.workspace-tester-mode #chart-range-controls {
  display:none!important;
}
/* Alert setup is a fixed dialog mounted in the chart control region. Preserve
   that mount while Results owns the page so Create alert opens a real visible
   dialog, while the dormant chart commands consume no report space. */
body.pine-results-focus.workspace-tester-mode #chart-live-controls {
  display:block!important;height:0;min-height:0;margin:0;padding:0;overflow:visible;
}
body.pine-results-focus.workspace-tester-mode #chart-live-controls >
  :not(#live-webhook-alerts):not(#price-alerts):not(#alert-manager) {display:none!important;}
body.pine-results-focus.workspace-tester-mode #chart-output-readouts,
body.pine-results-focus.workspace-tester-mode #chart-value-tables,
body.pine-results-focus.workspace-tester-mode #pine-chart-tables {display:none!important;}
body.pine-results-focus.workspace-tester-mode #results-panel:not([hidden]) {
  max-height:none;overflow-y:visible;scrollbar-gutter:auto;
}
@media(max-height:700px){
  body.workspace-tester-mode #chart-container {height:150px!important;min-height:150px;}
  body.workspace-tester-mode #results-panel:not([hidden]) {max-height:calc(100dvh - 270px);}
  body.pine-results-focus.workspace-tester-mode #chart-container {height:72px!important;min-height:72px;}
  body.pine-results-focus.workspace-tester-mode #results-panel:not([hidden]) {max-height:none;overflow-y:visible;}
}
#results-header {align-items:center;padding:12px 0;}
#results-header .rh-left {flex:1 1 260px;min-width:0;}
.result-lineage-state{width:auto;min-height:28px;margin:0;padding:5px 9px;border:1px solid var(--border-subtle);border-radius:999px;background:#172535;color:var(--text-body);font-size:10px;font-weight:800;letter-spacing:.02em;white-space:nowrap;}
.result-lineage-state[data-state="linked"],.result-lineage-state[data-state="matched"]{border-color:#267763;background:#102c28;color:#bcebdc;}
.result-lineage-state[data-state="pending"]{border-color:#52718c;background:#17293a;color:#cae2f4;}
.result-lineage-state[data-state="attention"]{border-color:#9b6727;background:#342714;color:#ffe0a8;}
.result-lineage-state[data-state="mismatch"]{border-color:#a34f5f;background:#321c24;color:#ffd0d8;}
.result-lineage-state:hover,.result-lineage-state:focus-visible{filter:brightness(1.15);outline:2px solid var(--focus-ring);outline-offset:2px;}
#results-header-actions {display:flex;align-items:center;justify-content:flex-start;gap:7px;flex:1 1 100%;min-width:0;margin-left:0;flex-wrap:wrap;}
#results-header-actions > #results-net {margin-right:auto;white-space:nowrap;}
.results-reliability {display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid rgba(137,151,179,.28);border-radius:999px;background:rgba(15,17,24,.72);color:#b9c2d2;font-size:10px;font-weight:760;letter-spacing:.02em;white-space:nowrap;backdrop-filter:blur(12px);}
.results-reliability[data-tone="strong"] {border-color:rgba(59,222,166,.45);color:#63e6ba;background:rgba(18,69,57,.35);}
.results-reliability[data-tone="moderate"] {border-color:rgba(104,195,255,.42);color:#8fd3ff;background:rgba(27,55,82,.38);}
.results-reliability[data-tone="weak"] {border-color:rgba(255,181,77,.43);color:#ffc66d;background:rgba(84,54,18,.38);}
.results-reliability[data-tone="insufficient_data"],.results-reliability[data-tone="unvalidated"] {border-color:rgba(151,159,180,.32);color:#adb5c5;}
#results-header-actions > button {box-sizing:border-box;width:auto;min-width:0;min-height:32px;margin:0;padding:6px 10px;border-radius:7px;font-size:11px;font-weight:650;line-height:1.2;white-space:nowrap;}
#results-header-actions > #results-create-alert {padding-inline:13px;}
#results-header-actions>#results-optimize-ai {order:1;border-color:rgba(90,218,255,.58);background:linear-gradient(105deg,#36bdd9,#7465e8);color:#fff;box-shadow:0 7px 20px rgba(70,112,255,.20);}
#results-header-actions>#results-create-alert {order:2;}
#results-header-actions>#results-more-actions {order:4;}
.result-attachment-state{display:inline-flex;align-items:center;min-height:24px;padding:2px 9px;border:1px solid #38526a;border-radius:999px;background:#142331;color:#b8ccdc;font-size:11px;font-weight:700;white-space:nowrap}
.result-attachment-state[hidden]{display:none}
.result-attachment-state.is-exact{border-color:#25765d;background:#102f29;color:#83e0bd}
.result-attachment-state.is-mismatch{border-color:#976c27;background:#34260f;color:#f4c873}
.result-attachment-state.is-detached{border-color:#536577;background:#1b2631;color:#bdc9d3}
#results-run-deep {width:auto;margin:0;padding:6px 10px;border-radius:7px;font-size:11px;font-weight:650;white-space:nowrap;}
#results-run-deep[hidden] {display:none;}
#results-discuss-ai {width:auto;margin:0;padding:6px 10px;border:1px solid #4c7193;border-radius:7px;background:#1a3048;color:#d9ecff;font-size:11px;font-weight:650;cursor:pointer;}
#results-discuss-ai:hover {background:#25415f;border-color:#70a4d1;}
#results-discuss-ai[hidden] {display:none;}
@media (max-width:760px) {
  #results-header-actions {align-items:stretch;}
  #results-header-actions > #results-net {flex:1 0 100%;margin:0;text-align:left;}
  #results-header-actions > button {flex:1 1 auto;justify-content:center;}
}
#result-tabs {gap:4px;overflow-x:auto;scrollbar-width:thin;}
#result-tabs .tab-btn {padding:9px 8px;}
#result-evidence-tabs {display:flex;gap:6px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:thin;}
#result-evidence-tabs[hidden] {display:none;}
#result-evidence-tabs button {width:auto;margin:0;padding:6px 10px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:600;white-space:nowrap;}
#result-evidence-tabs button:hover {color:var(--text-body);background:var(--bg-card-elevated);}
#result-evidence-tabs button[aria-pressed="true"] {color:var(--text-headline);background:var(--bg-card-elevated);border-color:var(--border-subtle);}
body.workspace-tester-mode #result-evidence-tabs{gap:4px;margin:0 -22px 14px;padding:7px 22px;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(8,8,11,.58);}
body.workspace-tester-mode #result-evidence-tabs::before{content:'DETAILS';flex:0 0 auto;margin-right:5px;color:#5f6674;font-size:8px;font-weight:850;letter-spacing:.14em;}
body.workspace-tester-mode #result-evidence-tabs button{min-height:28px;padding:5px 10px;border-radius:7px;color:#858a98;font-size:10px;}
body.workspace-tester-mode #result-evidence-tabs button[aria-pressed="true"]{border-color:rgba(81,220,203,.22);background:rgba(65,202,187,.09);color:#dffefa;box-shadow:inset 0 -1px #64dfd0;}
.strategy-order-lifecycle > .trades-log-heading{align-items:flex-start;flex-wrap:wrap;gap:10px;}
.strategy-order-lifecycle > .trades-log-heading small{color:var(--accent-blue);font-size:10px;font-weight:800;letter-spacing:.12em;}
.strategy-order-lifecycle > .trades-log-heading h3{margin:3px 0 0;color:var(--text-headline);font-size:14px;letter-spacing:0;text-transform:none;}
#python-trades-view>.trades-log-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle);}
#python-trades-view>.trades-log-heading small{color:#72d9ff;font-size:10px;font-weight:800;letter-spacing:.14em;}
#python-trades-view>.trades-log-heading h3{margin:3px 0 2px;color:var(--text-headline);font-size:18px;letter-spacing:-.02em;text-transform:none;}
#python-trades-view>.trades-log-heading p{margin:0;color:var(--text-muted);font-size:11px;}
.trades-log-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px;}
.trades-summary-card{display:grid;gap:3px;min-height:78px;padding:11px 12px;border:1px solid var(--border-subtle);border-radius:10px;background:linear-gradient(145deg,rgba(18,25,36,.94),rgba(9,13,20,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
.trades-summary-card.is-primary{border-color:rgba(68,214,190,.32);background:linear-gradient(145deg,rgba(16,49,46,.6),rgba(9,17,22,.96));}
.trades-summary-card small{color:var(--text-muted);font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;}
.trades-summary-card strong{color:var(--text-headline);font-size:17px;line-height:1.15;}
.trades-summary-card.is-primary strong{color:var(--accent-profit);}
.trades-summary-card span{color:var(--text-muted);font-size:10px;}
.trades-log-toolbar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px;padding:9px 10px;border:1px solid var(--border-subtle);border-radius:9px;background:rgba(12,17,25,.72);}
.trades-log-toolbar .pine-trade-filters{flex:1;display:flex;align-items:end;gap:8px;margin:0;}
.trades-log-toolbar .pine-trade-filters label{flex:0 1 180px;margin:0;color:var(--text-muted);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;}
.trades-log-toolbar .pine-trade-filters select{min-height:32px;margin-top:4px;border-radius:7px;background:#101721;color:var(--text-body);font-size:11px;text-transform:none;letter-spacing:0;}
.trades-log-toolbar>.results-note{max-width:330px;margin:0;text-align:right;font-size:10px;line-height:1.35;}
#trades-log-table-wrap{border:1px solid var(--border-subtle);border-radius:9px;background:rgba(8,12,18,.72);scrollbar-gutter:stable;}
#trades-log-table tbody tr:hover{background:rgba(72,164,255,.055);}
#trades-log-table td{height:48px;}
.trade-chart-actions{display:flex;justify-content:flex-end;gap:4px;}
.trade-chart-actions .trade-chart-jump{width:auto;min-height:27px;margin:0;padding:4px 8px;border-radius:6px;font-size:10px;}
.trades-log-footer{display:flex;justify-content:center;padding-top:10px;}
.trades-log-footer #trades-log-more{width:auto;margin:0;}
.unified-trade-review>.trades-log-heading{align-items:flex-start;flex-wrap:wrap;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle);}
.unified-trade-review>.trades-log-heading small{color:#72d9ff;font-size:10px;font-weight:800;letter-spacing:.14em;}
.unified-trade-review>.trades-log-heading h3{margin:3px 0 2px;color:var(--text-headline);font-size:18px;letter-spacing:-.02em;text-transform:none;}
.unified-trade-review>.trades-log-heading p{margin:0;color:var(--text-muted);font-size:11px;}
.pine-trades-table-wrap{max-height:430px;overflow:auto;border:1px solid var(--border-subtle);border-radius:9px;background:rgba(8,12,18,.72);scrollbar-gutter:stable;}
.pine-trades-table-wrap table{min-width:980px;margin:0;}
.pine-trades-table-wrap th{position:sticky;top:0;z-index:1;background:var(--bg-card-elevated);}
.pine-trades-table-wrap tbody tr:hover{background:rgba(72,164,255,.055);}
.unified-trade-review>.trades-log-footer button{width:auto;margin:0;}
@media(max-width:900px){.trades-log-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.trades-log-toolbar{align-items:stretch;flex-direction:column}.trades-log-toolbar>.results-note{max-width:none;text-align:left;}}
@media(max-width:620px){.trades-log-summary{grid-template-columns:1fr 1fr}.trades-log-toolbar .pine-trade-filters{display:grid;grid-template-columns:1fr}.trades-log-toolbar .pine-trade-filters label{max-width:none}.trades-log-actions{width:100%;overflow-x:auto}.trades-log-actions button{flex:1;white-space:nowrap}}
.tab-btn { font-size: 12px; text-transform: none; letter-spacing: 0; font-weight: 500; }
#strategy-editor { width: var(--strategy-editor-width, 460px); background: #111720; }
#se-editor-compat { display: none !important; }
#strategy-editor-resize {width:7px;flex-shrink:0;align-self:stretch;position:relative;cursor:col-resize;touch-action:none;background:#101722;border-left:1px solid #25364a;}
#strategy-editor-resize::after {content:'';position:absolute;left:3px;top:calc(50% - 22px);width:2px;height:44px;border-radius:2px;background:#59718b;}
#strategy-editor-resize:hover::after,#strategy-editor-resize:focus-visible::after {background:#7abaff;}
#strategy-editor-resize:focus-visible {outline:2px solid var(--accent-blue);outline-offset:-2px;}
#strategy-editor-resize:has(+ #strategy-editor.collapsed),body.chart-focus #strategy-editor-resize {display:none;}
#workspace:has(#library-view.open.community-open) #strategy-editor,
#workspace:has(#library-view.open.community-open) #strategy-editor-resize {display:none;}
body.resizing-strategy-editor,body.resizing-strategy-editor * {cursor:col-resize!important;user-select:none!important;}
body.resizing-strategy-editor.editor-bottom,body.resizing-strategy-editor.editor-bottom * {cursor:row-resize!important;}
#se-head { padding: 15px 18px; min-height: 49px; gap: 8px; }
#se-title { margin-right: auto; }
#se-dock {width:auto;min-width:86px;margin:0;padding:5px 8px;font-size:11px;white-space:nowrap;}
@media (min-width:851px) {
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) {
    display:grid;grid-template-columns:52px minmax(0,1fr);
    grid-template-rows:minmax(300px,1fr) 7px minmax(180px,var(--strategy-editor-bottom-height,28dvh));
  }
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor.pine-inline:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) {
    grid-template-rows:minmax(300px,1fr) 7px minmax(300px,var(--strategy-editor-bottom-height,42dvh));
  }
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) > #rail {grid-column:1;grid-row:1 / 4;}
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) > #main {grid-column:2;grid-row:1;min-height:0;}
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) > #strategy-editor-resize {
    display:block;grid-column:2;grid-row:2;align-self:stretch;width:auto;height:7px;
    cursor:row-resize;touch-action:none;border:0;border-top:1px solid #34475e;background:#111720;
  }
  body.editor-bottom #strategy-editor-resize::after {
    left:calc(50% - 22px);top:2px;width:44px;height:2px;background:#59718b;
  }
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) > #strategy-editor {
    grid-column:2;grid-row:3;box-sizing:border-box;width:auto;min-height:0;border-left:0;border-top:0;
  }
  body.editor-bottom #chat-panel-collapse {display:none;}
  body.editor-bottom:not(.chart-focus) #workspace:has(#strategy-editor:not(.collapsed)):not(:has(#library-view.open)):not(:has(#deploy-view.open)) #chart-container {
    /* Leave room for the chart time axis and range controls above the editor.
       A short viewport needs a shorter canvas; the editor remains resizable. */
    height:min(650px,max(220px,calc(100dvh - var(--strategy-editor-bottom-height,28dvh) - 315px)));
    min-height:max(220px,calc(var(--chart-pane-min-height,280px) - 60px));
  }
  body.editor-bottom #se-head #se-title {display:none;}
  body.editor-bottom #se-head #strategy-bar {display:flex;flex:1 1 auto;min-width:0;min-height:0;margin:0;padding:0;border:0;background:transparent;}
  body.editor-bottom #se-head #strategy-bar[hidden] {display:none;}
  body.editor-bottom #se-head #strategy-bar .sb-identity {min-width:0;}
}
#se-run-backtest { width: auto; flex: none; margin: 0; padding: 7px 11px;
  border: 1px solid #5a9dee; border-radius: 7px; background: #2862a8;
  color: #f5fbff; font-size: 11px; font-weight: 700; cursor: pointer; }
#se-run-backtest:hover:not(:disabled) { background: #3578c4; }
#se-run-backtest:disabled { opacity: .5; cursor: not-allowed; }
#se-run-backtest[hidden] { display: none; }
@media(max-width:700px) {
  #results-collapse-status {display:none;}
  #strategy-tester-journey {grid-template-columns:1fr;}
  #strategy-tester-journey li {grid-template-columns:22px minmax(0,1fr);}
}

/* Concept C Python Studio mirrors Pine Studio so switching languages does not
   change the user's mental model. */
:is(#opening-range-dialog,.chart-tool-dialog).python-chart-settings:not(.pine-chart-settings) {
  width:min(880px,94vw);border-color:rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(15,15,18,.99),rgba(6,6,8,.995));color:#e9e9ee;
  box-shadow:0 32px 100px rgba(0,0,0,.78),0 0 38px rgba(103,81,231,.08),inset 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(24px) saturate(112%);
}
.python-chart-settings:not(.pine-chart-settings)>header {min-height:42px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.075);}
.python-chart-settings:not(.pine-chart-settings)>header h2 {color:#f5f5f8;font-size:15px;letter-spacing:-.015em;}
.python-chart-settings:not(.pine-chart-settings) .formula-fields>p:first-of-type {max-width:760px;margin:10px 0 6px;color:#9095a2;line-height:1.5;}
.python-chart-settings .chart-settings-tabs {position:sticky;top:0;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:14px 0 12px;padding:4px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(5,5,8,.94);backdrop-filter:blur(16px);}
.python-chart-settings .chart-settings-tab {min-height:34px;border:0;border-radius:7px;background:transparent;color:#858a98;font-size:12px;font-weight:760;}
.python-chart-settings .chart-settings-tab:hover {background:rgba(255,255,255,.045);color:#e4e6ed;}
.python-chart-settings .chart-settings-tab[aria-selected="true"] {background:linear-gradient(135deg,rgba(128,197,255,.18),rgba(36,92,198,.20));color:#f3f8ff;box-shadow:inset 0 0 0 1px rgba(128,197,255,.26),0 5px 18px rgba(36,92,198,.12);}
.python-chart-settings .chart-settings-panel {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;}
.python-chart-settings .chart-settings-panel[hidden] {display:none!important;}
.python-chart-settings .chart-settings-panel>label,.python-chart-settings .chart-settings-panel>details {margin:0;}
.python-chart-settings .chart-settings-panel>details,.python-chart-settings .chart-settings-panel.is-code {grid-column:1/-1;}
.python-chart-settings .chart-settings-panel.is-code>details {margin:0;border:0;background:transparent;}
.python-chart-settings .chart-settings-panel.is-code>details>summary {display:none;}
@media (max-width:680px) {.python-chart-settings .chart-settings-panel {grid-template-columns:1fr;}}
.python-studio-meta {display:flex;align-items:center;gap:6px;margin:1px 0 3px;padding:8px 10px;border:1px solid rgba(255,255,255,.075);border-radius:9px;background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(112,86,231,.025));}
.python-studio-badge {display:inline-flex;align-items:center;min-height:21px;padding:2px 8px;border-radius:999px;font-size:9.5px;font-weight:750;letter-spacing:.025em;white-space:nowrap;}
.python-studio-badge.is-language {border:1px solid rgba(91,207,230,.26);background:rgba(43,184,209,.08);color:#82dbe9;}
.python-studio-badge.is-type {border:1px solid rgba(130,106,241,.30);background:rgba(111,87,229,.10);color:#c9c0ff;}
.python-studio-badge.is-market {color:#a7abb5;background:rgba(255,255,255,.035);}
.python-studio-badge:is(.is-draft,.is-attached) {margin-left:auto;background:transparent;color:#777e8d;}
.python-studio-badge.is-attached {color:#80d7bc;}
.python-chart-settings:not(.pine-chart-settings) details {border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.012);}
.python-chart-settings:not(.pine-chart-settings) summary {color:#c4c6ce;font-weight:700;}
.python-chart-settings:not(.pine-chart-settings) :is(input,select,textarea) {border-color:rgba(255,255,255,.10);background:#09090c;color:#e7e7ec;}
.python-chart-settings:not(.pine-chart-settings) :is(input,select,textarea):focus {border-color:rgba(101,166,242,.54);box-shadow:0 0 0 2px rgba(86,118,231,.12),0 0 20px rgba(87,89,225,.06);outline:0;}
.python-chart-settings:not(.pine-chart-settings) .python-chart-code-editor {border-color:rgba(255,255,255,.09);border-radius:10px;background:#060609;box-shadow:inset 0 1px rgba(255,255,255,.025),inset 0 0 40px rgba(93,67,210,.025);}
.python-validation-row {display:flex;align-items:center;gap:10px;margin:8px 0 2px;padding:7px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.02);}
.python-chart-settings .python-validate-button {width:auto!important;min-height:31px;padding:5px 10px!important;border-color:rgba(93,193,226,.28)!important;background:rgba(15,15,19,.95)!important;color:#a9dce8!important;}
.python-chart-settings .python-validate-button::before {content:"✓";margin-right:5px;color:#70d7e7;font-weight:850;}
.python-validation-status {display:flex;align-items:center;gap:7px;margin:0!important;color:#858b98!important;font-size:10px!important;}
.python-validation-status::before {content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#737987;}
.python-validation-status.is-checking {color:#9fcce5!important;}.python-validation-status.is-checking::before {background:#65c7e2;box-shadow:0 0 10px rgba(101,199,226,.52);}
.python-validation-status.is-valid {color:#a9ddce!important;}.python-validation-status.is-valid::before {background:#45dfb2;box-shadow:0 0 11px rgba(69,223,178,.68);}
.python-validation-status.is-error {color:#edaab4!important;}.python-validation-status.is-error::before {background:#ef657a;box-shadow:0 0 10px rgba(239,101,122,.48);}
.python-chart-settings:not(.pine-chart-settings) form>footer {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:8px;border-top-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(8,8,10,.90),rgba(8,8,10,.99));}
.python-chart-settings:not(.pine-chart-settings) footer button {width:100%;min-height:38px;border:1px solid rgba(255,255,255,.10);border-radius:8px;background:rgba(25,25,30,.96);color:#d8d9df;}
.python-chart-settings:not(.pine-chart-settings) footer button[type="submit"] {border:1px solid rgba(128,197,255,.46);background:var(--gradient-action);color:white;font-weight:780;box-shadow:0 7px 20px rgba(36,92,198,.28),0 0 24px rgba(128,197,255,.10);}
@media(max-width:700px) {.python-studio-meta {align-items:flex-start;flex-wrap:wrap;}.python-studio-badge:is(.is-draft,.is-attached) {margin-left:0;}.python-validation-row {align-items:flex-start;flex-direction:column;}}
#se-create-paths {display:flex;align-items:center;gap:7px;margin:0 0 15px;padding:4px;border:1px solid #29415b;border-radius:9px;background:#0b1624;}
#se-create-paths > * {flex:1;min-width:0;text-align:center;font-size:11px;font-weight:650;white-space:nowrap;}
#se-create-paths button[aria-current="page"] {background:#244260;color:#eff8ff;}
#se-create-paths button {width:auto;margin:0;padding:8px 6px;border:0;border-radius:6px;background:transparent;color:#a9c5dd;cursor:pointer;}
#se-create-paths button:hover,#se-create-paths button:focus-visible {background:#1c344e;color:#f2f8ff;outline:2px solid #69b9ee;outline-offset:-2px;}
#py-visual-status:empty {display:none;}
#se-title { font-size: 14px; font-weight: 600; }
#se-body { padding: 18px; }
#strategy-editor.pine-inline {overflow:hidden;}
#strategy-editor.pine-inline #se-body,#strategy-editor.pine-inline #se-context {display:none;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog {
  position:static;box-sizing:border-box;display:flex;flex-direction:column;
  width:100%;height:calc(100% - 49px);max-height:none;margin:0;padding:10px 18px;
  border:0;border-radius:0;background:#111720;box-shadow:none;overflow:hidden;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog header {flex:none;padding:0 0 7px;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog header h2 {font-size:13px;margin:0;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog form {
  display:block;flex:1;min-height:0;max-height:none;overflow:auto;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog .formula-fields {overflow:visible;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog form > footer {
  position:sticky;bottom:0;z-index:3;margin:12px 0 0;padding:7px 0;
  border-top:1px solid #344a61;background:#111720;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog .pine-footer-more {margin:12px 0;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog .pine-footer-more-grid button {width:100%;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog .python-chart-code-editor {
  height:210px;min-height:140px;
}
#se-family-note { margin-bottom: 16px; }
#se-example { margin: 0 0 6px; font-size: 11px; padding: 8px; border-style: dashed; background: transparent; }
#se-example[hidden] { display: none; }
.se-label { font-size: 13px; font-weight: 500; margin-bottom: 6px; }
.se-field { margin-bottom: 16px; }
#family-params .se-field[hidden] { display: none; }
.se-field input, .se-field select { min-height: 36px; padding: 8px 10px; border-radius: 6px; background: #0e141d; font-size: 13px; }
.se-help { font-size: 12px; line-height: 1.55; }
.se-settings-tabs { position:sticky;top:0;z-index:4;display:flex;flex-wrap:wrap;gap:4px;margin:-4px 0 8px;padding:5px;border:1px solid #30465d;border-radius:9px;background:#101923ef;backdrop-filter:blur(8px); }
.se-settings-tab { flex:1 1 max-content;min-width:0;margin:0;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#a8bfd7;font-size:12px;font-weight:650;white-space:nowrap; }
.se-settings-tab[aria-selected="true"] { background:#244665;color:#f3f9ff;box-shadow:inset 0 0 0 1px #4d7ca7; }
.se-settings-tab:hover,.se-settings-tab:focus-visible { background:#1d3852;color:#eff8ff;outline:2px solid #67b7e8;outline-offset:-2px; }
.python-visibility-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:7px;margin:10px 0 14px; }
.python-visibility-grid label { display:flex;align-items:center;gap:6px;min-height:34px;padding:6px 9px;border:1px solid #2d4359;border-radius:7px;background:#111d29;color:#c2d3e5;font-size:12px; }
.python-visibility-grid input { min-height:0;margin:0; }
.se-group { margin: 18px 0 10px; padding-top: 16px; }
.se-group-title { font-size: 11px; font-weight: 650; letter-spacing: .08em; color: #a6b9d4; }
.se-code-heading { display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-bottom:10px; }
.se-code-heading .se-group-title { margin-bottom:0; }
.se-code-primary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px; }
.se-code-primary button { min-width:0;width:100%;margin:0;padding:7px 9px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.se-code-primary :is(#py-copy-code,#py-save-code,#py-undo-code) {display:none;}
.se-code-primary #py-review-with-ai { border-color:#4a739a;background:#19364d;color:#d1edff;font-weight:650; }
.se-code-primary #py-review-with-ai:hover { border-color:#6fbce5;background:#20445f; }
.se-code-primary #py-plot-code { border-color:#367f88;background:#18343e;color:#b8f4ee; }
.se-code-primary #py-plot-code:hover { border-color:#59c8d2;background:#21515a; }
.se-code-more { margin:10px 0 0; }
.se-code-more > summary { width:max-content;max-width:100%;cursor:pointer;color:#a9c3df;font-size:11px;font-weight:600; }
.se-code-more[open] > summary { margin-bottom:10px; }
.se-code-actions { display:grid;gap:8px;min-width:0; }
.se-code-actions button { width:auto;margin:0;padding:7px 10px;font-size:12px;white-space:nowrap; }
.se-ai-actions { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px; }
.se-ai-actions button { min-width:0;width:100%;text-align:center;overflow:hidden;text-overflow:ellipsis; }
.se-ai-actions #py-review-with-ai { border-color:#4a739a;background:#19364d;color:#d1edff;font-weight:650; }
.se-ai-actions #py-review-with-ai:hover { border-color:#6fbce5;background:#20445f; }
.se-editor-actions { display:flex;flex-wrap:wrap;align-items:center;gap:7px; }
.se-editor-actions > button { flex:1 1 110px; }
.se-editor-actions #py-plot-code { border-color:#367f88;background:#18343e;color:#b8f4ee; }
.se-editor-actions #py-plot-code:hover { border-color:#59c8d2;background:#21515a; }
.se-code-tools { flex:1 1 110px;min-width:0;position:relative; }
.se-code-tools summary { display:flex;align-items:center;justify-content:center;min-height:31px;padding:6px 9px;border:1px solid var(--border-subtle);border-radius:6px;background:#172333;color:#bdd1e4;font-size:12px;cursor:pointer;list-style:none; }
.se-code-tools summary::-webkit-details-marker { display:none; }
.se-code-tools summary::after { content:'⌄';margin-left:7px;color:#89a9c9; }
.se-code-tools[open] summary { border-color:#5a86b0;background:#20334a; }
.se-code-tools[open] summary::after { content:'⌃'; }
.se-code-tools-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px; }
.se-code-tools-list button { min-width:0;width:100%;white-space:normal; }
.se-code-examples { grid-column:1/-1;min-width:0; }
.py-editor-find[hidden] {display:none;}
.py-editor-find {display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 9px;padding:9px;border:1px solid #36516b;border-radius:8px;background:#152638;}
.py-editor-find input[type="search"],.py-editor-find input[type="text"] {flex:1 1 130px;min-width:100px;margin:0;padding:5px 8px;}
.py-editor-find input[type="number"] {width:58px;min-width:58px;margin:0;padding:5px 8px;}
.py-editor-find button {width:auto;margin:0;padding:5px 9px;white-space:nowrap;}
.py-editor-find label,.py-editor-find span {color:#a9c5d9;font-size:11px;}
.py-editor-find span {flex:1 1 100%;}
.se-code-examples summary { width:max-content;max-width:100%;cursor:pointer;color:#a9c3df;font-size:11px;font-weight:600; }
.se-example-search { display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:10px; }
.se-example-search label { flex:0 0 auto;font-size:11px;color:#afc4dc; }
.se-example-search input { flex:1 1 180px;min-width:90px;margin:0;padding:7px 10px;font-size:12px; }
.se-example-search select { flex:0 1 155px;min-width:120px;margin:0;padding:7px 10px;font-size:12px; }
.se-example-search span { flex:0 0 auto;font-size:11px;color:#90abc8; }
.se-code-examples-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;max-height:clamp(220px,36vh,360px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:10px 5px 5px 0; }
.se-code-examples-grid button { display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;margin:0;padding:11px 12px;text-align:left;line-height:1.3; }
.se-code-examples-grid button strong { font-size:12px;font-weight:650;color:#e2effd; }
.se-code-examples-grid button span { font-size:11px;color:#a2bad4; }
.se-code-examples-grid button[hidden] { display:none; }
.se-code-examples-grid button:focus-visible { outline:2px solid #71c9ed;outline-offset:2px; }
.se-code-file-actions button { min-width:0;margin:0;padding:7px 9px;font-size:11px;line-height:1.3; }
.se-code-file-actions { display:flex;gap:7px;margin-top:9px; }
.se-code-file-actions button { flex:1 1 0; }
#py-file-status { display:block;margin:7px 0 0; }
.strategy-bundle-actions { display:flex;gap:7px;flex-wrap:wrap;margin:8px 0; }
.strategy-bundle-actions button { flex:1 1 140px;margin:0;font-size:11px; }
#strategy-bundle-status { min-height:1em;margin:5px 0;color:#a9c3df;font-size:11px;line-height:1.4; }
#py-code-focus { width:auto;margin:0;padding:5px 9px;font-size:11px;white-space:nowrap; }
#py-code-focus[aria-pressed="true"] { color:#b8d9ff;border-color:#5c87b8;background:#1b314a; }
.py-editor.code-wrapped .py-gutter { display:none; }
.py-editor.code-wrapped #py-source { white-space:pre-wrap;overflow-wrap:anywhere; }
.py-code-surface {position:relative;flex:1;min-width:0;height:100%;overflow:hidden;}
.py-code-surface #py-source,.py-code-surface #py-highlight {box-sizing:border-box;position:absolute;inset:0;width:100%;height:100%;margin:0;padding:8px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:normal;tab-size:4;white-space:pre;}
.py-code-surface #py-source {background:transparent;color:transparent;caret-color:#e9f4ff;z-index:1;}
.py-code-surface #py-source::selection {background:#4389b877;}
.py-code-surface #py-highlight {pointer-events:none;border:0;color:var(--text-body);overflow:hidden;}
.py-editor.code-wrapped #py-highlight {white-space:pre-wrap;overflow-wrap:anywhere;}
.py-token-comment {color:#91a8b6;}
.py-token-string {color:#e7bd88;}
.py-token-number {color:#c7a9f4;}
.py-token-keyword {color:#ff9eb7;}
.py-token-builtin {color:#81d5e9;}
@media (forced-colors:active) {.py-code-surface #py-highlight {display:none;}.py-code-surface #py-source {color:CanvasText;}}
#se-family-note, #se-footer-note { font-size: 12px; line-height: 1.55; }
.bf-example { width: 100%; margin: 4px 0 0; padding: 8px; font-size: 11px; border-style: dashed; }
.bf-example-note { margin: 4px 0 16px; }
#py-toolkit-help { min-width: 0; }
#py-diagnostic { margin: 10px 0; padding: 12px; border: 1px solid #7e3547; border-radius: 7px; background: #241722; color: #edcbd4; font-size: 12px; line-height: 1.6; }
#py-diagnostic[hidden] { display: none; }
#py-diagnostic pre { white-space: pre-wrap; overflow-wrap: anywhere; font: 11px/1.6 Consolas, monospace; margin: 8px 0; }
#py-diagnostic p { font-size: 11px; color: #baa8b7; margin: 8px 0; }
#py-diagnostic button { font-size: 11px; margin: 5px 6px 0 0; }
.py-reference-search, .py-reference-filter { display: flex; flex-direction: column; gap: 5px; margin: 12px 0; font-size: 11px; color: #9cacc0; }
#py-toolkit-search, #py-toolkit-group { width: 100%; box-sizing: border-box; }
#py-toolkit-count { display: block; margin-bottom: 8px; }
#py-toolkit-list { max-height: 440px; overflow: auto; overscroll-behavior: contain; }
.py-reference-card { border: 1px solid #263447; border-radius: 7px; margin-bottom: 7px; background: #101925; padding: 10px; min-width: 0; }
.py-reference-card > summary { cursor: pointer; font-size: 12px; color: #dbe7f7; }
.py-reference-card > summary small { display: block; margin: 4px 0 0 15px; font-size: 10px; color: #90a5bf; }
.py-reference-signature { display: block; overflow-wrap: anywhere; white-space: normal; font-size: 11px; line-height: 1.6; color: #8edbc5; margin-top: 12px; }
.py-reference-snippet { width: 100%; box-sizing: border-box; min-height: 140px; resize: vertical; white-space: pre-wrap; overflow-wrap: anywhere; font: 11px/1.6 Consolas, monospace; background: #0b111b; color: #dbe7f7; border: 1px solid #263447; border-radius: 5px; padding: 8px; }
.py-reference-copy { margin: 8px 6px 8px 0; font-size: 11px; }
.py-reference-description { margin-top: 7px; }
.py-reference-description > summary, .py-toolkit-contracts > summary { font-size: 11px; color: #9cacc0; cursor: pointer; }
.py-reference-description p { white-space: pre-line; overflow-wrap: anywhere; }
.py-toolkit-contracts { margin-top: 14px; }
.py-toolkit-contracts > .se-help { display: block; margin-top: 9px; }
#py-toolkit-help > .se-help { display: block; margin-top: 9px; }
#py-toolkit-help pre { box-sizing: border-box; width: 100%; max-width: 100%; overflow: auto;
  padding: 12px; border: 1px solid var(--border-subtle); border-radius: 8px;
  background: var(--bg-near-black); color: var(--text-body); font-size: 11px; line-height: 1.6; }
#se-rules { margin: 12px 0; padding: 0; background: transparent; border: 0; }
#se-rules details { border: 1px solid var(--border-subtle); border-radius: 6px; padding: 10px 12px; }
#se-rules summary { cursor: pointer; color: var(--text-body); font-weight: 500; font-size: 12px; }
#se-rules details[open] summary { margin-bottom: 12px; }
#se-footer-note { padding-top: 14px; border-top: 1px solid var(--border-subtle); }
#chat-panel { width: var(--assistant-panel-width,360px); background: #111720; }
#chat-panel-close {display:none;}
#assistant-resize {width:6px;flex-shrink:0;align-self:stretch;position:relative;cursor:col-resize;touch-action:none;background:var(--bg-card);}
#assistant-resize::after {content:'';position:absolute;left:2px;top:calc(50% - 18px);width:2px;height:36px;border-radius:2px;background:var(--border-subtle);}
#assistant-resize:hover::after,#assistant-resize:focus-visible::after {background:var(--accent-blue);}
#assistant-resize:focus-visible {outline:2px solid var(--accent-blue);outline-offset:-2px;}
#chat-panel.collapsed + #assistant-resize,body.chart-focus #assistant-resize {display:none;}
body.resizing-assistant,body.resizing-assistant * {cursor:col-resize!important;user-select:none!important;}
#chat-panel-head { padding: 16px 18px 0; }
#chat-panel-title { font-size: 14px; font-weight: 600; }
.chat-tab { text-transform: none; letter-spacing: 0; font-weight: 500; }
#chat-suggestions { padding: 12px 18px; }
#chat-suggestions-title { font-size: 13px; }
#chat-starter-prompts > summary {margin:0;cursor:pointer;color:var(--text-body);font-size:12px;}
#chat-starter-prompts[open] > summary {margin-bottom:12px;color:var(--text-headline);}
#authoring-intro > summary {cursor:pointer;color:var(--text-headline);font-size:13px;font-weight:600;}
#authoring-intro:not([open]) {padding:12px 18px;}
.suggestion { padding: 12px; background: #151e2a; border-color: #273446; }
.suggestion-label { font-size: 12px; }
#chat-messages { padding: 0 18px; overflow-x:hidden; }
.chat-msg { font-size: 12px; line-height: 1.65; border-radius: 8px; }
.chat-msg.user { background: #203658; border: 1px solid #334d75; }
.chat-msg.assistant.assistant-markdown {white-space:normal;min-width:0;overflow-wrap:anywhere;}
.assistant-markdown > :first-child {margin-top:0;}
.assistant-markdown > :last-child {margin-bottom:0;}
.assistant-markdown p {margin:0 0 10px;}
.assistant-markdown h3,.assistant-markdown h4 {margin:12px 0 6px;color:#dcecff;line-height:1.3;}
.assistant-markdown h3 {font-size:14px;}.assistant-markdown h4 {font-size:12px;}
.assistant-markdown ul,.assistant-markdown ol {margin:7px 0 10px;padding-left:20px;}
.assistant-markdown li {margin:3px 0;}
.assistant-markdown blockquote {margin:8px 0;padding:3px 0 3px 10px;border-left:3px solid #658ab3;color:#b6cadf;}
.assistant-markdown a {color:#90c9ff;text-decoration:underline;text-underline-offset:2px;}
.assistant-markdown :not(pre) > code {padding:1px 4px;border:1px solid #38506b;border-radius:4px;background:#162438;color:#d7e9fa;font-size:.92em;}
.assistant-markdown pre {position:relative;max-width:100%;overflow:auto;margin:9px 0;padding:13px;border:1px solid #32465f;border-radius:7px;background:#0c1521;color:#dbe9f7;font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre;}
.assistant-markdown pre[data-language]::before {content:attr(data-language);display:block;margin:-4px 0 8px;color:#8cb0d0;font:10px/1.2 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;}
.assistant-table-scroll {max-width:100%;overflow:auto;margin:9px 0;border:1px solid #354a63;border-radius:7px;}
.assistant-table-scroll table {min-width:max-content;width:100%;border-collapse:collapse;font-size:11px;}
.assistant-table-scroll th,.assistant-table-scroll td {padding:6px 9px;border-bottom:1px solid #2a3d52;text-align:left;vertical-align:top;white-space:normal;}
.assistant-table-scroll th {background:#1a2b3e;color:#d3e8fb;}
.chat-drawing-recovery { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.chat-drawing-recovery button { padding: 5px 10px; font-size: 11px; }
.chat-drawing-recovery [role="status"] { color: var(--text-muted); font-size: 11px; overflow-wrap: anywhere; }
#chart-container.drawing-moving, #chart-container.drawing-moving canvas { cursor: grabbing !important; }
body.drawing-gesture #busy-indicator.visible { display: none; }
.drawing-move-hint:not([hidden]) { position: absolute; left: 16px; bottom: 16px; z-index: 10; padding: 7px 10px; border: 1px solid #405975; border-radius: 6px; background: #122033; color: #bad5f5; font-size: 12px; pointer-events: none; }
.drawing-move-recovery:not([hidden]) { position:absolute; left:16px; bottom:16px; z-index:10; display:flex; align-items:center; gap:12px; max-width:calc(100% - 32px); padding:7px 10px; border:1px solid #405975; border-radius:6px; background:#122033; color:#bad5f5; font-size:12px; }
.drawing-move-recovery button { width:auto; margin:0; padding:4px 8px; white-space:nowrap; }
.drawing-move-recovery span { min-width:0; overflow-wrap:anywhere; }
#chat-panel-collapse { width: 12px; border-radius: 0; border: 0; background: #111720; }
#chat-composer { padding: 12px 16px; }
#research-job-status { font-size: 10px !important; line-height: 1.5; }
#research-job-details, .chat-execution-details { font-size: 10px; color: var(--text-muted); margin: 6px 0; }
#research-job-details[hidden] { display: none; }
#research-job-details summary, .chat-execution-details summary { cursor: pointer; padding: 4px 0; }
#research-job-diagnostics, .chat-execution-details pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 160px; overflow: auto; font-size: 10px; }
#research-job-check, #research-job-cancel { font-size: 11px; padding: 6px; }
#research-job-check { background: transparent; border-color: transparent; color: var(--text-muted); }
#research-job-cancel[hidden] { display: none; }
body.chart-focus #strategy-editor, body.chart-focus #chat-panel, body.chart-focus #chat-panel-collapse { display: none; }
body.chart-focus #headline-strip, body.chart-focus #pine-headline-strip, body.chart-focus #results-panel, body.chart-focus #results-collapse-bar { display: none !important; }
body.chart-focus #topbar, body.chart-focus #strategy-bar, body.chart-focus #version-status { display: none !important; }
body.chart-focus #main #chart-container { height: max(380px, calc(100dvh - 175px)); }
body.chart-focus #chart-focus { background: #1a2a43; color: #a8c1ff; }
@media (max-width: 1200px) {
  #topbar { gap: 10px; padding: 0 12px; }
  #brand { min-width: 110px; }
  #workspace-controls input { width: 110px; }
  #workspace-status { max-width: 145px; }
  #chart-toolbar { padding: 7px 10px; gap: 3px; flex-wrap: wrap; }
  .toolbar-btn { padding: 6px; font-size: 11px; }
  #strategy-editor { width: var(--strategy-editor-width, 350px); }
  #chart-legend { gap: 8px; }
  #chart-readout { flex-wrap: wrap; gap: 6px 12px; }
  #hs-metrics { gap: 16px; }
}
@media (max-width: 850px) {
  #workspace-controls input { display: none; }
  #workspace-controls.renaming #workspace-name { display: block; }
  #workspace-status { max-width: 100px; }
  #workspace-controls select { width: 135px; }
  #rail { width: 42px; }
  #workspace {position:relative;}
  #strategy-editor, #strategy-editor:has(#py-source), #chat-panel {
    position:fixed;z-index:60;right:12px;left:auto;bottom:auto;
    top:var(--compact-panel-top,160px);width:min(420px,calc(100% - 66px));
    height:calc(100dvh - var(--compact-panel-top,160px) - 12px);max-height:calc(100dvh - var(--compact-panel-top,160px) - 12px);
    box-sizing:border-box;border:1px solid #3a4c65;border-radius:12px;
    box-shadow:0 16px 48px #0009;overflow:clip;
  }
  #assistant-resize, #strategy-editor-resize, #chat-panel-collapse {display:none;}
  #chat-panel-head {position:relative;padding-right:46px;}
  #chat-panel-close {display:block;position:absolute;right:12px;top:10px;width:30px;height:30px;margin:0;padding:0;}
  #se-head, #chat-panel-head {flex-shrink:0;}
  #chat-suggestions, #authoring-intro {min-height:0;max-height:40%;overflow:auto;flex-shrink:1;}
  #chat-messages {min-height:0;}
  #chat-composer {flex-shrink:0;}
  #sb-identity { max-width: 100%; }
  #strategy-bar { align-items: flex-start; }
  #chart-readout-values { font-size: 10px; }
}
@media (max-width:850px) and (max-height:700px) {
  #chat-panel #chat-empty-state {min-height:0;padding:8px 4px;overflow:auto;justify-content:flex-start;}
  #chat-empty-state h2 {margin:5px 0 4px;font-size:17px;}
  #chat-empty-state ol {gap:4px;margin:8px 0 0;}
  #chat-empty-state li {padding:5px 7px;}
  #chat-suggestions {display:none;}
}
@media (prefers-reduced-motion: reduce) { button { transition: none; } }
@media (max-width: 760px) {
  #topbar {display:grid;grid-template-columns:22px minmax(0,1fr) 32px;grid-template-rows:auto auto;column-gap:8px;row-gap:4px;box-sizing:border-box;height:auto;min-height:72px;align-items:start;padding:8px 10px;}
  #brand {grid-column:1;grid-row:1;min-width:0;padding-top:6px;}
  #brand-name {display:none;}
  #workspace-controls {grid-column:2;grid-row:1 / span 2;display:flex;flex-wrap:wrap;gap:6px;margin-left:0;min-width:0;}
  #workspace-controls select {flex:1 1 110px;width:auto;min-width:80px;max-width:100%;}
  #workspace-controls.renaming #workspace-name {flex:1 1 100%;width:100%;min-width:0;}
  #workspace-new {flex:none;width:auto;min-width:0;padding:6px;font-size:10px;white-space:nowrap;}
  #workspace-status {position:static;flex:1 0 100%;max-width:none;white-space:normal;overflow-wrap:anywhere;font-size:10px;line-height:1.3;}
  #workspace-recovery:not([hidden]) {display:flex;flex:0 0 auto;gap:4px;}
  #workspace-recovery>button,#workspace-recovery-more>summary {height:28px;padding:5px 7px;font-size:9px;}
  #workspace-recovery-menu {position:fixed;top:64px;right:10px;left:10px;width:auto;}
  #topbar-actions {grid-column:3;grid-row:1;}
  #topbar-actions .icon-btn {width:32px;min-width:32px;padding:6px;}
}
body.python-code-focus::before { content:"";position:fixed;inset:0;background:#050b14bf;z-index:998; }
body.python-code-focus #strategy-editor:has(#py-source) { position:fixed;top:16px;right:16px;bottom:16px;left:auto;
  width:min(940px,calc(100vw - 32px));height:auto;max-height:none;z-index:999;
  border:1px solid #51729b;border-radius:12px;box-shadow:0 24px 80px #000b;overflow:hidden; }
body.python-code-focus #strategy-editor .py-editor { height:max(400px,calc(100dvh - 280px)); }
body.python-code-focus #strategy-editor-resize { display:none; }
@media (max-width: 850px) {
  body.python-code-focus #strategy-editor:has(#py-source) { top:8px;right:8px;bottom:8px;width:calc(100vw - 16px); }
  body.python-code-focus #strategy-editor .py-editor { height:max(300px,calc(100dvh - 250px)); }
}
#chart-tools-bar {display:flex;align-items:center;gap:5px;padding:0 10px 4px;flex-shrink:0;min-width:0;}
#chart-tools-bar[hidden] {display:none;}
#chart-tools-toggle {width:auto;flex:none;margin:0;min-height:26px;padding:3px 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:#8f9bad;font-size:10px;white-space:nowrap;cursor:pointer;}
#chart-tools-toggle:hover {border-color:#30343d;background:#15161b;color:#e7e8ed;}
#chart-tools-toggle:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
.chart-tools-scroll {display:none;align-items:center;justify-content:center;flex:none;width:24px;height:26px;margin:0;padding:0;border:1px solid #30343d;border-radius:5px;background:#121318;color:#aeb3bf;font-size:17px;line-height:1;cursor:pointer;}
#chart-tools-bar.has-scroll .chart-tools-scroll {display:inline-flex;}
.chart-tools-scroll:disabled {opacity:.35;cursor:default;}
.chart-tools-scroll:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
#chart-studies {display:flex;flex:1;min-width:0;flex-wrap:nowrap;align-content:flex-start;gap:3px;max-height:34px;overflow:auto;scrollbar-width:none;padding-bottom:1px;}
#chart-studies::-webkit-scrollbar {display:none;}
#chart-tools-bar.is-expanded #chart-studies {flex-wrap:wrap;max-height:160px;}
#chart-tools-bar.is-expanded .study-chip {flex:1 1 100%;width:100%;}
#chart-tools-bar.is-expanded .session-study-parameters {max-width:none;}
#chart-tools-bar:not(.is-expanded) .study-chip {flex:0 0 auto;max-width:100%;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-preview {display:none;}
#chart-tools-bar:not(.is-expanded) .study-chip strong {max-width:170px;}
#chart-tool-undo:not([hidden]) {display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:4px 18px 8px;color:#afc1d6;font-size:12px;flex-shrink:0;}
#chart-tool-undo-label {min-width:0;overflow-wrap:anywhere;}
#chart-tool-undo-button {width:auto;flex:none;margin:0;white-space:nowrap;background:#172536;border:1px solid #354b65;border-radius:5px;color:#a8d7ff;padding:5px 10px;cursor:pointer;}
.chart-value-table summary {display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:24px;}
.chart-value-table summary::-webkit-details-marker {display:none;}
.chart-value-table summary::before {content:'\203a';color:#94a7bf;font-size:17px;line-height:1;transform:rotate(0deg);}
.chart-value-table[open] summary::before {transform:rotate(90deg);}
.chart-value-table:not([open]) {padding-top:6px;padding-bottom:6px;}
.chart-value-table summary:hover strong {color:#fff;}
.chart-table-cursor-control {display:flex;align-items:center;gap:7px;justify-self:end;pointer-events:auto;padding:5px 8px;border:1px solid #314056;border-radius:5px;background:#111a28f5;color:#afc1d6;font-size:10px;cursor:pointer;}
.chart-table-cursor-control input {width:auto;margin:0;accent-color:#81c4ed;}
.chart-table-toolbar {display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0;position:sticky;top:0;z-index:1;background:#0b1017f5;}
#chart-value-cards {display:grid;gap:8px;min-width:0;}
#chart-value-cards[hidden] {display:none;}
.chart-value-cards-toggle {display:flex;align-items:center;gap:5px;pointer-events:auto;width:auto;flex:none;margin:0;padding:5px 8px;border:1px solid #314056;border-radius:5px;background:#111a28f5;color:#afc1d6;font-size:10px;cursor:pointer;white-space:nowrap;}
.chart-value-cards-toggle::before {content:'\203a';font-size:14px;line-height:12px;transform:rotate(0deg);}
.chart-value-cards-toggle[aria-expanded=true]::before {transform:rotate(90deg);}
.chart-value-cards-toggle:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
.chart-table-dock {width:auto;min-width:27px;margin:0;padding:5px 7px;border:1px solid #314056;border-radius:5px;background:#111a28f5;color:#c0d8f4;font-size:14px;line-height:1;cursor:pointer;pointer-events:auto;}
.chart-table-dock:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
#chart-output-readouts {position:absolute;inset:0;pointer-events:none;z-index:1;}
.chart-pane-readout {position:absolute;left:10px;right:76px;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;pointer-events:auto;}
.chart-pane-readout[hidden] {display:none;}
.chart-readout-content {min-height:0;width:100%;scrollbar-width:thin;}
.chart-readout-tool {display:flex;flex-wrap:wrap;align-items:center;gap:3px 8px;margin-bottom:3px;}
.chart-readout-tool:last-child {margin-bottom:0;}
.chart-pane-readout .chart-output-readout.unavailable {display:none;}
.chart-readout-tool-header {display:flex;align-items:center;gap:5px;max-width:100%;width:100%;}
.chart-readout-tool-name {max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;color:#dce7f4;background:#0b1017e6;padding:2px 5px;line-height:16px;}
.chart-readout-tool-name:is(button) {width:auto;margin:0;border:1px solid transparent;border-radius:4px;cursor:pointer;text-align:left;}
.chart-readout-tool-name:is(button):hover {border-color:#527394;background:#1b2c40;color:#fff;}
.chart-readout-ask {flex:none;width:auto;margin:0;padding:2px 6px;border:1px solid #385979;border-radius:4px;background:#132337ed;color:#afd8ff;font-size:10px;line-height:16px;cursor:pointer;}
.chart-readout-ask:hover {border-color:#7cb4e6;background:#1b3652;color:#fff;}
.chart-readout-tool-header button:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
.chart-output-readout {display:inline-flex;gap:7px;align-items:center;min-width:0;max-width:100%;box-sizing:border-box;padding:2px 5px;background:#0b1017e6;border-radius:3px;font-size:11px;line-height:16px;color:#b5c4d7;}
.chart-output-label {min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.chart-readout-swatch {flex:0 0 12px;border-top:2px solid var(--output-color);}
.chart-readout-swatch.is-circle,.chart-readout-swatch.is-cross {border:0;height:12px;position:relative;}
.chart-readout-swatch.is-circle::after {content:'';position:absolute;left:2px;top:2px;width:8px;height:8px;border-radius:50%;background:var(--output-color);}
.chart-readout-swatch.is-cross::after {content:'×';position:absolute;left:1px;top:-5px;color:var(--output-color);font-size:17px;font-weight:700;}
.chart-output-readout strong {flex-shrink:0;color:var(--output-color);font-weight:500;font-variant-numeric:tabular-nums;}
.chart-output-readout.unavailable strong {color:#8292a6;}
.study-chip {display:flex;flex-wrap:nowrap;align-items:center;gap:2px;min-width:0;max-width:100%;height:27px;box-sizing:border-box;border:1px solid transparent;border-radius:5px;padding:1px 3px 1px 7px;background:rgba(9,10,13,.78);font-size:11px;}
.study-chip:hover,.study-chip:focus-within {border-color:#30343d;background:#15161b;}
.study-chip::before {content:"";flex:none;width:2px;height:14px;margin-right:4px;border-radius:2px;background:var(--study-color);opacity:.9;}
.study-chip strong {color:#d9dbe2;font-weight:550;max-width:210px;min-width:32px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.study-chip>button {display:inline-grid;place-items:center;flex:none;width:23px;height:23px;min-height:0;margin:0;padding:0;border:0;border-radius:4px;background:transparent;color:#8f96a5;font-size:11px;line-height:1;cursor:pointer;}
.study-chip>button:hover,.study-chip>button:focus-visible {background:#252831;color:#f4f5f7;outline:none;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-language,
#chart-tools-bar:not(.is-expanded) .study-chip .study-preview,
#chart-tools-bar:not(.is-expanded) .study-chip .study-parameters,
#chart-tools-bar:not(.is-expanded) .study-chip>span:not(.study-unavailable) {display:none;}
.study-chip .study-language {display:inline-flex;align-items:center;flex:none;max-width:none;padding:2px 6px;border:1px solid #38536d;border-radius:999px;background:#15283b;color:#b9d7ec;font-size:9px;font-weight:700;letter-spacing:.025em;white-space:nowrap;}
.study-chip[data-object-type="strategy"] .study-language {border-color:#356f67;background:#12342f;color:#aee8d9;}
.study-chip .study-kind-icon {width:19px;height:19px;box-sizing:border-box;padding:2px;justify-content:center;border-radius:5px;}
.study-kind-icon svg {display:block;width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;}
.study-parameters {color:#8da2b9;font-variant-numeric:tabular-nums;font-size:10px;}
.indicator-name {min-width:0;}
.indicator-code {display:inline-block;margin-left:7px;color:#8ba4c3;font-size:10px;letter-spacing:.03em;}
#indicator-list .indicator-name {line-height:1.35;color:#e3ecf7;font-size:13px;font-weight:550;}
#indicator-list label:focus-within {outline:2px solid #8bb4ff;outline-offset:-2px;}
.indicator-location {color:#8499b2;font-size:10px;white-space:nowrap;}
#indicator-list label {padding:9px 11px;border:1px solid transparent;border-radius:7px;cursor:pointer;}
#indicator-list label:hover {background:#1b2b3e;border-color:#344b66;}
#indicator-list label:has(input:checked) {background:#112f35;border-color:#277d76;box-shadow:inset 0 0 18px #15d9bb0b;}
#indicator-list label:has(input:checked) .indicator-name {color:#f1f8ff;}
#indicator-list label.indicator-ai-action {min-height:0;padding:0;border:0;}
#indicator-list label.indicator-ai-action button {width:100%;min-height:38px;margin:0;padding:8px 11px;text-align:left;background:#16283d;border:1px solid #334c69;color:#dcecff;font-size:12px;}
#indicator-list label.indicator-ai-action button:hover {background:#203b59;border-color:#5b85b3;}
#indicator-list label.indicator-ai-action button[data-chart-tool-type="custom_pine"] {background:#23446e;border-color:#4e80bd;color:#f1f7ff;}
#indicator-list input[type=checkbox] {position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.indicator-catalog-row>label {position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;box-sizing:border-box;background:#101a28;border-color:#26384d;}
.indicator-catalog-icon {display:grid;place-items:center;width:32px;height:32px;border:1px solid #34506c;border-radius:9px;background:linear-gradient(145deg,#172c43,#101c2b);color:#73c7ff;font-size:20px;font-weight:500;box-shadow:inset 0 1px #ffffff0d;pointer-events:none;}
.indicator-catalog-copy {display:flex;flex-direction:column;gap:4px;min-width:0;}
.indicator-catalog-meta {display:flex;align-items:center;gap:6px;min-height:15px;}
.indicator-catalog-state {align-self:center;padding:4px 8px;border:1px solid #3c5875;border-radius:999px;color:#b9cce0;font-size:10px;font-weight:700;letter-spacing:.02em;}
.indicator-catalog-row>label:hover .indicator-catalog-state {border-color:#69b8ef;color:#eaf7ff;background:#183653;}
.indicator-catalog-row>label:has(input:checked) .indicator-catalog-icon {border-color:#27bca9;background:linear-gradient(145deg,#13443f,#102a2d);color:#5ff0d6;box-shadow:0 0 14px #20d6ba2b;}
.indicator-catalog-row>label:has(input:checked) .indicator-catalog-state {border-color:#299a8b;background:#123f3a;color:#8df6df;}
#indicators-popover {position:fixed;z-index: 80;width:690px;max-width:calc(100vw - 24px);max-height:min(760px,calc(100dvh - 110px));padding:18px;box-sizing:border-box;}
#chart-picker-sticky {position:sticky;top:-18px;z-index:3;margin:-18px -18px 12px;padding:18px 18px 0;background:var(--bg-card);border-bottom:1px solid #293d54;}
#chart-picker-title {color:#edf4ff;font-size:17px;font-weight:650;letter-spacing:-.02em;}
.chart-picker-subtitle {color:#91a5bd;font-size:12px;line-height:1.5;margin:5px 0 14px;}
#pine-picker-quick-actions {display:flex;gap:8px;margin:-4px 0 12px;}
#pine-picker-quick-actions[hidden] {display:none;}
#pine-picker-quick-actions button {flex:1;min-height:34px;padding:6px 10px;border:1px solid #476a91;border-radius:7px;background:#193451;color:#e5f2ff;font-size:12px;font-weight:650;cursor:pointer;}
#pine-picker-quick-actions button:hover,#pine-picker-quick-actions button:focus-visible {background:#285179;border-color:#80b8ef;}
#indicator-search {width:100%;box-sizing:border-box;min-height:38px;margin-bottom:16px;border:1px solid #34475d;border-radius:7px;background:#0c1520;padding:9px 11px;color:#e0ebfa;font-size:12px;}
#chart-picker-views {display:grid;grid-template-columns:.55fr 1.45fr 1fr .7fr .7fr;gap:3px;margin:0 0 12px;padding:3px;border:1px solid #2b4056;border-radius:8px;background:#0b1623;}
#chart-picker-views button {min-width:0;margin:0;padding:8px 6px;border:0;border-radius:5px;background:transparent;color:#93abc6;font-size:11px;font-weight:650;white-space:nowrap;cursor:pointer;}
#chart-picker-views button[aria-pressed=true] {background:#223752;color:#ecf5ff;box-shadow:0 1px 5px #0005;}
#chart-picker-views button:hover:not([aria-pressed=true]) {background:#182a3f;color:#dce8f8;}
#chart-picker-views button:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
#pine-picker-categories {display:flex;flex-wrap:wrap;gap:6px;margin:-5px 0 12px;padding:2px 0 4px;}
#pine-picker-categories[hidden] {display:none;}
#pine-picker-categories button {flex:none;width:auto;min-width:max-content;padding:6px 10px;border:1px solid #344b65;border-radius:999px;background:#102034;color:#aebfd3;font-size:11px;cursor:pointer;}
#pine-picker-categories button[aria-pressed=true] {border-color:#64a9e9;background:#244b73;color:#f2f8ff;}
#pine-picker-categories button:hover {border-color:#64a9e9;color:#f2f8ff;}
#pine-picker-categories button:focus-visible {outline:2px solid #8bb4ff;outline-offset:2px;}
#indicator-search:focus-visible {outline:2px solid #8bb4ff;outline-offset:2px;}
#chart-picker-filter-disclosure {margin:-9px 0 9px;}
#chart-picker-filter-disclosure[hidden] {display:none;}
#chart-picker-filter-disclosure summary {display:flex;align-items:center;justify-content:flex-end;gap:5px;width:max-content;margin-left:auto;padding:4px 2px;color:#8fa3bb;font-size:10px;font-weight:650;cursor:pointer;list-style:none;}
#chart-picker-filter-disclosure summary::-webkit-details-marker {display:none;}
#chart-picker-filter-disclosure summary span {transition:transform .16s ease;}
#chart-picker-filter-disclosure[open] summary span {transform:rotate(180deg);}
#chart-picker-filter-disclosure summary:hover,#chart-picker-filter-disclosure summary:focus-visible {color:#e2edfb;}
#chart-picker-filters {display:grid;grid-template-columns:1fr 1.35fr 1fr .85fr;gap:6px;margin:5px 0 0;padding:9px;border:1px solid #26384c;border-radius:8px;background:#09111bcc;}
#chart-picker-filters select,#chart-picker-filters input {min-width:0;height:32px;border:1px solid #2f4258;border-radius:7px;background:#0a111b;color:#cfd9e7;padding:0 8px;font-size:10px;}
#chart-picker-filters select:focus-visible,#chart-picker-filters input:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
#indicators-popover h3 {display:flex;align-items:center;gap:7px;margin:0 0 9px;color:#a6b9d0;font-size:10px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;}
#indicators-popover h3 span {color:#71869e;font-size:10px;font-variant-numeric:tabular-nums;}
.chart-picker-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:18px;}
@media(min-width:1000px) {#indicators-popover .chart-picker-grid {grid-template-columns:repeat(3,minmax(0,1fr));}}
#pine-starters-title,#pine-strategy-starters-title {margin:15px 8px 6px;color:#93abc6;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
#pine-indicator-starters {margin:0 0 10px;}
.pine-execution-status {margin:4px 0 12px;color:#aebfd3;font-size:12px;line-height:1.45;}
.pine-execution-status[data-ready="true"] {color:#7de0b8;}
.pine-execution-status[data-ready="false"] {color:#ffd18c;}
#pine-strategy-starters {margin:0 0 10px;}
#pine-indicator-starters[hidden],#pine-strategy-starters[hidden],#pine-strategy-starters-title[hidden],#python-sdk-starters[hidden],#python-sdk-starters-title[hidden] {display:none;}
.chart-picker-card {display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;min-height:72px;margin:0;padding:11px;text-align:left;white-space:normal;border:1px solid #27394e;border-radius:7px;background:#142031;color:#dce8f8;cursor:pointer;}
.chart-picker-card {scroll-margin-top:350px;}
.chart-picker-card strong {font-size:12px;font-weight:600;line-height:1.3;}
.chart-picker-card span {font-size:11px;line-height:1.4;color:#8fa5be;}
.chart-picker-card:hover {border-color:#5177a4;background:#1b2c42;}
.chart-picker-discovery-card {position:relative;min-height:84px;padding-top:29px;}
.chart-picker-discovery-card::before {content:attr(data-badge);position:absolute;top:8px;left:10px;color:#7fb7e9;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;}
.chart-picker-community-card small {max-width:100%;overflow:hidden;text-overflow:ellipsis;color:#a7bad0;font-size:10px;white-space:nowrap;}
.chart-picker-community-card .chart-picker-community-trust {color:#e2b66c;}
#chart-picker-community-more {display:block;width:100%;margin:-9px 0 17px;padding:8px;border:1px solid #365270;border-radius:7px;background:#14273a;color:#dce8f8;cursor:pointer;}
#chart-picker-community-more:hover {background:#1b344e;border-color:#5a84ad;}
#chart-picker-community-more[hidden],#chart-picker-community[hidden],#chart-picker-personal[hidden] {display:none;}
.chart-picker-card:focus-visible,#indicator-search-clear:focus-visible {outline:2px solid #8bb4ff;outline-offset:2px;}
.pine-picker-item {position:relative;min-width:0;}
.pine-picker-item[hidden] {display:none;}
.pine-picker-item>.chart-picker-card {width:100%;height:100%;box-sizing:border-box;padding-right:34px;}
.pine-picker-favorite {position:absolute;top:7px;right:7px;width:25px;height:25px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#8fa5be;font-size:19px;line-height:1;cursor:pointer;}
.pine-picker-favorite:hover,.pine-picker-favorite[aria-pressed=true] {color:#f1c578;background:#273648;}
.pine-picker-favorite:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
.chart-tool-dialog.python-sdk-starter-picker {width:min(760px,94vw);max-height:85vh;display:flex;flex-direction:column;gap:10px;}
.python-sdk-starter-picker>input {width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #45617e;border-radius:7px;background:#111e2c;color:#e5f2ff;font-size:14px;}
.python-sdk-starter-picker>p {margin:0;color:#9fb8d0;font-size:11px;}
.python-sdk-starter-list {min-height:80px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:2px;}
.python-sdk-filters {display:flex;gap:6px;flex-wrap:wrap;}
.python-sdk-filters button {padding:6px 11px;border:1px solid #344b65;border-radius:999px;background:#102034;color:#aebfd3;font-size:11px;cursor:pointer;}
.python-sdk-filters button[aria-pressed=true] {border-color:#64a9e9;background:#244b73;color:#f2f8ff;}
.python-sdk-starter-item {position:relative;min-width:0;}
.python-sdk-starter-item>.python-sdk-starter {width:100%;height:100%;box-sizing:border-box;padding-right:34px;}
.python-sdk-favorite {position:absolute;top:7px;right:7px;width:25px;height:25px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#8fa5be;font-size:19px;line-height:1;cursor:pointer;}
.python-sdk-favorite:hover,.python-sdk-favorite[aria-pressed=true] {color:#f1c578;background:#273648;}
.python-sdk-favorite:focus-visible,.python-sdk-filters button:focus-visible {outline:2px solid #8bb4ff;outline-offset:1px;}
.python-sdk-starter {display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;padding:11px;border:1px solid #2d4057;border-radius:7px;background:#142335;color:#e5f2ff;text-align:left;cursor:pointer;}
.python-sdk-starter:hover,.python-sdk-starter:focus-visible {border-color:#68a7cf;background:#1c3046;}
.python-sdk-starter strong {font-size:12px;text-transform:capitalize;}
.python-sdk-starter small {max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9eb3c8;}
@media(max-width:600px) {.python-sdk-starter-list {grid-template-columns:1fr;}}
#indicator-list label {min-height:43px;box-sizing:border-box;gap:10px;}
.indicator-catalog-row {display:flex;align-items:center;gap:5px;min-width:0;}
.indicator-catalog-row:has(> label[hidden]) {display:none;}
.indicator-catalog-row > label {flex:1;min-width:0;}
#indicator-list .indicator-instance-count {flex:none;padding:2px 5px;border-radius:4px;background:#245074;color:#c9e7ff;font-size:10px;white-space:nowrap;}
#indicator-list .indicator-instance-count[hidden] {display:none;}
.indicator-picker-hint {margin:0 0 8px;color:#9badc2;font-size:11px;line-height:1.4;}
#indicator-list[hidden],#active-indicator-list[hidden] {display:none;}
#indicator-list.is-searching {display:flex;flex-direction:column;gap:0;}
#indicator-list.is-searching .indicator-catalog-row {flex:none;}
#indicator-list.is-searching :is(#pine-indicator-starters,#pine-strategy-starters,#python-sdk-starters) {flex:none;}
#active-indicator-list {display:flex;flex-direction:column;gap:7px;}
.active-indicator-toolbar {display:flex;gap:7px;justify-content:flex-end;}
#active-indicator-list .active-indicator-toolbar button {width:auto;min-height:29px;padding:4px 9px;border:1px solid #3d5774;border-radius:5px;background:#1b3047;color:#e0ebfa;cursor:pointer;}
.active-indicator-row {display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:50px;padding:8px 10px;border:1px solid #344b66;border-radius:7px;background:#14273a;}
.active-indicator-row[hidden] {display:none;}
.active-indicator-row > div {flex:1;min-width:0;}
.active-indicator-row strong {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e9f2ff;font-size:13px;}
.active-indicator-row small {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9badc2;font-size:11px;margin-top:3px;}
#active-indicator-list .active-indicator-row button {flex:none;width:auto;min-height:29px;padding:4px 8px;border:1px solid #3d5774;border-radius:5px;background:#1b3047;color:#e0ebfa;font-size:11px;cursor:pointer;}
.active-indicator-row button:hover {background:#264564;}
.active-indicator-row button:focus-visible {outline:2px solid #8bb4ff;outline-offset:2px;}
.active-indicator-row button:disabled {opacity:.42;cursor:default;}
.indicator-group-heading {grid-column:1/-1;margin:12px 8px 5px;color:#93abc6;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.indicator-group-heading:first-child {margin-top:1px;}
.indicator-group-heading[hidden] {display:none;}
.indicator-show-all-builtins {grid-column:1/-1;width:100%;min-height:38px;margin:0 0 3px;padding:8px 11px;border:1px solid rgba(103,146,193,.42);border-radius:8px;background:linear-gradient(105deg,rgba(22,38,55,.92),rgba(19,24,37,.94));color:#d9e9fa;font-size:11px;font-weight:700;text-align:left;cursor:pointer;}
.indicator-show-all-builtins::after {content:'›';float:right;color:#7fcde4;font-size:16px;line-height:12px;transform:rotate(90deg);}
.indicator-show-all-builtins[aria-expanded="true"]::after {transform:rotate(-90deg);}
.indicator-show-all-builtins:hover,.indicator-show-all-builtins:focus-visible {border-color:#6ca4cf;background:linear-gradient(105deg,rgba(28,54,73,.96),rgba(29,29,48,.96));outline:none;}
.indicator-show-all-builtins[hidden] {display:none;}
#pine-starters-title,#pine-indicator-starters,#pine-strategy-starters-title,#pine-strategy-starters,#python-sdk-starters-title,#python-sdk-starters {grid-column:1/-1;}
@media(max-width:620px) {#indicator-list {grid-template-columns:1fr;}}
#indicator-search-empty {padding:20px 10px;text-align:center;color:#dce8f8;font-size:13px;}
#indicator-search-empty p {color:#91a5bd;font-size:12px;line-height:1.5;}
.indicator-empty-actions {display:flex;justify-content:center;flex-wrap:wrap;gap:8px;}
#indicator-search-ask {padding:8px 13px;border:1px solid #6493d7;border-radius:6px;background:#235084;color:#f1f7ff;font-weight:650;cursor:pointer;}
#indicator-search-ask:hover {background:#2d6099;}
#indicator-search-clear {padding:8px 13px;border:1px solid #3e5878;border-radius:6px;background:#1b2c42;color:#dce8f8;cursor:pointer;}
.chart-picker-card[hidden],#chart-picker-tools[hidden],#chart-picker-indicators[hidden],#indicator-search-empty[hidden] {display:none;}
@media(max-width:600px) {#indicators-popover {padding:14px;}#chart-picker-sticky {top:-14px;margin:-14px -14px 12px;padding:14px 14px 0;}.chart-picker-card {padding:9px;}#chart-picker-filters {grid-template-columns:1fr 1fr;}}
.study-chip>span {min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.study-actions[popover] {position:fixed;inset:auto;margin:0;min-width:190px;padding:6px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:linear-gradient(145deg,rgba(17,17,21,.98),rgba(7,7,9,.99));color:#e8e8ed;box-shadow:0 20px 54px #000b,0 0 24px rgba(111,87,230,.08);backdrop-filter:blur(18px) saturate(115%);}
.study-actions:popover-open {display:flex;flex-direction:column;gap:2px;}
.study-actions button {text-align:left;min-height:34px;border-radius:7px;color:#b9bec9;background:transparent;}
.study-actions button:hover,.study-actions button:focus-visible {background:linear-gradient(110deg,rgba(57,201,225,.09),rgba(121,90,235,.12));color:#fff;outline:none;}
.study-actions .study-remove {color:#edb0b0;}
.study-chip .study-more {font-size:13px;letter-spacing:1px;min-width:28px;}
.study-chip .study-settings {font-size:17px;line-height:1;min-width:25px;}
.study-chip.is-hidden {border-left-color:#607080;}
.study-chip.is-unavailable {border-left-color:#c9a770;}
.study-chip .study-unavailable {color:#e5bd77;font-weight:650;}
.study-chip .study-retry {color:#f0c77f;}
.study-chip .study-add-alert {color:#88d7c4;}
.study-chip .study-preview {color:#8bd6cb;font-weight:650;}
#chart-tools-bar:not(.is-expanded) .study-parameters {display:none;}
@media(max-width:600px) {
  #chart-tools-bar.is-expanded {flex-wrap:wrap;}
  #chart-tools-bar.is-expanded #chart-studies {flex:1 0 100%;max-width:100%;}
  #chart-tools-bar.is-expanded #chart-studies {max-height:240px;}
  #chart-tools-bar.is-expanded .study-chip {flex-wrap:wrap;height:auto;min-height:48px;}
  #chart-tools-bar.is-expanded .study-chip>.session-study-parameters {
    order:10;flex:1 0 100%;width:100%;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.3;
  }
}
.study-chip.is-hidden>strong,.study-chip.is-hidden>span {color:#8b9bab;}
.study-chip .study-visibility {min-width:32px;color:#a9c6e8;}
.study-chip .study-view-pane {color:#83d9d3;font-weight:650;white-space:nowrap;}
.study-chip>button:hover,.study-chip>button:focus-visible {background:#25364a;border-radius:4px;color:#fff;}
@media(max-width:1100px) {#chart-tools-bar.is-expanded .study-chip {width:100%;}.study-chip>span {max-width:150px;}}
.chart-tool-list {display:flex;flex-direction:column;gap:8px;max-height:55vh;overflow:auto;}
.chart-tool-list article {display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #293b4e;border-radius:8px;background:#0c131c;}
.chart-tool-list article div {flex:1;min-width:0;}
.chart-tool-dialog header h2 {flex:1;min-width:0;}
.chart-tool-dialog header button {width:auto;flex:none;}
.chart-tool-dialog.formula-settings {max-height:85vh;overflow:hidden;}
.formula-settings form {display:flex;flex-direction:column;max-height:calc(85vh - 105px);}
.formula-settings .formula-fields {overflow:auto;min-height:0;padding-right:8px;scroll-padding-block:20px;}
.formula-settings .formula-fields :is(input,select) {scroll-margin-block:16px;}
.chart-tool-dialog.formula-settings h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.chart-tool-dialog.event-tool-builder {width:min(510px,92vw);max-height:85vh;overflow:hidden;}
.event-tool-builder form {display:flex;flex-direction:column;max-height:calc(85vh - 105px);}
.event-tool-builder .formula-fields {overflow:auto;min-height:0;padding-right:8px;}
:is(#opening-range-dialog,.chart-tool-dialog).event-tool-builder [hidden] {display:none;}
.event-tool-builder h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.event-tool-builder fieldset {border:1px solid #263747;border-radius:8px;padding:12px;margin:12px 0;min-width:0;}
.event-tool-builder .formula-equation {font-family:monospace;overflow-wrap:anywhere;background:#0c131c;border-radius:6px;padding:10px;}
.event-condition-add,.event-condition-remove {width:auto;background:#172434;color:#c4d4e7;border:1px solid #34475c;border-radius:6px;padding:8px 12px;font-size:12px;}
.formula-calculation-inputs {border:0;padding:0;margin:0;min-width:0;}
.formula-calculation-inputs[hidden] {display:none;}
.formula-shared-help {color:var(--text-muted);font-size:12px;line-height:1.5;margin:6px 0 12px;}
.formula-settings form > footer,.formula-settings form > .or-error {flex:none;}
.formula-settings h3 {color:#dce7f4;font-size:13px;margin-top:24px;padding-top:14px;border-top:1px solid #263747;}
.formula-definition-title {color:#dce7f4;font-size:12px;margin:20px 0 8px;}
.formula-settings .formula-equation {font-family:monospace;overflow-wrap:anywhere;background:#0c131c;border-radius:6px;padding:10px;}
.formula-parameter-help {display:block;color:#a9b9cb;font-size:11px;line-height:1.5;letter-spacing:normal;margin:5px 0 0;}
.formula-settings fieldset {border:1px solid #263747;border-radius:8px;padding:12px;margin:12px 0;min-width:0;}
.percentile-channel-settings label[hidden] {display:none;}
.chart-tool-dialog.percentile-channel-settings h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.percentile-channel-settings .percentile-more-settings {width:auto;background:#172434;color:#c4d4e7;border:1px solid #34475c;border-radius:6px;padding:8px 12px;font-size:12px;}
.percentile-channel-settings .percentile-more-settings:disabled {opacity:.5;}
.formula-settings legend {font-size:12px;color:#dce7f4;}
:is(#opening-range-dialog,.chart-tool-dialog).python-chart-settings {width:min(760px,92vw);max-height:85vh;overflow:hidden;}
.python-chart-settings form {display:flex;flex-direction:column;max-height:calc(85vh - 105px);}
.python-chart-settings .formula-fields {overflow:auto;min-height:0;padding-right:8px;}
.python-chart-settings .python-community-origin {display:inline-flex;width:fit-content;margin:0 0 8px;padding:5px 9px;border:1px solid #315471;border-radius:999px;background:#102537;color:#b9d9ed;font-size:11px;font-weight:650;letter-spacing:.01em;}
.python-chart-settings textarea {display:block;box-sizing:border-box;width:100%;resize:vertical;font:12px/1.6 monospace;background:#0c131c;color:#dce7f4;border:1px solid #263747;border-radius:6px;padding:10px;}
.python-chart-code-editor {display:flex;height:300px;min-height:180px;overflow:hidden;border:1px solid #344a61;border-radius:8px;background:#0b121b;resize:vertical;}
.python-chart-code-gutter {flex:none;min-width:36px;box-sizing:border-box;margin:0;padding:10px 8px;overflow:hidden;text-align:right;user-select:none;white-space:pre;font:12px/1.6 monospace;color:#8195a9;border-right:1px solid #263747;}
.python-chart-code-gutter .py-bad-line {color:#ff808f;font-weight:700;}
.python-chart-settings .python-chart-code-editor textarea {flex:1;height:100%;min-width:0;margin:0;padding:10px;border:0;border-radius:0;resize:none;outline:none;white-space:pre;tab-size:4;}
.python-chart-code-editor:focus-within {border-color:#6bbdec;box-shadow:0 0 0 2px #3185af55;}
.python-chart-code-editor.code-wrapped .python-chart-code-gutter {display:none;}
.python-chart-settings .python-chart-code-editor.code-wrapped textarea {white-space:pre-wrap;overflow-wrap:anywhere;}
.pine-code-surface {position:relative;flex:1;min-width:0;height:100%;overflow:hidden;}
.python-chart-settings .pine-code-surface textarea,.pine-code-highlight {box-sizing:border-box;position:absolute;inset:0;width:100%;height:100%;margin:0;padding:10px;font:12px/1.6 monospace;letter-spacing:normal;tab-size:4;white-space:pre;overflow:auto;}
.python-chart-settings .pine-code-surface textarea {background:transparent;color:transparent;caret-color:#e9f4ff;z-index:1;}
.pine-code-surface textarea::selection {background:#4389b877;}
.pine-code-highlight {pointer-events:none;border:0;color:#dce7f4;overflow:hidden;}
.pine-code-surface.plain-code .pine-code-highlight {display:none;}
.python-chart-settings .pine-code-surface.plain-code textarea {color:#dce7f4;-webkit-text-fill-color:#dce7f4;}
.python-chart-code-editor.code-wrapped .pine-code-highlight,.python-chart-code-editor.code-wrapped .pine-code-surface textarea {white-space:pre-wrap;overflow-wrap:anywhere;}
.pine-token-comment {color:#91a8b6;}
.pine-token-string {color:#e7bd88;}
.pine-token-number {color:#c7a9f4;}
.pine-token-keyword {color:#ff9eb7;}
.pine-token-builtin {color:#81d5e9;}
@media (forced-colors:active) {.pine-code-highlight {display:none;}.python-chart-settings .pine-code-surface textarea {color:CanvasText;}}
.pine-editor-toolbar {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 9px;}
.pine-editor-toolbar button {width:auto;min-height:30px;padding:5px 9px;font-size:11px;}
.pine-editor-toolbar select {width:auto;max-width:230px;min-height:30px;margin:0;padding:4px 7px;font-size:11px;}
.pine-editor-toolbar input[type="number"] {width:64px;min-height:30px;margin:0;padding:4px 7px;font-size:11px;}
.pine-editor-toolbar span {margin-left:auto;color:#9db7c7;font:11px/1.4 ui-monospace,Consolas,monospace;}
.pine-editor-find[hidden] {display:none;}
.pine-editor-find {display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 9px;padding:9px;border:1px solid #36516b;border-radius:8px;background:#152638;}
.pine-chart-settings .pine-editor-find input {flex:1 1 150px;width:auto;min-width:120px;min-height:31px;margin:0;padding:5px 8px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-editor-find button {width:auto;min-height:31px;padding:5px 9px;}
.pine-editor-find span {flex:1 1 100%;color:#a9c5d9;font-size:11px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-source-expanded {width:min(1120px,96vw);max-height:94vh;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded {width:100%;max-width:none;max-height:none;}
.pine-source-expanded form {max-height:calc(94vh - 105px);}
.pine-source-expanded .python-chart-code-editor {height:min(62vh,700px);min-height:300px;}
.python-chart-settings .chart-code-wrap {display:block;width:auto;margin:0 0 8px auto;padding:5px 9px;font-size:11px;}
.python-chart-settings summary {cursor:pointer;color:#afc5db;margin:16px 0 8px;}
.python-chart-diagnostic {margin:10px 0;padding:12px;border:1px solid #7e3547;border-radius:7px;background:#241722;color:#edcbd4;}
.python-chart-diagnostic[hidden] {display:none;}
.python-chart-diagnostic pre {white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 monospace;margin:0 0 8px;}
.python-chart-diagnostic p {font-size:12px;line-height:1.6;}
.python-chart-settings form > footer,.python-chart-settings form > .or-error {flex:none;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-color-field {flex-direction:row;align-items:center;justify-content:space-between;gap:16px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-color-field input[type="color"] {width:54px;min-width:54px;height:36px;padding:4px;cursor:pointer;}
.pine-chart-settings .pine-input-browser {display:flex;align-items:center;gap:10px;margin:6px 0 10px;}
.pine-chart-settings .pine-input-search {flex:1 1 260px;min-width:0;height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.025);color:#f5f5f7;}
.pine-chart-settings .pine-input-search:focus {border-color:rgba(103,190,255,.65);outline:0;box-shadow:0 0 0 3px rgba(88,132,255,.12);}
.pine-chart-settings .pine-input-browser-actions {display:flex;gap:6px;}
.pine-chart-settings .pine-input-browser-actions button {min-height:34px;padding:6px 10px;font-size:11px;}
.pine-chart-settings .pine-input-controls:not(:empty) {display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px;margin-top:8px;}
.pine-chart-settings .pine-input-group {grid-column:1/-1;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(255,255,255,.014);overflow:visible;}
.pine-chart-settings .pine-input-group[hidden] {display:none;}
.pine-chart-settings .pine-input-group-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:11px 13px;cursor:pointer;color:#b8afff;font-size:.76rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;list-style:none;}
.pine-chart-settings .pine-input-group-heading::-webkit-details-marker {display:none;}
.pine-chart-settings .pine-input-group-heading::before {content:'›';font-size:16px;line-height:1;color:#7b8494;transform:rotate(0deg);transition:transform .14s ease;}
.pine-chart-settings .pine-input-group[open]>.pine-input-group-heading::before {transform:rotate(90deg);}
.pine-chart-settings .pine-input-group-heading>span:first-child {flex:1;}
.pine-chart-settings .pine-input-group-count {display:grid;place-items:center;min-width:22px;height:20px;padding:0 5px;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:#9099aa;background:rgba(255,255,255,.025);font:600 10px/1 ui-sans-serif;letter-spacing:0;}
.pine-chart-settings .pine-input-group-body {display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px 14px;padding:0 11px 11px;border-top:1px solid rgba(255,255,255,.055);}
.pine-chart-settings .pine-input-group:not([open])>.pine-input-group-body {display:none;}
.pine-chart-settings .pine-input-controls :is(label,.pine-input-inline-row)[hidden] {display:none!important;}
.pine-security-controls {display:grid;gap:8px;margin:6px 0 2px;}
.pine-security-controls select {width:100%;min-width:0;}
.pine-security-chips {display:flex;flex-wrap:wrap;gap:6px;}
.pine-security-chip {display:inline-flex;align-items:center;gap:7px;padding:3px 6px 3px 9px;border:1px solid var(--line,#3b485e);border-radius:999px;background:var(--surface-raised,#1d2939);font-size:12px;}
.pine-security-chip button {border:0;background:transparent;color:inherit;cursor:pointer;font-size:17px;line-height:1;padding:0 2px;}
.pine-security-chip button:hover,.pine-security-chip button:focus-visible {color:var(--accent,#79b8ff);}
.pine-chart-settings .pine-edit-code-jump {align-self:flex-start;margin:0 0 6px;padding:7px 12px;}
.pine-chart-settings .pine-settings-tabs {display:flex;gap:5px;position:sticky;top:0;z-index:2;padding:7px 0;background:#101c2b;border-bottom:1px solid #36516b;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-settings-tabs button {width:auto;min-width:76px;min-height:34px;padding:5px 13px;}
.pine-chart-settings .pine-settings-tabs button[aria-selected="true"] {background:#265a68;border-color:#56d0c4;color:#f3ffff;}
.pine-chart-settings .pine-settings-panel[hidden] {display:none;}
.pine-chart-settings .pine-settings-panel {min-width:0;padding-top:9px;}
.pine-chart-settings .pine-properties-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.pine-chart-settings .pine-property-group {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:9px 14px;margin:0;padding:11px 13px 13px;border:1px solid #31495f;border-radius:11px;background:#142437;}
.pine-chart-settings .pine-property-group legend {padding:0 6px;color:#c9d9e9;font-weight:650;font-size:13px;}
.pine-chart-settings .pine-properties-grid label {min-width:0;margin:0;}
.pine-chart-settings .pine-properties-grid :is(input,select) {width:100%;box-sizing:border-box;}
.pine-chart-settings .pine-properties-grid label small {display:block;margin-top:4px;color:var(--text-muted);font-size:10px;line-height:1.4;}
.pine-chart-settings .pine-property-toggle {grid-template-columns:20px minmax(0,1fr);align-items:start;cursor:pointer;}
.pine-chart-settings .pine-property-toggle>input[type="checkbox"] {width:16px;margin-top:3px;}
.pine-chart-settings .pine-property-toggle>span {display:grid;gap:3px;min-width:0;}
.pine-chart-settings .pine-property-toggle strong {font-size:12px;color:var(--text);font-weight:650;}
.pine-chart-settings .pine-property-toggle small {margin:0!important;font-size:10px;line-height:1.4;color:var(--text-muted);}
@media(max-width:760px){.pine-chart-settings .pine-properties-grid,.pine-chart-settings .pine-property-group {grid-template-columns:1fr;}}
.pine-chart-settings .pine-visibility-actions {display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 14px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-visibility-actions button {width:auto;min-height:32px;padding:5px 10px;}
.pine-chart-settings .pine-visibility-group {display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px 12px;margin:0 0 12px;padding:11px 13px 13px;border:1px solid #31495f;border-radius:11px;background:#142437;}
.pine-chart-settings .pine-visibility-group legend {padding:0 6px;color:#c9d9e9;font-weight:650;font-size:13px;}
.pine-chart-settings .pine-visibility-group label {display:flex;align-items:center;gap:7px;margin:0;color:#d8e6f2;}
.pine-chart-settings .pine-input-inline-row {grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:end;gap:0 12px;min-width:0;}
.pine-chart-settings .pine-input-inline-row > label {flex:1 1 150px;min-width:130px;max-width:100%;}
.pine-chart-settings .pine-input-controls>label,.pine-chart-settings .pine-input-inline-row>label {position:relative;margin:7px 0;padding:10px 11px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.018);}
.pine-chart-settings .pine-input-controls input[type="checkbox"] {box-sizing:border-box;width:18px;height:18px;min-height:18px;margin:2px 0;padding:0;align-self:flex-start;accent-color:#6495ff;color-scheme:dark;}
.pine-chart-settings .pine-input-controls input[type="datetime-local"] {width:100%;min-width:0;font-size:12px;}
.pine-chart-settings .pine-input-controls textarea {width:100%;min-width:0;box-sizing:border-box;resize:vertical;white-space:pre-wrap;font:12px/1.45 ui-monospace,Consolas,monospace;}
.pine-chart-settings .pine-input-hint {display:block;margin-top:5px;color:#e9b77d;font-size:11px;line-height:1.35;}
.pine-chart-settings .pine-input-help {position:absolute;top:7px;right:8px;margin:0;color:#9da5b4;font-size:11px;line-height:1.4;z-index:2;}
.pine-chart-settings .pine-input-help summary {display:grid;place-items:center;box-sizing:border-box;width:18px;height:18px;margin:0;border:1px solid rgba(255,255,255,.13);border-radius:50%;cursor:pointer;color:#9da5b4;font:700 10px/1 ui-sans-serif;text-decoration:none;list-style:none;}
.pine-chart-settings .pine-input-help summary::-webkit-details-marker {display:none;}
.pine-chart-settings .pine-input-help[open] summary {border-color:rgba(95,200,222,.42);color:#8de0ec;background:rgba(50,185,210,.10);}
.pine-chart-settings .pine-input-help span {position:absolute;top:23px;right:0;display:block;width:min(310px,70vw);padding:9px 11px;border:1px solid rgba(95,200,222,.25);border-radius:8px;background:#101116;color:#d9dbe2;box-shadow:0 12px 30px #000b;}
@media (max-width:640px) {.pine-chart-settings .pine-input-browser {align-items:stretch;flex-direction:column;}.pine-chart-settings .pine-input-browser-actions {justify-content:flex-end;}}
.pine-observation-preview {margin:14px 0;padding:12px;border:1px solid #326072;border-radius:8px;background:#10252b;color:#d4e6ec;}
.pine-saved-snapshot>summary {cursor:pointer;padding:5px 2px;color:#b9ebe3;font-size:13px;font-weight:700;}
.pine-saved-snapshot[open]>summary {padding-bottom:12px;border-bottom:1px solid #315661;}
.pine-saved-experiments:not([hidden]) {margin:12px 0;padding:12px;border:1px solid #326072;border-radius:8px;background:#10252b;display:grid;gap:8px;}
.pine-saved-experiments strong {color:#a4ede0;font-size:13px;}
.pine-saved-experiments p {margin:0;color:#a7c6d0;font-size:12px;}
.pine-saved-experiments>input[type="search"] {width:100%;box-sizing:border-box;}
.pine-saved-experiments>div {display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #2d4852;padding-top:8px;font-size:12px;}
.pine-saved-experiments>div[hidden] {display:none;}
.pine-saved-experiments>div>label {display:flex;align-items:center;gap:8px;min-width:0;}
.pine-saved-experiments>div>label input {width:16px;height:16px;min-height:16px;accent-color:#59c8e8;}
.pine-saved-experiments .pine-experiment-comparison {display:block;overflow-x:auto;}
.pine-experiment-comparison table {width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;}
.pine-experiment-comparison th,.pine-experiment-comparison td {padding:6px 8px;border-bottom:1px solid #2d4852;text-align:right;white-space:nowrap;}
.pine-experiment-comparison th:first-child {text-align:left;}
.pine-reference-comparison {margin:12px 0;padding:12px;border:1px solid #365d70;border-radius:10px;background:#10232d;}
.pine-reference-comparison>summary {cursor:pointer;color:#a4ede0;font-weight:650;}
.pine-reference-comparison>label {display:grid;gap:5px;margin:10px 0;color:#b9d2dc;font-size:12px;}
.pine-reference-comparison input[type="text"],.pine-reference-comparison input[type="file"] {max-width:100%;box-sizing:border-box;}
.pine-reference-metrics {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0;}
.pine-reference-metrics>div {display:grid;gap:5px;padding:9px 11px;border:1px solid #315061;border-radius:7px;background:#142d37;}
.pine-reference-metrics span {color:#a9c5cf;font-size:11px;}
.pine-reference-metrics strong {color:#e7f8f4;font-size:18px;font-variant-numeric:tabular-nums;}
.pine-reference-comparison details {margin-top:10px;overflow-x:auto;}
.pine-reference-comparison details>summary {cursor:pointer;color:#c9e9e9;font-size:12px;}
.pine-reference-comparison table {width:100%;margin-top:7px;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;}
.pine-reference-comparison th,.pine-reference-comparison td {padding:7px 9px;border-bottom:1px solid #315061;text-align:left;white-space:nowrap;}
.pine-reference-comparison th {color:#9fc9d2;font-weight:600;}
#pine-observation-legend {color:#d8b8ff;}
#pine-observation-clear {margin-left:5px;background:transparent;border:0;color:#d8b8ff;text-decoration:underline;cursor:pointer;}
.pine-observation-preview[hidden] {display:none;}
.pine-output-sparkline {display:inline-flex;flex-direction:column;gap:2px;min-width:130px;margin:2px 0;color:#59c8e8;vertical-align:middle;}
.pine-output-sparkline svg {display:block;width:160px;max-width:100%;height:34px;overflow:visible;}
.pine-output-sparkline figcaption {color:#9db9c2;font-size:10px;white-space:normal;}
.pine-observation-preview h3 {margin:0 0 8px;font-size:14px;color:#a4ede0;}
.pine-observation-preview p {margin:6px 0;font-size:12px;line-height:1.45;}
.pine-observation-metrics {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0;}
.portfolio-example-picks:not([hidden]) {display:grid;gap:7px;margin:10px 0;padding:11px 13px;border:1px solid #355575;border-radius:10px;background:#102133;}
.portfolio-example-picks>strong {color:#e2effd;font-size:13px;}
.portfolio-example-picks>span {color:#9fb5cc;font-size:12px;}
.portfolio-example-choice-list {display:flex;flex-wrap:wrap;gap:6px;}
.portfolio-example-choice-list button {flex:0 0 auto;width:auto;margin:0;padding:7px 10px;font-size:12px;}
.pine-observation-metrics>div {display:flex;flex-direction:column;gap:4px;padding:8px 10px;border:1px solid #28434f;border-radius:6px;background:#10232c;}
.pine-observation-metrics span {color:#9cb7c2;font-size:11px;}
.pine-observation-metrics strong {color:#e4f6f2;font-size:14px;font-variant-numeric:tabular-nums;}
.pine-observation-overview>h4 {margin:16px 0 8px;color:#d8f1ed;font-size:13px;font-weight:650;}
.pine-period-comparison {margin:12px 0 16px;padding:14px;border:1px solid #356b72;border-radius:10px;background:#0e2a31;overflow-x:auto;}
.pine-period-comparison h4 {margin:0 0 5px;color:#d8f6ef;font-size:14px;}
.pine-period-comparison p {margin:0 0 12px;color:#a8c4ca;font-size:12px;line-height:1.45;}
.pine-period-comparison table {width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;}
.pine-period-comparison th,.pine-period-comparison td {padding:7px 9px;border-top:1px solid #2e5059;text-align:right;white-space:nowrap;}
.pine-period-comparison th:first-child {text-align:left;color:#a8c4ca;font-weight:500;}
.pine-period-comparison thead th {color:#d8f6ef;font-weight:650;}
.periodic-pagination {display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px;min-height:30px;}
.periodic-pagination .results-note {margin:0 auto 0 0;}
.periodic-pagination button {min-height:30px;padding:5px 10px;}
.results-table {width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid rgba(112,145,176,.2);border-radius:12px;background:linear-gradient(145deg,rgba(14,20,30,.82),rgba(7,10,16,.94));font-size:12px;font-variant-numeric:tabular-nums;box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
.results-table th,.results-table td {padding:9px 12px;border-bottom:1px solid rgba(112,145,176,.12);text-align:right;white-space:nowrap;}
.results-table th:first-child,.results-table td:first-child {text-align:left;}
.results-table thead th {background:rgba(40,60,82,.34);color:#a9bfd4;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;}
.results-table tbody tr:last-child td {border-bottom:0;}
.results-table tbody tr:nth-child(even) {background:rgba(38,55,75,.12);}
.results-table tbody tr:hover {background:rgba(57,189,248,.07);}
.results-table td {color:#d8e4ef;}
.results-table td.value-positive {color:#55e6bc;font-weight:750;}
.results-table td.value-negative {color:#ff8398;font-weight:750;}
.periodic-performance {margin-top:18px;padding:16px;border:1px solid rgba(112,145,176,.17);border-radius:14px;background:linear-gradient(145deg,rgba(15,20,29,.7),rgba(8,11,17,.9));}
.periodic-performance>.results-table,.periodic-performance>.periodic-pagination,.periodic-performance>.results-note {max-width:760px;}
.periodic-performance>.results-note {margin:8px 0 0;line-height:1.45;}
#python-benchmark-comparison>section,#python-growth-decline>section {margin-top:18px;padding:16px;border:1px solid rgba(112,145,176,.17);border-radius:14px;background:linear-gradient(145deg,rgba(15,20,29,.7),rgba(8,11,17,.9));}
#python-benchmark-comparison h3,#python-growth-decline h3 {margin:0 0 11px;color:#dce9f5;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;}
#python-benchmark-comparison .perf-stat-row,#python-growth-decline .perf-stat-row {display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:9px;margin:0;}
#python-benchmark-comparison .perf-stat-row {grid-template-columns:repeat(3,minmax(140px,1fr));max-width:760px;}
#python-benchmark-comparison .perf-stat,#python-growth-decline .perf-stat {min-width:0;padding:11px 12px;border:1px solid rgba(112,145,176,.16);border-radius:10px;background:rgba(31,45,62,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}
#python-benchmark-comparison .perf-stat-value,#python-growth-decline .perf-stat-value {font-size:16px;line-height:1.25;}
#python-benchmark-comparison .results-note,#python-growth-decline .results-note {margin:11px 0 0;max-width:980px;line-height:1.55;}
@media(max-width:760px) {#python-benchmark-comparison>section,#python-growth-decline>section {padding:11px;}#python-benchmark-comparison .perf-stat-row,#python-growth-decline .perf-stat-row {grid-template-columns:1fr 1fr;}#python-benchmark-comparison .results-note,#python-growth-decline .results-note {font-size:11px;}}
@media(max-width:760px) {.periodic-performance {padding:11px;}.results-table th,.results-table td {padding:8px 9px;}.periodic-pagination {align-items:flex-start;flex-wrap:wrap;}.periodic-pagination .results-note {flex:1 0 100%;}}
.pine-headline-metrics {grid-template-columns:repeat(5,minmax(0,1fr));}
.pine-headline-metrics>div {padding:12px;background:#102b32;border-color:#31575c;}
.pine-headline-metrics strong {font-size:18px;}
.pine-headline-metrics .pine-result-loss strong {color:#ff9e92;}
.pine-headline-metrics .pine-result-gain strong {color:#55dfb7;}
.pine-observation-caution {margin:10px 0 4px;padding:9px 11px;border:1px solid #80633d;
  border-radius:7px;background:#3d2b1b;color:#f0d6a9;font-size:12px;line-height:1.45;}
.pine-observation-caution button {display:block;width:auto;min-height:28px;margin-top:8px;
  padding:4px 9px;border-color:#a67a42;background:#513721;color:#ffe3aa;font-size:11px;}
.pine-observation-details {margin:8px 0 16px;border:1px solid #28434f;border-radius:7px;padding:9px 12px;}
.pine-observation-details>summary {color:#a8c8cc;cursor:pointer;font-size:12px;}
.pine-observation-details[open]>summary {color:#e4f6f2;}
.pine-backtest-range {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;flex:none;margin:8px 0;}
.strategy-period-presets {grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:7px 8px;border:1px solid #2b4055;border-radius:8px;background:#0c1723;}
.strategy-period-presets>span {margin-right:2px;color:#b9cfdf;font-size:11px;font-weight:750;}
.strategy-period-presets button {width:auto;min-height:28px;margin:0;padding:4px 9px;border-color:#34516a;background:#142537;color:#bcd2e2;font-size:10.5px;}
.strategy-period-presets button:hover,.strategy-period-presets button:focus-visible {border-color:#62a6d5;background:#1a3850;color:#f0f9ff;outline:none;}
.strategy-period-presets button[aria-pressed="true"] {border-color:#4ca6d9;background:#1c4c6d;color:#fff;}
.pine-backtest-range[hidden] {display:none;}
.pine-backtest-range .se-field {min-width:0;margin:0;}
.pine-backtest-range .se-help {line-height:1.35;}
.pine-results-trades>summary {cursor:pointer;color:#d8f1ed;font-size:13px;font-weight:650;}
.pine-results-trades {border:1px solid #28434f;border-radius:7px;padding:10px 12px;margin:12px 0;}
.pine-results-trades[open]>summary {margin-bottom:10px;}
@media (max-width:900px) {.pine-headline-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px) {.pine-backtest-range {grid-template-columns:1fr;}}
.pine-trade-distribution {margin:12px 0;padding:12px;border:1px solid #28434f;border-radius:8px;background:#10202a;}
.pine-trade-distribution:empty {display:none;}
.pine-trade-distribution figcaption {color:#c6ddd9;font-size:11px;font-weight:600;margin-bottom:9px;}
.pine-trade-distribution-bars {display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;align-items:end;height:80px;border-bottom:1px solid #50646b;}
.pine-trade-distribution-slot {display:flex;align-items:end;justify-content:center;height:100%;}
.pine-trade-distribution-bar {display:block;width:min(100%,28px);border-radius:3px 3px 0 0;background:#79959a;}
.pine-trade-distribution-bar.loss {background:#df7882;}
.pine-trade-distribution-bar.gain {background:#4fc8aa;}
.pine-trade-distribution-axis {display:flex;justify-content:space-between;color:#9cb7c2;font-size:10px;font-variant-numeric:tabular-nums;margin-top:5px;}
.pine-historical-alert-note {margin:8px 0 0;color:#9cb7c2;font-size:11px;line-height:1.5;}
.pine-historical-alert-note[hidden] {display:none;}
.pine-open-position {margin:8px 0;padding:9px 11px;border:1px solid #66583c;border-radius:7px;background:#28251d;}
.pine-open-position strong {color:#f4dbab;font-size:12px;}
.pine-observation-preview .pine-open-position p {color:#d5c9b0;font-variant-numeric:tabular-nums;}
.pine-equity-trace {margin:10px 0 6px;padding:10px 12px;border:1px solid #285568;border-radius:7px;background:#0b1b26;}
.pine-equity-trace figcaption {margin-bottom:7px;color:#b8dbdf;font-size:12px;font-weight:600;}
.pine-equity-trace svg {display:block;width:100%;height:196px;touch-action:none;}
.pine-post-save-equity svg {height:150px;}
.pine-equity-trace svg:focus-visible {outline:2px solid #a4ede0;outline-offset:3px;}
.pine-equity-area {fill:#24cbb026;}
.pine-equity-line {fill:none;stroke:#57d7c7;stroke-width:2;vector-effect:non-scaling-stroke;}
.pine-drawdown-area {fill:#f1856333;}
.pine-drawdown-line {fill:none;stroke:#f2a17e;stroke-width:1.5;vector-effect:non-scaling-stroke;}
.pine-equity-split {stroke:#bad0d7;stroke-width:1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke;opacity:.7;}
.pine-equity-baseline {stroke:#8da5b6;stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;opacity:.65;}
.pine-equity-cursor {fill:#e9fcf9;stroke:#1a8078;stroke-width:1.5;vector-effect:non-scaling-stroke;}
.pine-drawdown-cursor {fill:#ffdfca;stroke:#a55642;stroke-width:1.5;vector-effect:non-scaling-stroke;}
.pine-equity-cursor[hidden],.pine-drawdown-cursor[hidden] {display:none;}
.pine-observation-preview .pine-equity-readout {margin:5px 0 0;color:#a7c6d0;font-size:11px;font-variant-numeric:tabular-nums;}
.pine-observation-exports {display:flex;flex-wrap:wrap;gap:8px;margin:8px 0;}
.pine-trade-filters {display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px;}
.pine-trade-filters label {display:flex;flex-direction:column;gap:4px;flex:1 1 150px;max-width:220px;color:#9cb7c2;font-size:11px;}
.pine-trade-filters select {width:100%;min-height:34px;}
.pine-observation-preview table {display:block;max-height:240px;overflow:auto;width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;}
.pine-observation-preview caption {text-align:left;margin:10px 0 6px;color:#a4ede0;}
.pine-observation-preview th,.pine-observation-preview td {padding:5px 9px;border-bottom:1px solid #2d4852;white-space:nowrap;text-align:left;}
.pine-observation-preview td button {width:auto;min-height:26px;padding:3px 9px;font-size:11px;}
#pine-results-view {min-width:0;max-width:100%;}
#pine-results-view>h3 {margin:12px 0 4px;color:#a4ede0;}
#pine-results-view>.results-note {line-height:1.5;}
.pine-results-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 12px;}
.pine-results-actions button {width:auto;min-height:32px;}
.pine-results-more {position:relative;min-width:0;}
.pine-results-more summary {display:flex;align-items:center;min-height:32px;padding:5px 11px;
  border:1px solid #38586a;border-radius:7px;background:#132737;color:#c7dce6;
  font-size:12px;font-weight:600;cursor:pointer;}
.pine-results-more[open] summary {border-color:#558293;color:#effcff;}
.pine-results-more-buttons {position:absolute;z-index:20;top:calc(100% + 5px);right:0;
  display:grid;gap:5px;min-width:195px;padding:7px;border:1px solid #416070;
  border-radius:8px;background:#102431;box-shadow:0 12px 28px #0008;}
.pine-results-more-buttons button {width:100%;text-align:left;}
.pine-results-actions p[role="status"] {flex-basis:100%;margin:0;color:var(--text-muted);font-size:11px;}
.pine-results-nav {display:flex;gap:4px;align-items:center;margin:12px 0 8px;padding:4px;
  border:1px solid #2c4655;border-radius:9px;background:#0b1925;overflow-x:auto;}
.pine-results-nav button {flex:0 0 auto;width:auto;min-height:32px;margin:0;padding:6px 14px;
  border:1px solid transparent;border-radius:6px;background:transparent;color:#a8bfce;
  font-size:12px;font-weight:650;cursor:pointer;}
.pine-results-nav button:hover {color:#f3fbff;background:#1b3546;}
.pine-results-nav button[aria-selected="true"] {border-color:#397f93;background:#1b4854;color:#e1fff7;}
.pine-results-nav button:focus-visible {outline:2px solid #85d8e6;outline-offset:1px;}
.pine-result-panel[hidden] {display:none;}
.pine-results-trades {margin:18px 0;overflow:auto;}
.pine-results-trades h4 {margin:0 0 8px;color:#d4e6ec;}
.pine-results-trades table {min-width:580px;width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;}
.pine-results-trades th,.pine-results-trades td {padding:8px 10px;border-bottom:1px solid #2d4852;text-align:left;white-space:nowrap;}
.pine-results-trades td.pine-trade-fill span,.pine-results-trades td.pine-trade-fill small {display:block;}
.pine-results-trades td.pine-trade-fill small {margin-top:3px;color:#8fb6c2;font-size:11px;}
.pine-trade-inspection {margin:8px 0 16px;border:1px solid #315464;border-radius:8px;padding:10px;background:#0b1017;}
.pine-trade-inspection>.results-note {margin:0 0 8px;color:#d4e6ec;}
.pine-results-trades td button {width:auto;min-height:28px;padding:4px 10px;font-size:11px;}
.pine-results-trades td button+button {margin-left:6px;}
.pine-observation-preview .pine-input-compare {margin:12px 0;padding:10px;border:1px solid #365366;border-radius:7px;background:#132b36;}
.pine-cost-sensitivity {margin:12px 0;padding:10px;border:1px solid #365366;border-radius:7px;background:#132b36;}
.pine-cost-sensitivity p[role="status"] {margin:8px 0 0;color:#d9e9e9;line-height:1.5;}
.python-cost-stress {margin:12px 0;padding:12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card-elevated);}
.python-cost-stress summary {cursor:pointer;font-weight:700;color:var(--text-body);}
.python-cost-stress label {display:grid;gap:5px;max-width:260px;margin:10px 0;color:var(--text-muted);font-size:12px;}
.python-cost-stress input {min-height:34px;}
.python-cost-stress p[role="status"] {margin:8px 0 0;line-height:1.5;}
.pine-input-compare summary {cursor:pointer;color:#a4ede0;font-weight:700;font-size:12px;}
.pine-input-compare label {display:inline-flex;flex-direction:column;gap:4px;width:min(220px,100%);margin:8px 10px 8px 0;color:#b4cad2;font-size:11px;}
.pine-input-compare label :is(input,select) {width:100%;min-height:33px;box-sizing:border-box;}
.pine-input-compare .pine-input-compare-choices {display:flex;flex-wrap:wrap;gap:4px 12px;max-height:150px;overflow:auto;margin:8px 0;padding:7px 10px;border:1px solid #365366;border-radius:6px;}
.pine-input-compare .pine-input-compare-choices[hidden] {display:none;}
.pine-input-compare-choices legend {padding:0 4px;color:#b4cad2;font-size:11px;}
.pine-input-compare .pine-input-compare-choices label {display:inline-flex;flex-direction:row;align-items:center;width:auto;margin:0;cursor:pointer;}
.pine-input-compare .pine-input-compare-choices input {width:auto;min-height:0;margin:0;accent-color:#59c8e8;}
.pine-input-compare [hidden] {display:none!important;}
.pine-input-compare .pine-input-compare-advanced-choice {display:flex;flex-direction:row;align-items:center;width:auto;cursor:pointer;}
.pine-input-compare .pine-input-compare-advanced-choice input {width:auto;min-height:0;margin:0;}
.pine-input-compare .pine-input-compare-advanced-values {display:flex;width:100%;}
.pine-input-compare .pine-input-compare-advanced-values textarea {width:100%;min-height:125px;resize:vertical;box-sizing:border-box;font-family:monospace;}
.pine-input-compare .python-compare-scenarios {display:grid;gap:8px;margin:8px 0;}
.pine-input-compare .python-compare-scenario {padding:9px;border:1px solid #365366;border-radius:7px;background:#102631;}
.pine-input-compare .python-compare-scenario > div:first-child {display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;}
.pine-input-compare .python-compare-change {display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,1fr) auto;gap:6px;margin-bottom:6px;}
.pine-input-compare .python-compare-change :is(input,select) {min-width:0;width:100%;box-sizing:border-box;}
@media (max-width:600px) {.pine-input-compare .python-compare-change {grid-template-columns:minmax(0,1fr) auto;}.pine-input-compare .python-compare-change input {grid-column:1;grid-row:2;}.pine-input-compare .python-compare-change button {grid-column:2;grid-row:1 / span 2;}}
.pine-input-compare-results {margin-top:8px;}
.pine-input-compare-table {max-width:100%;overflow-x:auto;scrollbar-color:#567d8c #132b36;}
.pine-input-compare-table table {min-width:1040px;}
.pine-input-compare-table:focus-visible {outline:2px solid #a4ede0;outline-offset:2px;}
.pine-comparison-chronology-note {margin:7px 0;color:#aac1ca;font-size:11px;}
.pine-comparison-trace {margin:10px 0 4px;padding:10px 12px;border:1px solid #365366;border-radius:7px;background:#0b1b26;}
.pine-comparison-trace figcaption {color:#b8dbdf;font-size:12px;font-weight:600;}
.pine-comparison-trace svg {display:block;width:100%;height:174px;margin:6px 0;}
.pine-comparison-trace svg:focus-visible {outline:2px solid #a4ede0;outline-offset:2px;}
.pine-comparison-guide {stroke:#c8dce3;stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;opacity:.7;}
.pine-comparison-cursor {stroke:#0b1b26;stroke-width:1.5;vector-effect:non-scaling-stroke;}
.pine-comparison-guide[hidden],.pine-comparison-cursor[hidden] {display:none;}
.pine-comparison-legend {display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11px;}
.pine-comparison-legend span {color:var(--series-color);}
.pine-comparison-legend span::before {content:'━';margin-right:5px;}
.pine-comparison-trace p {margin:7px 0 0;color:#9bb7c0;font-size:11px;}
.pine-comparison-readout {min-height:1.2em;font-variant-numeric:tabular-nums;}
.pine-chart-settings footer button[hidden] {display:none;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button {width:100%;min-height:38px;margin:0;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button[type="submit"] {grid-column:auto;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button.secondary {background:#1a2c40;border:1px solid #36516b;color:#d5e5f5;}
.pine-chart-settings .pine-footer-more {grid-column:1/-1;min-width:0;}
.pine-chart-settings .pine-footer-more>summary {cursor:pointer;list-style:none;min-height:30px;display:flex;align-items:center;justify-content:center;gap:7px;color:#adc8d8;font-size:12px;}
.pine-chart-settings .pine-footer-more>summary::before {content:'⌄';font-size:17px;line-height:1;}
.pine-chart-settings .pine-footer-more[open]>summary::before {transform:rotate(180deg);}
.pine-chart-settings .pine-footer-more>summary:focus-visible {outline:2px solid #a4ede0;outline-offset:2px;}
.pine-chart-settings .pine-footer-more-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:8px;}
.pine-chart-settings .pine-footer-more-grid .pine-ai-question {grid-column:1/-1;display:grid;gap:5px;color:#c8dae4;font-size:12px;}
.pine-chart-settings .pine-footer-more-grid .pine-ai-question textarea {width:100%;min-height:68px;resize:vertical;}
#chat-return-pine-draft {margin-top:8px;font-size:11px;}
@media (max-width:640px) {.pine-chart-settings .python-chart-code-editor {height:210px;min-height:150px;}}
.chart-tool-dialog .chart-tool-list article button {width:auto;flex:none;}
.chart-tool-list strong,.chart-tool-list small {display:block;overflow-wrap:anywhere;}
.chart-tool-list button {border:1px solid #33465b;border-radius:6px;background:#1b2c3d;color:#b8d7f0;padding:7px 9px;font-size:11px;}
:is(#opening-range-dialog,.chart-tool-dialog).chart-tool-library {box-sizing:border-box;width:min(640px,94vw);max-height:85vh;overflow:hidden;display:flex;flex-direction:column;gap:10px;}
.chart-tool-library > header,.chart-tool-library > p,.chart-tool-library-filters {flex:none;}
.chart-tool-library > p {margin:0;}
.chart-tool-library-filters {display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px;}
:is(#opening-range-dialog,.chart-tool-dialog).chart-tool-library .chart-tool-library-filters label {min-width:0;margin:0;}
:is(#opening-range-dialog,.chart-tool-dialog).chart-tool-library h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.chart-tool-library .chart-tool-list {flex:1;min-height:0;max-height:none;}
.chart-tool-library [hidden] {display:none!important;}
.chart-tool-library-outputs {display:block;font-size:11px;line-height:1.5;color:#95a7bc;overflow-wrap:anywhere;margin-top:5px;}
:is(#opening-range-dialog,.chart-tool-dialog).chart-tool-library small {letter-spacing:.03em;}
@media(max-width:520px) {
  .chart-tool-library-filters {grid-template-columns:minmax(0,1fr);gap:8px;}
  .chart-tool-library .chart-tool-list article {flex-wrap:wrap;}
  .chart-tool-library .chart-tool-list article > div {flex-basis:100%;}
  .chart-tool-library .chart-tool-list article button {flex:1;}
}

/* Product boundary: everyday charting stays compact while advanced research
   and public discovery get their own intentional workspaces. They share the
   same saved chart, source, strategy version, result lineage, and live state. */
#workspace-product-switcher {
  display:flex;align-items:center;flex:none;gap:2px;height:32px;padding:3px;
  border:1px solid rgba(255,255,255,.085);border-radius:9px;background:rgba(255,255,255,.025);
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
#workspace-product-switcher button {
  width:auto;min-width:0;height:24px;min-height:24px;margin:0;padding:3px 9px;border:0;border-radius:6px;
  background:transparent;color:#707787;font-size:10px;font-weight:720;line-height:1;white-space:nowrap;
}
#workspace-product-switcher button:hover {background:rgba(255,255,255,.035);color:#c5c9d2;}
#workspace-product-switcher:not(details) button[aria-pressed="true"] {
  background:linear-gradient(135deg,rgba(45,174,196,.15),rgba(69,104,196,.16));color:#eef8ff;
  box-shadow:inset 0 0 0 1px rgba(128,197,255,.19),0 4px 14px rgba(0,0,0,.18);
}
#workspace-product-quant[aria-pressed="true"] {
  background:linear-gradient(135deg,rgba(91,111,224,.17),rgba(99,76,189,.16));
  box-shadow:inset 0 0 0 1px rgba(146,139,255,.20),0 4px 14px rgba(0,0,0,.18);
}
#workspace-product-discover[aria-pressed="true"] {
  background:linear-gradient(135deg,rgba(43,177,154,.14),rgba(45,116,159,.15));
  box-shadow:inset 0 0 0 1px rgba(93,220,197,.18),0 4px 14px rgba(0,0,0,.18);
}
body.product-charts #workspace-mode-tabs [data-products]:not([data-products~="charts"]),
body.product-quant #workspace-mode-tabs [data-products]:not([data-products~="quant"]),
body.product-discover #workspace-mode-tabs [data-products]:not([data-products~="discover"]) {display:none!important;}
body.product-quant #workspace-mode-tabs button[aria-selected="true"]::after {
  background:linear-gradient(90deg,#7893ff,#7056c8);box-shadow:0 0 10px rgba(118,104,235,.34);
}
body.product-discover #workspace-mode-tabs button[aria-selected="true"]::after {
  background:linear-gradient(90deg,#5edcc5,#397ed8);box-shadow:0 0 10px rgba(75,194,194,.28);
}
@media(max-width:1200px) {
  #workspace-product-switcher button {padding-inline:7px;font-size:9.5px;}
}
@media(max-width:850px) {
  #workspace-product-switcher {order:3;height:30px;margin-left:auto;}
  #workspace-product-switcher button {height:22px;min-height:22px;}
}
.study-chip span {color:#95a8bc;}
.study-chip button {width:auto;flex:none;padding:3px 5px;background:transparent;border:0;color:#9cb9d6;font-size:11px;}
#indicator-search {width:100%;margin:6px 0 10px;}
#indicator-list label[hidden] {display:none;}
#indicator-picker-error {color:#ff9292;font-size:12px;max-width:280px;}
.chart-tool-dialog.calculation-picker,.chart-tool-dialog.calculation-settings {max-height:85vh;overflow:auto;}
.chart-tool-dialog.calculation-settings {overflow:hidden;}
.calculation-picker-status {color:#95a8bc;font-size:12px;}
.calculation-picker select {color-scheme:dark;}
.calculation-picker option {padding:7px 9px;}
.calculation-picker option:checked {background:#1e3b5b;color:#e0f0ff;}
.chart-tool-dialog.calculation-picker h2,.chart-tool-dialog.calculation-settings h2 {font-size:20px;text-transform:none;letter-spacing:0;}
.calculation-picker fieldset {border:1px solid #263747;border-radius:8px;padding:12px;min-width:0;}
#chart-anchor-pick-status {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;margin:6px 0;border:1px solid #345366;border-radius:8px;background:#132733;color:#b8e6ed;font-size:12px;}
#chart-anchor-pick-status[hidden] {display:none;}
#chart-anchor-pick-status button {width:auto;margin:0;padding:5px 10px;border:1px solid #345366;background:#1b3543;color:#d5f0f5;}
#chart-container.picking-vwap-anchor canvas {cursor:crosshair;}
#pine-price-pick-status {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;margin:6px 0;border:1px solid #345366;border-radius:8px;background:#132733;color:#b8e6ed;font-size:12px;}
#pine-price-pick-status[hidden] {display:none;}
#pine-price-pick-status button {width:auto;margin:0;padding:5px 10px;border:1px solid #345366;background:#1b3543;color:#d5f0f5;}
#chart-container.picking-pine-price canvas {cursor:crosshair;}
.pine-input-controls .pine-price-pick {width:auto;margin:7px 0 0;padding:5px 9px;font-size:12px;}
#pine-time-pick-status {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;margin:6px 0;border:1px solid #345366;border-radius:8px;background:#132733;color:#b8e6ed;font-size:12px;}
#pine-time-pick-status[hidden] {display:none;}
#pine-time-pick-status button {width:auto;margin:0;padding:5px 10px;border:1px solid #345366;background:#1b3543;color:#d5f0f5;}
#chart-container.picking-pine-time canvas {cursor:crosshair;}
.pine-input-controls .pine-time-pick {width:auto;margin:7px 0 0;padding:5px 9px;font-size:12px;}
:is(#opening-range-dialog,.chart-tool-dialog) .vwap-anchor-actions {display:flex;gap:8px;margin:8px 0;}
:is(#opening-range-dialog,.chart-tool-dialog) .vwap-anchor-actions button {width:auto;margin:0;padding:7px 10px;background:#1b2c3d;border:1px solid #345366;color:#b8d7f0;font-size:12px;}
:is(#opening-range-dialog,.chart-tool-dialog) .vwap-clock-fields[hidden],:is(#opening-range-dialog,.chart-tool-dialog) .vwap-anchor-fields[hidden] {display:none;}
:is(#opening-range-dialog,.chart-tool-dialog) .session-level-options label,:is(#opening-range-dialog,.chart-tool-dialog) .session-pin-option {flex-direction:row;align-items:center;gap:8px;}
:is(#opening-range-dialog,.chart-tool-dialog) .session-level-options input,:is(#opening-range-dialog,.chart-tool-dialog) .session-pin-option input {width:16px;height:16px;min-height:16px;margin:0;accent-color:#6489ff;}
:is(#opening-range-dialog,.chart-tool-dialog) .session-level-options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;}
:is(#opening-range-dialog,.chart-tool-dialog) .session-level-options label {margin:8px 0;}
:is(#opening-range-dialog,.chart-tool-dialog) {width:min(470px,90vw);border:1px solid #33465b;border-radius:14px;background:#111923;color:#cad5e3;padding:24px;box-shadow:0 28px 90px #0009;}
:is(#opening-range-dialog,.chart-tool-dialog)::backdrop {background:#050a11aa;backdrop-filter:blur(3px);}
:is(#opening-range-dialog,.chart-tool-dialog) header,:is(#opening-range-dialog,.chart-tool-dialog) footer {display:flex;align-items:center;justify-content:space-between;gap:12px;}
:is(#opening-range-dialog,.chart-tool-dialog) header button {background:transparent;border:0;font-size:22px;color:#9bafc6;}
:is(#opening-range-dialog,.chart-tool-dialog) small {color:#64bfd8;font-size:10px;letter-spacing:.12em;}
:is(#opening-range-dialog,.chart-tool-dialog) h2 {margin:5px 0;font-size:23px;color:#edf3fa;}
:is(#opening-range-dialog,.chart-tool-dialog) p {color:#94a6bb;font-size:12px;line-height:1.6;}
:is(#opening-range-dialog,.chart-tool-dialog) label {display:flex;flex-direction:column;gap:6px;margin:14px 0;font-size:12px;}
:is(#opening-range-dialog,.chart-tool-dialog) input,:is(#opening-range-dialog,.chart-tool-dialog) select {width:100%;min-height:36px;background:#0c131c;border:1px solid #293b4e;border-radius:6px;padding:7px 9px;color:#d7e4f3;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-actions {position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;padding:9px 0;background:#10252b;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-actions button {width:auto;min-height:32px;margin:0;padding:6px 10px;font-size:11px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row {display:grid;grid-template-columns:minmax(230px,1fr) repeat(4,max-content);align-items:center;gap:6px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row>label {min-width:0;flex-direction:row;align-items:center;line-height:1.35;overflow-wrap:anywhere;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row>label input[type="checkbox"] {flex:none;width:16px;min-width:16px;height:16px;min-height:16px;margin:0;padding:0;accent-color:#59c8e8;color-scheme:dark;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row>button {width:auto;min-height:32px;margin:0;padding:6px 9px;font-size:11px;}
@media (max-width:850px) {:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row {grid-template-columns:repeat(2,minmax(0,1fr));}:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-experiment-row>label {grid-column:1/-1;}}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-editor-toolbar input[type="number"] {flex:0 0 64px;width:64px;min-height:30px;padding:4px 7px;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-editor-toolbar button {flex:none;width:auto;min-height:30px;padding:5px 9px;}
.or-grid {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.or-grid[hidden] {display:none;}
#opening-range-dialog {box-sizing:border-box;max-height:90vh;overflow:auto;}
:is(#opening-range-dialog,.chart-tool-dialog) .or-switches {display:flex;gap:20px;}
:is(#opening-range-dialog,.chart-tool-dialog) .or-switches label {flex-direction:row;align-items:center;}
:is(#opening-range-dialog,.chart-tool-dialog) .or-switches input {width:14px;min-height:14px;}
:is(#opening-range-dialog,.chart-tool-dialog) .or-error {color:#ff9292;}
.output-style-settings {margin:18px 0;border:1px solid #293b4e;border-radius:8px;padding:12px;}
.output-colors-all {background:#152131;border:1px solid #31465d;border-radius:6px;color:#cfdeed;padding:8px 12px;font-size:12px;cursor:pointer;}
.output-style-guide {margin:12px 0;font-size:12px;color:#9cb1c8;}
.output-style-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:center;border-top:1px solid #263747;padding:12px 0;}
.output-style-row strong {font-size:12px;overflow-wrap:anywhere;grid-column:1/-1;}
:is(#opening-range-dialog,.chart-tool-dialog) .output-visibility {display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;}
:is(#opening-range-dialog,.chart-tool-dialog) .output-visibility input[type="checkbox"] {width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#6495ff;color-scheme:dark;cursor:pointer;}
.table-format-settings fieldset {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid #263747;border-radius:8px;padding:12px;margin:10px 0;}
.table-format-settings legend {font-size:12px;overflow-wrap:anywhere;}
.table-format-settings label[hidden] {display:none;}
.output-style-row button {grid-column:1/-1;justify-self:start;background:#152131;border:1px solid #31465d;border-radius:6px;color:#cfdeed;padding:8px;font-size:11px;}
.output-style-row button:disabled {opacity:.45;}
@media(max-width:600px){.output-style-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}.output-style-row button{grid-column:1/-1;justify-self:start;}}
:is(#opening-range-dialog,.chart-tool-dialog) footer {border-top:1px solid #263747;padding-top:18px;font-size:11px;color:#8198b1;}
:is(#opening-range-dialog,.chart-tool-dialog) footer button {background:#6495ff;border:0;border-radius:6px;color:#081325;padding:10px 14px;font-weight:600;}
.history-actions {display:flex;flex-wrap:wrap;gap:6px;}
.history-row .history-compare {width:auto;margin:0;padding:4px 10px;font-size:11px;}
#pine-backtest-history {margin:20px 0;}
#pine-backtest-history h3 {margin:0 0 6px;color:#d9ebf2;font-size:14px;}
#pine-backtest-history .history-row {grid-template-columns:minmax(150px,1fr) minmax(0,2fr) auto;gap:16px;padding:12px 14px;}
#pine-backtest-history .history-row strong {color:#e6f3f7;line-height:1.4;}
#pine-backtest-history .history-row span {color:#a6bbc6;line-height:1.4;}
#pine-backtest-history .history-row button {width:auto;margin:0;padding:6px 12px;}
@media (max-width:700px) {#pine-backtest-history .history-row {grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;}#pine-backtest-history .history-row span {grid-column:1;grid-row:2;}#pine-backtest-history .history-row button {grid-column:2;grid-row:1 / span 2;}}
.version-compare-card {margin-top:16px;padding:18px;border:1px solid #334b64;border-radius:12px;background:#101b28;}
.chart-tool-dialog.saved-strategy-comparison {box-sizing:border-box;width:min(1000px,94vw);max-height:88vh;overflow:auto;}
.saved-strategy-comparison-content .version-compare-card {margin-top:0;}
.version-compare-card h3 {margin:0 0 10px;font-size:17px;color:#d8e8fa;text-transform:none;letter-spacing:0;}
.version-compare-card h4 {margin:20px 0 8px;font-size:13px;color:#a7c4e4;}
.version-compare-scroll {overflow:auto;max-height:360px;margin:8px 0;}
.version-compare-table {width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;}
.version-compare-table th,.version-compare-table td {text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid #263747;min-width:100px;max-width:340px;overflow-wrap:anywhere;}
.version-compare-table th {position:sticky;top:0;background:#192a3d;color:#b8d2ef;}
.version-source-diff {overflow:auto;max-height:360px;padding:14px;background:#0b1420;border-radius:8px;color:#b8d2ef;font-size:12px;}
.version-source-diff .diff-added {color:#5ee4b5;background:#14352e;}
.version-source-diff .diff-removed {color:#ff9caa;background:#38232e;}
.version-compare-card summary {cursor:pointer;padding:12px 0;color:#a7c4e4;}
.artifact-table {margin:12px 0;border:1px solid #2b4159;border-radius:8px;background:#101b28;}
.artifact-table summary {padding:12px;cursor:pointer;color:#b8d2ef;font-size:12px;}
.artifact-table-scroll {overflow-x:auto;}
.artifact-table-scroll.scroll-long {max-height:280px;overflow:auto;}
.artifact-table table {font-size:11px;font-variant-numeric:tabular-nums;width:100%;border-collapse:collapse;}
.artifact-table th,.artifact-table td {padding:8px 10px;text-align:right;white-space:nowrap;border-bottom:1px solid #213247;}
.artifact-table th {background:#192a3d;position:sticky;top:0;}
.artifact-table p {font-size:10px;color:#8da5c0;padding:0 12px;}
.artifact-table-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0 10px 10px;color:#8da5c0;font-size:10px;}
.artifact-table-actions span {margin-right:auto;}
.artifact-table-actions button {width:auto;margin:0;padding:5px 7px;background:#192a3d;border:1px solid #334b64;border-radius:5px;color:#b8d2ef;font-size:11px;}
.artifact-table-columns {display:flex;align-items:center;gap:8px;padding:0 10px 8px;color:#a8bfd6;font-size:10px;}
.artifact-table-columns[hidden] {display:none;}
.artifact-table-columns button {width:auto;min-height:26px;margin:0 0 0 auto;padding:4px 7px;white-space:nowrap;background:#17314a;border:1px solid #406486;border-radius:5px;color:#c5e6ff;font-size:10px;cursor:pointer;}
.artifact-table th:first-child,.artifact-table td:first-child {position:sticky;left:0;z-index:1;background:#101b28;text-align:left;}
.artifact-table th:first-child {z-index:2;background:#192a3d;}
:is(#opening-range-dialog,.chart-tool-dialog).artifact-table-dialog {width:min(1020px,92vw);max-height:88vh;overflow:hidden;display:flex;flex-direction:column;gap:14px;}
:is(#opening-range-dialog,.chart-tool-dialog).artifact-table-dialog h2 {text-transform:none;letter-spacing:0;font-size:20px;}
:is(#opening-range-dialog,.chart-tool-dialog).artifact-table-dialog footer button {width:auto;flex:none;}
.artifact-table-dialog .artifact-table-scroll {max-height:none;min-height:0;overflow:auto;}
.artifact-table-dialog table {width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;}
.artifact-table-dialog th,.artifact-table-dialog td {padding:10px 14px;text-align:right;white-space:nowrap;border-bottom:1px solid #263747;}
.artifact-table-dialog th {background:#192a3d;position:sticky;top:0;color:#b8d2ef;}
.artifact-table-dialog th:first-child,.artifact-table-dialog td:first-child {text-align:left;}
.artifact-table-dialog header,.artifact-table-dialog footer,.artifact-table-dialog p {flex:none;}

/* Exact strategy risk inputs stay compact inside the editor sidebar. */
#py-custom-risk { border: 1px solid var(--border, #263343); border-radius: 8px; padding: 12px; margin-top: 10px; }
#py-custom-risk[hidden] { display: none; }
.py-risk-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.py-assumption-prompt {display:grid;gap:7px;margin:10px 0;padding:10px 12px;border:1px solid #7d6545;border-radius:8px;background:#2a241c;color:#efdfc7;font-size:12px;line-height:1.4;}
.py-assumption-prompt[hidden] {display:none;}
.py-assumption-prompt strong {font-size:12px;color:#f7d79e;}
.py-assumption-prompt button {justify-self:start;max-width:100%;padding:7px 10px;border:1px solid #a98554;border-radius:6px;background:#3d3223;color:#f5e7cf;cursor:pointer;}
.py-parameter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.py-parameter-grid .se-field { display: flex; flex-direction: column; min-width: 0; margin-bottom: 0; }
.py-parameter-grid input:not([type="checkbox"]) { width: 100%; box-sizing: border-box; }
.py-parameter-grid input[type="checkbox"] { align-self: flex-start; width: 18px; height: 18px; min-height: 18px; padding: 0; }
#py-advanced-params { margin-top: 12px; }
#py-advanced-params textarea { margin-top: 10px; }
.py-risk-grid .se-field { min-width: 0; margin-bottom: 0; }
.py-risk-grid .se-field[hidden] { display: none; }
.py-risk-grid input, .py-risk-grid select { width: 100%; box-sizing: border-box; }
#py-custom-risk > .se-help { display: block; margin-top: 12px; }

.chart-tool-dialog.builtin-indicator-settings {
  width:min(560px,92vw);max-height:85vh;overflow:hidden;border-color:rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(15,15,18,.99),rgba(6,6,8,.995));color:#e9e9ee;
  box-shadow:0 30px 90px rgba(0,0,0,.76),0 0 34px rgba(103,81,231,.08);backdrop-filter:blur(22px) saturate(110%);
}
.builtin-indicator-settings form {display:flex;flex-direction:column;max-height:calc(85vh - 105px);}
.builtin-indicator-settings .formula-fields {overflow:auto;min-height:0;padding:2px 7px 4px 0;}
.builtin-indicator-settings form > footer,.builtin-indicator-settings form > .or-error {flex:none;}
.builtin-indicator-settings .builtin-settings-sheet>h3 {
  margin:15px 0 3px;padding:0 2px 8px;border-bottom:1px solid rgba(255,255,255,.08);
  color:#9c91ed;font-size:10px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;
}
.builtin-indicator-settings .builtin-settings-sheet>h3:first-child {margin-top:3px;}
.chart-tool-dialog.builtin-indicator-settings .builtin-settings-sheet>label {
  display:grid;grid-template-columns:minmax(150px,1fr) minmax(170px,240px);align-items:center;gap:18px;
  min-height:48px;margin:0;padding:7px 2px;border-bottom:1px solid rgba(255,255,255,.045);
  color:#d8d9e0;font-size:12px;font-weight:620;
}
.chart-tool-dialog.builtin-indicator-settings .settings-field-label {min-width:0;text-align:left;}
.chart-tool-dialog.builtin-indicator-settings .builtin-settings-sheet>label>:is(input,select) {
  width:100%;min-height:34px;margin:0;padding:6px 9px;border:1px solid rgba(255,255,255,.10);border-radius:7px;
  background:#09090c;color:#e7e7ec;
}
.chart-tool-dialog.builtin-indicator-settings .builtin-settings-sheet>label>input[type="color"] {height:34px;padding:4px;}
.builtin-indicator-settings form>footer {
  display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(8,8,10,.88),rgba(8,8,10,.99));
}
.builtin-indicator-settings form>footer button {width:auto;min-width:96px;border-radius:8px;}
.builtin-indicator-settings form>footer button[type="submit"] {
  border:1px solid rgba(128,197,255,.46);background:var(--gradient-action);color:#fff;font-weight:800;
  box-shadow:0 7px 22px rgba(36,92,198,.30),0 0 24px rgba(128,197,255,.12);
}
.chart-tool-dialog.builtin-indicator-settings .indicator-switch {flex-direction:row;align-items:center;justify-content:space-between;}
.chart-tool-dialog.builtin-indicator-settings .indicator-switch input {justify-self:end;width:18px;min-height:18px;accent-color:#6495ff;}
@media(max-width:560px) {
  .chart-tool-dialog.builtin-indicator-settings .builtin-settings-sheet>label {grid-template-columns:1fr;gap:6px;padding:10px 2px;}
}

#py-tick-risk-helper { margin-top: 14px; border-top: 1px solid var(--border, #263343); padding-top: 12px; }
#py-tick-risk-helper[hidden] { display: none; }
#py-tick-risk-helper summary { cursor: pointer; font-size: 12px; color: var(--text, #d7e1ef); }
#py-tick-risk-helper button { margin-top: 12px; }
#py-tick-risk-helper .se-help { display: block; overflow-wrap: anywhere; }
#py-tick-risk-helper a { color: var(--accent, #83bfff); text-underline-offset: 2px; }

#chart-volume {display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 9px;border:1px solid var(--border-subtle);border-radius:6px;background:#111c2c;color:#c4d8ec;font-size:12px;}
#chart-volume .ui-icon {width:16px;height:16px;flex:none;}
#chart-volume[aria-pressed="true"] { background: #1a2a43; border-color: #5b81b9; color: #c7dcff; }
.py-target-example-dialog,.py-directional-example-dialog {width:min(700px,94vw);max-height:84vh;overflow:auto;}
.py-target-example-dialog p,.py-directional-example-dialog p {color:#b7c9dc;line-height:1.55;}
.py-target-example-dialog pre,.py-directional-example-dialog pre {max-height:48vh;overflow:auto;padding:14px;border:1px solid #30445a;border-radius:8px;background:#0b1420;color:#dce9f7;font-size:12px;line-height:1.5;}
.py-target-example-dialog footer,.py-directional-example-dialog footer {display:flex;justify-content:flex-end;gap:10px;}

.history-holdout { margin: 12px 0 4px; padding: 14px 16px; border: 1px solid var(--border, #263343); border-radius: 8px; background: var(--bg, #101722); }
.history-holdout h4 { margin: 0 0 12px; font-size: 12px; font-weight: 600; }
.history-holdout[data-statistics="inconclusive"] h4, .history-holdout[data-statistics="incomplete"] h4 { color: #d4b16d; }
.history-holdout dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 16px; margin: 0; }
.history-holdout dt { color: var(--text-muted, #91a0b4); font-size: 11px; }
.history-holdout dd { margin: 0 0 10px; font-size: 14px; font-weight: 600; }
.history-holdout p { margin: 8px 0 0; color: var(--text-muted, #91a0b4); font-size: 11px; overflow-wrap: anywhere; }
@media (max-width: 700px) { .history-holdout dl { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }

/* Reading the chart and its assistant should not require browser zoom. Keep the
   market canvas large, but give the controls and explanatory text a usable floor. */
#workspace-controls :is(input, select), #workspace-status { font-size: 12px; }
.toolbar-btn { min-height: 34px; font-size: 12px; }
#chart-readout { font-size: 12px; }
#chart-readout strong { font-size: 16px; }
#chart-readout-time { font-size: 11px; }
#chart-data-note, #chart-legend, #marker-source { font-size: 12px; }
#chart-tools-toggle, .study-chip, .study-chip button { font-size: 12px; }
.study-parameters, .indicator-code { font-size: 11px; }
.chart-pane-readout :is(.chart-readout-tool-name, .chart-output-readout) { font-size: 12px; }
#chat-panel-title { font-size: 15px; }
.chat-tab, .chat-msg, .suggestion-label, #chat-starter-prompts > summary { font-size: 13px; }
#chat-compose-hint, .chat-starter-note, .chat-draft-notice { font-size: 12px; }
#chat-input { font-size: 13px; }

#chart-quick-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 4px; flex: none; max-width: 100%; margin-left: auto; }
@container chart-main (max-width: 1400px) {
  #chart-toolbar { gap: 4px; padding-inline: 10px; }
  #chart-toolbar .toolbar-spacer { display: none; }
  #chart-toolbar #timeframe { width: 94px; }
  #chart-toolbar #chart-timezone { width: 105px; }
  #chart-toolbar :is(#indicators-btn, #pine-toolbar-btn, #tools-btn, #strategies-btn, #sizing-btn) { min-width: 32px; padding-inline: 6px; }
  #chart-toolbar :is(#indicators-btn, #pine-toolbar-btn, #tools-btn, #strategies-btn, #sizing-btn) .toolbar-label { display: none; }
}
@container chart-main (min-width: 760px) and (max-width: 1400px) {
  #chart-toolbar, #chart-quick-actions { flex-wrap: nowrap; }
}
@container chart-main (min-width: 900px) and (max-width: 1400px) {
  #chart-toolbar :is(#indicators-btn, #pine-toolbar-btn, #tools-btn) .toolbar-label { display: inline; }
}
@container chart-main (min-width: 650px) and (max-width: 760px) {
  #chart-toolbar:has(#chart-quick-actions:not(.more-open)),
  #chart-quick-actions:not(.more-open) { flex-wrap: nowrap; }
  #chart-toolbar #chart-quick-actions:not(.more-open) #chart-volume { display: none; }
}
#chart-more { display: inline-flex; }
#chart-image-status { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.view-label-compact { display: none; }
@media (max-width: 600px) {
  #chart-quick-actions { gap: 2px; }
  #chart-quick-actions .toolbar-btn { min-width: 28px; min-height: 30px; padding: 4px; }
  #chart-quick-actions svg.ui-icon { width: 16px; height: 16px; }
  #chart-quick-actions .view-label-full { display: none; }
  #chart-quick-actions .view-label-compact { display: inline; }
}

/* Keep the highest-frequency chart actions on one row when the assistant or
   editor narrows the chart. Their accessible names and hover titles stay full. */
@media (max-width: 1650px) {
  #chart-toolbar :is(#chart-recent, #chart-fit, #chart-focus, #chart-save-image, #ai-toggle, #editor-toggle) {
    min-width: 34px;
    padding-inline: 6px;
  }
  #chart-toolbar :is(#chart-recent, #chart-fit, #chart-focus, #chart-save-image, #ai-toggle, #editor-toggle) .toolbar-label {
    display: none;
  }
}
@media (min-width: 1201px) {
  #chart-toolbar #ai-toggle .toolbar-label { display: inline; }
}

/* Keep the first row about reading and acting on the market. Management,
   sizing, and source editing are available under More when requested. */
#chart-toolbar:has(#chart-quick-actions:not(.more-open))
  > .toolbar-popover-wrap:has(#strategies-btn),
#chart-toolbar:has(#chart-quick-actions:not(.more-open))
  > .toolbar-popover-wrap:has(#sizing-btn),
#chart-toolbar #chart-quick-actions:not(.more-open) #editor-toggle {display:none;}
/* Strategy Tester is already a persistent workspace tab. Keep this duplicate
   shortcut under More so the primary chart row stays about the market. */
#chart-toolbar #chart-quick-actions:not(.more-open) #chart-backtest {display:none;}
#chart-toolbar #chart-quick-actions.more-open {
  position:absolute;z-index:42;top:calc(100% + 7px);right:10px;
  display:flex;align-items:center;flex-wrap:wrap;max-width:min(620px,calc(100% - 20px));
  padding:7px;border:1px solid rgba(255,255,255,.10);border-radius:10px;
  background:rgba(12,12,16,.96);box-shadow:0 18px 44px rgba(0,0,0,.44);
  backdrop-filter:blur(18px) saturate(120%);
}
#chart-toolbar #chart-quick-actions.more-open #chart-more {order:99;}
@media (max-width: 1650px) {
  #chart-toolbar #chart-more { display: inline-flex; border: 1px solid var(--border-subtle); }
  #chart-toolbar #chart-quick-actions:not(.more-open) :is(#chart-appearance, #chart-volume, #chart-data-toggle, #chart-recent, #chart-zoom-in, #chart-zoom-out, #chart-fit, #chart-reset-panes, #chart-save-image) { display: none; }
  #chart-toolbar #chart-quick-actions.more-open :is(#chart-recent, #chart-fit, #chart-focus, #chart-save-image) .toolbar-label,
  #chart-toolbar #chart-quick-actions.more-open :is(#chart-appearance, #chart-volume) .view-label-full { display: inline; }
  #chart-toolbar #chart-quick-actions.more-open :is(#chart-appearance, #chart-volume) .view-label-compact { display: none; }
  #chart-toolbar #chart-more[aria-expanded="true"] { background: #1a2a43; color: #c6dcff; border-color: #5575a1; }
}
@media (max-width: 850px) {
  #chart-toolbar :is(#ai-toggle, #editor-toggle) .toolbar-label { display: inline; }
  #chart-toolbar #chart-quick-actions:not(.more-open) #chart-volume { display: none; }
}
@container chart-main (min-width: 1100px) {
  #chart-toolbar #editor-toggle .toolbar-label { display: inline; }
}
.sr-only {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;}
@container chart-main (max-width: 760px) {
  #chart-toolbar {gap:4px;padding:6px 8px;}
  #chart-toolbar #symbol {width:108px;min-width:108px;padding-inline:1px;font-size:11px;}
  #chart-toolbar #timeframe {width:84px;}
  #chart-toolbar :is(#indicators-btn,#tools-btn,#strategies-btn,#sizing-btn,#ai-toggle,#editor-toggle,#chart-more) {
    width:32px;min-width:32px;height:32px;padding:4px;gap:0;
  }
  #chart-toolbar :is(#indicators-btn,#tools-btn,#strategies-btn,#sizing-btn,#ai-toggle,#editor-toggle,#chart-more) .toolbar-label {display:none;}
  #chart-toolbar #strategies-count {display:none;}
  #chart-quick-actions {flex-wrap:nowrap;gap:4px;}
  #chart-quick-actions:not(.more-open) #chart-volume {display:none;}
}

/* Keep the chart ahead of controls and diagnostics at narrow widths. */
#chart-live-controls {display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;margin:3px 14px 8px;min-width:0;}
#chart-live-controls > #chart-data-note:not(:empty) {flex:0 1 auto;min-width:0;max-width:min(440px,45%);margin:0;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
#chart-live-controls > #chart-data-note:not(:empty) details {max-width:100%;}
#chart-live-controls > #chart-data-note:not(:empty) summary {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#chart-live-controls > #chart-data-note:has(details[open]) {flex:1 1 100%;max-width:100%;overflow:visible;white-space:normal;}
#chart-live-controls > #chart-data-note details[open] {width:100%;box-sizing:border-box;}
#chart-live-controls > #chart-data-note details[open] p {white-space:normal;overflow-wrap:anywhere;}
#chart-live-controls > :is(button,details,#chart-live-status,#alert-toast,#live-signal-alert-status):not([hidden]) {box-sizing:border-box;width:auto;max-width:100%;margin:0;padding:5px 9px;flex:0 0 auto;line-height:1.25;}
#chart-live-controls > #chart-live-status:not([hidden]) {flex:0 1 auto;min-width:0;max-width:190px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:6px 9px;}
#chart-live-controls > #live-signal-alert-status:not([hidden]) {flex:1 1 160px;white-space:normal;}
#chart-live-controls > #live-signal-history:not([hidden]) {flex:0 0 auto;}
#chart-live-controls > #signal-options:not([hidden]) {position:relative;padding:0;border:1px solid #365678;border-radius:6px;background:#13283e;color:#d4e9fb;}
#chart-live-controls > #signal-options[data-state="recording"]:not([hidden]) {border-color:#267d69;background:#123a34;color:#9af0d3;}
#chart-live-controls > #signal-options[data-state="delayed"]:not([hidden]) {border-color:#8d6840;background:#38291d;color:#f3c791;}
#signal-options > summary {list-style:none;cursor:pointer;padding:5px 9px;white-space:nowrap;font-size:11px;font-weight:600;}
#signal-options > summary::-webkit-details-marker {display:none;}
#signal-options > summary::after {content:'⌄';margin-left:7px;color:#8db8dc;}
#signal-options[open] > summary::after {content:'⌃';}
#signal-options > summary:focus-visible {outline:2px solid #7abef0;outline-offset:2px;}
#signal-options > .signal-options-menu {position:absolute;right:0;top:calc(100% + 5px);z-index:40;display:grid;gap:5px;min-width:205px;padding:8px;border:1px solid #365678;border-radius:8px;background:#102033;box-shadow:0 12px 32px #0009;}
#signal-options > .signal-options-menu > button:not([hidden]) {width:100%;margin:0;text-align:left;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts):not([open]) {display:none !important;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts,#alert-manager)[open]:not([hidden]) {position:fixed;z-index:90;top:8vh;left:50%;transform:translateX(-50%);display:block;height:auto;min-height:0;align-items:initial;box-sizing:border-box;width:min(520px,calc(100vw - 32px));max-width:none;max-height:84vh;overflow:auto;padding:18px 20px;border:1px solid #416887;border-radius:14px;background:#101d2d;box-shadow:0 28px 80px #000c;}
body:has(#price-alerts[open],#live-webhook-alerts[open]) #chart-live-actions {display:none!important;}
#chart-live-controls > #live-webhook-alerts[open]:not([hidden]) {display:block;height:min(720px,84vh);overflow:hidden;}
#live-webhook-alerts > .alert-dialog-scroll {
  height:max(180px,calc(min(720px,84dvh) - 96px));
  overflow:auto;overscroll-behavior:contain;padding:0 6px 14px 0;
  scrollbar-gutter:stable;
}
#live-webhook-alerts > .alert-dialog-actions {position:absolute;z-index:2;right:0;bottom:0;left:0;display:flex;justify-content:flex-end;gap:8px;margin:0;padding:12px 20px 16px;border-top:1px solid #29445c;background:#101d2d;box-shadow:0 -12px 28px #08111d99;}
#live-webhook-alerts > .alert-dialog-actions button {width:auto;min-width:112px;margin:0;}
#live-webhook-frequency-label[hidden] {display:none !important;}
#chart-live-controls > #alert-manager[open]:not([hidden]) {width:min(650px,calc(100vw - 32px));}
#alert-manager-summary.worker-down {border-color:#b67042;background:#382519;color:#ffd0a0;}
#alert-manager-summary.alerts-degraded {border-color:#a67b42;color:#f0ca90;}
.alert-manager-actions {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;}
.alert-manager-actions > button {flex:0 0 auto;width:auto;margin:0;padding:7px 11px;border:1px solid #426381;border-radius:7px;background:#18344b;color:#dceefb;font-size:12px;}
.alert-manager-actions > button:last-child {margin-left:auto;border-color:transparent;background:transparent;color:#9eb6ca;}
.alert-manager-filters {display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:8px;margin:0 0 12px;}
.alert-manager-filters label {margin:0;}
.alert-manager-filters :is(input,select) {box-sizing:border-box;width:100%;min-height:34px;margin:0;padding:7px 10px;border:1px solid #36536d;border-radius:7px;background:#0b1725;color:#dceefb;font:inherit;}
.alert-manager-filters :is(input,select):focus-visible {outline:2px solid #6caee0;outline-offset:1px;}
.alert-manager-empty-state {padding:20px;border:1px dashed rgba(255,255,255,.11);border-radius:11px;background:rgba(255,255,255,.018);text-align:center;}
.alert-manager-empty-state p {max-width:430px;margin:0 auto 12px;color:#949eaf;line-height:1.55;}
.alert-manager-empty-state p:last-child {margin-bottom:0;}
.alert-manager-empty-state .alert-manager-choose-market {margin:0;padding:8px 13px;border:1px solid rgba(91,198,222,.38);border-radius:8px;background:linear-gradient(135deg,rgba(40,169,201,.20),rgba(111,79,210,.18));color:#e6f7fb;font-size:11px;font-weight:750;cursor:pointer;}
.alert-manager-empty-state .alert-manager-choose-market:hover {border-color:rgba(101,218,239,.62);background:linear-gradient(135deg,rgba(40,169,201,.29),rgba(111,79,210,.25));}
.alert-manager-state {display:inline-flex;align-items:center;margin:0 0 7px;padding:3px 7px;border:1px solid #526474;border-radius:999px;color:#b9c7d2;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.alert-manager-state.active {border-color:#287866;background:#103d34;color:#7ce0c4;}
.alert-manager-state.failed {border-color:#8b5b35;background:#3c2818;color:#f0bf87;}
.alert-manager-state.degraded {border-color:#a67b42;background:#392d1b;color:#f0ca90;}
.alert-readiness-card {margin:0 0 12px;padding:12px 13px;border:1px solid #34536c;border-radius:9px;background:#0b1725;}
.alert-readiness-card header {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;}
.alert-readiness-card header strong {color:#f0f7fc;font-size:11px;letter-spacing:.06em;text-transform:uppercase;}
.alert-readiness-card header span {padding:3px 7px;border:1px solid #587087;border-radius:999px;color:#bad0df;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.alert-readiness-card[data-state="online"] {border-color:#287866;background:#0d2926;}
.alert-readiness-card[data-state="online"] header span {border-color:#287866;background:#103d34;color:#7ce0c4;}
.alert-readiness-card[data-state="attention"] {border-color:#9b6237;background:#2c2118;}
.alert-readiness-card[data-state="attention"] header span {border-color:#9b6237;background:#3c2818;color:#f0bf87;}
.alert-readiness-card[data-state="local"] header span {border-color:#4a7393;background:#172f45;color:#b9dff7;}
.alert-readiness-card > p {margin:0 0 9px;color:#a9c0d0;line-height:1.4;}
.alert-readiness-card dl {display:grid;grid-template-columns:max-content minmax(0,1fr);gap:5px 12px;margin:0;font-size:11px;}
.alert-readiness-card dt {color:#7894a8;}
.alert-readiness-card dd {min-width:0;margin:0;color:#d6e4ee;overflow-wrap:anywhere;}
#live-alert-view-activity {width:auto;margin:0 0 12px;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts,#alert-manager)[open] summary {font-size:15px;margin-bottom:12px;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts)[open] > summary {padding:0 38px 12px 0;border-bottom:1px solid #29445c;color:#f2f8fc;list-style:none;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts)[open] > summary::-webkit-details-marker {display:none;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts)[open] > :is(#price-alert-close,#live-webhook-close) {position:absolute;top:11px;right:13px;float:none;width:32px;min-width:32px;height:32px;min-height:32px;margin:0 !important;padding:0;border:0;border-radius:7px;background:transparent;color:#9eb6ca;font-size:19px;line-height:32px;}
#chart-live-controls > :is(#price-alerts,#live-webhook-alerts)[open] > :is(#price-alert-close,#live-webhook-close):hover {background:#1b3044;color:#fff;}
.alert-kind-tabs {display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:0 0 14px;padding:3px;border:1px solid #2d4961;border-radius:9px;background:#091522;}
.alert-kind-tabs > button {box-sizing:border-box;width:100%;min-height:34px;margin:0 !important;padding:7px 11px !important;border:0 !important;border-radius:6px !important;background:transparent !important;color:#8faabe !important;font-size:12px;font-weight:650;cursor:pointer;}
.alert-kind-tabs > button:hover {color:#ddecf7 !important;background:#142a3e !important;}
.alert-kind-tabs > button.active {background:#1d4665 !important;color:#f5fbff !important;box-shadow:0 1px 4px #0007;}
.alert-dialog-intro {margin:0 0 14px;color:#9eb6ca;line-height:1.45;}
.alert-condition-card {display:grid;gap:10px;margin:12px 0;padding:13px;border:1px solid #36536d;border-radius:10px;background:#0b1725;}
.alert-condition-card > strong {font-size:13px;color:#f1f7fc;}
.alert-condition-card label {margin:0;}
.alert-condition-card label[hidden] {display:none !important;}
.alert-add-condition {justify-self:start;width:auto;margin:0;padding:5px 8px;border:1px dashed #496b86;background:transparent;color:#9ec8e5;font-size:11px;}
.alert-additional-condition {display:grid;grid-template-columns:auto minmax(0,1fr) 30px;align-items:center;gap:8px;}
.alert-additional-condition[hidden] {display:none !important;}
.alert-additional-condition > span {color:#78d8c4;font-size:11px;font-weight:700;text-transform:uppercase;}
.alert-additional-condition > select {width:100%;min-width:0;}
.alert-additional-condition > button {width:30px;min-width:30px;height:30px;margin:0;padding:0;border:0;background:transparent;color:#9eb6ca;font-size:18px;}
.alert-condition-card > p {display:flex;align-items:center;justify-content:space-between;margin:0;padding-top:9px;border-top:1px solid #263e53;color:#91a9bc;}
.alert-condition-card > p strong {color:#dceefb;font-size:12px;}
.alert-runtime-details {margin:0 0 12px;border:1px solid #2d4961;border-radius:9px;background:#0b1725;}
.alert-runtime-details > summary {padding:11px 13px;color:#bdd4e3;font-size:12px;font-weight:700;cursor:pointer;list-style:none;}
.alert-runtime-details > summary::after {content:'Review';float:right;color:#78bce4;font-size:10px;font-weight:650;}
.alert-runtime-details[open] > summary::after {content:'Hide';}
.alert-runtime-details > #live-alert-behavior {margin:0 12px 10px;}
.alert-runtime-details > .alert-snapshot-note {margin:0 12px 10px;}
.alert-runtime-details > .alert-snapshot-review {margin:0 12px 12px;}
.alert-section-card {display:grid;gap:10px;margin:0 0 12px;padding:13px;border:1px solid #34536c;border-radius:9px;background:#0b1725;}
.alert-section-card > strong {color:#f0f7fc;font-size:11px;letter-spacing:.06em;text-transform:uppercase;}
.alert-section-card > label {margin:0;}
.alert-section-card > label[hidden] {display:none !important;}
.alert-section-card small {display:block;margin-top:4px;color:#7894a8;font-size:10px;}
.alert-advanced-section {display:block;padding:0;}
.alert-advanced-section > summary {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;cursor:pointer;list-style:none;}
.alert-advanced-section > summary::-webkit-details-marker {display:none;}
.alert-advanced-section > summary::after {content:'›';margin-left:2px;color:#7894a8;font-size:18px;line-height:1;transform:rotate(0);transition:transform .16s ease;}
.alert-advanced-section[open] > summary::after {transform:rotate(90deg);}
.alert-advanced-section > summary > strong {color:#f0f7fc;font-size:11px;letter-spacing:.06em;text-transform:uppercase;}
.alert-advanced-section > summary > span {min-width:0;margin-left:auto;color:#8ea8bb;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.alert-advanced-section[open] > summary {border-bottom:1px solid #263e53;}
.alert-advanced-section[open] > :not(summary) {margin-left:13px;margin-right:13px;}
.alert-advanced-section[open] > label:first-of-type {margin-top:12px;}
.alert-advanced-section[open] > :last-child {margin-bottom:13px;}
.alert-snapshot-review {margin:10px 0 12px;border:1px solid #29445c;border-radius:8px;background:#0b1725;}
.alert-snapshot-review > summary {padding:10px 12px;color:#bcd2e1;font-size:12px;font-weight:650;cursor:pointer;}
.alert-snapshot-review dl {display:grid;grid-template-columns:max-content minmax(0,1fr);gap:7px 12px;margin:0;padding:0 12px 12px;font-size:11px;}
.alert-snapshot-review dt {color:#7894a8;}
.alert-snapshot-review dd {min-width:0;margin:0;color:#dcecf8;overflow-wrap:anywhere;}
.alert-snapshot-note {margin:0 0 12px;padding:9px 11px;border-radius:8px;background:#15283a;color:#a9c0d2;line-height:1.45;}
.alert-snapshot-note strong {display:inline-block;margin-right:5px;color:#78d8c4;}
#chart-live-controls > #alert-toast:not([hidden]) {position:fixed;right:20px;bottom:20px;z-index:95;max-width:min(420px,calc(100vw - 40px));padding:12px 15px;box-shadow:0 12px 38px #0009;}
#chart-data-note:is(.observed-history,.imported-history),#chart-data-note.fixed-history {margin:2px 14px 5px;}
#chart-live-controls > #chart-data-note:is(.observed-history,.imported-history,.fixed-history) {margin:0;}
#chart-data-note .chart-evaluation-note {display:block;margin:7px 0 0;color:#d4b980;line-height:1.4;}
@media (max-width:760px) {
  #chart-live-controls {margin:3px 12px 7px;gap:5px;}
  #chart-live-controls > #chart-data-note:not(:empty) {max-width:min(280px,65%);flex-basis:auto;}
  #chart-live-controls > #chart-data-note:has(details[open]) {flex-basis:100%;max-width:100%;}
  #chart-live-controls > #chart-live-status:not([hidden]) {flex-basis:auto;}
  #chart-live-controls > :is(button,details):not([hidden]):not([open]) {font-size:11px;padding:6px 8px;}
  #chart-data-note:is(.observed-history,.imported-history),#chart-data-note.fixed-history {margin:2px 12px 5px;}
  .alert-manager-filters {grid-template-columns:minmax(0,1fr);}
}
@container chart-main (max-width:520px) {
  #chart-toolbar #symbol {width:78px;min-width:78px;}
}
#strategy-trade-evidence:not([hidden]) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 12px;
  margin: 0 0 8px;
  border: 1px solid rgba(80, 160, 255, .45);
  border-radius: 8px;
  background: rgba(80, 160, 255, .1);
  color: var(--text-body);
  font-size: 12px;
}
#strategy-trade-evidence-return {
  flex: 0 0 auto;
  width: auto;
  margin: 0;
  padding: 6px 10px;
}
.strategy-results-unavailable {
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--bg-card-elevated);
  color: var(--text-muted);
  line-height: 1.5;
}
.strategy-results-unavailable strong {
  display: block;
  margin-bottom: 4px;
  color: var(--text-headline);
}
.backtest-job-history-error {
  color:#f3b1b7!important;
  font-weight:650;
}
.pine-validation-workflow {margin:12px 0;}
.pine-validation-card {padding:14px;border:1px solid var(--border-subtle);border-radius:9px;
  background:var(--bg-card-elevated);color:var(--text-body);}
.pine-validation-card[data-tone="ready"] {border-color:#376d80;background:#102632;}
.pine-validation-card[data-tone="working"] {border-color:#4a6480;background:#111f30;}
.pine-validation-card[data-tone="attention"] {border-color:#7b653c;background:#2a2113;}
.pine-validation-card[data-tone="complete"] {border-color:#2f7664;background:#102820;}
.pine-validation-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.pine-validation-eyebrow {display:block;margin-bottom:3px;color:var(--text-muted);font-size:10px;
  font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.pine-validation-title {display:block;color:var(--text-headline);font-size:14px;line-height:1.35;}
.pine-validation-state {flex:0 0 auto;padding:3px 7px;border:1px solid currentColor;border-radius:999px;
  color:var(--text-muted);font-size:10px;font-weight:650;text-transform:capitalize;}
.pine-validation-copy,.pine-validation-reason {margin:8px 0;color:var(--text-muted);font-size:12px;line-height:1.5;}
.pine-validation-facts,.pine-validation-metrics {display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);
  gap:5px 12px;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--border-subtle);font-size:11px;}
.pine-validation-facts dt,.pine-validation-metrics dt {color:var(--text-muted);}
.pine-validation-facts dd,.pine-validation-metrics dd {margin:0;color:var(--text-body);font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;}
.pine-validation-metrics dd {font-weight:650;color:var(--text-headline);}
.pine-validation-comparison {margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle);}
.pine-validation-comparison-title {display:block;margin-bottom:8px;color:var(--text-headline);font-size:12px;}
.pine-validation-comparison table {width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums;}
.pine-validation-comparison th,.pine-validation-comparison td {padding:7px 8px;border-bottom:1px solid rgba(255,255,255,.055);text-align:right;}
.pine-validation-comparison th:first-child {text-align:left;}
.pine-validation-comparison thead th {color:var(--text-muted);font-size:9px;letter-spacing:.07em;text-transform:uppercase;}
.pine-validation-comparison tbody th {color:var(--text-body);font-weight:500;}
.pine-validation-comparison tbody td {color:var(--text-headline);font-weight:650;}
.pine-validation-comparison-note {margin:8px 0 0;color:var(--text-muted);font-size:10px;line-height:1.45;}
.pine-validation-actions {display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.pine-validation-actions button {width:auto;min-height:30px;margin:0;padding:5px 10px;}
.pine-validation-confirmation {width:100%;padding:10px;border:1px solid #8a693b;border-radius:7px;background:#1d180f;}
.pine-validation-confirmation>strong {color:#f1d39b;font-size:12px;}
.pine-validation-confirmation>p {margin:5px 0 9px;color:#c9bda6;font-size:11px;line-height:1.45;}
.pine-validation-confirmation-actions {display:flex;flex-wrap:wrap;gap:7px;}
.pine-validation-confirmation-actions .danger {border-color:#a56762;background:#5c2928;color:#fff;}
@media (max-width:520px) {
  .pine-validation-heading {display:block;}
  .pine-validation-state {display:inline-block;margin-top:7px;}
  .pine-validation-facts,.pine-validation-metrics {grid-template-columns:1fr;gap:2px;}
  .pine-validation-facts dd,.pine-validation-metrics dd {margin-bottom:5px;}
}
.pine-results-trade-return {
  margin: 0 0 10px;
}

/* Persistent chart-study shelf. The detailed descriptions stay one click
   away while the default chart surface keeps only decision-ready controls. */
#chart-tools-bar {
  align-items:center;
  gap:6px;
  padding-top:5px;
  border-top:1px solid #17283a;
}
#chart-tools-toggle.study-shelf-summary {
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:26px;
  padding:2px 6px;
  border-color:transparent;
  background:transparent;
  color:#9eb3c7;
  font-weight:650;
}
#chart-tools-toggle.study-shelf-summary::before,
.study-runtime-state::before {
  content:"";
  flex:none;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#668096;
  box-shadow:0 0 0 2px #6680961f;
}
#chart-tools-toggle.study-shelf-summary:hover,
#chart-tools-toggle.study-shelf-summary:focus-visible {
  border-color:#354b65;
  background:#142235;
  color:#e4eef8;
}
#chart-tools-toggle.study-shelf-summary[data-runtime-state="live"]::before,
.study-runtime-state[data-state="live"]::before {background:#35d7ad;box-shadow:0 0 0 2px #35d7ad24;}
#chart-tools-toggle.study-shelf-summary[data-runtime-state="updating"]::before,
.study-runtime-state[data-state="updating"]::before {background:#69bbed;box-shadow:0 0 0 2px #69bbed24;}
#chart-tools-toggle.study-shelf-summary[data-runtime-state="delayed"]::before,
.study-runtime-state[data-state="delayed"]::before,
#chart-tools-toggle.study-shelf-summary[data-runtime-state="attention"]::before,
.study-runtime-state[data-state="attention"]::before {background:#e7ab64;box-shadow:0 0 0 2px #e7ab6424;}
#chart-tools-toggle.study-shelf-summary[data-runtime-state="hidden"]::before,
.study-runtime-state[data-state="hidden"]::before,
#chart-tools-toggle.study-shelf-summary[data-runtime-state="interval-hidden"]::before,
.study-runtime-state[data-state="interval-hidden"]::before,
#chart-tools-toggle.study-shelf-summary[data-runtime-state="paused"]::before,
.study-runtime-state[data-state="paused"]::before {background:#708396;box-shadow:none;}
.study-runtime-state {
  display:inline-flex;
  align-items:center;
  gap:5px;
  flex:none;
  padding:2px 5px;
  border:1px solid #2d4255;
  border-radius:999px;
  background:#0d1824;
  color:#8fa8bd !important;
  font-size:9px;
  font-weight:700;
  line-height:1.25;
  letter-spacing:.025em;
  white-space:nowrap;
}
.study-runtime-state[data-state="live"] {border-color:#235d53;background:#0e2b28;color:#75d9bf !important;}
.study-runtime-state[data-state="updating"] {border-color:#315875;background:#10283a;color:#9acfed !important;}
.study-runtime-state[data-state="delayed"],
.study-runtime-state[data-state="attention"] {border-color:#765633;background:#2d2117;color:#e8bd88 !important;}
.study-runtime-state[data-state="hidden"],
.study-runtime-state[data-state="interval-hidden"],
.study-runtime-state[data-state="paused"] {opacity:.8;}
#chart-tools-bar:not(.is-expanded) .study-chip {
  height:26px;
  min-height:26px;
  padding-inline:4px;
  border-color:transparent;
  border-left-color:transparent;
  background:transparent;
  box-shadow:none;
}
#chart-tools-bar:not(.is-expanded) .study-chip:hover,
#chart-tools-bar:not(.is-expanded) .study-chip:focus-within {
  border-color:#2d3745;
  background:#11151b;
}
#chart-tools-bar:not(.is-expanded):has(#chart-tools-toggle:not([hidden])) #chart-studies {
  display:none;
}
#chart-tools-bar:not(.is-expanded) .study-chip > span:not(.study-runtime-state):not(.study-language) {display:none;}
#chart-tools-bar:not(.is-expanded) .study-chip strong {max-width:220px;font-weight:550;}
#chart-tools-bar:not(.is-expanded) .study-chip :is(.study-runtime-state,.study-language,
  .study-strategy-backtest,.study-add-alert) {display:none;}
#chart-tools-bar:not(.is-expanded) .study-chip button {
  min-width:24px;
  width:24px;
  min-height:24px;
  height:24px;
  padding:2px;
  border-color:transparent;
  background:transparent;
  color:#8f99a8;
}
#chart-tools-bar:not(.is-expanded) .study-chip button:hover,
#chart-tools-bar:not(.is-expanded) .study-chip button:focus-visible {
  border-color:#343d49;
  background:#191d24;
  color:#eef1f6;
}
#chart-tools-bar:not(.is-expanded) .study-chip .study-visibility {
  width:25px;
  min-width:25px;
  padding-inline:3px;
  overflow:hidden;
  color:transparent;
  font-size:0;
}
#chart-tools-bar:not(.is-expanded) .study-chip .study-visibility::before {
  content:"\25c9";
  color:#91b8d7;
  font-size:12px;
}
#chart-tools-bar:not(.is-expanded) .study-chip .study-visibility[aria-pressed="false"]::before {
  content:"\25cb";
  color:#71869a;
}
.study-chip.is-strategy {border-color:#294967;border-left-color:var(--study-color);background:#101d2a;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy {border-color:transparent;background:transparent;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy:hover,
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy:focus-within {border-color:#2d3745;background:#11151b;}
.study-chip.is-strategy .study-strategy-backtest,
.study-chip.is-strategy button[aria-label*="backtest" i] {
  color:#a9dcff;
  font-weight:650;
}
#chart-tools-bar.is-expanded {align-items:flex-start;}
#chart-tools-bar.is-expanded .study-runtime-state {margin-left:auto;}
@media(max-width:760px) {
  #chart-tools-toggle.study-shelf-summary {max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  #chart-tools-bar:not(.is-expanded) .study-runtime-state {display:none;}
  #chart-tools-bar:not(.is-expanded) .study-chip strong {max-width:120px;}
}
.trades-log-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.trades-log-footer .results-note{margin:8px 0}

#chart-trade-legend {display:flex;align-items:center;flex-wrap:wrap;gap:6px;}
.signal-legend-badge {
  --signal-color:#91a0b8;
  --signal-bg:rgba(85,98,120,.12);
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  padding:3px 8px;
  border:1px solid color-mix(in srgb,var(--signal-color) 38%,transparent);
  border-radius:999px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--signal-color) 14%,transparent),var(--signal-bg));
  color:color-mix(in srgb,var(--signal-color) 82%,white);
  box-shadow:0 0 12px color-mix(in srgb,var(--signal-color) 13%,transparent),inset 0 1px rgba(255,255,255,.05);
  font-size:10px;
  font-weight:750;
  letter-spacing:.015em;
  line-height:1;
  white-space:nowrap;
}
.signal-legend-badge .legend-arrow {color:var(--signal-color);font-size:10px;filter:drop-shadow(0 0 5px var(--signal-color));}
.signal-long-entry {--signal-color:#42e6b1;--signal-bg:rgba(22,99,76,.16);}
.signal-long-exit {--signal-color:#e8edf3;--signal-bg:rgba(116,126,140,.14);}
.signal-short-entry {--signal-color:#ff667a;--signal-bg:rgba(123,31,52,.16);}
.signal-short-exit {--signal-color:#e8edf3;--signal-bg:rgba(116,126,140,.14);}
.strategy-position-open {--signal-color:#42e6b1;--signal-bg:rgba(22,99,76,.16);}
.strategy-position-open[data-side="short"] {--signal-color:#ff667a;--signal-bg:rgba(123,31,52,.16);}
.strategy-position-open[data-side="multiple"] {--signal-color:#c875ff;--signal-bg:rgba(85,48,124,.18);}
@media(max-width:760px) {
  .signal-legend-badge {padding-inline:7px;}
  #chart-trade-legend .signal-legend-badge .legend-label-full {display:inline;}
  #chart-trade-legend .signal-legend-badge .legend-label-compact {display:none;}
}

/* Keep the strategy strip task-focused. Version management and publishing
   remain available without competing with results, rerun, and alert actions. */
#sb-actions {position:relative;align-items:center;flex-wrap:wrap;}
#version-save:disabled {display:none;}
#sb-more {position:relative;flex:none;}
#sb-more>summary {display:inline-flex;align-items:center;gap:6px;list-style:none;cursor:pointer;user-select:none;}
#sb-more>summary::-webkit-details-marker {display:none;}
#sb-more[open]>summary {border-color:rgba(105,214,255,.42);background:linear-gradient(135deg,rgba(70,205,255,.10),rgba(130,92,255,.10));color:var(--text-headline);}
#sb-more-menu {position:absolute;z-index:95;top:calc(100% + 7px);right:0;display:grid;gap:4px;width:max-content;min-width:170px;padding:6px;border:1px solid rgba(112,126,157,.34);border-radius:10px;background:linear-gradient(145deg,rgba(20,23,33,.99),rgba(9,11,17,.99));box-shadow:var(--shadow-float);}
#sb-more-menu .sb-btn {display:block;width:100%;padding:8px 10px;text-align:left;background:transparent;border-color:transparent;color:var(--text-body);}
#sb-more-menu .sb-btn:hover:not(:disabled),#sb-more-menu .sb-btn:focus-visible {background:var(--gradient-surface);border-color:rgba(105,214,255,.24);color:var(--text-headline);}
#sb-more-menu .sb-btn[hidden] {display:none;}
@media(max-width:760px) {
  #sb-actions {width:100%;}
  #sb-actions>.sb-btn {flex:1 1 auto;}
  #sb-more {margin-left:auto;}
  #sb-more-menu {right:0;max-width:calc(100vw - 28px);}
}

/* Final theme layer. Keep it last so feature-specific legacy colors cannot
   pull the shell back toward the older blue-grey prototype. */
#topbar {background:rgba(9,10,15,.94);border-bottom-color:rgba(110,123,153,.22);}
#rail {background:rgba(10,12,18,.97);border-right-color:rgba(100,112,140,.18);}
#chat-panel,#strategy-editor {background:rgba(12,14,20,.98);border-color:rgba(100,112,140,.20);}
#main {background:rgba(7,8,12,.86);}
#chart-toolbar,#chart-range-controls,#chart-tools-bar,#results-collapse-bar {
  background:rgba(12,14,20,.92);
  border-color:rgba(100,112,140,.20);
}

/* Trading work owns the header at ordinary laptop widths. The three
   discovery destinations remain full pages reached from the persistent rail;
   their text tabs return when the viewport has room. Keep the selected tab
   visible so the current page always has a plain-language name. */
@media(max-width:1450px) {
  #workspace-view-strategies:not([aria-selected="true"]),
  #workspace-view-community:not([aria-selected="true"]),
  #workspace-view-ideas:not([aria-selected="true"]) {display:none;}
}
#chart-readout {background:linear-gradient(90deg,rgba(17,20,29,.98),rgba(8,10,15,.98));border-color:rgba(100,112,140,.18);}
.toolbar-popover {background:linear-gradient(145deg,rgba(20,23,33,.99),rgba(10,12,18,.99));border-color:rgba(112,126,157,.30);}
.strategy-chooser-paths>button,.strategy-chooser-card,.strategy-chooser-starters button {
  border-color:rgba(111,126,158,.32);
  background:linear-gradient(145deg,rgba(23,27,38,.98),rgba(12,15,23,.98));
  color:var(--text-headline);
}
.strategy-chooser-paths>button:first-child {
  border-color:rgba(94,210,255,.38);
  background:var(--gradient-surface),rgba(13,16,24,.98);
}
.strategy-chooser-paths>button:hover,.strategy-chooser-card:hover,.strategy-chooser-starters button:hover {
  border-color:rgba(105,214,255,.62);
  background:linear-gradient(145deg,rgba(34,42,58,.98),rgba(18,20,31,.98));
  box-shadow:0 12px 30px rgba(0,0,0,.26),0 0 22px rgba(86,150,255,.08);
}
.strategy-chooser-flow li,.strategy-chooser-paths>form {
  border-color:rgba(104,117,147,.28);
  background:rgba(8,10,16,.78);
}
.strategy-chooser-flow strong {background:linear-gradient(135deg,rgba(46,189,225,.28),rgba(119,83,229,.28));color:#a7eaff;}
.headline-strip {background:linear-gradient(105deg,rgba(12,15,23,.98),rgba(20,18,31,.96));border-color:rgba(107,121,151,.20);}
#results-next-step {background:var(--gradient-surface),rgba(13,16,24,.98);}

/* Completed results read as a decision surface: outcome, primary next moves,
   then quiet utilities. A linked result already proves the exact attachment,
   so do not repeat that receipt in a second green pill. */
#results-header:has(.result-lineage-state[data-state="linked"]:not([hidden])) .result-attachment-state.is-exact,
#results-header:has(.result-lineage-state[data-state="matched"]:not([hidden])) .result-attachment-state.is-exact {display:none;}
#results-header-actions>#results-net {order:0;color:#52e0b6;font-size:13px;font-weight:780;}
#results-header-actions>#results-create-alert,
#results-header-actions>#results-attach-exact {border-color:rgba(65,191,159,.42);background:rgba(20,68,57,.46);color:#a8efd9;box-shadow:none;}
#results-more-actions {position:relative;flex:none;}
#results-more-actions:not(:has(.results-more-menu>button:not([hidden]))) {display:none;}
#results-more-actions>summary {
  display:flex;align-items:center;justify-content:center;min-height:32px;padding:6px 11px;
  border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(18,18,22,.94);
  color:#a8aeba;font-size:10.5px;font-weight:700;cursor:pointer;list-style:none;
}
#results-more-actions>summary::-webkit-details-marker {display:none;}
#results-more-actions>summary::after {content:"⌄";margin-left:6px;color:#737b8b;}
#results-more-actions[open]>summary {border-color:rgba(121,105,239,.34);background:rgba(101,81,220,.09);color:#eeeeF5;}
#results-more-actions[open]>summary::after {transform:rotate(180deg);}
.results-more-menu {
  position:absolute;right:0;top:calc(100% + 7px);z-index:40;display:grid;min-width:190px;padding:6px;
  border:1px solid rgba(255,255,255,.12);border-radius:11px;
  background:linear-gradient(145deg,rgba(19,19,23,.99),rgba(8,8,11,.995));
  box-shadow:0 18px 55px rgba(0,0,0,.62),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(20px);
}
.results-more-menu>button {width:100%;min-height:33px;margin:0;padding:7px 9px;border:0;border-radius:7px;background:transparent;color:#b8bdc8;text-align:left;font-size:10.5px;}
.results-more-menu>button:hover,.results-more-menu>button:focus-visible {outline:0;background:linear-gradient(135deg,rgba(49,185,210,.09),rgba(111,87,229,.13));color:#f2f2f7;}
#results-header-actions>#results-run-deep,
#results-header-actions>#results-testing-period,
#results-header-actions>#results-strategy-settings {order:3;}
#results-header-actions>#results-pin-baseline,
#results-header-actions>#results-download-bundle {order:4;color:#98a1b2;background:rgba(18,21,30,.68);border-color:rgba(107,119,145,.25);}
#results-header-actions>#results-pin-baseline {margin-left:5px;}
@media(max-width:760px) {
  #results-header-actions>#results-pin-baseline {margin-left:0;}
  #results-header-actions>#results-create-alert {flex:1 1 44%;}
}

/* Obsidian Glass workspace shell.
   Keep the chart dominant, place the copilot at the natural inspection edge,
   and use glass only for interactive layers rather than every container. */
#workspace > #rail {order:0;}
#workspace > #main,#workspace > #library-view,#workspace > #deploy-view {order:1;}
#workspace > #chat-panel-collapse {order:2;}
#workspace > #assistant-resize {order:3;}
#workspace > #chat-panel {order:4;}
#chat-panel {
  width:var(--assistant-panel-width,326px);
  border-right:0;border-left:1px solid rgba(116,126,155,.18);
  background:
    radial-gradient(circle at 92% 0%,rgba(103,72,221,.10),transparent 25%),
    linear-gradient(180deg,rgba(11,11,14,.985),rgba(6,6,8,.995));
  box-shadow:-16px 0 48px rgba(0,0,0,.20);
}
#assistant-resize {order:3;background:rgba(7,7,9,.99);}
/* One assistant entry point per layout: the persistent rail owns desktop,
   while the compact top-bar control remains reachable on narrow screens. */
@media(min-width:851px) {#toggle-chat-panel {display:none;}}
@media(max-width:850px) {#rail-chat {display:none;}}
#assistant-resize::after {left:2px;background:rgba(119,131,162,.22);}
#chat-panel-collapse {
  width:17px;background:rgba(7,7,9,.99);border-left:1px solid rgba(255,255,255,.07);
  color:#788397;
}
#chat-panel-head {padding:15px 15px 0;}
#chat-panel-title {
  display:flex;align-items:center;gap:9px;color:#f5f4ff;
  font-size:14px;font-weight:760;letter-spacing:-.01em;
}
#chat-panel-title::before {
  content:"";width:22px;height:22px;flex:none;border-radius:50%;
  background:radial-gradient(circle at 31% 28%,#ddf7ff 0 8%,#80c5ff 27%,#397ed8 58%,#245cc6 82%,#102a66 100%);
  box-shadow:0 0 19px rgba(106,85,245,.42),inset 0 1px rgba(255,255,255,.55);
}
#chat-panel-title::after {
  content:"Market copilot";margin-left:auto;color:#747d90;
  font-size:9px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;
}
#chat-panel-tabs {gap:18px;margin-top:13px;border-bottom-color:rgba(111,122,150,.15);}
.chat-tab {padding-bottom:9px;color:#7f8798;font-size:11px;font-weight:650;letter-spacing:0;text-transform:none;}
.chat-tab.active {color:#f0f6ff;border-image:var(--gradient-hero) 1;}
#chat-suggestions {
  order:3;flex:0 0 auto;padding:5px 13px 7px;
  border-top:1px solid rgba(112,122,149,.12);
}
#chat-context {
  max-height:44px;margin:0 0 10px;padding:8px 9px;overflow:hidden;
  border:0;border-left:2px solid #746bea;border-radius:0 7px 7px 0;
  background:rgba(105,88,213,.075);color:#a9b1c0;font-size:10px;line-height:1.4;
}
#chat-starter-prompts > summary {
  width:max-content;margin:0 auto;padding:4px 9px;list-style:none;cursor:pointer;
  border-radius:999px;color:#8d96a9;font-size:10px;font-weight:650;
}
#chat-starter-prompts > summary::-webkit-details-marker {display:none;}
#chat-starter-prompts > summary::after {content:"  +";color:#8a72ef;}
#chat-starter-prompts[open] > summary {margin:0 0 6px;color:#eceef6;font-size:11px;font-weight:700;}
#chat-starter-prompts[open] > summary::after {content:"  −";}
.chat-starter-note {margin:-2px 0 2px;color:#737c8e;font-size:10px;line-height:1.35;}
#chat-starter-grid,#chat-more-starters-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;}
#chat-strategy-suggestions:not([hidden]) {display:contents;}
#chat-more-starters {grid-column:1 / -1;min-width:0;margin-top:1px;}
#chat-more-starters > summary {
  width:max-content;margin:1px auto 0;padding:4px 8px;cursor:pointer;list-style:none;
  border-radius:999px;color:#858fa2;font-size:9.5px;font-weight:650;
}
#chat-more-starters > summary::-webkit-details-marker {display:none;}
#chat-more-starters > summary::after {content:"  +";color:#8a72ef;}
#chat-more-starters[open] > summary {margin-bottom:7px;color:#c2c7d2;background:rgba(115,88,220,.08);}
#chat-more-starters[open] > summary::after {content:"  −";}
.suggestion {
  min-width:0;min-height:62px;margin:0;padding:9px 10px;gap:4px;
  border:1px solid rgba(255,255,255,.085);border-radius:10px;
  background:linear-gradient(145deg,rgba(23,23,27,.88),rgba(14,14,17,.82));
  box-shadow:inset 0 1px rgba(255,255,255,.025);transition:transform .14s ease,border-color .14s ease,background .14s ease;
}
.suggestion:hover,.suggestion:focus-visible {
  transform:translateY(-1px);border-color:rgba(104,162,255,.46);
  background:linear-gradient(145deg,rgba(31,31,37,.96),rgba(23,20,31,.94));
  box-shadow:0 9px 22px rgba(0,0,0,.22),0 0 20px rgba(103,88,240,.08);
}
.suggestion-label {color:#e8ebf5;font-size:11px;line-height:1.25;}
.suggestion-cost {color:#788195;font-size:9px;line-height:1.3;}
#chat-messages {order:2;padding:13px;}
#chat-empty-state {
  flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-height:180px;
  padding:18px 4px 16px;color:#9aa2b3;
}
#chat-panel:has(#chat-messages:not(:empty)) #chat-empty-state {display:none;}
#chat-messages:empty {flex:0;padding:0;}
.chat-empty-kicker {
  color:#70ded2;font-size:9px;font-weight:820;letter-spacing:.11em;text-transform:uppercase;
}
#chat-empty-state h2 {
  margin:8px 0 7px;color:#f4f2fb;font-size:21px;line-height:1.12;letter-spacing:-.035em;
}
#chat-empty-state>p {margin:0;color:#9299aa;font-size:11px;line-height:1.55;}
.chat-empty-workflow {margin-top:12px;color:#7e8799;font-size:10px;}
.chat-empty-workflow>summary {width:max-content;cursor:pointer;list-style:none;color:#929bad;font-weight:680;}
.chat-empty-workflow>summary::-webkit-details-marker {display:none;}
.chat-empty-workflow>summary::after {content:'  +';color:#8571ee;}
.chat-empty-workflow[open]>summary::after {content:'  −';}
.chat-empty-workflow>p {margin:7px 0 0;padding:9px 10px;border-left:2px solid rgba(111,94,231,.48);background:rgba(105,86,215,.055);line-height:1.45;}
#assistant-provider-row {display:none;}
#assistant-options-row {justify-content:flex-end;}
#busy-indicator {order:2;}
#chat-composer {
  order:4;padding:8px 13px 9px;border-top-color:rgba(112,122,149,.16);
  background:linear-gradient(180deg,rgba(8,8,10,.88),rgba(5,5,7,.99));
}
#assistant-options-row {margin-bottom:5px;gap:8px;}
#assistant-code-language-hint {display:none;}
#chat-compose-hint {margin-top:3px;}
#chat-restore-previous,#chat-return-pine-draft,#research-job-check {
  width:auto;min-height:0;margin:4px 0 0;padding:3px 0;border:0;background:transparent;
  color:#858fa2;font-size:10px;text-align:left;box-shadow:none;
}
#chat-restore-previous:hover,#chat-return-pine-draft:hover,#research-job-check:hover {color:#c9cfdb;background:transparent;}
#chat-status {padding:5px 0 0;font-size:10px;line-height:1.35;}
#chat-input-row {
  border:1px solid rgba(116,130,165,.30);border-radius:12px;
  background:rgba(18,18,22,.96);box-shadow:0 10px 30px rgba(0,0,0,.28);
}
#chat-input-row:focus-within {border-color:rgba(108,158,255,.62);box-shadow:0 0 0 3px rgba(92,101,239,.10),0 12px 34px rgba(0,0,0,.25);}
#chat-input {border:0;background:transparent;box-shadow:none;}
#chat-send {border-radius:9px;background:var(--gradient-action);box-shadow:0 5px 16px rgba(36,92,198,.32),0 0 18px rgba(128,197,255,.10);}
#alert-manager-status.service-attention {
  margin:12px 0 0;padding:10px 12px;border:1px solid rgba(255,111,126,.32);
  border-radius:9px;background:rgba(140,35,52,.12);color:#ffb2bc;font-size:11px;line-height:1.45;
}

/* Concept C strategy studio. The editor reads as one focused glass workbench,
   with the chart remaining visible as the immediate preview surface. */
#strategy-editor {
  background:linear-gradient(155deg,rgba(16,16,20,.985),rgba(7,7,9,.99));
  border-left-color:rgba(255,255,255,.09);
  box-shadow:18px 0 54px rgba(0,0,0,.26) inset,16px 0 45px rgba(0,0,0,.20);
}
#strategy-editor #se-head {
  min-height:54px;padding:9px 14px;
  border-bottom:1px solid rgba(255,255,255,.085);
  background:linear-gradient(135deg,rgba(25,25,30,.84),rgba(10,10,13,.92));
  backdrop-filter:blur(18px) saturate(120%);
}
#strategy-editor #se-title {font-size:13px;letter-spacing:-.01em;color:#f2f3f8;}
#strategy-editor #se-dock,#strategy-editor #se-collapse {
  min-height:29px;padding:5px 9px;border:1px solid rgba(255,255,255,.08);
  border-radius:8px;background:rgba(255,255,255,.025);color:#939aaa;font-size:10px;
}
#strategy-editor #se-dock:hover,#strategy-editor #se-collapse:hover {
  border-color:rgba(128,115,246,.38);background:rgba(113,94,230,.08);color:#e7e8ef;
}
#strategy-editor #se-body {padding:15px 17px 24px;scrollbar-color:rgba(133,123,221,.55) transparent;}
#strategy-editor.python-settings-focus {width:min(540px,calc(100vw - 64px));}
#strategy-editor.python-settings-focus #se-dock,
#strategy-editor.python-settings-focus #se-run-backtest,
#strategy-editor.python-settings-focus #se-create-paths,
#strategy-editor.python-settings-focus #se-advanced-start,
#strategy-editor.python-settings-focus #se-family-note,
#strategy-editor.python-settings-focus #se-empty-start,
#strategy-editor.python-settings-focus #se-rules,
#strategy-editor.python-settings-focus #se-footer-note {display:none!important;}
#strategy-editor.python-settings-focus #se-title::after {
  content:'Attached strategy';margin-left:8px;padding:2px 6px;border:1px solid rgba(71,217,181,.22);
  border-radius:999px;background:rgba(39,180,142,.07);color:#88d8c0;font-size:8px;font-weight:750;
  letter-spacing:.055em;text-transform:uppercase;vertical-align:1px;
}
body.editor-bottom #strategy-editor.python-settings-focus #se-head #se-title {
  display:flex;align-items:center;min-width:0;
}
body.editor-bottom #strategy-editor.python-settings-focus #se-head {
  min-height:44px;padding:6px 12px;
}
#strategy-editor.python-settings-focus #se-collapse {width:30px;min-width:30px;height:30px;padding:0;font-size:18px;line-height:1;}
#strategy-editor.python-settings-focus #se-body {padding-top:10px;}
/* Settings opened from a chart study behave like a focused settings sheet.
   Editing code keeps the docked workspace editor; routine settings float
   above the chart without resizing the price canvas. */
body.editor-bottom #strategy-editor.python-settings-focus {
  position:fixed!important;z-index:86;inset:7vh auto auto 50%!important;
  transform:translateX(-50%);box-sizing:border-box;
  width:min(640px,calc(100vw - 32px))!important;height:min(760px,86vh)!important;
  max-height:86vh;border:1px solid rgba(137,126,224,.34);border-radius:16px;
  background:linear-gradient(145deg,rgba(20,20,25,.985),rgba(7,8,11,.995));
  box-shadow:0 0 0 100vmax rgba(0,0,0,.55),0 30px 90px rgba(0,0,0,.74),0 0 32px rgba(113,89,236,.10);
  backdrop-filter:blur(22px) saturate(118%);
}
body.editor-bottom #strategy-editor-resize:has(+ #strategy-editor.python-settings-focus) {display:none!important;}
body.editor-bottom #strategy-editor.python-settings-focus #se-head #se-title {display:block;}
body.editor-bottom #strategy-editor.python-settings-focus #se-head {
  flex:0 0 auto;min-height:48px;padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.075);
}
body.editor-bottom #strategy-editor.python-settings-focus #se-body {min-height:0;overflow:auto;padding:10px 16px 22px;}
@media(max-width:680px) {
  body.editor-bottom #strategy-editor.python-settings-focus {
    inset:8px 8px 8px 8px!important;transform:none;width:auto!important;height:auto!important;max-height:none;
    border-radius:13px;
  }
}
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-create-paths,
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-advanced-start,
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-family-note,
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-empty-start {display:none!important;}
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-body {padding-top:10px;}
#strategy-editor.attached-strategy-focus:not(.python-settings-focus) #se-title::after {
  content:'On chart';margin-left:8px;padding:2px 6px;border:1px solid rgba(71,217,181,.22);
  border-radius:999px;background:rgba(39,180,142,.07);color:#88d8c0;font-size:8px;font-weight:750;
  letter-spacing:.055em;text-transform:uppercase;vertical-align:1px;
}
#strategy-editor .python-fill-contract-details {
  margin:10px 0 15px;padding:0;border:1px solid rgba(255,255,255,.075);border-radius:9px;background:rgba(255,255,255,.018);
}
#strategy-editor .python-fill-contract-details>summary {
  display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;margin:0;padding:8px 10px;list-style:none;
}
#strategy-editor .python-fill-contract-details>summary::-webkit-details-marker {display:none;}
#strategy-editor .python-fill-contract-details>summary::after {content:'›';color:#7d8491;font-size:16px;transition:transform .14s ease;}
#strategy-editor .python-fill-contract-details[open]>summary::after {transform:rotate(90deg);}
#strategy-editor .python-fill-contract-details>summary strong {color:#d6d8df;font-size:11px;}
#strategy-editor .python-fill-contract-details>summary span {margin-left:auto;color:#7f8592;font-size:9px;}
#strategy-editor .python-fill-contract-details>.python-property-contract {margin:0 9px 8px;}
#strategy-editor .python-fill-contract-details>.se-help {margin:0 10px 10px;}
.strategy-studio-meta {
  display:flex;align-items:center;gap:6px;margin:0 0 10px;padding:8px 10px;
  border:1px solid rgba(255,255,255,.075);border-radius:9px;
  background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(112,86,231,.025));
}
.strategy-studio-badge {display:inline-flex;align-items:center;min-height:21px;padding:2px 8px;border-radius:999px;font-size:9.5px;font-weight:750;letter-spacing:.025em;white-space:nowrap;}
.strategy-studio-badge.is-language {border:1px solid rgba(91,207,230,.26);background:rgba(43,184,209,.08);color:#82dbe9;}
.strategy-studio-badge.is-type {border:1px solid rgba(204,91,193,.30);background:rgba(190,73,179,.09);color:#efb7e9;}
.strategy-studio-badge.is-market {color:#a7abb5;background:rgba(255,255,255,.035);}
.strategy-studio-badge.is-draft {margin-left:auto;border:1px solid transparent;color:#8e95a3;}
.strategy-studio-badge.is-draft[data-state="running"] {border-color:rgba(89,190,222,.28);background:rgba(45,159,196,.09);color:#9bdbea;}
.strategy-studio-badge.is-draft[data-state="saved"],.strategy-studio-badge.is-draft[data-state="unsaved"] {border-color:rgba(59,214,164,.25);background:rgba(35,181,137,.08);color:#96e1c7;}
.strategy-studio-badge.is-draft[data-state="changed"],.strategy-studio-badge.is-draft[data-state="failed"] {border-color:rgba(239,101,122,.28);background:rgba(204,61,84,.09);color:#f1a5b1;}
#strategy-editor #se-create-paths {
  gap:2px;margin-bottom:14px;padding:3px;border-color:rgba(255,255,255,.09);border-radius:10px;
  background:rgba(255,255,255,.025);box-shadow:inset 0 1px rgba(255,255,255,.025);
}
#strategy-editor #se-create-paths button {
  min-height:33px;padding:7px 5px;border-radius:7px;color:#8d94a4;background:transparent;
  transition:color .14s ease,background .14s ease,box-shadow .14s ease;
}
#strategy-editor #se-create-paths button:hover,#strategy-editor #se-create-paths button:focus-visible {
  outline:0;background:rgba(255,255,255,.045);color:#e8eaf2;
}
#strategy-editor #se-create-paths button[aria-current="page"] {
  color:#f7f7fb;background:linear-gradient(135deg,rgba(72,205,224,.13),rgba(114,91,235,.16),rgba(205,76,183,.10));
  box-shadow:inset 0 0 0 1px rgba(132,117,245,.23),0 5px 18px rgba(0,0,0,.18);
}
#strategy-editor #se-advanced-start {margin:0 0 10px;color:#8b92a1;}
#strategy-editor #se-advanced-start>summary {padding:2px 0;color:#a8aeba;font-size:11px;}
#strategy-editor #se-family-note {padding:0 0 11px;border-bottom:1px solid rgba(255,255,255,.065);color:#7f8797;}
#strategy-editor .py-identity-details {
  margin:0 0 10px;border:1px solid rgba(255,255,255,.075);border-radius:9px;background:rgba(255,255,255,.018);
}
#strategy-editor .py-identity-details>summary {padding:9px 10px;color:#aab0bd;}
#strategy-editor .py-identity-details[open] {padding:0 10px 10px;}
#strategy-editor .py-identity-details[open]>summary {margin-inline:-10px;padding-inline:10px;border-bottom:1px solid rgba(255,255,255,.06);}
#strategy-editor .se-group {margin-top:13px;border-top-color:rgba(255,255,255,.07);}
#strategy-editor .se-group-title {color:#858d9d;font-size:9.5px;letter-spacing:.1em;}
#strategy-editor .se-code-primary {gap:6px;}
#strategy-editor .se-code-primary button {
  min-height:32px;border:1px solid rgba(255,255,255,.09);border-radius:8px;
  background:rgba(255,255,255,.025);color:#b9bec9;font-size:10.5px;
}
#strategy-editor .se-code-primary #py-review-with-ai {
  border-color:rgba(129,112,244,.34);background:linear-gradient(135deg,rgba(59,194,215,.09),rgba(111,90,229,.14));color:#e7e7fa;
}
#strategy-editor .se-code-primary #py-review-with-ai:hover {border-color:rgba(138,122,250,.60);background:linear-gradient(135deg,rgba(59,194,215,.14),rgba(111,90,229,.20));}
#strategy-editor .se-code-primary #py-plot-code {border-color:rgba(58,218,178,.28);background:rgba(30,185,143,.075);color:#9fe8d3;}
#strategy-editor .se-code-primary #py-plot-code:hover {border-color:rgba(58,218,178,.52);background:rgba(30,185,143,.13);}
#strategy-editor #py-check-code {border-color:rgba(93,193,226,.30);background:rgba(47,172,201,.07);color:#a9dce8;}
#strategy-editor #py-check-code::before {content:"✓";margin-right:5px;color:#70d7e7;font-weight:850;}
#strategy-editor .python-strategy-validation {display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin:7px 0 2px;color:#858b98;}
#strategy-editor .python-strategy-validation::before {content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#737987;}
#strategy-editor .python-strategy-validation.is-checking {color:#9fcce5;}
#strategy-editor .python-strategy-validation.is-checking::before {background:#65c7e2;box-shadow:0 0 10px rgba(101,199,226,.52);}
#strategy-editor .python-strategy-validation.is-valid {color:#a9ddce;}
#strategy-editor .python-strategy-validation.is-valid::before {background:#45dfb2;box-shadow:0 0 11px rgba(69,223,178,.68);}
#strategy-editor .python-strategy-validation.is-error {color:#edaab4;}
#strategy-editor .python-strategy-validation.is-error::before {background:#ef657a;box-shadow:0 0 10px rgba(239,101,122,.48);}
#strategy-editor .se-settings-tabs {gap:3px;margin:0 0 10px;padding:4px;border-color:rgba(255,255,255,.08);border-radius:10px;background:rgba(4,4,6,.78);}
#strategy-editor .se-settings-tab {min-height:31px;padding:6px 7px;border-radius:7px;color:#7f8491;font-size:10px;font-weight:700;}
#strategy-editor .se-settings-tab:hover,#strategy-editor .se-settings-tab:focus-visible {outline:0;background:rgba(255,255,255,.04);color:#d7d8df;}
#strategy-editor .se-settings-tab[aria-selected="true"] {background:linear-gradient(135deg,rgba(47,193,220,.13),rgba(116,90,232,.17));color:#f3f2fa;box-shadow:inset 0 0 0 1px rgba(123,108,239,.20),0 0 18px rgba(99,82,229,.06);}
#strategy-editor .py-editor {
  height:min(390px,43dvh);border-color:rgba(255,255,255,.10);border-radius:10px;
  background:rgba(4,4,6,.92);box-shadow:inset 0 1px rgba(255,255,255,.025),inset 0 0 28px rgba(0,0,0,.32);
}
#strategy-editor .py-gutter {padding-top:10px;background:rgba(255,255,255,.018);border-right-color:rgba(255,255,255,.07);color:#626a79;}
#strategy-editor .py-code-surface #py-source,#strategy-editor .py-code-surface #py-highlight {padding:10px 11px;}
#strategy-editor .py-code-surface #py-source {color:transparent;caret-color:#65d9e9;}
#strategy-editor .py-code-surface #py-highlight {color:#d7dae3;}
#strategy-editor .se-code-more>summary,#strategy-editor .se-code-examples>summary {color:#8f97a7;}
#strategy-editor .se-code-tools summary {
  border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:#aeb4c1;
}
#strategy-editor .se-code-tools[open] summary {border-color:rgba(130,114,245,.34);background:rgba(110,89,226,.09);}
#strategy-editor :is(input,select,textarea) {border-color:rgba(255,255,255,.10);background:rgba(5,5,7,.82);}
#strategy-editor :is(input,select,textarea):focus {border-color:rgba(120,112,235,.62);box-shadow:0 0 0 3px rgba(111,91,229,.09);}
#strategy-editor #se-footer-note {padding-top:12px;border-top:1px solid rgba(255,255,255,.06);color:#697181;}
/* The Code destination is a source editor. Keep strategy execution metadata in
   Properties and use one file toolbar instead of a second workspace header. */
body.workspace-editor-mode #workspace > #strategy-editor:has(#py-source):not(.python-settings-focus) {
  position:fixed!important;z-index:2500!important;inset:0!important;display:flex!important;
  min-width:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;
  border:0!important;border-radius:0!important;background:#0d0e11!important;box-shadow:none!important;
}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #se-body {
  height:calc(100dvh - 44px)!important;padding:0!important;overflow:hidden!important;
}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #family-params {
  display:flex!important;height:100%!important;min-height:0!important;flex-direction:column!important;
}
body.workspace-editor-mode #strategy-editor:has(#py-source) #se-head,
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) :is(#se-create-paths,#se-advanced-start,#se-family-note,#py-settings-tabs,#se-footer-note) {display:none!important;}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-code-section>.se-code-heading,
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-code-section .se-code-more,
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-code-guide,
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-toolkit-help {display:none!important;}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-code-section {
  display:flex;min-height:0;height:100%;flex:1;margin:0;padding:0;flex-direction:column;border:0;
}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-code-section>.py-field {
  display:flex;min-height:0;flex:1;margin:0;padding:0;flex-direction:column;
}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) .py-editor {
  height:auto;min-height:0;flex:1;border:0;border-radius:0;
}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-highlight {display:block!important;z-index:2!important;}
body.workspace-editor-mode #strategy-editor:has(#py-source):not(.python-settings-focus) #py-source {z-index:3!important;background:transparent!important;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar {
  min-height:44px;padding:7px 12px;align-items:center;flex-wrap:nowrap;background:#141519;border-bottom:1px solid rgba(255,255,255,.075);
}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #sb-identity {flex:1 1 auto;}
body.workspace-editor-mode #code-script-picker {position:relative;}
body.workspace-editor-mode #code-script-picker>summary {display:flex;align-items:center;list-style:none;cursor:pointer;}
body.workspace-editor-mode #code-script-picker>summary::-webkit-details-marker {display:none;}
body.workspace-editor-mode #strategy-editor>#strategy-bar #sb-name::after {content:"⌄";margin-left:5px;color:#7e838d;font-size:10px;font-weight:500;}
body.workspace-editor-mode #code-script-menu {
  position:absolute;z-index:30;top:35px;left:-6px;width:334px;padding:8px 8px 6px;border:1px solid rgba(255,255,255,.10);
  border-radius:10px;background:#16171a;box-shadow:0 18px 52px rgba(0,0,0,.58);
}
.code-script-menu-label {padding:5px 8px 8px;color:#777c86;font-size:9px;font-weight:760;letter-spacing:.11em;text-transform:uppercase;}
#code-script-recent {display:grid;gap:1px;}
#code-script-recent button,#code-script-new {display:flex;width:100%;min-height:34px;padding:7px 9px;align-items:center;gap:9px;border:0;border-radius:6px;background:transparent;color:#e5e6e9;text-align:left;}
#code-script-recent button:hover,#code-script-new:hover {background:rgba(255,255,255,.055);}
#code-script-recent button strong {min-width:0;flex:1;overflow:hidden;color:#e8e9ec;font-size:11px;font-weight:560;text-overflow:ellipsis;white-space:nowrap;}
#code-script-recent button time {flex:0 0 auto;color:#777c86;font-size:10px;}
.code-script-empty {display:block;padding:10px 8px;color:#777c86;font-size:10px;}
#code-script-new {margin-top:5px;padding-top:9px;border-top:1px solid rgba(255,255,255,.08);border-radius:0;color:#d9dade;font-size:11px;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #sb-actions {flex:0 0 auto;flex-wrap:nowrap;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar :is(#sb-version,#sb-state,#sb-view-results,#version-rerun,#version-save,#strategy-create-alert,#sb-more) {display:none!important;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #code-studio-actions {display:flex;align-items:center;gap:3px;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #code-studio-run {
  min-height:30px;padding:5px 13px;border:0;border-radius:7px;background:#f0f1f3;color:#17181b;font-weight:800;
}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #code-studio-review {
  min-height:30px;padding:5px 10px;border-color:rgba(255,255,255,.11);background:transparent;color:#c6c9d0;font-weight:650;
}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar #code-studio-review:hover {background:rgba(255,255,255,.055);color:#fff;}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar .code-studio-icon {
  display:inline-grid;width:30px;min-width:30px;height:30px;padding:0;place-items:center;border-color:transparent;background:transparent;color:#8e949f;font-size:16px;
}
body.workspace-editor-mode #strategy-editor:has(#py-source)>#strategy-bar .code-studio-icon:hover {background:rgba(255,255,255,.06);color:#fff;}
body.workspace-editor-mode #code-studio-more {position:relative;}
body.workspace-editor-mode #code-studio-more>summary {list-style:none;}
body.workspace-editor-mode #code-studio-more>summary::-webkit-details-marker {display:none;}
body.workspace-editor-mode #code-studio-more-menu {
  position:absolute;z-index:20;top:35px;right:0;display:grid;width:180px;padding:5px;border:1px solid rgba(255,255,255,.11);border-radius:9px;background:#17181c;box-shadow:0 16px 40px rgba(0,0,0,.52);
}
body.workspace-editor-mode #code-studio-more-menu button {padding:8px 9px;border:0;background:transparent;color:#d8d9de;text-align:left;}
body.workspace-editor-mode #code-studio-more-menu button:hover {background:rgba(255,255,255,.06);}
#py-technical-details {margin-top:14px;border-top:1px solid rgba(255,255,255,.07);}
#py-technical-details>summary {padding:11px 2px;color:#868d9a;font-size:10px;cursor:pointer;}
#py-technical-details>#se-rules {margin:0 0 8px;}
@media(max-width:700px) {.strategy-studio-meta {align-items:flex-start;flex-wrap:wrap;}.strategy-studio-badge.is-draft {margin-left:0;}}

/* Concept C strategy launcher: one obvious AI path, equal Pine/Python choices,
   and a quiet workflow rail that explains what happens after creation. */
#strategy-chooser-dialog {
  width:min(820px,94vw);border-color:rgba(255,255,255,.13);border-radius:20px;
  background:linear-gradient(150deg,rgba(18,18,22,.985),rgba(7,7,9,.995));
  box-shadow:0 34px 120px rgba(0,0,0,.78),inset 0 1px rgba(255,255,255,.05);
}
#strategy-chooser-dialog::backdrop {background:rgba(2,2,4,.79);backdrop-filter:blur(13px) saturate(75%);}
.strategy-chooser-shell {padding:26px 26px 24px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
.strategy-chooser-shell header {margin-bottom:16px;}
.strategy-chooser-shell header small {
  color:#74d7e5;font-size:9px;letter-spacing:.18em;text-shadow:0 0 15px rgba(73,204,228,.26);
}
.strategy-chooser-shell h2 {margin-top:6px;color:#f6f6fa;font-size:25px;}
#strategy-chooser-context {margin:-6px 0 14px;color:#9098a8;font-size:11px;line-height:1.5;}
#strategy-chooser-close {
  border-color:rgba(255,255,255,.10);border-radius:10px;background:rgba(255,255,255,.035);color:#aab0bc;
}
#strategy-chooser-close:hover {border-color:rgba(130,115,245,.43);background:rgba(108,89,226,.10);color:#fff;}
#strategy-chooser-current {
  margin:0 0 15px;padding:11px 12px;border-color:rgba(65,222,180,.20);border-radius:11px;
  background:linear-gradient(105deg,rgba(27,139,109,.07),rgba(255,255,255,.018));
}
#strategy-chooser-current h3 {margin-bottom:7px;color:#99d7c6;font-size:10px;text-transform:uppercase;letter-spacing:.06em;}
#strategy-chooser-current-list button {
  border-color:rgba(65,222,180,.24);background:rgba(33,154,121,.08);color:#e7f5f1;
}
#strategy-chooser-current-list button:hover {border-color:rgba(65,222,180,.48);background:rgba(33,154,121,.13);}
.strategy-chooser-paths {gap:8px;margin-bottom:16px;}
.strategy-chooser-paths>button {
  min-height:59px;padding:11px 13px;border-color:rgba(255,255,255,.09);border-radius:11px;
  background:linear-gradient(145deg,rgba(26,26,31,.90),rgba(13,13,17,.94));color:#edf0f6;
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.strategy-chooser-paths>button:first-child {
  min-height:62px;border-color:rgba(128,113,245,.34);
  background:linear-gradient(115deg,rgba(53,194,215,.085),rgba(111,89,229,.12),rgba(201,78,181,.065));
}
.strategy-chooser-paths>button:hover,.strategy-chooser-paths>button:focus-visible {
  transform:translateY(-1px);border-color:rgba(129,115,246,.48);
  background:linear-gradient(145deg,rgba(32,31,39,.97),rgba(18,17,23,.98));
  box-shadow:0 12px 30px rgba(0,0,0,.30),0 0 24px rgba(110,90,230,.07);
}
.strategy-chooser-paths strong {color:#f2f3f8;font-size:12px;}
.strategy-chooser-paths span {color:#8992a2;font-size:10.5px;}
.strategy-chooser-paths>form {
  gap:7px;margin-top:-2px;padding:8px;border-color:rgba(255,255,255,.09);border-radius:10px;background:rgba(5,5,7,.70);
}
.strategy-chooser-paths>form button {align-self:end;}
.strategy-chooser-paths>form :is(select,input) {
  border-color:rgba(255,255,255,.11);background:rgba(16,16,20,.96);color:#e8eaf0;
}
.strategy-chooser-paths>form :is(select,input):focus {border-color:rgba(126,112,241,.59);box-shadow:0 0 0 3px rgba(111,91,229,.09);outline:0;}
.strategy-chooser-paths>form button {
  border:1px solid rgba(128,197,255,.42);background:var(--gradient-action);box-shadow:0 7px 20px rgba(36,92,198,.24);
}
.strategy-chooser-flow {
  position:relative;gap:0;margin:-2px 0 16px;padding:0 4px;
}
.strategy-chooser-flow::before {
  content:"";position:absolute;top:13px;left:9%;right:9%;height:1px;background:linear-gradient(90deg,rgba(67,208,220,.32),rgba(122,99,238,.30),rgba(202,81,185,.24));
}
.strategy-chooser-flow li {
  position:relative;z-index:1;flex-direction:column;align-items:flex-start;gap:5px;padding:4px 7px;border:0;background:transparent;color:#747d8e;font-size:9px;
}
.strategy-chooser-flow strong {
  width:19px;height:19px;border:1px solid rgba(126,111,238,.24);background:#111116;color:#9ca8cf;box-shadow:0 0 0 4px #0b0b0e;
}
.strategy-chooser-starters>summary,#strategy-chooser-builtins>summary {padding:5px 0;color:#a8afbd;font-size:11px;}
.strategy-chooser-starters button,.strategy-chooser-card {
  border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:#dadde6;
}
#strategy-chooser-query {border-color:rgba(255,255,255,.11);background:rgba(5,5,7,.82);color:#edf0f6;}
@media(max-width:620px) {
  .strategy-chooser-shell {padding:18px 16px;}
  .strategy-chooser-flow {display:none;}
}

/* Concept C alert composer: black glass, restrained status color, and one
   continuous review path from immutable result to condition and delivery. */
#chart-live-controls>#live-webhook-alerts[open]:not([hidden]),
#chart-live-controls>#price-alerts[open]:not([hidden]) {
  border-color:rgba(255,255,255,.13);border-radius:17px;
  background:linear-gradient(155deg,rgba(18,18,22,.985),rgba(7,7,9,.995));color:#d9dce5;
  box-shadow:0 34px 120px rgba(0,0,0,.76),0 0 35px rgba(103,81,226,.055),inset 0 1px rgba(255,255,255,.045);
}
#chart-live-controls>#live-webhook-alerts[open]>summary,
#chart-live-controls>#price-alerts[open]>summary {border-bottom-color:rgba(255,255,255,.08);color:#f4f4f8;font-size:15px;}
#chart-live-controls>#live-webhook-alerts[open]>.alert-dialog-scroll {scrollbar-color:rgba(128,116,218,.48) transparent;}
#live-webhook-alerts .alert-kind-tabs,#price-alerts .alert-kind-tabs {
  border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.025);box-shadow:inset 0 1px rgba(255,255,255,.02);
}
#live-webhook-alerts .alert-kind-tabs>button,#price-alerts .alert-kind-tabs>button {color:#858d9d!important;}
#live-webhook-alerts .alert-kind-tabs>button:hover,#price-alerts .alert-kind-tabs>button:hover {background:rgba(255,255,255,.04)!important;color:#eef0f5!important;}
#live-webhook-alerts .alert-kind-tabs>button.active,#price-alerts .alert-kind-tabs>button.active {
  background:linear-gradient(135deg,rgba(49,191,210,.11),rgba(112,89,230,.16),rgba(201,78,181,.08))!important;
  color:#f5f4fb!important;box-shadow:inset 0 0 0 1px rgba(128,112,242,.22),0 5px 16px rgba(0,0,0,.16);
}
#live-alert-context {
  margin:0 0 12px!important;padding:7px 9px;border:1px solid rgba(83,207,225,.18);border-radius:8px;
  background:rgba(42,180,199,.045);color:#b9cbd4!important;font-size:10px;font-weight:650;
}
#live-alert-context::before {content:"●";margin-right:7px;color:#49d8b1;text-shadow:0 0 8px rgba(73,216,177,.65);}
#live-alert-lineage {
  border-color:rgba(255,255,255,.09)!important;border-radius:9px!important;background:rgba(255,255,255,.025)!important;color:#9199a8!important;
}
#live-alert-lineage[data-state="linked"] {border-color:rgba(57,218,175,.25)!important;background:rgba(31,177,137,.065)!important;color:#b7ddd2!important;}
#live-alert-lineage strong {color:#edf0f5!important;}
#live-webhook-alerts .alert-readiness-card {
  border-color:rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.022);
}
#live-webhook-alerts .alert-readiness-card[data-state="local"] {border-color:rgba(89,193,219,.23);}
#live-webhook-alerts .alert-readiness-card[data-state="online"] {border-color:rgba(55,217,173,.25);background:rgba(30,172,133,.055);}
#live-webhook-alerts .alert-readiness-card header strong {color:#eef0f5;font-size:10px;}
#live-webhook-alerts .alert-readiness-card header span {border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.03);color:#aeb5c2;}
#live-webhook-alerts .alert-readiness-card>p {color:#858e9e;}
#live-webhook-alerts .alert-readiness-card dt {color:#6f798a;}
#live-webhook-alerts .alert-readiness-card dd {color:#c6cad3;}
#live-webhook-alerts .alert-condition-card,#live-webhook-alerts .alert-section-card {
  border-color:rgba(255,255,255,.085);border-radius:10px;background:rgba(255,255,255,.02);box-shadow:none;
}
#live-webhook-alerts .alert-condition-card {border-left:2px solid rgba(92,207,224,.58);}
#live-webhook-alerts .alert-condition-card>strong,#live-webhook-alerts .alert-section-card>strong {color:#e9ebf1;font-size:10px;letter-spacing:.09em;}
#live-webhook-alerts label {color:#aeb4c0;}
#live-webhook-alerts :is(input,select,textarea),#price-alerts :is(input,select,textarea) {
  border-color:rgba(255,255,255,.105);background:rgba(5,5,7,.82);color:#e5e7ee;
}
#live-webhook-alerts :is(input,select,textarea):focus,#price-alerts :is(input,select,textarea):focus {border-color:rgba(126,112,241,.62);box-shadow:0 0 0 3px rgba(111,91,229,.09);outline:0;}
#live-webhook-alerts>.alert-dialog-actions {
  border-top-color:rgba(255,255,255,.08);background:rgba(9,9,12,.96);box-shadow:0 -14px 30px rgba(0,0,0,.42);backdrop-filter:blur(18px);
}
#live-webhook-alerts>.alert-dialog-actions button {border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.035);color:#b7bdc8;}
#live-webhook-alerts>.alert-dialog-actions #live-webhook-save {
  border:1px solid rgba(128,197,255,.42)!important;background:var(--gradient-action)!important;color:#fff!important;box-shadow:0 6px 18px rgba(36,92,198,.26);
}

/* Alert composer: compact, quiet, and condition-first. Runtime evidence is
   still available, but it no longer competes with the action the user came
   here to perform. */
#chart-live-controls>#live-webhook-alerts[open]:not([hidden]) {
  top:50%;transform:translate(-50%,-50%);width:min(500px,calc(100vw - 28px));
  height:auto;max-height:min(720px,calc(100dvh - 28px));padding:17px 18px 0;
}
#live-webhook-alerts>.alert-dialog-scroll {
  height:auto;max-height:calc(min(720px,100dvh - 28px) - 104px);
  padding:0 4px 18px 0;
}
#chart-live-controls>#live-webhook-alerts[open]>summary {
  margin:0 0 11px;padding:0 38px 12px 1px;font-size:16px;letter-spacing:-.012em;
}
#live-webhook-alerts .alert-kind-tabs {
  gap:2px;margin:0 0 9px;padding:2px;border-radius:9px;
}
#live-webhook-alerts .alert-kind-tabs>button {min-height:31px;padding:6px 9px!important;font-size:11px;}
#live-alert-context {
  margin:0 0 9px!important;padding:0 2px!important;border:0!important;background:transparent!important;
  color:#8e96a4!important;font-size:10px!important;font-weight:600!important;
}
#live-alert-context::before {margin-right:6px!important;font-size:7px;}
#live-webhook-alerts .alert-condition-card {
  gap:8px;margin:0 0 9px;padding:11px;border:1px solid rgba(255,255,255,.09);
  border-left:1px solid rgba(255,255,255,.09);border-radius:10px;
  background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
}
#live-webhook-alerts .alert-condition-card label {margin:0!important;color:#929aa8;font-size:10px;font-weight:650;}
#live-webhook-alerts .alert-condition-card :is(select,input) {min-height:38px;margin-top:4px;padding:8px 10px;border-radius:8px;}
#live-webhook-alerts .alert-condition-card>p:last-child {
  margin:1px 0 0!important;padding:8px 1px 0;border-top:1px solid rgba(255,255,255,.07);
  color:#747e8e!important;font-size:10px;
}
#live-webhook-alerts .alert-condition-card>p:last-child strong {color:#bfc5cf;font-size:10px;}
#live-webhook-alerts .alert-condition-help:not([hidden]) {
  display:block;margin:0!important;padding:9px 10px!important;border:1px solid rgba(232,167,91,.22)!important;
  border-radius:8px;background:rgba(168,101,35,.08);color:#d5b487!important;font-size:10px;line-height:1.45;
}
#live-webhook-alerts .alert-section-card,#live-webhook-alerts .alert-notifications,
#live-webhook-alerts .alert-runtime-details {
  margin:0 0 7px;border-color:rgba(255,255,255,.075);border-radius:9px;background:rgba(255,255,255,.014);
}
#live-webhook-alerts .alert-advanced-section>summary,
#live-webhook-alerts .alert-notifications>summary,
#live-webhook-alerts .alert-runtime-details>summary {
  min-height:38px;box-sizing:border-box;margin:0;padding:10px 11px;color:#c9cdd6;font-size:10px;
}
#live-webhook-alerts .alert-advanced-section>summary>strong,
#live-webhook-alerts .alert-runtime-details>summary>strong {
  color:#cfd3dc;font-size:10px;letter-spacing:.035em;text-transform:none;
}
#live-webhook-alerts .alert-advanced-section>summary>span,
#live-webhook-alerts .alert-runtime-details>summary>span {color:#727c8c;font-size:10px;}
#live-webhook-alerts .alert-notifications>summary::after {content:'Optional';color:#727c8c;font-size:10px;}
#live-webhook-alerts .alert-notifications[open]>summary::after {content:'Hide';}
#live-webhook-alerts .alert-runtime-details>summary {display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;}
#live-webhook-alerts .alert-runtime-details>summary::after {content:'›';order:3;margin-left:0;color:#727c8c;font-size:17px;line-height:1;}
#live-webhook-alerts .alert-runtime-details[open]>summary::after {content:'›';transform:rotate(90deg);}
#live-webhook-alerts .alert-runtime-details>summary>span {margin-left:auto;padding:2px 6px;border:1px solid rgba(255,255,255,.08);border-radius:999px;}
#live-webhook-alerts .alert-runtime-body {padding:0 11px 11px;border-top:1px solid rgba(255,255,255,.07);}
#live-webhook-alerts .alert-readiness-card {margin:10px 0 8px;padding:10px;border:0!important;background:rgba(255,255,255,.016)!important;}
#live-webhook-alerts .alert-readiness-card header {margin-bottom:4px;}
#live-webhook-alerts .alert-runtime-details #live-alert-behavior,
#live-webhook-alerts .alert-runtime-details #live-alert-lineage,
#live-webhook-alerts .alert-runtime-details .alert-snapshot-note,
#live-webhook-alerts .alert-runtime-details .alert-snapshot-review {margin:7px 0!important;}
#live-webhook-alerts .alert-simulation-note {margin:8px 1px 0;color:#737c8a;font-size:10px;line-height:1.45;}
#live-webhook-alerts>.alert-dialog-actions {
  position:relative;right:auto;bottom:auto;left:auto;margin:0 -18px;padding:11px 18px 13px;
  border-top-color:rgba(255,255,255,.075);background:rgba(9,9,12,.98);box-shadow:0 -10px 24px rgba(0,0,0,.24);
}
#live-webhook-alerts>.alert-dialog-actions button {min-width:102px;min-height:36px;border-radius:8px;}
#live-webhook-alerts>.alert-dialog-actions #live-webhook-save {margin-left:auto;}
#live-webhook-status:not(:empty) {margin:8px 0;padding:8px 9px;background:rgba(255,255,255,.025);font-size:10px;}

/* Alert composer parity pass. Keep the TradingView/Vela interaction density:
   one neutral surface, condition first, secondary settings below, and a
   persistent Cancel/Create footer. Lume color is reserved for selection and
   the primary action instead of turning every section into a dashboard card. */
#chart-live-controls>:is(#price-alerts,#live-webhook-alerts)[open]:not([hidden]) {
  top:50%;left:50%;transform:translate(-50%,-50%);width:min(468px,calc(100vw - 24px));
  height:min(688px,calc(100dvh - 24px));max-height:none;padding:0!important;overflow:hidden;
  border:1px solid rgba(255,255,255,.13);border-radius:10px;
  background:rgba(20,21,26,.985);color:#d7dae2;
  box-shadow:0 24px 80px rgba(0,0,0,.72),0 0 0 1px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(22px);
}
#chart-live-controls>:is(#price-alerts,#live-webhook-alerts)[open]>summary {
  box-sizing:border-box;height:52px;margin:0!important;padding:17px 48px 15px 18px!important;
  border-bottom:1px solid rgba(255,255,255,.085)!important;color:#f2f3f6!important;
  font-size:15px!important;font-weight:650;line-height:19px;letter-spacing:-.01em;
}
#chart-live-controls>:is(#price-alerts,#live-webhook-alerts)[open]>
  :is(#price-alert-close,#live-webhook-close) {
  top:11px;right:12px;width:30px;min-width:30px;height:30px;min-height:30px;margin:0!important;
  border:0;border-radius:6px;background:transparent;color:#8f96a5;font-size:18px;line-height:30px;
}
#chart-live-controls>:is(#price-alerts,#live-webhook-alerts)[open]>
  :is(#price-alert-close,#live-webhook-close):hover {background:rgba(255,255,255,.07);color:#f3f4f7;}
#price-alerts>.alert-dialog-scroll,#live-webhook-alerts>.alert-dialog-scroll {
  position:absolute;top:52px;right:0;bottom:60px;left:0;box-sizing:border-box;height:auto!important;max-height:none!important;
  margin:0;padding:14px 18px 20px!important;
  overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent;
}
#price-alerts .alert-kind-tabs,#live-webhook-alerts .alert-kind-tabs {
  display:flex;gap:18px;margin:0 0 14px;padding:0;border:0;border-bottom:1px solid rgba(255,255,255,.075);
  border-radius:0;background:transparent;box-shadow:none;
}
#price-alerts .alert-kind-tabs>button,#live-webhook-alerts .alert-kind-tabs>button {
  position:relative;width:auto;min-height:34px;margin:0!important;padding:0 1px 10px!important;border:0!important;
  border-radius:0!important;background:transparent!important;color:#8f96a5!important;font-size:12px;font-weight:600;
  box-shadow:none!important;
}
#price-alerts .alert-kind-tabs>button:hover,#live-webhook-alerts .alert-kind-tabs>button:hover {color:#e8eaf0!important;background:transparent!important;}
#price-alerts .alert-kind-tabs>button.active,#live-webhook-alerts .alert-kind-tabs>button.active {
  color:#f2f3f7!important;background:transparent!important;box-shadow:none!important;
}
#price-alerts .alert-kind-tabs>button.active::after,#live-webhook-alerts .alert-kind-tabs>button.active::after {
  content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px 2px 0 0;
  background:linear-gradient(90deg,#45cbd2,#7d6df2);
}
#price-alerts .alert-dialog-intro {
  display:flex;align-items:flex-start;gap:8px;margin:0 0 15px;padding:0;color:#8e95a3;font-size:10px;line-height:1.45;
}
#price-alerts .alert-dialog-intro>span {flex:0 0 auto;width:6px;height:6px;margin-top:4px;border-radius:50%;background:#45d2ae;box-shadow:0 0 8px rgba(69,210,174,.55);}
#price-alerts .alert-condition-card,#live-webhook-alerts .alert-condition-card {
  display:grid;margin:0 0 7px;padding:0;border:0!important;border-radius:0;background:transparent!important;box-shadow:none;
}
#price-alerts .alert-condition-card {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;}
#live-webhook-alerts .alert-condition-card {grid-template-columns:minmax(0,1fr);gap:10px;}
#price-alerts .alert-condition-card>strong,#live-webhook-alerts .alert-condition-card>strong {
  grid-column:1/-1;margin:0;color:#d4d7df;font-size:12px;line-height:16px;letter-spacing:0;text-transform:none;
}
#price-alerts .alert-condition-card>label:first-of-type,
#price-alerts .alert-condition-card>label:last-of-type {grid-column:1/-1;}
#price-alerts label,#live-webhook-alerts label {
  margin:0!important;color:#949ba9!important;font-size:10px!important;font-weight:600!important;line-height:14px;
}
#price-alerts :is(input,select,textarea),#live-webhook-alerts :is(input,select,textarea) {
  box-sizing:border-box;width:100%;min-height:38px;margin-top:5px;padding:8px 10px;
  border:1px solid rgba(255,255,255,.12)!important;border-radius:6px!important;
  background:#0e0f13!important;color:#e7e9ee!important;font:inherit;font-size:12px!important;font-weight:450!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.35)!important;
}
#price-alerts textarea,#live-webhook-alerts textarea {min-height:70px;resize:vertical;line-height:1.45;}
#price-alerts input[readonly] {color:#aeb4bf!important;background:#111218!important;}
#price-alerts :is(input,select,textarea):hover,#live-webhook-alerts :is(input,select,textarea):hover {border-color:rgba(255,255,255,.20)!important;}
#price-alerts :is(input,select,textarea):focus,#live-webhook-alerts :is(input,select,textarea):focus {
  border-color:#6d78e7!important;outline:0;box-shadow:0 0 0 2px rgba(97,104,222,.19)!important;
}
#price-alerts .alert-section-card,#live-webhook-alerts .alert-section-card,
#price-alerts .alert-notifications,#live-webhook-alerts .alert-notifications,
#live-webhook-alerts .alert-runtime-details {
  margin:13px 0 0;border:0;border-top:1px solid rgba(255,255,255,.075);border-radius:0;background:transparent;
}
#price-alerts .alert-advanced-section>summary,#live-webhook-alerts .alert-advanced-section>summary,
#price-alerts .alert-notifications>summary,#live-webhook-alerts .alert-notifications>summary,
#live-webhook-alerts .alert-runtime-details>summary {
  min-height:42px;margin:0!important;padding:13px 0!important;border:0!important;color:#c9cdd5!important;font-size:11px!important;
}
#price-alerts .alert-advanced-section>summary>strong,#live-webhook-alerts .alert-advanced-section>summary>strong,
#live-webhook-alerts .alert-runtime-details>summary>strong {color:#d6d9e0!important;font-size:11px!important;font-weight:600;letter-spacing:0;text-transform:none;}
#price-alerts .alert-advanced-section>summary>span,#live-webhook-alerts .alert-advanced-section>summary>span,
#live-webhook-alerts .alert-runtime-details>summary>span {color:#757d8c!important;font-size:10px!important;}
#price-alerts .alert-advanced-section[open]>:not(summary),#live-webhook-alerts .alert-advanced-section[open]>:not(summary) {margin-right:0;margin-left:0;}
#price-alerts .alert-advanced-section[open]>label:first-of-type,#live-webhook-alerts .alert-advanced-section[open]>label:first-of-type {margin-top:0!important;}
#price-alerts .alert-advanced-section[open]>:last-child,#live-webhook-alerts .alert-advanced-section[open]>:last-child {margin-bottom:12px!important;}
#price-alerts .alert-advanced-section[open] {display:grid;grid-template-columns:minmax(0,1fr);}
#price-alerts>.alert-dialog-scroll>label {display:block;margin-top:13px!important;}
#price-alerts>.alert-dialog-scroll>label>small {display:block;margin-top:5px;color:#727987;font-size:9px;line-height:1.45;}
#price-alerts .alert-notifications-body,#live-webhook-alerts .alert-notifications-body {
  padding:0 0 13px;border-top:0;
}
#price-alerts .alert-channel-note,#live-webhook-alerts .alert-channel-note {margin:8px 0 0!important;color:#777f8e!important;font-size:9px;line-height:1.45;}
#live-alert-context {margin:0 0 14px!important;padding:0!important;color:#8e95a3!important;font-size:10px!important;}
#live-webhook-alerts .alert-condition-card>p:last-child {margin:1px 0 0!important;padding:9px 0 0;border-top:1px solid rgba(255,255,255,.07);}
#live-webhook-alerts .alert-condition-help:not([hidden]) {margin:0!important;padding:9px 10px!important;border-radius:6px;font-size:10px;}
#live-webhook-alerts .alert-runtime-body {padding:0 0 12px;border:0;}
#live-webhook-alerts .alert-readiness-card {margin:0 0 8px;padding:10px;border:1px solid rgba(255,255,255,.075)!important;border-radius:6px;background:rgba(255,255,255,.015)!important;}
#price-alerts>.alert-dialog-actions,#live-webhook-alerts>.alert-dialog-actions {
  position:absolute;right:0;bottom:0;left:0;box-sizing:border-box;height:60px;margin:0!important;padding:11px 18px!important;
  border-top:1px solid rgba(255,255,255,.085);background:rgba(17,18,23,.98);box-shadow:0 -10px 22px rgba(0,0,0,.23);
  display:flex;align-items:center;gap:8px;
}
#price-alerts>.alert-dialog-actions button,#live-webhook-alerts>.alert-dialog-actions button {
  min-width:82px;min-height:36px;margin:0!important;padding:8px 14px;border:1px solid rgba(255,255,255,.12)!important;
  border-radius:6px!important;background:rgba(255,255,255,.035)!important;color:#c7cbd4!important;font-size:12px;font-weight:600;
}
#price-alerts>.alert-dialog-actions :is(#price-alert-save),
#live-webhook-alerts>.alert-dialog-actions #live-webhook-save {
  margin-left:auto!important;min-width:104px;border-color:rgba(116,137,255,.52)!important;
  background:linear-gradient(135deg,#5268df,#7358d7)!important;color:#fff!important;
  box-shadow:0 5px 16px rgba(70,75,190,.28)!important;
}
#price-alerts>.alert-dialog-actions :is(#price-alert-save):hover,
#live-webhook-alerts>.alert-dialog-actions #live-webhook-save:hover {filter:brightness(1.08);}
#price-alert-status:not(:empty),#live-webhook-status:not(:empty) {
  margin:11px 0 0;padding:8px 9px;border:1px solid rgba(255,255,255,.075);border-radius:6px;background:rgba(255,255,255,.02);font-size:10px;
}
@media(max-width:560px) {
  #chart-live-controls>:is(#price-alerts,#live-webhook-alerts)[open]:not([hidden]) {width:calc(100vw - 12px);height:calc(100dvh - 12px);}
  #price-alerts>.alert-dialog-scroll,#live-webhook-alerts>.alert-dialog-scroll {padding-right:14px!important;padding-left:14px!important;}
  #price-alerts>.alert-dialog-actions,#live-webhook-alerts>.alert-dialog-actions {padding-right:14px!important;padding-left:14px!important;}
}

/* Concept C market finder. Exchange and product identity stay first-class so
   BTC spot, perpetuals and venue-specific contracts never collapse together. */
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker {
  gap:12px;padding:24px;border-color:rgba(255,255,255,.13);border-radius:19px;
  background:linear-gradient(150deg,rgba(18,18,22,.99),rgba(7,7,9,.995));
  box-shadow:0 34px 120px rgba(0,0,0,.78),0 0 34px rgba(57,126,216,.07),inset 0 1px rgba(255,255,255,.045);
}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker h2 {color:#f5f5f9;font-size:23px;letter-spacing:-.025em;}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker h2::before {
  content:"SYMBOL SEARCH";display:block;margin-bottom:7px;color:#75d7e5;font-size:9px;font-weight:800;letter-spacing:.17em;
}
.instrument-picker header>button {border-color:transparent;background:transparent;color:#8d95a5;}
.instrument-picker header>button:hover {background:rgba(255,255,255,.05);color:#fff;}
.instrument-picker #instrument-search {
  min-height:46px;border:1px solid rgba(255,255,255,.12);border-radius:11px;
  background:rgba(5,5,7,.80);color:#edf0f5;box-shadow:inset 0 1px rgba(255,255,255,.02);
}
.instrument-picker #instrument-search:focus {border-color:rgba(108,205,232,.65);outline:0;box-shadow:0 0 0 3px rgba(68,186,219,.08),0 0 22px rgba(70,190,220,.06);}
.instrument-filters {gap:7px;padding-bottom:2px;}
.instrument-filters button {
  padding:6px 11px;border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.025);color:#858e9e;font-size:10.5px;
}
.instrument-filters button:hover {border-color:rgba(128,197,255,.30);color:#dfe2e9;}
.instrument-filters button[aria-pressed="true"] {
  border-color:rgba(128,197,255,.42);background:linear-gradient(135deg,rgba(128,197,255,.10),rgba(36,92,198,.15));color:#f0f6ff;
}
.instrument-advanced-filters {
  position:absolute;z-index:4;top:92px;right:24px;margin:0;color:#8f98a8;
}
.instrument-advanced-filters>summary {
  display:flex;align-items:center;min-height:31px;box-sizing:border-box;padding:0 11px;
  border:1px solid rgba(255,255,255,.09);border-radius:8px;background:rgba(255,255,255,.025);
  color:#a7afbd;font-size:10.5px;font-weight:650;cursor:pointer;list-style:none;
}
.instrument-advanced-filters>summary::-webkit-details-marker {display:none;}
.instrument-advanced-filters>summary::before {content:"⚙";margin-right:6px;color:#7f89a0;font-size:11px;}
.instrument-advanced-filters[open]>summary {border-color:rgba(128,197,255,.36);background:rgba(36,92,198,.11);color:#f0f6ff;}
.instrument-advanced-filters[open] {
  width:min(580px,calc(100% - 48px));padding:0;border:1px solid rgba(255,255,255,.11);border-radius:11px;
  background:rgba(12,12,16,.985);box-shadow:0 20px 60px rgba(0,0,0,.64);backdrop-filter:blur(20px);
}
.instrument-advanced-filters[open]>summary {margin:7px 7px 0 auto;width:max-content;}
.instrument-advanced-filters>.instrument-secondary-filters,
.instrument-advanced-filters>.instrument-product-filters,
.instrument-advanced-filters>.instrument-catalog-state {display:none;}
.instrument-advanced-filters[open]>.instrument-secondary-filters,
.instrument-advanced-filters[open]>.instrument-product-filters,
.instrument-advanced-filters[open]>.instrument-catalog-state {display:flex;margin:9px 11px;}
.instrument-advanced-filters[open]>.instrument-catalog-state {display:grid;margin-bottom:11px;}
.instrument-secondary-filters {padding:0 0 8px;border-bottom:1px solid rgba(255,255,255,.07);}
.instrument-product-filters {gap:7px;}
.instrument-product-filters label {
  padding:6px 9px;border-color:rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.02);color:#747d8d;font-size:9.5px;
}
.instrument-product-filters select {min-width:138px;background-color:#0b0b0f;color:#d9dce4;}
.instrument-catalog-state {
  gap:6px 12px;padding:8px 11px;border-color:rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.022);color:#929aa8;font-size:10px;
}
.instrument-catalog-state strong {color:#e7e9ef;font-size:10.5px;}
.instrument-catalog-state[data-tone="healthy"] {border-color:rgba(55,217,173,.23);background:rgba(30,172,133,.05);}
.instrument-catalog-state[data-tone="warning"] {border-color:rgba(237,169,83,.25);background:rgba(184,109,34,.06);}
.instrument-catalog-state[data-tone="warning"] strong {color:#e7b86f;}
#instrument-results {
  border-color:rgba(255,255,255,.09);border-radius:11px;background:rgba(6,6,8,.64);scrollbar-color:rgba(57,126,216,.48) transparent;
}
.instrument-section {
  padding:8px 13px 6px;border-bottom-color:rgba(255,255,255,.07);background:rgba(18,18,23,.97);color:#8395be;font-size:9px;backdrop-filter:blur(12px);
}
.instrument-result {min-height:52px;border-bottom-color:rgba(255,255,255,.055);}
.instrument-result[aria-selected="true"],.instrument-result:hover {background:linear-gradient(90deg,rgba(128,197,255,.075),rgba(36,92,198,.095),transparent);}
.instrument-result strong {color:#f0f1f6;font-size:13px;}
.instrument-result span,.instrument-result .instrument-name {color:#929aa9;}
.instrument-result .instrument-name {color:#d2d5de;font-size:12px;}
.instrument-result mark {background:rgba(57,126,216,.26);color:#f7fbff;}
.instrument-result .instrument-mark {background:#242630;color:#dde1ea;}
.instrument-result .instrument-mark-crypto {background:rgba(218,143,44,.18);color:#f2bd69;}
.instrument-result .instrument-mark-futures {background:rgba(46,180,216,.15);color:#78d6e9;}
.instrument-result .instrument-mark-forex {background:rgba(54,205,164,.13);color:#85dec5;}
.instrument-result .instrument-mark-equity {background:rgba(57,126,216,.18);color:#bde0ff;}
.instrument-result .instrument-mark-index {background:linear-gradient(145deg,rgba(60,178,192,.20),rgba(92,83,193,.18));color:#c9fbff;}
.instrument-result .instrument-mark[data-tone="btc"] {border-color:rgba(247,147,26,.42);background:linear-gradient(145deg,#f7a12d,#d9780a);color:#fff;}
.instrument-result .instrument-mark[data-tone="eth"] {border-color:rgba(180,166,255,.38);background:linear-gradient(145deg,#7466b7,#373257);color:#fff;}
.instrument-result .instrument-mark[data-tone="sol"] {border-color:rgba(86,242,190,.36);background:linear-gradient(145deg,#8a5cff,#12d8b0);color:#08090b;}
.instrument-result .instrument-mark[data-tone="xrp"] {border-color:#4c535e;background:#111318;color:#f5f7fa;}
.instrument-result .instrument-mark[data-asset-class="futures"] {border-color:rgba(74,201,229,.30);background:linear-gradient(145deg,#20546a,#102d3b);color:#b8eff9;font-size:9px;}
.instrument-result .instrument-mark[data-asset-class="forex"] {border-color:rgba(72,213,172,.26);background:linear-gradient(145deg,#235d50,#12342e);color:#bdffeb;}
.instrument-result .instrument-mark[data-asset-class="fund"] {border-color:rgba(142,118,239,.30);background:linear-gradient(145deg,#594690,#29223e);color:#eee9ff;}
.instrument-picker .instrument-status-row,.instrument-picker .instrument-data-note {color:#7f8898;}
.instrument-picker .instrument-data-note summary {color:#8993a4;}
.instrument-imports {border-color:rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.022);color:#cfd3dc;}
.instrument-imports summary:hover {background:rgba(255,255,255,.035);}
@media(max-width:650px) {
  :is(#opening-range-dialog,.chart-tool-dialog).instrument-picker {padding:17px 14px;gap:10px;}
  :is(#opening-range-dialog,.chart-tool-dialog).instrument-picker h2 {font-size:21px;}
  .instrument-advanced-filters {top:82px;right:14px;}
  .instrument-advanced-filters[open] {width:calc(100% - 28px);}
  .instrument-product-filters label {flex:1 1 130px;}
  .instrument-product-filters select {min-width:0;width:100%;}
  .instrument-catalog-state {grid-template-columns:1fr;}
}

/* Vela-parity market command palette. The catalog remains Lume's exact,
   venue-qualified data model; this layer makes discovery fast and familiar. */
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker {
  width:min(860px,calc(100vw - 28px));height:min(640px,calc(100vh - 42px));max-height:none;
  gap:0;padding:11px 10px 0;border:1px solid rgba(255,255,255,.12);border-radius:12px;
  background:#101115;box-shadow:0 26px 90px rgba(0,0,0,.72);
}
dialog.instrument-picker::backdrop {background:rgba(0,0,0,.58)!important;backdrop-filter:none!important;}
.instrument-picker-accessible-head {position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;}
.instrument-picker-head {display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 38px;padding:0 2px 8px 7px;}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker .instrument-picker-head h2 {margin:0;color:#f3f4f7;font-size:15px;font-weight:720;letter-spacing:-.01em;}
:is(#opening-range-dialog,.chart-tool-dialog).instrument-picker .instrument-picker-head h2::before {display:none;content:none;}
.instrument-picker .instrument-picker-close {display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.035);color:#9da2ad;font-size:22px;line-height:1;cursor:pointer;}
.instrument-picker .instrument-picker-close:hover {border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.075);color:#fff;}
.instrument-picker .instrument-picker-close:focus-visible {outline:2px solid rgba(104,205,232,.72);outline-offset:2px;}
.instrument-search-shell {position:relative;display:flex;align-items:center;flex:0 0 auto;margin:0 0 5px;}
.instrument-search-icon {position:absolute;left:15px;z-index:1;display:grid;place-items:center;width:18px;height:18px;color:#747a86;pointer-events:none;}
.instrument-search-icon svg {width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;}
.instrument-picker #instrument-search {
  min-height:48px;padding:0 48px 0 42px;border-color:rgba(255,255,255,.105);border-radius:9px;
  background:#16171b;color:#eceef3;font-size:15px;box-shadow:inset 0 1px rgba(255,255,255,.018);
}
.instrument-picker #instrument-search:focus {border-color:rgba(255,255,255,.18);box-shadow:0 0 0 2px rgba(255,255,255,.025);}
.instrument-search-clear {position:absolute;right:8px;width:32px;height:32px;padding:0;border:0;border-radius:7px;background:transparent;color:#747985;font-size:21px;line-height:1;cursor:pointer;}
.instrument-search-clear:hover {background:rgba(255,255,255,.055);color:#d8dbe2;}
.instrument-filter-bar {display:flex;align-items:stretch;justify-content:space-between;gap:12px;min-height:43px;border-bottom:1px solid rgba(255,255,255,.08);}
.instrument-picker .instrument-filter-bar .instrument-filters {display:flex;flex-wrap:nowrap;gap:0;padding:0;overflow-x:auto;scrollbar-width:none;}
.instrument-picker .instrument-filter-bar .instrument-filters::-webkit-scrollbar {display:none;}
.instrument-picker .instrument-filter-bar .instrument-filters button {
  position:relative;min-width:max-content;padding:0 18px;border:0;border-radius:0;background:transparent;color:#777c87;font-size:12px;font-weight:500;
}
.instrument-picker .instrument-filter-bar .instrument-filters button:hover {color:#d1d4db;background:transparent;}
.instrument-picker .instrument-filter-bar .instrument-filters button[aria-pressed="true"] {border:0;background:transparent;color:#f1f2f5;}
.instrument-picker .instrument-filter-bar .instrument-filters button[aria-pressed="true"]::after {content:"";position:absolute;left:11px;right:11px;bottom:0;height:2px;border-radius:2px;background:#f0f1f4;}
.instrument-venue-filter {position:relative;display:flex!important;align-items:center;min-width:130px;margin:5px 4px 5px 0;padding:0 24px 0 12px;border-left:1px solid rgba(255,255,255,.08);color:#a9adb6;font-size:12px;cursor:pointer;}
.instrument-venue-filter>span {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.instrument-venue-filter::before {content:"▽";margin-right:5px;color:#858b96;font-size:12px;transform:rotate(180deg);}
.instrument-venue-filter::after {content:"⌄";position:absolute;right:7px;color:#747984;font-size:12px;}
.instrument-venue-filter select {position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;}
.instrument-product-filter {min-width:118px;}
.instrument-picker-main {display:grid;grid-template-columns:minmax(0,2fr) minmax(255px,1fr);flex:1 1 auto;min-height:0;overflow:hidden;}
.instrument-picker #instrument-results {height:auto;max-height:none;min-height:0;border:0;border-right:1px solid rgba(255,255,255,.08);border-radius:0;background:#101115;scrollbar-color:#393c45 transparent;}
.instrument-picker .instrument-section {display:none;}
.instrument-picker .instrument-result {
  grid-template-columns:38px minmax(0,1fr) minmax(90px,auto) 28px;
  grid-template-rows:22px 18px;column-gap:10px;row-gap:0;min-height:56px;padding:7px 9px 7px 13px;
  border-bottom:0;border-radius:7px;scroll-margin-top:0;
}
.instrument-picker .instrument-result[aria-selected="true"],.instrument-picker .instrument-result:hover {background:#1c1d22;}
.instrument-picker .instrument-result .instrument-mark {grid-column:1;grid-row:1/3;width:31px;height:31px;font-size:14px;}
.instrument-picker .instrument-result>strong {grid-column:2;grid-row:1;color:#f2f3f6;font-size:13px;font-weight:720;}
.instrument-picker .instrument-result .instrument-name {grid-column:2;grid-row:2;color:#8e939e;font-size:11.5px;}
.instrument-picker .instrument-result .instrument-kind {grid-column:3;grid-row:1/3;align-self:center;text-align:right;color:#b3b6be;font-size:11.5px;}
.instrument-picker .instrument-result .instrument-availability {display:none;}
.instrument-picker .instrument-result .instrument-favorite {grid-column:4;grid-row:1/3;align-self:center;width:27px;height:27px;padding:0;color:#737984;font-size:19px;font-weight:300;}
.instrument-picker .instrument-result .instrument-favorite:hover,.instrument-picker .instrument-result .instrument-favorite:focus-visible {color:#e8e9ed;}
.instrument-detail-pane {min-width:0;padding:20px 19px;background:#101115;overflow:auto;}
.instrument-detail-hero {display:flex;align-items:center;gap:11px;}
.instrument-detail-hero .instrument-mark {display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:17px;font-weight:750;}
.instrument-detail-hero>div {display:grid;gap:2px;min-width:0;}
.instrument-detail-hero strong {overflow:hidden;color:#f5f5f7;font-size:16px;text-overflow:ellipsis;white-space:nowrap;}
.instrument-detail-hero span:last-child {overflow:hidden;color:#8b909a;font-size:11.5px;text-overflow:ellipsis;white-space:nowrap;}
.instrument-detail-quote {display:flex;align-items:baseline;gap:10px;margin-top:18px;min-height:30px;}
.instrument-detail-price {display:block;color:#f2f3f6;font-size:24px;letter-spacing:-.025em;}
.instrument-detail-change {color:#8d949f;font-size:10.5px;font-weight:750;white-space:nowrap;}
.instrument-detail-change[data-direction="up"] {color:#31cda5;}
.instrument-detail-change[data-direction="down"] {color:#f06275;}
.instrument-detail-state {display:flex;align-items:center;gap:7px;margin-top:10px;color:#858b95;font-size:11.5px;}
.instrument-detail-state::before {content:"";width:7px;height:7px;border-radius:50%;background:#69707b;box-shadow:0 0 8px rgba(105,112,123,.25);}
.instrument-detail-state[data-live="true"]::before {background:#16b892;box-shadow:0 0 8px rgba(22,184,146,.5);}
.instrument-detail-pane h3 {margin:25px 0 10px;color:#6f747e;font-size:9.5px;letter-spacing:.14em;}
.instrument-detail-alternates {display:grid;gap:2px;}
.instrument-detail-alternates button {display:grid;grid-template-columns:19px minmax(0,1fr) 35px 65px;align-items:center;gap:7px;width:100%;padding:5px 0;border:0;background:transparent;color:#a8acb5;text-align:left;cursor:pointer;}
.instrument-detail-alternates button:hover {color:#f1f2f5;}
.instrument-detail-alternates .instrument-mark {display:grid;place-items:center;width:17px;height:17px;border-radius:50%;font-size:8px;}
.instrument-detail-alternates strong {overflow:hidden;color:#e7e8ec;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.instrument-detail-alternates span {color:#7d828c;font-size:10px;}
.instrument-detail-empty {margin:10px 0;color:#7d828c;font-size:12px;line-height:1.5;}
.chart-tool-dialog.futures-plan-gate {box-sizing:border-box;width:min(470px,calc(100vw - 28px));padding:0;overflow:hidden;border-color:rgba(255,255,255,.12);background:#15161a;box-shadow:0 30px 100px #000c;}
.chart-tool-dialog.futures-plan-gate>header {padding:17px 18px;border-bottom:1px solid rgba(255,255,255,.09);}
.chart-tool-dialog.futures-plan-gate>header h2 {margin:0;font-size:16px;letter-spacing:-.01em;}
.chart-tool-dialog.futures-plan-gate>header button {width:30px;height:30px;padding:0;border-radius:7px;font-size:19px;}
.chart-tool-dialog.futures-plan-gate>p {margin:0;padding:16px 18px 4px;color:#b3b7c0;font-size:12.5px;line-height:1.55;}
.futures-plan-compare {display:grid;gap:8px;padding:14px 18px 18px;}
.futures-plan-compare>div {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 14px;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:rgba(255,255,255,.025);}
.futures-plan-compare span {display:grid;gap:3px;}
.futures-plan-compare small {color:#707683;font-size:8px;letter-spacing:.12em;}
.futures-plan-compare strong {color:#f1f2f5;font-size:12px;}
.futures-plan-compare b {color:#8e949f;font-size:11px;font-weight:650;}
.futures-plan-compare>div:last-child {border-color:rgba(77,213,184,.32);background:rgba(30,173,145,.07);}
.futures-plan-compare>div:last-child b {color:#45d6b5;}
.chart-tool-dialog.futures-plan-gate>.futures-plan-details {padding:0 18px 15px;color:#858c98;}
.chart-tool-dialog.futures-plan-gate>footer {justify-content:flex-end;padding:13px 18px;border-top:1px solid rgba(255,255,255,.09);}
.chart-tool-dialog.futures-plan-gate>footer button {width:auto;min-width:94px;margin:0;}
.instrument-picker .instrument-status-row {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.instrument-picker-shortcuts {display:flex;align-items:center;gap:22px;flex:0 0 37px;margin:0 -10px;padding:0 14px;border-top:1px solid rgba(255,255,255,.075);color:#747984;font-size:10px;}
.instrument-picker-shortcuts span {display:flex;align-items:center;gap:5px;}
.instrument-picker-shortcuts kbd {display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:1px solid rgba(255,255,255,.09);border-radius:4px;background:#191a1f;color:#aeb2ba;font:10px/1 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:inset 0 -1px rgba(0,0,0,.35);}
.instrument-picker-shortcuts .instrument-load-more {margin-left:auto;padding:5px 10px;border-color:rgba(255,255,255,.13);background:#1b1c22;color:#d5d8df;}
@media(max-width:720px) {
  :is(#opening-range-dialog,.chart-tool-dialog).instrument-picker {width:calc(100vw - 16px);height:calc(100vh - 18px);padding:8px 8px 0;}
  .instrument-picker-main {grid-template-columns:1fr;}
  .instrument-detail-pane {display:none;}
  .instrument-picker #instrument-results {border-right:0;}
  .instrument-picker .instrument-filter-bar .instrument-filters button {padding:0 12px;}
  .instrument-venue-filter {min-width:106px;}
  .instrument-picker-shortcuts {gap:12px;overflow:hidden;}
}

/* Concept C community surface. Discovery stays visually separate from the
   evidence-ranked performance library while sharing the same black workspace. */
#library-view {
  padding:0 clamp(16px,3vw,38px) 32px;background:
    radial-gradient(circle at 78% 10%,rgba(117,82,229,.075),transparent 30%),
    radial-gradient(circle at 26% 34%,rgba(43,193,209,.045),transparent 32%),#07080b;
  scrollbar-color:rgba(130,117,222,.50) transparent;
}
#community-tabs {
  position:sticky;top:0;z-index:20;gap:22px;padding:13px 0 0;
  border-bottom:1px solid rgba(255,255,255,.075);background:rgba(7,8,11,.86);backdrop-filter:blur(18px);
}
#community-tabs[hidden] {display:none!important;}
#ideas-view {width:min(1200px,100%);margin:0 auto;padding:28px 0 42px;box-sizing:border-box;}
.community-use-note{color:var(--text-muted);font-size:12px}
.strategy-social-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}
.strategy-social textarea{width:100%;resize:vertical;margin:10px 0 8px}
.strategy-social-comments .community-comment{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.community-cover-review{display:grid;grid-template-columns:minmax(180px,320px) 1fr;gap:14px;align-items:center;padding:12px;border:1px solid rgba(115,211,255,.22);border-radius:12px;background:rgba(8,12,18,.72)}
.community-cover-review img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px;border:1px solid rgba(255,255,255,.12)}
.community-card-figure>img,.community-detail-cover{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.community-cover-review p{margin:5px 0 10px;color:var(--text-muted)}
@media(max-width:620px){.community-cover-review{grid-template-columns:1fr}}

/* Community publication detail — a focused chart-product surface. */
#community-detail {
  margin:18px 0 24px;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.095);
  border-radius:17px;background:linear-gradient(155deg,rgba(17,18,23,.985),rgba(8,9,12,.995));
  box-shadow:0 24px 72px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.035);
}
.community-detail-header {
  display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px 18px;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:radial-gradient(circle at 15% 0,rgba(60,200,216,.075),transparent 36%),rgba(10,11,15,.72);
}
.community-detail-identity {min-width:0;}
.community-detail-eyebrow {display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px;}
.community-detail-eyebrow>span {
  display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border:1px solid rgba(255,255,255,.09);
  border-radius:999px;background:rgba(255,255,255,.027);color:#9ca4b4;font-size:9px;font-weight:800;
  letter-spacing:.075em;text-transform:uppercase;
}
.community-detail-eyebrow>span:first-child {border-color:rgba(78,208,225,.25);color:#83dce8;background:rgba(36,145,161,.075);}
.community-detail-eyebrow>span[data-access="open"] {border-color:rgba(64,207,164,.22);color:#89dbc1;}
.community-detail-eyebrow>span[data-access="protected"],
.community-detail-eyebrow>span[data-access="invite_only"] {border-color:rgba(178,137,255,.24);color:#bea6ee;}
.community-detail-eyebrow>.community-detail-evidence {color:#777f8d;}
#community-detail .community-detail-title {margin:0;color:#f4f5f8;font-size:clamp(22px,2.25vw,31px);line-height:1.15;letter-spacing:-.038em;}
#community-detail .community-detail-title:focus {outline:0;}
#community-detail .community-detail-meta {margin:7px 0 0;color:#89919f;font-size:11px;line-height:1.4;}
#community-detail .community-detail-back {
  flex:0 0 auto;margin:0;padding:8px 11px;border-color:transparent;background:transparent;color:#8e96a4;
}
#community-detail .community-detail-back::before {content:"←";margin-right:7px;}
#community-detail .community-detail-back:hover {border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.035);color:#eef0f4;}
.community-detail-media {padding:0 24px;}
#community-detail .community-detail-tabs {
  display:flex;gap:20px;margin:0;padding:0;border-bottom:1px solid rgba(255,255,255,.065);
}
#community-detail .community-detail-tabs .lib-btn {
  position:relative;margin:0;padding:13px 1px 11px;border:0;border-radius:0;background:transparent;
  box-shadow:none;color:#78818f;font-size:10.5px;font-weight:750;
}
#community-detail .community-detail-tabs [role="tab"][aria-selected="true"] {border:0;background:transparent;color:#f0f2f6;}
#community-detail .community-detail-tabs [role="tab"][aria-selected="true"]::after {
  content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#43d5d5,#6d77e8);box-shadow:0 0 12px rgba(69,204,220,.28);
}
#community-detail [role="tabpanel"] {padding:16px 0 0;}
#community-detail .community-detail-cover {
  width:100%;max-height:610px;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.075);border-radius:11px;
  object-fit:cover;background:#050608;box-shadow:0 16px 42px rgba(0,0,0,.26);
}
.community-detail-overview {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,410px);gap:28px;padding:22px 24px;
  border-bottom:1px solid rgba(255,255,255,.065);
}
#community-detail .community-detail-description {margin:2px 0;color:#c4c9d2;font-size:13px;line-height:1.68;}
.community-detail-action-deck {display:grid;gap:10px;align-self:start;}
.community-detail-primary-actions {display:grid;grid-template-columns:minmax(155px,1fr) auto;gap:8px;align-items:center;}
.community-detail-primary-actions>.lib-btn {min-height:39px;margin:0;padding:0 14px;border-radius:9px;white-space:nowrap;}
#community-detail .community-detail-primary-actions>.lib-btn-primary {
  border-color:rgba(73,217,211,.5);background:linear-gradient(120deg,#45d5cf,#38b9ca);color:#031213;
  font-weight:850;box-shadow:0 8px 24px rgba(40,193,196,.16),inset 0 1px rgba(255,255,255,.28);
}
.community-detail-primary-actions>.lib-btn-primary:hover {filter:brightness(1.06);transform:translateY(-1px);}
#community-detail .community-use-note {grid-column:1/-1;order:3;margin:1px 2px 0;color:#737c8b;font-size:10px;line-height:1.45;}
.community-detail-utility-actions {display:flex;flex-wrap:wrap;gap:6px;}
.community-detail-utility-actions>.lib-btn {
  min-height:31px;margin:0;padding:0 10px;border-color:rgba(255,255,255,.075);border-radius:8px;
  background:rgba(255,255,255,.025);color:#a8afba;font-size:10px;box-shadow:none;
}
.community-detail-utility-actions>.lib-btn:hover {border-color:rgba(92,207,223,.25);background:rgba(74,184,204,.055);color:#eef2f5;}
.community-detail-utility-actions>.lib-btn[aria-pressed="true"] {border-color:rgba(83,216,194,.27);color:#8de0ca;background:rgba(33,135,113,.09);}
.community-detail-technical {
  margin:0;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.065);background:rgba(3,4,6,.2);
}
.community-detail-technical-heading {
  display:flex;align-items:center;min-height:48px;color:#858d9a;font-size:10.5px;font-weight:750;cursor:pointer;list-style:none;
}
.community-detail-technical-heading::-webkit-details-marker {display:none;}
.community-detail-technical-heading::before {content:"›";margin-right:8px;color:#66707e;font-size:17px;transition:transform .15s ease;}
.community-detail-technical[open]>.community-detail-technical-heading::before {transform:rotate(90deg);}
#community-detail .community-source-hash {margin:0 0 11px;color:#626b79;font:9.5px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;}
.community-version-history {margin:0 0 16px;padding:10px 12px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.018);}
.community-version-history>summary {color:#9098a6;font-size:10px;font-weight:750;cursor:pointer;}
.community-version-list {display:flex;flex-wrap:wrap;gap:6px;margin-top:9px;}
.community-version-list>.lib-btn {margin:0;padding:6px 8px;font-size:9px;}
#community-detail .community-discussion {margin:0;padding:22px 24px;border:0;background:rgba(8,9,12,.4);}
#community-detail .community-discussion h4 {margin:0 0 13px;color:#eff1f4;font-size:15px;letter-spacing:-.015em;}
.community-comment-composer {
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:14px;padding:7px;
  border:1px solid rgba(255,255,255,.075);border-radius:11px;background:rgba(4,5,7,.7);
}
#community-detail .community-comment-composer textarea {
  min-height:42px;margin:0;padding:9px 10px;border:0;background:transparent;box-shadow:none;resize:vertical;color:#dce0e7;
}
#community-detail .community-comment-composer textarea:focus {outline:0;}
#community-detail .community-comment-composer .lib-btn {min-width:66px;margin:0;border-radius:8px;}
#community-detail .community-comment-status {display:block;margin-top:8px;color:#747d8b;font-size:10px;}
#community-detail .community-report {margin:0 24px 22px;border-color:rgba(255,255,255,.06);background:rgba(255,255,255,.015);}
@media(max-width:780px){
  .community-detail-header {padding:18px 16px 15px;}
  .community-detail-media {padding:0 16px;}
  .community-detail-overview {grid-template-columns:1fr;gap:18px;padding:18px 16px;}
  .community-detail-technical,#community-detail .community-discussion {padding-right:16px;padding-left:16px;}
  #community-detail .community-report {margin-right:16px;margin-left:16px;}
}
@media(max-width:520px){
  .community-detail-header {display:grid;gap:12px;}
  #community-detail .community-detail-back {grid-row:1;justify-self:start;padding-left:0;}
  .community-detail-primary-actions {grid-template-columns:1fr;}
  .community-detail-primary-actions>.lib-btn {width:100%;}
  .community-detail-utility-actions>.lib-btn {flex:1 1 auto;}
  .community-comment-composer {grid-template-columns:1fr;}
}
.ideas-hero {display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:radial-gradient(circle at 82% 0,rgba(120,73,231,.12),transparent 36%),linear-gradient(145deg,rgba(19,19,25,.94),rgba(8,8,11,.97));box-shadow:0 18px 48px rgba(0,0,0,.20);}
.ideas-hero small {color:#67d4e5;font-size:9px;font-weight:800;letter-spacing:.16em;}
.ideas-hero h2 {margin:7px 0 8px;color:#f4f3f8;font-size:30px;letter-spacing:-.04em;}
.ideas-hero p {max-width:760px;margin:0;color:#9198a7;font-size:12px;line-height:1.55;}
.ideas-discovery {display:grid;grid-template-columns:minmax(240px,1fr) 150px 150px auto;gap:8px;margin:16px 0;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(14,14,18,.82);}
.ideas-discovery :is(input,select),.ideas-publish-grid :is(input,select),#ideas-body {box-sizing:border-box;width:100%;margin:0;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#08080b;color:#e5e7ee;}
#ideas-publish {margin:0 0 16px;padding:14px 16px;border:1px solid rgba(109,92,226,.24);border-radius:12px;background:rgba(18,16,27,.72);color:#9298a7;}
#ideas-publish summary {cursor:pointer;color:#e9e9ef;font-size:12px;font-weight:750;}
.ideas-publish-grid {display:grid;grid-template-columns:2fr 1.2fr .7fr .8fr;gap:8px;margin:13px 0 8px;}
#ideas-body {min-height:140px;padding:12px;resize:vertical;font:inherit;line-height:1.5;}
.ideas-publish-actions {display:flex;align-items:center;gap:12px;margin-top:8px;}
.ideas-cover-review {display:grid;grid-template-columns:minmax(180px,320px) 1fr;gap:14px;align-items:center;margin-top:12px;padding:12px;border:1px solid rgba(115,211,255,.20);border-radius:12px;background:rgba(8,12,18,.72);}
.ideas-cover-review img {display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px;border:1px solid rgba(255,255,255,.12);}
.ideas-cover-review p {margin:5px 0 10px;color:var(--text-muted);}
#ideas-status {margin:14px 0;color:#858d9d;font-size:11px;}
#ideas-empty-guide {display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.7fr);gap:22px;margin:8px 0 20px;padding:20px;border:1px solid rgba(111,103,226,.18);border-radius:15px;background:radial-gradient(circle at 12% 0,rgba(42,190,213,.07),transparent 38%),linear-gradient(145deg,rgba(17,17,22,.92),rgba(8,8,11,.96));}
#ideas-empty-guide[hidden] {display:none!important;}
.ideas-empty-copy small {color:#72d5e4;font-size:9px;font-weight:800;letter-spacing:.15em;}
.ideas-empty-copy h3 {margin:8px 0 7px;color:#f1f2f6;font-size:18px;letter-spacing:-.025em;}
.ideas-empty-copy p {margin:0;color:#858d9d;font-size:11px;line-height:1.55;}
.ideas-empty-prompts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.ideas-empty-prompts button {display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:13px;text-align:left;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.025);color:#eef0f5;}
.ideas-empty-prompts button:hover {border-color:rgba(94,207,231,.30);background:linear-gradient(135deg,rgba(48,185,210,.08),rgba(106,82,225,.08));}
.ideas-empty-prompts strong {font-size:11.5px;}
.ideas-empty-prompts span {margin-top:6px;color:#7f8797;font-size:10px;line-height:1.45;}
#ideas-cards {display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px;}
.idea-card {display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid rgba(255,255,255,.085);border-radius:13px;background:linear-gradient(145deg,rgba(21,21,26,.94),rgba(10,10,13,.98));box-shadow:0 12px 30px rgba(0,0,0,.14);}
.idea-card-open {display:flex;flex:1;flex-direction:column;align-items:stretch;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;}
.idea-card-open:focus-visible {outline:2px solid #69d5e5;outline-offset:5px;border-radius:7px;}
.idea-card-cover {display:block;order:-1;width:calc(100% + 32px);aspect-ratio:16/9;margin:-16px -16px 14px;object-fit:cover;border-radius:12px 12px 0 0;border-bottom:1px solid rgba(255,255,255,.08);background:#08090c;}
.idea-card-head,.idea-card-foot {display:flex;align-items:center;justify-content:space-between;gap:10px;}
.idea-direction {padding:4px 7px;border:1px solid rgba(255,255,255,.10);border-radius:999px;color:#adb3c0;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.idea-direction[data-direction="long"] {border-color:rgba(45,218,163,.30);color:#68e5bd;}
.idea-direction[data-direction="short"] {border-color:rgba(255,93,120,.30);color:#ff879b;}
.idea-market {color:#7bd5e4;font-size:10px;font-weight:750;}
.idea-card h3 {margin:14px 0 8px;color:#f0f1f5;font-size:16px;line-height:1.3;}
.idea-card-body {display:-webkit-box;min-height:60px;margin:0 0 16px;overflow:hidden;color:#9098a8;font-size:11.5px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3;}
.idea-card-foot {margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.065);color:#737c8d;font-size:10px;}
.idea-card-foot {flex-wrap:wrap;}
.idea-comment-count {margin-left:auto;color:#8991a1;}
.idea-boost {width:auto;margin:0;padding:6px 9px;}
#ideas-detail {margin:14px 0 20px;padding:18px;border:1px solid rgba(105,211,229,.20);border-radius:15px;background:radial-gradient(circle at 85% 0,rgba(113,82,229,.10),transparent 34%),linear-gradient(145deg,rgba(18,18,23,.97),rgba(8,8,11,.99));box-shadow:0 20px 54px rgba(0,0,0,.24);}
#ideas-detail[hidden] {display:none!important;}
.ideas-detail-close {margin-bottom:12px;}
.ideas-detail-cover {display:block;width:100%;max-height:540px;aspect-ratio:16/9;object-fit:cover;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#08090c;}
.ideas-detail-eyebrow {margin-top:16px;color:#6ed7e6;font-size:10px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;}
#ideas-detail h2 {margin:7px 0 5px;color:#f3f4f7;font-size:27px;letter-spacing:-.035em;}
.ideas-detail-author {margin:0;color:#818999;font-size:11px;}
.ideas-detail-body {max-width:900px;margin:20px 0;color:#c3c7d0;font-size:13px;line-height:1.7;white-space:pre-wrap;}
.ideas-detail-discussion {margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.075);}
.ideas-detail-discussion h3 {margin:0 0 12px;color:#eef0f4;font-size:16px;}
.ideas-detail-discussion textarea {box-sizing:border-box;width:100%;min-height:82px;margin:14px 0 8px;resize:vertical;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#08080b;color:#e5e7ee;padding:10px;}
.ideas-detail-discussion .community-comment {padding:11px 0;border-bottom:1px solid rgba(255,255,255,.07);}
.ideas-detail-discussion .community-comment-heading {display:flex;justify-content:space-between;gap:10px;color:#dadde5;font-size:11px;}
.ideas-detail-discussion .community-comment p {margin:7px 0 0;color:#a9afbc;font-size:12px;line-height:1.5;white-space:pre-wrap;}
@media(max-width:720px) {
  #ideas-view {padding:16px 12px 34px;}
  .ideas-hero {display:grid;padding:18px;}
  .ideas-hero .lib-btn {width:100%;}
  .ideas-discovery {grid-template-columns:1fr 1fr;}
  .ideas-discovery input {grid-column:1/-1;}
  .ideas-publish-grid {grid-template-columns:1fr 1fr;}
  #ideas-empty-guide {grid-template-columns:1fr;}
  .ideas-empty-prompts {grid-template-columns:1fr;}
  #ideas-cards {grid-template-columns:1fr;}
  .ideas-cover-review {grid-template-columns:1fr;}
}
#community-tabs .lib-btn {
  position:relative;margin:0;padding:8px 2px 11px;border:0;border-radius:0;background:transparent;color:#7f8796;box-shadow:none;
}
#community-tabs .lib-btn-primary {color:#f1f2f7;}
#community-tabs .lib-btn-primary::after {
  content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--gradient-hero);box-shadow:0 0 12px rgba(57,126,216,.32);
}
#community-view {max-width:1200px;margin:0 auto;padding-top:24px;}
.community-hero {display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:10px;}
.community-hero>div {min-width:0;}
.community-hero h2 {margin:0 0 7px;color:#f5f5f9;font-size:28px;letter-spacing:-.035em;}
.community-hero h2::before {
  content:"DISCOVER · USE · REMIX";display:block;margin-bottom:8px;color:#75d7e5;font-size:9px;font-weight:800;letter-spacing:.17em;
}
.community-hero p {max-width:850px;margin:0;color:#8991a1;font-size:11.5px;line-height:1.55;}
.community-hero-actions{display:flex;flex:0 0 auto;gap:8px;margin-top:24px}
.publication-path-note{display:flex;align-items:flex-start;gap:10px;margin:12px 0 16px;padding:11px 13px;border:1px solid rgba(107,205,224,.16);border-radius:11px;background:linear-gradient(135deg,rgba(37,177,203,.055),rgba(111,88,224,.065));color:#838c9c;font-size:11px;line-height:1.5}
.publication-path-note strong{flex:0 0 auto;color:#cbd0dc;font-size:10.5px}
.library-head-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.library-head-actions{display:flex;align-items:center;gap:8px}
#community-account-panel {padding:1px 0 3px;}
#community-view #community-account-panel summary {color:#8292bd;font-size:10.5px;}
#community-feeds {gap:16px!important;margin-top:13px!important;border-bottom:1px solid rgba(255,255,255,.06);}
#community-feeds .lib-btn {
  position:relative;margin:0;padding:7px 0 10px;border:0;border-radius:0;background:transparent;color:#767e8e;box-shadow:none;
}
#community-feeds .lib-btn[aria-pressed="true"] {color:#f0f1f5;background:transparent!important;}
#community-feeds .lib-btn[aria-pressed="true"]::after {content:"";position:absolute;right:0;bottom:-1px;left:0;height:1px;background:#6ad5e5;box-shadow:0 0 8px #47bad0;}
#community-sections {gap:7px!important;margin:13px 0 10px!important;}
#community-sections .lib-btn {
  margin:0;padding:7px 11px;border-color:rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.025);color:#8f97a5;font-size:10.5px;
}
#community-sections .lib-btn[aria-pressed="true"] {
  border-color:rgba(127,111,240,.38)!important;background:linear-gradient(135deg,rgba(47,191,210,.09),rgba(112,89,230,.12))!important;color:#ececf7!important;
}
#community-view>.community-controls {
  gap:7px;margin:11px 0 12px!important;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(13,13,17,.76);box-shadow:0 10px 30px rgba(0,0,0,.16);
}
#community-view>.community-controls :is(input,select) {
  min-height:36px;margin:0;border-color:rgba(255,255,255,.085);background:rgba(6,6,8,.82);color:#daddE6;
}
#community-view>.community-controls input {border-color:transparent;background:transparent;}
#community-search-button {border:1px solid rgba(128,197,255,.42);background:var(--gradient-action);color:#fff;box-shadow:0 5px 16px rgba(36,92,198,.24);}
#community-status {min-height:18px;color:#878f9f;font-size:11px;}
.community-starters-heading {align-items:center;margin-bottom:16px;}
.community-starters-heading h3 {color:#f0f1f5;font-size:19px;letter-spacing:-.02em;}
.community-starters-heading p {color:#7e8696;}
.community-starters-heading>span {padding:5px 8px;border:1px solid rgba(90,210,228,.17);border-radius:999px;color:#7fd5e1;font-size:9px;}
#community-starter-cards {grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:11px;}
.community-starter-card {
  padding-bottom:14px;border-color:rgba(255,255,255,.085);border-radius:12px;
  background:linear-gradient(150deg,rgba(22,22,27,.94),rgba(11,11,15,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 10px 28px rgba(0,0,0,.12);
}
.community-starter-card:hover,.community-starter-card:focus-visible {border-color:rgba(126,111,238,.43);box-shadow:0 16px 34px rgba(0,0,0,.24),0 0 24px rgba(106,89,224,.06);}
.community-starter-art {height:84px;background-color:#0a0c10;background-image:linear-gradient(transparent 24px,rgba(101,112,139,.14) 25px,transparent 26px),linear-gradient(90deg,transparent 49px,rgba(101,112,139,.14) 50px,transparent 51px);}
.community-starter-card small {color:#8cb5dc;font-size:9px;letter-spacing:.09em;}
.community-starter-card strong {color:#f0f1f6;font-size:13px;}
.community-starter-card>span:last-child {color:#7f8797;font-size:11px;}
#community-publish-dialog{width:min(760px,calc(100vw - 32px));max-height:min(900px,calc(100dvh - 32px));padding:0;border:1px solid rgba(117,215,229,.22);border-radius:16px;background:#0b0e12;color:#e7ebef;box-shadow:0 30px 100px #000d;overflow:auto}
#community-publish-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(8px) saturate(60%)}
#community-publish{display:grid;gap:14px;padding:22px;color:#929aaa}
#community-publish[hidden]{display:none}
.community-publish-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.community-publish-header small{color:#75d7e5;font-size:9px;font-weight:800;letter-spacing:.16em}
.community-publish-header h2{margin:5px 0 0;color:#f4f6f8;font-size:22px}
.community-publish-header+p{margin:0;color:#9aa4b2;font-size:12px;line-height:1.55}
#community-publish :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:38px;border:1px solid rgba(255,255,255,.11);border-radius:8px;background:#080b0f;color:#e4e8ed;padding:9px 10px;font:inherit}
#community-publish :is(input,select,textarea):focus{outline:2px solid rgba(83,216,194,.3);outline-offset:1px;border-color:rgba(83,216,194,.55)}
#community-publish :is(input,select,textarea):disabled{color:#8d96a4;background:#0b0d11;opacity:.78}
#community-publish .community-form,#community-publish .community-controls{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,1fr);gap:12px;margin:0}
#community-publish :is(.community-form,.community-controls)>label,.community-publish-field{display:grid;gap:7px;color:#aeb6c2;font-size:11px;font-weight:700}
.community-publish-field textarea{min-height:92px;resize:vertical}
#community-author-instructions-field[hidden]{display:none}
.community-publish-source{display:grid;gap:7px;color:#aeb6c2;font-size:11px;font-weight:700}
.community-publish-source textarea[readonly]{min-height:108px;background:#080b0f;color:#c7ced7;cursor:text}
.community-publish-confirm{display:flex;align-items:flex-start;gap:9px;width:max-content;max-width:100%;color:#c6cdd6;font-size:12px;line-height:1.45;cursor:pointer}
#community-publish .community-publish-confirm input{flex:0 0 auto;width:15px;min-height:15px;height:15px;margin:2px 0 0;padding:0;accent-color:#55d7c1}
#community-publish-status{min-height:18px;color:#8bd9e5;font-size:11px}
.community-publish-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
@media(max-width:620px){#community-publish .community-form,#community-publish .community-controls{grid-template-columns:1fr}}
@media(max-width:700px) {
  #library-view {padding-inline:12px;}
  #community-view {padding-top:18px;}
  .community-hero {align-items:stretch;flex-direction:column;gap:10px;}
  .community-hero h2 {font-size:24px;}
  .community-hero-actions{align-self:flex-start;flex-wrap:wrap;margin-top:0}
  .publication-path-note{display:grid;gap:4px}
  .library-head-row{align-items:flex-start;flex-direction:column}
  .library-head-actions{width:100%;flex-wrap:wrap}
  .library-head-actions .lib-btn{flex:1}
  #community-view>.community-controls {display:grid!important;grid-template-columns:1fr 1fr;}
  #community-view>.community-controls>input {grid-column:1/-1;}
  #community-search-button {grid-column:1/-1;}
  #community-starter-cards {grid-template-columns:1fr 1fr;}
}
@media(max-width:480px) {#community-starter-cards {grid-template-columns:1fr;}}

/* A library is a destination, not another side panel. Give ranked strategy
   evidence the whole workspace and remove the editor while it is open. */
#workspace:has(#library-view.open) #strategy-editor,
#workspace:has(#library-view.open) #strategy-editor-resize,
#workspace:has(#library-view.open) #chat-panel-collapse {display:none;}
#library-view.open:not(.community-open)>:not(#community-tabs) {width:min(1180px,100%);margin-inline:auto;box-sizing:border-box;}
#library-pine-entry {
  margin-top:20px;padding:17px;border-color:rgba(255,255,255,.09);border-radius:13px;
  background:linear-gradient(145deg,rgba(21,21,27,.94),rgba(11,11,15,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 14px 38px rgba(0,0,0,.16);
}
#library-pine-entry strong {color:#f1f2f6;font-size:15px;}
#library-pine-entry span {color:#818a9b;font-size:11px;}
#library-open-pine {border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.035);}
#strategy-idea-launcher {gap:7px;margin-top:14px;padding-top:14px;border-top-color:rgba(255,255,255,.07);}
#strategy-idea-launcher :is(select,input) {min-height:38px;border-color:rgba(255,255,255,.095);background:rgba(5,5,7,.78);}
#strategy-idea-launcher button {
  border:1px solid rgba(128,197,255,.42);background:var(--gradient-action);color:#fff;box-shadow:0 6px 18px rgba(36,92,198,.24);
}
#library-pine-entry .library-search {max-width:680px;}
#research-candidate-search {min-height:36px;border-color:rgba(255,255,255,.09);background:rgba(5,5,7,.70);}
#research-candidate-toggle {
  display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:48px;margin:22px 0 8px;padding:10px 13px;
  border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025);color:#ececf1;text-align:left;
}
#research-candidate-toggle span{font-size:12px;font-weight:750;}
#research-candidate-toggle small{margin-left:auto;color:#818897;font-size:9.5px;font-weight:550;}
#research-candidate-toggle::after{content:"⌄";color:#8f82ef;}
#research-candidate-toggle[aria-expanded="true"]::after{content:"⌃";}
#research-candidate-body:not(.is-open){display:none;}
#research-candidate-body.is-open #library-pine-entry{margin-top:8px;}
.research-candidate-card {border-color:rgba(255,255,255,.08);border-radius:10px;background:rgba(255,255,255,.025);}
.research-candidate-card:hover {border-color:rgba(127,112,240,.42);background:rgba(114,91,229,.055);}
.candidate-language {background:rgba(111,91,228,.12);color:#c8c0ff!important;}
#library-head {padding:22px 0 13px;}
#library-title {color:#f5f5f9;font-size:27px;letter-spacing:-.035em;}
#library-title::before {
  content:"REPRODUCIBLE · RANKED · FORWARD TRACKED";display:block;margin-bottom:8px;color:#75d7e5;font-size:9px;font-weight:800;letter-spacing:.17em;
}
#library-sub {max-width:900px;color:#87909f;font-size:11.5px;}
#library-head .library-search {max-width:none;margin-top:15px;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(13,13,17,.76);}
#library-head .library-search input {border:0;background:transparent;}
#library-search-button {border:1px solid rgba(128,197,255,.42);background:var(--gradient-action);box-shadow:0 5px 16px rgba(36,92,198,.24);}
#pine-public-library {
  margin:12px 0 20px;padding:16px;border-color:rgba(255,255,255,.085);border-radius:13px;
  background:linear-gradient(145deg,rgba(18,18,23,.88),rgba(10,10,13,.94));
}
#pine-public-library .lib-section-title,#library-view>.lib-section-title {color:#eceef4;font-size:13px;}
#pine-public-library .lib-section-note,#library-view>.lib-section-note {max-width:970px;color:#7f8797;}
.lib-paper-wait {
  padding:14px 15px;border:1px solid rgba(82,210,190,.18);border-radius:10px;
  background:linear-gradient(120deg,rgba(26,128,114,.10),rgba(15,16,20,.38));
}
.lib-paper-wait strong {color:#bdf7eb;font-size:12px;}
.lib-paper-wait p {margin:5px 0 0;color:#8e98a7;font-size:10.5px;line-height:1.5;}
.lib-paper-summary {display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:7px;margin-bottom:10px;}
.lib-paper-summary>div {
  min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.07);border-radius:9px;
  background:rgba(255,255,255,.018);display:grid;gap:5px;
}
.lib-paper-summary span {color:#808895;font-size:8.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.lib-paper-summary strong {overflow:hidden;color:#f0f2f6;font-size:15px;text-overflow:ellipsis;white-space:nowrap;}
.lib-paper-summary .positive,.lib-paper-table .positive {color:#44d4b5;}
.lib-paper-summary .negative,.lib-paper-table .negative {color:#ff737d;}
.lib-paper-table {overflow:auto;border:1px solid rgba(255,255,255,.07);border-radius:9px;}
.lib-paper-table table {width:100%;min-width:640px;border-collapse:collapse;}
.lib-paper-table th,.lib-paper-table td {padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.055);text-align:left;font-size:10px;white-space:nowrap;}
.lib-paper-table th {color:#7e8795;font-size:8.5px;letter-spacing:.07em;text-transform:uppercase;}
.lib-paper-table tbody tr:last-child td {border-bottom:0;}
@media(max-width:900px){.lib-paper-summary{grid-template-columns:repeat(3,minmax(105px,1fr));}}
@media(max-width:560px){.lib-paper-summary{grid-template-columns:repeat(2,minmax(105px,1fr));}}

/* Forward evidence is a decision surface: context first, then an explicit
   evidence state, then metrics only when the server marks the window sufficient. */
#library-forward-out {display:grid;gap:12px;}
.forward-evidence-context {
  display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:7px;
}
.forward-evidence-context>span {
  min-width:0;padding:9px 10px;border:1px solid rgba(255,255,255,.065);border-radius:9px;
  background:rgba(255,255,255,.018);display:grid;gap:3px;
}
.forward-evidence-context>span.forward-evidence-receipt {grid-column:1/-1;display:flex;align-items:center;gap:9px;padding-block:7px;}
.forward-evidence-context small,.forward-evidence-metrics dt {
  color:#7f8797;font-size:8.5px;font-weight:780;letter-spacing:.08em;text-transform:uppercase;
}
.forward-evidence-context strong {overflow:hidden;color:#d9dce5;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.forward-evidence-receipt strong {color:#929aaa;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;}
.forward-evidence-verdict {
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;
  border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.018);
}
.forward-evidence-verdict>div {display:grid;gap:3px;}
.forward-evidence-verdict span {font-size:8.5px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;}
.forward-evidence-verdict strong {color:#f0f2f6;font-size:14px;}
.forward-evidence-verdict p {margin:0;color:#8d93a1;font-size:10.5px;line-height:1.45;}
.forward-evidence-verdict.is-measured {border-color:rgba(65,211,172,.25);background:linear-gradient(120deg,rgba(31,148,121,.105),rgba(18,20,25,.64));}
.forward-evidence-verdict.is-measured span {color:#68dfbf;}
.forward-evidence-verdict.is-building {border-color:rgba(232,181,83,.24);background:linear-gradient(120deg,rgba(177,119,25,.10),rgba(18,20,25,.64));}
.forward-evidence-verdict.is-building span {color:#efc66f;}
.forward-evidence-needs {min-width:260px;margin:0;padding:0;display:grid;gap:5px;list-style:none;}
.forward-evidence-needs li {padding:6px 9px;border-radius:7px;background:rgba(0,0,0,.20);color:#c9cdd6;font-size:10px;}
.forward-evidence-needs li::before {content:"○";margin-right:7px;color:#efc66f;}
.forward-evidence-metrics {margin:0;display:grid;grid-template-columns:repeat(3,minmax(130px,1fr));gap:7px;}
.forward-evidence-metrics>div {padding:12px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.02);}
.forward-evidence-metrics dt {margin:0 0 7px;}
.forward-evidence-metrics dt small {font-size:8px;text-transform:none;letter-spacing:0;}
.forward-evidence-metrics dd {margin:0;color:#f2f4f7;font-size:19px;font-weight:760;letter-spacing:-.02em;}
.forward-evidence-metrics dd small {color:#858c9a;font-size:9px;font-weight:600;letter-spacing:0;}
.forward-evidence-disclosure {margin:0;color:#858c99;font-size:10px;line-height:1.5;}
@media(max-width:980px) {
  .forward-evidence-context {grid-template-columns:repeat(2,minmax(120px,1fr));}
  .forward-evidence-verdict {align-items:stretch;flex-direction:column;}
  .forward-evidence-needs {min-width:0;}
  .forward-evidence-metrics {grid-template-columns:repeat(2,minmax(120px,1fr));}
}
@media(max-width:560px) {
  .forward-evidence-context,.forward-evidence-metrics {grid-template-columns:1fr;}
}
#library-filter-panel {flex:none;min-height:42px;margin:10px 0 13px;border:1px solid rgba(255,255,255,.085);border-radius:12px;background:rgba(15,15,19,.66);overflow:hidden;}
#library-filter-panel>summary {display:flex;align-items:center;gap:10px;min-height:42px;padding:0 13px;color:#d9dee8;font-size:11px;font-weight:750;cursor:pointer;list-style:none;}
#library-filter-panel>summary::-webkit-details-marker {display:none;}
#library-filter-panel>summary::before {content:'›';color:#72d3e3;font-size:17px;transform:rotate(0deg);transition:transform .15s ease;}
#library-filter-panel[open]>summary::before {transform:rotate(90deg);}
#library-filter-panel>summary small {margin-left:auto;color:#747d8e;font-size:9px;font-weight:600;letter-spacing:.04em;}
#library-filter-panel[open]>summary {border-bottom:1px solid rgba(255,255,255,.07);}
#library-filters {
  display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:9px;padding:13px;
  border:0;border-radius:0;background:rgba(15,15,19,.78);
}
.lib-filter {min-width:0;}
.lib-filter label {color:#747d8e;font-size:9px;letter-spacing:.08em;}
.lib-filter :is(input,select) {width:100%;min-height:34px;box-sizing:border-box;border-color:rgba(255,255,255,.085);background:rgba(5,5,7,.76);}
#library-filter-actions {align-items:flex-end;}
#library-filter-actions .lib-btn-primary {border:0;background:linear-gradient(135deg,#35b9d0,#7064e7);box-shadow:0 5px 14px rgba(88,91,226,.18);}
.lib-card,.lib-section {
  border-color:rgba(255,255,255,.085);border-radius:12px;background:linear-gradient(145deg,rgba(21,21,26,.94),rgba(11,11,14,.97));
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 12px 30px rgba(0,0,0,.12);
}
.lib-card:hover {border-color:rgba(126,112,240,.42);transform:translateY(-1px);box-shadow:0 16px 34px rgba(0,0,0,.20),0 0 22px rgba(103,88,224,.05);}
#library-empty {border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.02);}
.library-empty-actions {display:flex;flex-wrap:wrap;gap:8px;margin-top:11px;}
.library-empty-actions .lib-btn {min-height:34px;margin:0;}
@media(max-width:900px) {#library-filters {grid-template-columns:repeat(2,minmax(130px,1fr));}}
@media(max-width:560px) {
  #library-title {font-size:24px;}
  #strategy-idea-launcher {grid-template-columns:1fr;}
  #library-filters {grid-template-columns:1fr 1fr;}
  #library-filter-actions {grid-column:1/-1;}
  .library-empty-actions {display:grid;grid-template-columns:1fr;}
  .library-empty-actions .lib-btn {width:100%;box-sizing:border-box;}
}

/* Alert manager communicates the runtime guarantee before individual alert
   controls, then keeps each saved deployment's actions compact and scannable. */
#chart-live-actions>#alert-manager[open] .alert-manager-service {
  display:flex;align-items:center;gap:9px;margin:0 0 12px;padding:9px 11px;
  border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.025);
}
#chart-live-actions>#alert-manager[open] .alert-manager-service::before {
  content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#7e8798;box-shadow:0 0 10px rgba(126,135,152,.28);
}
#chart-live-actions>#alert-manager[open] .alert-manager-service strong {color:#e9ebf2;font-size:11px;white-space:nowrap;}
#chart-live-actions>#alert-manager[open] .alert-manager-service span {color:#858e9e;font-size:10px;line-height:1.35;}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="online"] {border-color:rgba(56,216,171,.22);background:rgba(32,174,134,.055);}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="online"]::before {background:#44dfb1;box-shadow:0 0 12px rgba(68,223,177,.70);}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="local"] {border-color:rgba(88,193,220,.22);}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="local"]::before {background:#65c9df;box-shadow:0 0 12px rgba(101,201,223,.52);}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="attention"] {border-color:rgba(239,168,83,.28);background:rgba(190,112,37,.07);}
#chart-live-actions>#alert-manager[open] .alert-manager-service[data-state="attention"]::before {background:#efa853;box-shadow:0 0 12px rgba(239,168,83,.55);}
#chart-live-actions>#alert-manager[open] .alert-manager-row {
  padding:11px;border-color:rgba(255,255,255,.085);border-radius:11px;background:linear-gradient(145deg,rgba(22,22,27,.92),rgba(10,10,13,.96));
}
#chart-live-actions>#alert-manager[open] .alert-manager-row>strong {color:#f0f1f5;font-size:12px;}
#chart-live-actions>#alert-manager[open] .alert-manager-row-actions {display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid rgba(255,255,255,.065);}
#chart-live-actions>#alert-manager[open] .alert-manager-row-actions button {
  width:auto;min-height:29px;margin:0;padding:5px 9px;border-color:rgba(255,255,255,.09);border-radius:7px;background:rgba(255,255,255,.035);color:#b2b8c4;font-size:10px;
}
#chart-live-actions>#alert-manager[open] .alert-manager-row-actions button:first-child {border-color:rgba(126,111,238,.30);color:#d9d5f8;}
#chart-live-actions>#alert-manager[open] .alert-manager-row-actions button:hover {border-color:rgba(126,111,238,.46);background:rgba(111,91,228,.09);color:#fff;}
@media(max-width:620px) {
  #chart-live-actions>#alert-manager[open] .alert-manager-service {align-items:flex-start;flex-wrap:wrap;}
  #chart-live-actions>#alert-manager[open] .alert-manager-service span {flex-basis:calc(100% - 18px);margin-left:17px;}
}

#workspace-mode-tabs {
  display:flex;align-self:stretch;flex:none;width:auto;min-height:54px;margin:0;padding:0;gap:22px;box-sizing:border-box;
  border:0;border-radius:0;background:transparent;box-shadow:none;
}
#workspace-mode-tabs button {position:relative;min-height:54px;padding:3px 1px;border:0;border-radius:0;background:transparent;color:#747e91;font-size:11px;font-weight:650;white-space:nowrap;}
#workspace-mode-tabs button:hover {color:#cbd2df;background:transparent;}
#workspace-mode-tabs button[aria-selected="true"] {color:#f1f3fa;background:transparent;box-shadow:none;}
#workspace-mode-tabs button[aria-selected="true"]::after {
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;
  background:var(--gradient-hero);box-shadow:0 0 10px rgba(57,126,216,.34);
}
@media(max-width:1200px) {
  #workspace-mode-tabs {gap:13px;}
  #workspace-mode-tabs button {font-size:10px;}
  #workspace-controls {gap:6px;}
  #workspace-status {display:none;}
}
@media(max-width:850px) {
  #topbar {height:auto;min-height:86px;flex-wrap:wrap;align-content:center;}
  #workspace-mode-tabs {order:4;width:100%;height:32px;min-height:32px;gap:18px;overflow-x:auto;scrollbar-width:none;}
  #workspace-mode-tabs::-webkit-scrollbar {display:none;}
  #workspace-mode-tabs button {min-height:32px;}
}
@media(max-width:760px) {
  #topbar {grid-template-rows:auto 32px auto;min-height:104px;}
  #workspace-mode-tabs {grid-column:1 / -1;grid-row:2;order:initial;align-self:center;padding-right:28px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%);-webkit-mask-image:linear-gradient(to right,#000 0,#000 calc(100% - 28px),transparent 100%);}
  #workspace-mode-tabs button {scroll-snap-align:start;}
  #workspace-controls {grid-row:1;}
  #topbar-actions {grid-row:1;}
  /* A wrapped sticky toolbar paints over the readout and live controls after
     the workspace restores its scroll position. On phone layouts it belongs
     in normal document flow so every command row reserves its real height. */
  #chart-toolbar {position:static;top:auto;}
}
#chart-readout {
  height:34px;min-height:34px;padding:2px 12px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:30px;
  border-bottom:0;background:linear-gradient(90deg,rgba(13,13,16,.97),rgba(7,7,9,.97));
}
#chart-readout strong {font-size:14px;letter-spacing:0;}
#chart-readout-time {display:none;font-size:9.5px;color:#788398;}
#chart-context-bar {
  position:relative;z-index:20;display:grid;grid-template-columns:minmax(300px,1fr) auto;align-items:stretch;min-width:0;
  border-bottom:1px solid rgba(255,255,255,.075);background:rgba(8,8,10,.96);
}
#chart-context-bar:has(#live-webhook-alerts[open],#price-alerts[open],#alert-manager[open]) {z-index:100;}
#chart-live-controls {
  display:grid;grid-template-columns:minmax(0,1fr) auto;
  flex-shrink:0;min-height:38px;margin:0;padding:3px 10px;gap:5px 8px;
  border:0;border-left:1px solid rgba(255,255,255,.065);border-radius:0;background:transparent;
}
#chart-data-note > details > summary {max-width:min(300px,32vw);color:#8293a7;font-size:10px;font-weight:550;}
#chart-market-state,#chart-live-actions {gap:5px;}
#chart-live-actions {position:relative;}
/* Alerts already have a persistent workspace tab. The manager remains fully
   available when opened from there without taking space in the market row. */
#chart-live-actions>#alert-manager:not([open]) {display:none!important;}
#chart-live-actions>#live-signal-history:not([hidden]) {
  flex:0 0 auto;width:auto;min-width:0;height:26px;min-height:26px;margin:0;padding:0 8px;
  border:1px solid rgba(108,128,162,.28);border-radius:999px;
  background:rgba(15,19,27,.92);color:#aeb8c8;font-size:10px;line-height:1;
}
#chart-live-actions>#live-signal-history:not([open]) {display:none!important;}
#chart-live-actions>#live-signal-history:not([open])>summary {
  display:flex;align-items:center;height:24px;padding:0;list-style:none;white-space:nowrap;
}
#chart-live-actions>#live-signal-history:not([open])>summary::-webkit-details-marker {display:none;}
#chart-live-actions>#live-signal-history:not([open])>summary::before {
  content:"";width:5px;height:5px;margin-right:6px;border-radius:50%;background:#79869b;
}
#chart-live-actions>#live-signal-history[open] {
  position:absolute;z-index:55;top:calc(100% + 7px);right:0;
  display:block!important;box-sizing:border-box;width:min(440px,calc(100vw - 78px))!important;min-width:min(360px,calc(100vw - 78px))!important;height:auto!important;min-height:0!important;max-height:min(520px,70vh);
  align-items:initial!important;
  margin:0!important;padding:13px 14px!important;overflow:auto;border:1px solid rgba(120,132,164,.34);border-radius:13px!important;
  background:linear-gradient(145deg,rgba(20,21,27,.985),rgba(7,8,11,.995));
  box-shadow:0 24px 70px rgba(0,0,0,.68),0 0 26px rgba(102,83,225,.08),inset 0 1px rgba(255,255,255,.04);
  color:#d3d7e1;line-height:1.4!important;backdrop-filter:blur(20px) saturate(120%);
}
#chart-live-actions>#live-signal-history[open]>summary {
  display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;padding:0 0 10px;
  border-bottom:1px solid rgba(255,255,255,.08);color:#f1f2f6;font-size:12px;list-style:none;
}
#chart-live-actions>#live-signal-history[open]>summary::after {content:"Close";color:#838c9d;font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;}
#chart-live-actions>#live-signal-history[open]>summary::-webkit-details-marker {display:none;}
#chart-live-controls > :is(button,details,#chart-live-status,#alert-toast,#live-signal-alert-status):not([hidden]),
#chart-live-actions > button:not([hidden]),#chart-live-actions > details:not([hidden]) {
  display:inline-flex;align-items:center;height:26px;min-height:26px;margin:0!important;padding:0 8px;
  border-radius:999px;font-size:10px;line-height:1;
}
#chart-live-actions > details:not([hidden]) > summary {display:flex;align-items:center;height:24px;padding:0;line-height:1;}
#chart-market-state > #chart-live-status:not([hidden]) {min-width:0;max-width:230px;padding:4px 8px;border-radius:999px;font-size:10px;}
@media(max-width:880px) {
  #chart-context-bar {grid-template-columns:minmax(0,1fr);}
  #chart-live-controls {border-left:0;border-top:1px solid rgba(255,255,255,.055);}
  #chart-live-controls {grid-template-columns:minmax(0,1fr);}
  #chart-live-actions {position:relative;top:-2px;justify-content:flex-start;}
}
@media(max-width:520px) {
  #chart-market-state {
    display:flex;align-items:center;flex-wrap:nowrap;gap:5px;min-width:0;overflow:hidden;
  }
  #chart-market-state>#chart-data-note:not(:empty),
  #chart-market-state>#chart-live-status:not([hidden]) {
    flex:1 1 0;min-width:0;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  #chart-market-state>#chart-data-note:not(:empty) details,
  #chart-market-state>#chart-data-note:not(:empty) summary {max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  #chart-live-actions {top:-6px;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;}
  #chart-live-actions::-webkit-scrollbar {display:none;}
  #chart-live-actions>#live-signal-history[open] {position:fixed;top:auto;right:10px;bottom:10px;left:10px;width:auto;max-height:62vh;}
}
#chart-tools-bar {
  position:absolute;z-index:17;top:10px;left:14px;right:auto;
  width:auto;max-width:min(460px,calc(100% - 98px));min-height:34px;padding:3px 5px;gap:4px;
  border:1px solid rgba(255,255,255,.12);border-radius:11px;
  background:linear-gradient(145deg,rgba(25,25,30,.84),rgba(10,10,13,.78));
  backdrop-filter:blur(18px) saturate(118%);
  box-shadow:0 14px 36px rgba(0,0,0,.38),0 0 22px rgba(104,81,229,.07),inset 0 1px rgba(255,255,255,.045);
}
#chart-tools-bar:has(.study-chip.is-strategy) #chart-tools-toggle {
  order:99;display:inline-flex;align-items:center;justify-content:center;align-self:center;
  width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border:0;border-radius:7px;
  background:transparent;color:transparent;font-size:0;
}
#chart-tools-bar:has(.study-chip.is-strategy) #chart-tools-toggle::after {content:"•••";color:#a7adba;font-size:11px;letter-spacing:1px;}
#chart-tools-bar:has(.study-chip.is-strategy) #chart-tools-toggle:hover {background:rgba(255,255,255,.07);}
#chart-tools-bar:has(.study-chip.is-strategy) #chart-studies {max-width:100%;}
#chart-tools-toggle.study-shelf-summary {min-height:26px;padding:2px 5px;font-size:10px;}
#chart-tools-bar:not(.is-expanded) .study-chip {height:27px;border-color:transparent;background:transparent;}
#chart-tools-bar:not(.is-expanded) .study-chip strong {font-size:10.5px;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy {height:30px;border-left:2px solid var(--study-color);border-radius:6px;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy > strong {flex:1 1 130px;min-width:92px;max-width:180px;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy > :is(.study-code,.study-add-alert,button[aria-label^="Remove attached"]) {display:none;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-language {display:none;}
#chart-tools-bar:not(.is-expanded) .study-runtime-state {
  width:7px;min-width:7px;height:7px;padding:0;border:0;border-radius:50%;
  color:transparent !important;font-size:0;background:#798897;
}
#chart-tools-bar:not(.is-expanded) .study-runtime-state[data-state="live"] {background:#48d6b2;box-shadow:0 0 8px rgba(72,214,178,.55);}
#chart-tools-bar:not(.is-expanded) .study-runtime-state[data-state="updating"] {background:#64b9eb;box-shadow:0 0 8px rgba(100,185,235,.45);}
#chart-tools-bar:not(.is-expanded) .study-runtime-state[data-state="delayed"],
#chart-tools-bar:not(.is-expanded) .study-runtime-state[data-state="attention"] {background:#e4aa62;box-shadow:0 0 8px rgba(228,170,98,.42);}
#chart-tools-bar:not(.is-expanded) .study-chip > button {width:24px;min-width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-settings {font-size:15px;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-code {font-size:10px;letter-spacing:-.06em;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-remove-inline {font-size:17px;color:#8d98a6;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-more {font-size:11px;letter-spacing:1px;}
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy > :is(.study-code,.study-remove-inline) {display:inline-flex;}
#chart-tools-bar #chart-tools-toggle[hidden] {display:none;}
#chart-shell:has(#chart-tools-bar:not([hidden])) .chart-pane-readout {transform:translateY(54px);}

/* TradingView-style chart legend: the attached script stays identifiable, but
   secondary metadata and actions no longer form a toolbar across price. */
#chart-tools-bar:not(.is-expanded) {
  min-height:29px;max-width:min(390px,calc(100% - 88px));padding:1px 3px;
  border-color:rgba(255,255,255,.07);border-radius:7px;
  background:rgba(8,8,10,.72);box-shadow:0 8px 24px rgba(0,0,0,.24);
}
#chart-tools-bar:not(.is-expanded) #chart-studies {max-height:29px;}
#chart-tools-bar:not(.is-expanded) .study-chip,
#chart-tools-bar:not(.is-expanded) .study-chip.is-strategy {
  height:25px;padding:0 2px 0 5px;border:0;border-radius:4px;background:transparent;
}
#chart-tools-bar:not(.is-expanded) .study-chip::before {width:2px;height:12px;margin-right:3px;}
#chart-tools-bar:not(.is-expanded) .study-chip > strong {max-width:154px;font-size:10px;font-weight:550;}
#chart-tools-bar:not(.is-expanded) .study-runtime-state {display:none;}
#chart-tools-bar:not(.is-expanded) .study-chip > button {
  display:inline-grid;width:22px;min-width:22px;height:22px;min-height:22px;
  padding:0;border:0;background:transparent;color:#858c99;font-size:11px;
}
#chart-tools-bar:not(.is-expanded) .study-chip > button:hover,
#chart-tools-bar:not(.is-expanded) .study-chip > button:focus-visible {background:#24262d;color:#f3f4f6;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-visibility {font-size:0;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-visibility::first-letter {font-size:11px;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-settings {font-size:13px;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-code {font:600 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-remove-inline {font-size:16px;font-weight:300;}
#chart-tools-bar:not(.is-expanded) .study-chip .study-more {font-size:16px;line-height:10px;}
#chart-tools-bar:has(.study-chip.is-strategy):not(.is-expanded) #chart-tools-toggle {
  width:22px;min-width:22px;height:22px;min-height:22px;border-radius:4px;
}
#chart-tools-bar:has(#chart-studies > .study-chip:only-child) #chart-tools-toggle {display:none!important;}
#chart-shell:has(#chart-tools-bar:not([hidden])) .chart-pane-readout {transform:translateY(39px);}

/* Attached scripts use the same quiet legend contract in both shelf states:
   name, visibility, settings, code, remove, and overflow. Runtime health stays
   in the market-status row, and testing stays in the bottom Strategy Tester. */
#chart-tools-bar .study-chip .study-language,
#chart-tools-bar .study-chip .study-runtime-state,
#chart-tools-bar .study-chip .study-strategy-backtest,
#chart-tools-bar .study-chip .study-add-alert,
#chart-tools-bar .study-chip .study-unavailable[hidden] {display:none!important;}
#chart-tools-bar .study-chip {gap:1px;}
#chart-tools-bar .study-chip > strong {
  flex:1 1 auto;min-width:72px;max-width:190px;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;
}
#chart-tools-bar .study-chip > button {
  width:23px;min-width:23px;height:23px;min-height:23px;padding:0;
  border:0;background:transparent;color:#8d95a2;
}
#chart-tools-bar .study-chip > button:hover,
#chart-tools-bar .study-chip > button:focus-visible {background:#24262d;color:#f5f6f8;}
#chart-tools-bar .study-chip > .study-loading-indicator:not([hidden]) {
  display:inline-flex!important;align-items:center;gap:2px;flex:none;
  width:15px;height:14px;margin:0 3px 0 2px;
}
.study-loading-dot {
  width:3px;height:3px;border-radius:50%;background:#8e96a5;
  animation:study-loading-pulse 1.05s ease-in-out infinite;
}
.study-loading-dot:nth-child(2) {animation-delay:.14s;}
.study-loading-dot:nth-child(3) {animation-delay:.28s;}
@keyframes study-loading-pulse {
  0%,65%,100% {opacity:.28;transform:translateY(0);}
  32% {opacity:1;transform:translateY(-1px);}
}
@media(prefers-reduced-motion:reduce) {
  .study-loading-dot {animation:none;opacity:.72;}
}
#chart-tools-bar .study-chip .study-visibility {font-size:0;}
#chart-tools-bar .study-chip .study-visibility::before {content:"\25c9";font-size:11px;}
#chart-tools-bar .study-chip .study-visibility[aria-pressed="false"]::before {content:"\25cb";}
#chart-tools-bar .study-chip .study-code {font:650 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace;}
#chart-tools-bar .study-chip .study-remove-inline {font-size:16px;font-weight:300;}
#chart-tools-bar .study-chip .study-more {font-size:14px;letter-spacing:0;}

/* Chart chrome follows the same division as the primary workspace: discovery
   keeps its readable Indicators label, while Code and Drawings already have
   dedicated destinations. Their toolbar shortcuts remain available as quiet
   icon buttons with full accessible names and tooltips. */
#chart-toolbar :is(#pine-toolbar-btn,#tools-btn) {
  width:34px;min-width:34px;padding-inline:6px;
}
#chart-toolbar :is(#pine-toolbar-btn,#tools-btn) .toolbar-label {display:none!important;}

/* One line-icon language for chart commands and study rows. Font glyphs vary
   by platform and made adjacent controls look unrelated; these SVGs keep the
   same optical weight, hit area, and baseline everywhere. */
.toolbar-control-icon {width:16px!important;height:16px!important;color:#a6afbb;}
#watchlist-star .toolbar-control-icon {width:17px!important;height:17px!important;}
#watchlist-star[aria-pressed="true"] .toolbar-control-icon {fill:currentColor;color:#9ec5ff;}
#chart-style-btn .toolbar-control-icon {color:#9ec5ff;}
#chart-tools-bar .study-chip .chart-control-icon {
  display:block;width:14px!important;height:14px!important;pointer-events:none;
}
#chart-tools-bar .study-chip .study-visibility::before {content:none!important;}
#chart-tools-bar .study-chip .study-visibility[aria-pressed="false"] .chart-control-icon {
  opacity:.52;
}
#chart-tools-bar .study-chip > button {
  display:inline-grid;place-items:center;
}

/* Loading is visually different from the More action. A small rotating ring
   acknowledges the click immediately without competing with the chart. */
#chart-tools-bar .study-chip > .study-loading-indicator:not([hidden]) {
  display:inline-grid!important;place-items:center;width:17px;height:17px;
  margin:0 3px 0 2px;gap:0;
}
#chart-tools-bar .study-chip > .study-loading-indicator::before {
  content:"";box-sizing:border-box;width:12px;height:12px;border-radius:50%;
  border:1.5px solid rgba(139,153,170,.30);border-top-color:#80c8f4;
  animation:study-loading-spin .72s linear infinite;
}
#chart-tools-bar .study-chip .study-loading-dot {display:none!important;}
@keyframes study-loading-spin {to {transform:rotate(360deg);}}
@media(prefers-reduced-motion:reduce) {
  #chart-tools-bar .study-chip > .study-loading-indicator::before {
    animation:none;border-color:#80c8f4 rgba(139,153,170,.30) rgba(139,153,170,.30);
  }
}

#results-panel:not([hidden]) {
  margin:9px 10px 12px;border:1px solid rgba(95,137,218,.28);border-radius:13px;
  background:linear-gradient(145deg,rgba(18,18,22,.94),rgba(8,8,10,.97));
  box-shadow:0 18px 48px rgba(0,0,0,.30),0 0 28px rgba(98,76,230,.06),inset 0 1px rgba(255,255,255,.025);
  min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;
}
#results-collapse-bar {margin-inline:10px;border-radius:10px;background:rgba(13,13,16,.94);}
.lib-author-link {
  appearance:none;margin:0;padding:0;border:0;background:transparent;color:#79ded4;
  font:inherit;font-weight:720;cursor:pointer;text-decoration:none;
}
.lib-author-link:hover,.lib-author-link:focus-visible {color:#b7fff5;text-decoration:underline;text-underline-offset:2px;}
/* Backtest has a permanent top-level workspace tab. Keep its collapsed legacy
   launcher out of the chart so market analysis retains the full viewport. */
body:not(.workspace-tester-mode) #results-collapse-bar {display:none!important;}

/* The tester is a dock, not a separate page. Keep enough chart context above
   it to relate performance to price action, then scroll the dock internally. */
body.workspace-tester-mode #chart-container {
  height:clamp(150px,20dvh,210px)!important;
  min-height:150px;
}
body.workspace-tester-mode #headline-strip,
body.workspace-tester-mode #pine-headline-strip {display:none!important;}
body.workspace-tester-mode #strategy-bar,
body.workspace-tester-mode #version-status,
body.workspace-tester-mode #run-message {display:none!important;}
body.workspace-tester-mode #results-collapse-bar {
  display:none!important;
}
body.workspace-tester-mode #results-collapse-label {color:#f0f1f5;font-size:12px;font-weight:760;}
/* The full report immediately below owns the performance headline. Keep this
   row as a quiet dock control instead of repeating return, drawdown and trade
   counts twice in the first viewport. */
body.workspace-tester-mode #results-collapse-status {display:none;}
body.workspace-tester-mode #results-panel:not([hidden]) {
  max-height:none;margin:8px 10px 12px;padding:0 18px 42px;
  border-top-color:rgba(255,255,255,.045);border-radius:13px;
  overflow:visible;scroll-margin-top:8px;
}
body.workspace-tester-mode #results-header {
  display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,1.4fr);align-items:center;
  gap:24px;padding:20px 2px 16px;border-bottom:0;
}
body.workspace-tester-mode #results-header .rh-left {display:grid;gap:4px;min-width:0;}
.results-header-kicker {color:#6ddfd0;font-size:8.5px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;}
.results-header-title {display:flex;align-items:center;gap:7px;min-width:0;color:#f4f5f8;font-size:16px;font-weight:780;letter-spacing:-.02em;}
.results-header-title #results-symbol,.results-header-title #results-family {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.results-header-title #results-family {color:#aeb3c0;font-size:11px;font-weight:620;letter-spacing:0;}
.results-header-separator {color:#454a57;font-size:11px;font-weight:500;}
body.workspace-tester-mode #results-header-actions {
  grid-column:1/-1;width:100%;
  display:grid;grid-template-columns:repeat(4,max-content);justify-content:end;align-items:center;
  gap:6px;flex-wrap:nowrap;overflow:visible;scrollbar-width:none;
}
body.workspace-tester-mode #results-header-actions::-webkit-scrollbar {display:none;}
body.workspace-tester-mode #results-header-actions > button {min-height:27px;padding:4px 8px;border-radius:7px;font-size:10px;}
body.workspace-tester-mode #results-header-actions > #results-net {
  grid-column:1/-1;grid-row:1;order:-2;text-align:right;color:#f3f6f8;font-size:20px;font-weight:800;
  letter-spacing:-.025em;line-height:1.2;
}
body.workspace-tester-mode #results-header-actions > .results-reliability {
  grid-column:1;grid-row:2;order:-1;margin-left:0;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.04);
}
body.workspace-tester-mode #results-header-actions > #results-optimize-ai {grid-column:2;grid-row:2;}
body.workspace-tester-mode #results-header-actions > #results-create-alert {grid-column:3;grid-row:2;}
body.workspace-tester-mode #results-header-actions > #results-more-actions {grid-column:4;grid-row:2;}
body.workspace-tester-mode #results-more-actions>summary {min-height:27px;padding:4px 8px;font-size:10px;}
@media(max-width:980px) {
  body.workspace-tester-mode #results-header {grid-template-columns:minmax(180px,1fr) minmax(0,1.35fr);gap:14px;}
  body.workspace-tester-mode #results-header-actions {grid-template-columns:repeat(2,max-content);}
}
@media(max-width:680px) {
  body.workspace-tester-mode #results-header {grid-template-columns:1fr;gap:10px;padding-block:14px 12px;}
  body.workspace-tester-mode #results-header-actions {justify-content:start;grid-template-columns:repeat(2,minmax(0,1fr));}
  body.workspace-tester-mode #results-header-actions > #results-net {text-align:left;}
  body.workspace-tester-mode #results-header-actions > .results-reliability {grid-column:1;grid-row:2;}
  body.workspace-tester-mode #results-header-actions > #results-optimize-ai {grid-column:2;grid-row:2;}
  body.workspace-tester-mode #results-header-actions > #results-create-alert {grid-column:1;grid-row:3;}
  body.workspace-tester-mode #results-header-actions > #results-more-actions {grid-column:2;grid-row:3;}
}
body.workspace-tester-mode #results-run-contract {flex-wrap:nowrap;margin-bottom:6px;overflow-x:auto;scrollbar-width:none;}
body.workspace-tester-mode #results-run-contract::-webkit-scrollbar {display:none;}
body.workspace-tester-mode #results-run-contract .run-contract-chip {min-height:20px;padding:2px 7px;font-size:9px;}
body.workspace-tester-mode #results-next-step {min-height:36px;margin:8px 0 10px;padding:7px 10px;border-radius:9px;background:rgba(44,202,176,.035);}
body.workspace-tester-mode #results-next-step .results-next-kicker,
body.workspace-tester-mode #results-next-detail {display:none;}
body.workspace-tester-mode #results-next-step strong {font-size:10.5px;}
body.workspace-tester-mode #results-next-step button {min-height:26px;padding:4px 8px;font-size:9.5px;}
body.workspace-tester-mode #result-tabs {
  position:sticky;top:0;z-index:4;gap:2px;margin:0 -18px;padding:5px 18px;
  border:0;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.065);border-radius:0;
  background:rgba(8,8,11,.92);backdrop-filter:blur(18px) saturate(120%);box-shadow:0 10px 28px rgba(0,0,0,.20);
}
body.workspace-tester-mode #result-tabs .tab-btn {padding:8px 14px;border-radius:7px;font-size:10.5px;text-transform:none;letter-spacing:0;}
body.workspace-tester-mode #result-tabs .tab-btn.active {
  background:linear-gradient(135deg,rgba(92,73,215,.24),rgba(41,180,189,.13));
  box-shadow:inset 0 0 0 1px rgba(132,115,239,.20),0 5px 14px rgba(0,0,0,.18);
}
body.workspace-tester-mode #python-performance-view:not([hidden]) {display:flex;flex-direction:column;}
body.workspace-tester-mode #python-performance-view #perf-note {order:0;}
.performance-equity-heading {
  display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 8px;
}
.performance-equity-heading>div {display:grid;gap:2px;}
.performance-equity-heading span,.performance-equity-hero figcaption span {
  color:#66e3d1;font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;
}
.performance-equity-heading h3 {
  margin:0!important;color:#f4f5f8!important;font-size:18px!important;font-weight:790!important;
  letter-spacing:-.025em!important;text-transform:none!important;
}
.performance-equity-heading p {margin:0;color:#828795;font-size:10.5px;line-height:1.4;text-align:right;}
.performance-series-key {display:inline-flex;align-items:center;gap:5px;margin-right:11px;color:#aeb2bd;font-weight:700;}
.performance-series-key::before {content:"";width:14px;height:2px;border-radius:999px;background:currentColor;box-shadow:0 0 8px currentColor;}
.performance-series-key.equity {color:#49dac4;}
.performance-series-key.drawdown {color:#f09a6b;}
.direction-breakdown-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.direction-breakdown-card {min-width:0;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:linear-gradient(150deg,rgba(16,18,23,.9),rgba(7,8,11,.96));box-shadow:inset 0 1px rgba(255,255,255,.025);}
.direction-breakdown-card.long {border-color:rgba(73,218,196,.17);}
.direction-breakdown-card.short {border-color:rgba(255,105,128,.15);}
.direction-breakdown-card header {display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:11px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06);}
.direction-breakdown-card header div {display:grid;grid-template-columns:auto auto;align-items:end;column-gap:7px;}
.direction-breakdown-card header span {grid-column:1/-1;color:#9ba1af;font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.direction-breakdown-card header strong {color:#f3f4f7;font-size:24px;line-height:1;letter-spacing:-.03em;}
.direction-breakdown-card header small {color:#747a88;font-size:10px;}
.direction-breakdown-card dl {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin:0;}
.direction-breakdown-card dt {overflow:hidden;color:#858b99;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap;}
.direction-breakdown-card dd {margin:0;color:#dfe2e8;font-size:11px;font-weight:720;font-variant-numeric:tabular-nums;text-align:right;}
.direction-breakdown-card dd.value-positive {color:#55dfb8;}
.direction-breakdown-card dd.value-negative {color:#ff8193;}
.direction-breakdown-empty {margin:15px 0;color:#737986;font-size:11px;line-height:1.5;}
#observed-trade-streaks,#trade-entry-time-patterns .perf-stat-row {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 16px;}
#observed-trade-streaks>.perf-stat,#trade-entry-time-patterns .perf-stat {min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.018);}
#observed-trade-streaks>.perf-stat-sub {grid-column:1/-1;margin-top:-3px;color:#737986;font-size:10px;line-height:1.45;}
#trade-entry-time-patterns>h3 {margin-top:16px;}
#trade-entry-time-patterns>.results-note {margin:0 0 18px;color:#737986;font-size:10px;}
@media(max-width:760px) {.direction-breakdown-grid{grid-template-columns:1fr}.direction-breakdown-card{padding:12px}}
@media(max-width:900px) {#observed-trade-streaks,#trade-entry-time-patterns .perf-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px) {#observed-trade-streaks,#trade-entry-time-patterns .perf-stat-row{grid-template-columns:1fr}}
body.workspace-tester-mode #python-performance-view .performance-equity-heading {order:1;}
body.workspace-tester-mode #python-performance-view .performance-hero {
  order:1;margin:18px 0 0;padding:18px 18px 10px;border:1px solid rgba(93,228,208,.18);border-radius:14px;
  background:
    radial-gradient(circle at 15% -35%,rgba(60,224,199,.14),transparent 42%),
    linear-gradient(180deg,rgba(17,24,27,.92),rgba(7,8,11,.96));
  box-shadow:0 18px 42px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035);
}
body.workspace-tester-mode #python-performance-view #equity-curve-chart {
  min-height:300px;height:clamp(300px,40dvh,410px);padding:8px 2px 0;
  border:0;border-radius:0;background:transparent;
}
body.workspace-tester-mode #python-performance-view #perf-stat-row {order:3;}
body.workspace-tester-mode #python-performance-view #perf-bars-row {order:4;}
body.workspace-tester-mode #python-performance-view>:is(#periodic-performance,#python-benchmark-comparison,#python-margin-exposure,#python-growth-decline) {order:5;}
.results-overview-followup {margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.06);}
.results-overview-followup #results-run-details {margin-bottom:8px;}
.results-overview-followup #results-next-step {margin-bottom:0;}
.perf-secondary-stats {
  flex:1 0 100%;margin-top:-2px;border:1px solid rgba(255,255,255,.075);border-radius:10px;
  background:linear-gradient(145deg,rgba(17,17,21,.78),rgba(8,8,11,.82));overflow:hidden;
}
.perf-secondary-stats>summary {
  min-height:34px;padding:8px 11px;color:#aeb1bd;font-size:10.5px;font-weight:700;
  letter-spacing:.015em;cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;
}
.perf-secondary-stats>summary::-webkit-details-marker {display:none;}
.perf-secondary-stats>summary::before {content:"+";color:#78dced;font-size:14px;font-weight:500;line-height:1;}
.perf-secondary-stats[open]>summary::before {content:"−";}
.perf-secondary-stats>summary:hover,.perf-secondary-stats>summary:focus-visible {color:#f0f1f5;background:rgba(255,255,255,.025);}
.perf-secondary-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:12px;border-top:1px solid rgba(255,255,255,.06);}
.perf-secondary-stats>p {margin:0;padding:0 12px 12px;color:#777b87;font-size:10px;line-height:1.45;}
body.workspace-tester-mode #perf-stat-row {display:grid;grid-template-columns:repeat(5,minmax(104px,1fr));gap:8px;margin:9px 0 12px;}
body.workspace-tester-mode #perf-stat-row>.perf-stat {min-width:0;padding:12px 13px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.022);}
body.workspace-tester-mode #perf-stat-row>.perf-stat:first-child {border-color:rgba(93,228,208,.19);background:rgba(55,210,185,.055);}
body.workspace-tester-mode #perf-stat-row .perf-stat-label {font-size:9px;letter-spacing:.08em;}
body.workspace-tester-mode #perf-stat-row .perf-stat-value {font-size:18px;letter-spacing:-.02em;}
body.workspace-tester-mode #perf-bars-row {gap:10px;margin-top:2px;}
body.workspace-tester-mode #perf-bars-row>.perf-bar-card {padding:13px;border-color:rgba(255,255,255,.055);background:rgba(255,255,255,.014);}
@media(max-width:760px) {
  body.workspace-tester-mode #results-header {grid-template-columns:1fr;gap:10px;}
  body.workspace-tester-mode #results-header-actions {justify-content:flex-start;}
  body.workspace-tester-mode #results-header-actions > #results-net {text-align:left;}
  body.workspace-tester-mode #results-panel:not([hidden]) {padding-inline:12px;}
  body.workspace-tester-mode #result-tabs {margin-inline:-12px;padding-inline:12px;}
}
body.workspace-tester-mode #perf-stat-row>.perf-secondary-stats {grid-column:1/-1;margin-top:0;}
@media(max-width:900px) {body.workspace-tester-mode #perf-stat-row {grid-template-columns:repeat(3,minmax(92px,1fr));}}
@media(max-width:620px) {body.workspace-tester-mode #perf-stat-row {grid-template-columns:repeat(2,minmax(92px,1fr));}.perf-secondary-grid{grid-template-columns:1fr;}}
body.workspace-tester-mode #pine-performance-view .pine-observation-overview {display:flex;flex-direction:column;}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero {
  order:1;margin:8px 0 10px;padding:18px 18px 10px;border-color:rgba(93,228,208,.18);border-radius:14px;
  background:radial-gradient(circle at 15% -35%,rgba(60,224,199,.14),transparent 42%),linear-gradient(180deg,rgba(17,24,27,.92),rgba(7,8,11,.96));
  box-shadow:0 18px 42px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035);
}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero figcaption {
  display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 14px;margin:0 0 10px;
}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero figcaption span {grid-column:1;}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero figcaption strong {
  grid-column:1;color:#f4f5f8;font-size:18px;line-height:1.15;letter-spacing:-.025em;
}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero figcaption small {
  grid-column:2;grid-row:1 / 3;align-self:end;color:#828795;font-size:10px;font-weight:500;
}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero svg {height:clamp(300px,40dvh,410px);}
.performance-deep-dive {margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);}
.performance-deep-dive>.results-section-heading {margin-bottom:12px;}
body.workspace-tester-mode #pine-performance-view .pine-observation-overview>h4 {margin:10px 0 7px;}
@media(max-width:620px) {
  body.workspace-tester-mode #results-header {grid-template-columns:1fr;gap:8px;}
  body.workspace-tester-mode #results-header-actions {justify-content:flex-start;}
  body.workspace-tester-mode #results-header-actions > #results-net {text-align:left;}
  .performance-equity-heading {align-items:start;flex-direction:column;gap:4px;}
  .performance-equity-heading p {text-align:left;}
  body.workspace-tester-mode #python-performance-view #equity-curve-chart,
  body.workspace-tester-mode #pine-performance-view .performance-equity-hero svg {min-height:210px;height:210px;}
}

/* Strategy report v2: one quiet decision surface. The equity path owns the
   overview; the handful of metrics needed to read it sit in a compact rail.
   Detailed diagnostics remain available in Risk and the disclosure below. */
body.workspace-tester-mode #results-panel:not([hidden]) {
  padding:0 22px 48px;
  background:
    radial-gradient(circle at 78% -12%,rgba(118,72,225,.10),transparent 31%),
    linear-gradient(180deg,rgba(9,9,12,.985),rgba(5,6,8,.99));
}
body.workspace-tester-mode #results-header {
  grid-template-columns:minmax(260px,1fr) auto;
  gap:18px;padding:18px 2px 14px;
}
body.workspace-tester-mode #results-header .rh-left {align-self:center;}
.results-header-status {display:flex;align-items:center;gap:7px;min-height:22px;margin-top:3px;flex-wrap:wrap;}
.results-header-status:empty {display:none;}
.results-header-status .result-attachment-state,
.results-header-status .result-lineage-state {margin:0;}
body.workspace-tester-mode #results-header-actions {
  grid-column:2;grid-row:1;width:auto;
  display:grid;grid-template-columns:auto auto auto;align-items:center;justify-content:end;
}
body.workspace-tester-mode #results-header-actions>#results-net {
  grid-column:1/-1;justify-self:end;min-width:0;margin:0 0 2px;
  font-size:24px;line-height:1.05;
}
body.workspace-tester-mode #results-header-actions>.results-reliability {grid-column:1;grid-row:2;margin:0;}
.results-reliability-note {
  grid-column:1/-1;grid-row:3;justify-self:end;max-width:520px;
  color:#9aa2b2;font-size:9.5px;font-weight:620;line-height:1.35;text-align:right;
}
body.workspace-tester-mode #results-header-actions>#results-optimize-ai,
body.workspace-tester-mode #results-header-actions>#results-create-alert,
body.workspace-tester-mode #results-header-actions>#results-attach-exact {min-height:30px;padding-inline:11px;}
body.workspace-tester-mode #results-header-actions>#results-rerun {
  grid-column:2;grid-row:2;min-height:30px;padding-inline:12px;
  border-color:#4d93cf;background:#173e5e;color:#eef8ff;
}
body.workspace-tester-mode #results-header-actions>#results-optimize-ai {grid-column:3;grid-row:2;}
body.workspace-tester-mode #results-header-actions>#results-create-alert,
body.workspace-tester-mode #results-header-actions>#results-attach-exact {grid-column:4;grid-row:2;}
body.workspace-tester-mode #results-header-actions>#results-more-actions {grid-column:5;grid-row:2;}
body.workspace-tester-mode #result-tabs {
  justify-content:flex-start;margin-inline:-22px;padding:6px 22px;
}
body.workspace-tester-mode #result-tabs .tab-btn {
  min-width:82px;padding:8px 16px;color:#858a98;font-weight:680;
  background:transparent;box-shadow:none;transition:none;
}
body.workspace-tester-mode #result-tabs .tab-btn.active,
body.workspace-tester-mode #result-tabs .tab-btn[aria-selected="true"] {
  color:#f5f6f8;background:rgba(255,255,255,.055);
  box-shadow:inset 0 -2px #64dfd0,inset 0 0 0 1px rgba(255,255,255,.055);
}
body.workspace-tester-mode #python-performance-view .performance-hero {
  margin-top:16px;padding:18px;border-color:rgba(100,226,209,.16);
  background:
    radial-gradient(circle at 15% 0,rgba(42,226,196,.10),transparent 38%),
    linear-gradient(160deg,rgba(14,19,21,.96),rgba(7,8,11,.985));
}
.performance-hero-body {
  position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,3.4fr) minmax(190px,.8fr);
  gap:14px;align-items:stretch;
}
body.workspace-tester-mode #python-performance-view #equity-curve-chart {
  min-height:340px;height:clamp(340px,44dvh,470px);padding:8px 8px 0 0;
}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row {
  order:initial;display:flex;flex-direction:column;gap:7px;margin:6px 0 4px;
}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row>.perf-stat {
  flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0;padding:10px 12px;
  border-color:rgba(255,255,255,.065);background:rgba(4,7,9,.46);
}
body.workspace-tester-mode .performance-hero-body>#perf-stat-row>.perf-stat:first-child {
  border-color:rgba(78,222,198,.22);background:rgba(45,207,181,.07);
}
body.workspace-tester-mode .performance-hero-body>#perf-stat-row .perf-stat-value {font-size:17px;}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row>.perf-secondary-stats {
  flex:0 0 auto;order:10;margin:0;background:rgba(4,7,9,.38);
}
body.workspace-tester-mode .performance-hero-body .perf-secondary-grid {
  grid-template-columns:1fr;max-height:280px;overflow:auto;
}
body.workspace-tester-mode #perf-bars-row {margin-top:12px;}
body.workspace-tester-mode #backtest-job-history {
  margin:10px 0 0;border-color:rgba(255,255,255,.055);background:rgba(255,255,255,.012);
}
body.workspace-tester-mode #backtest-job-history>summary {color:#858a97;font-size:10px;}

/* Pine receives the same visual hierarchy: equity first, headline metrics
   immediately beneath it, provenance and assumptions behind disclosure. */
body.workspace-tester-mode #pine-performance-view>h3,
body.workspace-tester-mode #pine-performance-view>.results-note,
body.workspace-tester-mode #pine-performance-view>.pine-results-actions {max-width:1180px;margin-inline:auto;}
body.workspace-tester-mode #pine-performance-view .pine-observation-overview {
  max-width:1180px;margin-inline:auto;
}
body.workspace-tester-mode #pine-performance-view .performance-equity-hero {
  margin-top:14px;padding:18px;background:
    radial-gradient(circle at 15% 0,rgba(42,226,196,.10),transparent 38%),
    linear-gradient(160deg,rgba(14,19,21,.96),rgba(7,8,11,.985));
}
body.workspace-tester-mode #pine-performance-view .pine-headline-metrics {
  display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px;margin:9px 0 4px;
}
body.workspace-tester-mode #pine-performance-view .pine-headline-metrics>div {
  min-height:70px;padding:11px 12px;border:1px solid rgba(255,255,255,.065);border-radius:10px;
  background:rgba(255,255,255,.02);
}
body.workspace-tester-mode #pine-performance-view .pine-headline-metrics small {
  color:#71808d;font-size:10px;line-height:1.25;
}

@media(max-width:980px) {
  body.workspace-tester-mode #results-header {grid-template-columns:1fr;gap:10px;}
  body.workspace-tester-mode #results-header-actions {grid-column:1;grid-row:2;justify-content:start;}
  body.workspace-tester-mode #results-header-actions>#results-net {justify-self:start;text-align:left;}
  .results-reliability-note {justify-self:start;text-align:left;}
  .performance-hero-body {grid-template-columns:1fr;}
  body.workspace-tester-mode .performance-hero-body>#perf-stat-row {
    display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));
  }
  body.workspace-tester-mode .performance-hero-body>#perf-stat-row>.perf-secondary-stats {grid-column:1/-1;}
  body.workspace-tester-mode #pine-performance-view .pine-headline-metrics {grid-template-columns:repeat(3,minmax(100px,1fr));}
}
@media(max-width:620px) {
  body.workspace-tester-mode #results-panel:not([hidden]) {padding-inline:12px;}
  body.workspace-tester-mode #result-tabs {margin-inline:-12px;padding-inline:12px;}
  body.workspace-tester-mode #results-header-actions {justify-content:start;}
  body.workspace-tester-mode #results-header-actions>#results-net {justify-self:start;}
  body.workspace-tester-mode .performance-hero-body>#perf-stat-row,
  body.workspace-tester-mode #pine-performance-view .pine-headline-metrics {grid-template-columns:repeat(2,minmax(92px,1fr));}
  body.workspace-tester-mode #python-performance-view #equity-curve-chart {min-height:250px;height:250px;}
}
@media(max-width:520px) {
  body.workspace-tester-mode #results-run-contract {
    flex-wrap:wrap;overflow:visible;
  }
  body.workspace-tester-mode #result-tabs {
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:visible;
  }
  body.workspace-tester-mode #result-tabs .tab-btn {
    width:100%;min-width:0;padding:8px 3px;text-align:center;
  }
}

/* Validation answers the user-facing decision first. Statistical machinery is
   still present, but disclosed only when the user asks how the score was made. */
.validation-overview {position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(16,16,20,.96),rgba(8,8,11,.98));}
.validation-overview::after {content:"";position:absolute;inset:auto -45px -70px auto;width:180px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(117,83,238,.15),transparent 68%);pointer-events:none;}
.validation-action-badge {position:relative;z-index:1;flex:0 0 auto;padding:7px 10px;border:1px solid rgba(255,255,255,.10);border-radius:999px;background:rgba(255,255,255,.035);color:#d9dbe3;font-size:10px;font-weight:760;letter-spacing:.02em;white-space:nowrap;}
.validation-overview[data-tone="strong"] .validation-action-badge {border-color:rgba(50,213,168,.28);background:rgba(30,190,146,.09);color:#73e3c0;}
.validation-overview[data-tone="moderate"] .validation-action-badge {border-color:rgba(241,197,120,.28);background:rgba(221,165,68,.09);color:#f4ce89;}
.validation-overview[data-tone="weak"] .validation-action-badge {border-color:rgba(241,103,118,.30);background:rgba(225,72,91,.09);color:#ff9aa5;}
.validation-score-details {margin:10px 0 18px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:rgba(8,8,11,.72);overflow:hidden;}
.validation-score-details>summary {display:flex;align-items:center;gap:7px;min-height:36px;padding:8px 11px;color:#aeb1bd;font-size:10.5px;font-weight:700;cursor:pointer;list-style:none;}
.validation-score-details>summary::-webkit-details-marker {display:none;}
.validation-score-details>summary::before {content:"+";color:#78dced;font-size:14px;font-weight:500;line-height:1;}
.validation-score-details[open]>summary::before {content:"−";}
.validation-score-details>summary:hover,.validation-score-details>summary:focus-visible {color:#f0f1f5;background:rgba(255,255,255,.025);}
.validation-score-grid {display:grid;grid-template-columns:minmax(140px,.65fr) minmax(260px,1.35fr);gap:12px;padding:12px;border-top:1px solid rgba(255,255,255,.06);}
.validation-score-details .validation-dsr {text-align:left;padding:10px 12px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(255,255,255,.018);}
.validation-score-details .validation-dsr dd {font-size:22px;}
.validation-score-details .validation-pool {margin:0;}

/* Strategy report v3: keep Overview focused on the result users came to read.
   The equity path gets the full report width, decision metrics form one compact
   strip, and time-pattern diagnostics live with the rest of Risk. */
body.workspace-tester-mode .performance-hero-body {
  display:flex;flex-direction:column;gap:10px;
}
body.workspace-tester-mode #python-performance-view #equity-curve-chart {
  order:1;width:100%;min-height:330px;height:clamp(330px,42dvh,460px);padding:8px 2px 0;
}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row {
  order:2;display:grid;grid-template-columns:repeat(5,minmax(104px,1fr));
  gap:8px;margin:2px 0 4px;
}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row>.perf-stat {
  min-height:64px;padding:10px 12px;
}
body.workspace-tester-mode #python-performance-view .performance-hero-body>#perf-stat-row>.perf-secondary-stats {
  grid-column:1/-1;margin:0;background:rgba(4,7,9,.38);
}
body.workspace-tester-mode .performance-hero-body .perf-secondary-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;
}
.performance-return-patterns {
  margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);
}
.performance-return-patterns>.results-section-heading {margin-bottom:12px;}
body.workspace-tester-mode .performance-return-patterns #perf-bars-row {margin:0;}
/* The trade-marker legend belongs to the price chart. Once Strategy Tester
   takes the workspace, it only repeats chart controls above the report and
   competes with the result summary. "Show more chart" restores it with the
   rest of the chart surface. */
body.pine-results-focus.workspace-tester-mode #chart-legend {display:none;}
@media(max-width:900px) {
  body.workspace-tester-mode .performance-hero-body>#perf-stat-row {grid-template-columns:repeat(3,minmax(92px,1fr));}
}

.community-status-row {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;}
.community-status-row #community-status {min-width:0;color:#8e95a5;font-size:11px;line-height:1.45;}
.community-status-row #community-retry {flex:0 0 auto;min-height:30px;padding:6px 11px;}
@media(max-width:620px) {
  body.workspace-tester-mode #python-performance-view #equity-curve-chart {min-height:280px;height:280px;}
  body.workspace-tester-mode .performance-hero-body>#perf-stat-row {grid-template-columns:repeat(2,minmax(92px,1fr));}
  body.workspace-tester-mode .performance-hero-body .perf-secondary-grid {grid-template-columns:1fr;}
}
.validation-score-details>.results-note {margin:0;padding:0 12px 12px;}
.validation-next-actions {display:flex;align-items:center;gap:8px;margin:12px 0;padding:11px 12px;border:1px solid rgba(241,197,120,.18);border-radius:11px;background:linear-gradient(135deg,rgba(62,45,18,.26),rgba(13,13,17,.76));}
.validation-next-actions>div {display:grid;gap:2px;min-width:180px;margin-right:auto;}
.validation-next-actions small {color:#b8a47d;font-size:8px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;}
.validation-next-actions strong {color:#ece7db;font-size:11px;}
.validation-next-actions button {width:auto;min-height:30px;margin:0;padding:6px 11px;font-size:10px;white-space:nowrap;}
@media(max-width:760px){.validation-next-actions{align-items:stretch;flex-direction:column}.validation-next-actions>div{min-width:0;margin:0 0 3px}.validation-next-actions button{width:100%}}
.validation-advanced {margin:14px 0 20px;border:1px solid rgba(255,255,255,.075);border-radius:12px;background:linear-gradient(145deg,rgba(15,16,20,.76),rgba(7,8,11,.9));overflow:hidden;}
.validation-advanced>summary {display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;padding:11px 14px;cursor:pointer;list-style:none;}
.validation-advanced>summary::-webkit-details-marker {display:none;}
.validation-advanced>summary span {display:grid;gap:3px;min-width:0;}
.validation-advanced>summary strong {color:#dfe2e8;font-size:11px;font-weight:760;}
.validation-advanced>summary small {color:#767c89;font-size:10px;line-height:1.35;}
.validation-advanced>summary em {flex:0 0 auto;color:#71dccc;font-size:10px;font-style:normal;font-weight:720;}
.validation-advanced>summary em::before {content:"+ ";}
.validation-advanced[open]>summary em::before {content:"− ";}
.validation-advanced[open]>summary em {font-size:0;}
.validation-advanced[open]>summary em::after {content:"Hide details";font-size:10px;}
.validation-advanced>summary:hover,.validation-advanced>summary:focus-visible {background:rgba(255,255,255,.025);outline:none;}
.validation-advanced-body {padding:2px 14px 16px;border-top:1px solid rgba(255,255,255,.06);}
.validation-advanced-body>#confidence-panel-wrap {margin-top:18px;}
@media(max-width:620px) {.validation-action-badge{align-self:flex-start}.validation-score-grid{grid-template-columns:1fr}.validation-score-details .validation-pool{grid-template-columns:1fr;}}

/* Code and indicator discovery uses the same neutral-black glass as the
   workspace. Accent color marks focus and selection instead of filling every
   card with navy. */
#indicators-popover {
  border-color:rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(14,14,17,.985),rgba(6,6,8,.99));
  box-shadow:0 28px 80px rgba(0,0,0,.68),0 0 28px rgba(105,82,235,.07);
  backdrop-filter:blur(22px) saturate(115%);
}
#chart-picker-sticky {background:linear-gradient(180deg,rgba(14,14,17,.99) 82%,rgba(14,14,17,0));}
#chart-picker-intro {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;}
#chart-picker-intro .chart-picker-subtitle {flex:1 1 auto;min-width:0;margin:0;}
#chart-picker-create-ai {
  flex:0 0 auto;width:auto!important;max-width:none;margin:0;padding:7px 11px;border:1px solid rgba(121,105,239,.42);border-radius:7px;
  background:linear-gradient(135deg,rgba(47,193,220,.13),rgba(115,87,230,.18));color:#f0edff;
  font-size:11px;font-weight:700;white-space:nowrap;box-shadow:0 0 18px rgba(105,82,235,.08);cursor:pointer;
}
#chart-picker-create-ai:hover,#chart-picker-create-ai:focus-visible {border-color:rgba(105,210,244,.68);background:linear-gradient(135deg,rgba(47,193,220,.21),rgba(115,87,230,.25));}
#pine-picker-quick-actions button {
  border-color:rgba(133,111,245,.38);background:rgba(23,22,29,.90);color:#eeeafc;
  box-shadow:inset 0 1px rgba(255,255,255,.035);
}
#pine-picker-quick-actions button:hover,#pine-picker-quick-actions button:focus-visible {
  border-color:rgba(105,210,244,.60);background:linear-gradient(135deg,rgba(48,197,222,.12),rgba(116,91,235,.14));
}
#chart-picker-views {
  grid-template-columns:repeat(6,minmax(0,1fr));border-color:rgba(255,255,255,.09);background:rgba(5,5,7,.72);
}
#chart-picker-views button {color:#8f929e;font-size:10px;}
#chart-picker-views button[aria-pressed=true] {
  background:linear-gradient(135deg,rgba(47,193,220,.13),rgba(115,87,230,.16));color:#f3f2fa;
  box-shadow:inset 0 0 0 1px rgba(122,108,239,.20),0 0 16px rgba(100,82,230,.07);
}
#chart-picker-views button:hover:not([aria-pressed=true]) {background:rgba(255,255,255,.045);color:#dedfe5;}
.chart-picker-card {
  border-color:rgba(255,255,255,.085);background:linear-gradient(145deg,rgba(22,22,26,.94),rgba(13,13,16,.94));
  color:#e8e8ed;box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.chart-picker-card span {color:#9296a3;}
.chart-picker-card:hover {
  border-color:rgba(115,139,241,.42);background:linear-gradient(145deg,rgba(30,30,36,.97),rgba(20,18,27,.97));
  box-shadow:0 10px 24px rgba(0,0,0,.24),0 0 18px rgba(103,83,230,.07);
}
@media(max-width:760px) {#chart-picker-views {grid-template-columns:repeat(3,minmax(0,1fr));}}

/* Trading work is easier when discovery behaves like a searchable catalog,
   rather than a dashboard made of competing cards. Keep one focused browser,
   use compact rows, and reserve descriptions for the secondary text line. */
#indicators-popover {
  width:min(860px,calc(100vw - 28px));max-height:min(780px,calc(100dvh - 84px));padding:16px 18px 20px;
}
#chart-picker-sticky {top:-16px;margin:-16px -18px 12px;padding:16px 18px 0;}
#chart-picker-header {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
#chart-picker-title {color:#f0f0f4;font-size:17px;font-weight:750;letter-spacing:-.015em;}
#chart-picker-close {
  flex:0 0 auto;width:30px!important;height:30px;margin:0!important;padding:0!important;border:0!important;border-radius:7px!important;
  background:transparent!important;color:#9296a3!important;font-size:22px!important;font-weight:400!important;line-height:1!important;cursor:pointer;
}
#chart-picker-close:hover,#chart-picker-close:focus-visible {background:rgba(255,255,255,.07)!important;color:#fff!important;outline:none;}
#chart-picker-intro {margin-bottom:12px;}
#chart-picker-intro .chart-picker-subtitle {font-size:11px;line-height:1.4;}
#chart-picker-views {width:max-content;max-width:100%;grid-template-columns:repeat(6,auto);gap:2px;margin-bottom:10px;padding:2px;overflow-x:auto;}
#chart-picker-views button {padding:7px 12px;font-size:11px;}
#indicator-search {min-height:42px;border-radius:8px;font-size:13px;}
.chart-picker-grid {grid-template-columns:1fr!important;gap:0;margin-bottom:18px;border:1px solid rgba(255,255,255,.075);border-radius:9px;overflow:hidden;}
.chart-picker-card {
  display:grid;grid-template-columns:minmax(180px,.7fr) minmax(240px,1.3fr);align-items:center;gap:14px;min-height:48px;padding:9px 12px;
  border:0;border-bottom:1px solid rgba(255,255,255,.065);border-radius:0;background:rgba(13,13,16,.76);box-shadow:none;
}
.chart-picker-card:last-child {border-bottom:0;}
.chart-picker-card strong {font-size:11.5px;line-height:1.3;}
.chart-picker-card span {font-size:10.5px;line-height:1.35;}
.chart-picker-card:hover {transform:none;border-color:rgba(255,255,255,.065);background:rgba(42,39,54,.82);box-shadow:inset 2px 0 #6e7cf2;}
.pine-picker-item>.chart-picker-card {padding-right:38px;}
@media(max-width:620px) {
  #indicators-popover {padding:14px;}
  #chart-picker-sticky {top:-14px;margin:-14px -14px 10px;padding:14px 14px 0;}
  .chart-picker-card {grid-template-columns:1fr;gap:3px;min-height:52px;}
}

/* Search-first indicator discovery: results remain dense and scannable while
   one stable inspector explains the focused item and owns the primary action. */
#indicators-popover {width:min(1120px,calc(100vw - 36px));}
#chart-picker-browser {
  display:grid;grid-template-columns:minmax(0,1fr) 274px;align-items:start;gap:16px;
}
#chart-picker-results {min-width:0;}
#chart-picker-detail {
  position:sticky;top:188px;display:flex;flex-direction:column;gap:10px;min-height:330px;padding:13px;
  border:1px solid rgba(128,197,255,.16);border-radius:12px;
  background:linear-gradient(155deg,rgba(18,21,28,.98),rgba(7,8,11,.99));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 16px 40px rgba(0,0,0,.24);
}
#chart-picker-detail-preview {
  position:relative;height:116px;overflow:hidden;border:1px solid rgba(128,197,255,.14);border-radius:9px;
  background:
    linear-gradient(rgba(128,197,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(128,197,255,.055) 1px,transparent 1px),
    linear-gradient(155deg,#111820,#080a0e);
  background-size:100% 23px,36px 100%,100% 100%;
}
#chart-picker-detail-preview::after {
  content:"";position:absolute;left:-5%;right:-5%;top:54%;height:2px;transform:rotate(-8deg);
  background:linear-gradient(90deg,transparent,#80c5ff 18%,#397ed8 68%,transparent);
  box-shadow:0 0 14px rgba(128,197,255,.38);
}
#chart-picker-detail-preview i {position:absolute;bottom:18px;width:5px;border-radius:2px;background:#397ed8;opacity:.72;}
#chart-picker-detail-preview i:nth-child(1){left:24%;height:34px}#chart-picker-detail-preview i:nth-child(2){left:52%;height:57px}#chart-picker-detail-preview i:nth-child(3){left:76%;height:43px}
#chart-picker-detail-type {color:#80c5ff;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
#chart-picker-detail h3 {margin:0;color:#f4f7fc;font-size:15px;letter-spacing:-.01em;text-transform:none;}
#chart-picker-detail p {min-height:54px;margin:0;color:#929aa9;font-size:11px;line-height:1.5;}
#chart-picker-detail button {width:100%;min-height:35px;margin:0;border-radius:8px;}
#chart-picker-detail-add {border-color:rgba(128,197,255,.45);background:var(--gradient-action);color:#fff;font-weight:780;}
#chart-picker-detail-ask {border-color:rgba(128,197,255,.16);background:rgba(128,197,255,.055);color:#bedfff;}
#chart-picker-detail small {margin-top:auto;color:#687181;font-size:9px;text-align:center;}
#chart-picker-results :is(.chart-picker-card,#indicator-list label,.active-indicator-row).picker-inspected {
  background:linear-gradient(90deg,rgba(57,126,216,.13),rgba(15,17,22,.86));box-shadow:inset 2px 0 #80c5ff;
}
@media(max-width:900px) {
  #indicators-popover {width:min(820px,calc(100vw - 24px));}
  #chart-picker-browser {grid-template-columns:1fr;}
  #chart-picker-detail {display:none;}
}

/* Strategy properties should scan like a trading terminal form. Explanations
   remain attached to their controls and appear while the user edits them;
   they no longer turn the default panel into a wall of documentation. */
#py-properties-section > .se-help,
#py-properties-section .python-property-overview > p,
#py-properties-section .se-field > .se-help,
#py-properties-section .py-risk-grid > .se-help {display:none;}
#py-properties-section .se-field:focus-within > .se-help,
#py-properties-section .py-risk-grid:focus-within > .se-help {
  display:block;grid-column:1/-1;margin:3px 0 0;padding:7px 9px;border-left:2px solid rgba(111,139,241,.48);
  border-radius:0 6px 6px 0;background:rgba(255,255,255,.025);color:#9297a3;font-size:10px;line-height:1.45;
}
#py-properties-section .python-property-heading {margin:15px 0 7px;}
#py-properties-section .se-field {margin-bottom:7px;}

/* Alert manager moved inside the compact action group. Keep it as a chart-side
   workspace so reviewing deployments never hides the price action. */
body:has(#alert-manager[open])::before {
  background:rgba(0,0,0,.26);backdrop-filter:blur(1px);
}

/* Chart-first workspace. Fresh workspaces open with the canvas dominant; the
   Copilot, code editor, alerts and tester retain their state and remain one
   click away. Permanent chrome stays quieter and shorter than the work it
   controls. */
:is(body.workspace-chart-mode,body:not([class])) #topbar {
  min-height:46px;height:46px;padding-block:0;
}
:is(body.workspace-chart-mode,body:not([class])) #workspace-mode-tabs,
:is(body.workspace-chart-mode,body:not([class])) #workspace-mode-tabs button {min-height:46px;height:46px;}
:is(body.workspace-chart-mode,body:not([class])) #brand-logo {width:96px;height:25px;}
:is(body.workspace-chart-mode,body:not([class])) #brand-logo-mark {width:25px;height:25px;flex-basis:25px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-toolbar {
  min-height:44px;height:44px;padding:5px 10px;gap:4px;flex-wrap:nowrap;
}
:is(body.workspace-chart-mode,body:not([class])) #chart-context-bar {min-height:32px;height:32px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-readout {height:32px;min-height:32px;grid-template-rows:28px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-live-controls {min-height:32px;height:32px;padding-block:2px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-legend {min-height:28px;padding-block:4px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-container {
  height:var(--chart-stage-height,min(900px,max(420px,calc(100dvh - 172px))))!important;
}
:is(body.workspace-chart-mode,body:not([class])) #chart-shell {min-height:0;}
:is(body.workspace-chart-mode,body:not([class])) #chart-shell.multi-chart-layout #chart-layout-grid {
  min-height:0;max-height:calc(100dvh - 150px);
}
:is(body.workspace-chart-mode,body:not([class])) #chart-data-note>details>summary {
  max-width:min(220px,24vw);font-size:9px;
}
:is(body.workspace-chart-mode,body:not([class])) #chart-quick-actions .toolbar-btn {min-height:30px;}
:is(body.workspace-chart-mode,body:not([class])) #chart-toolbar :is(#strategies-btn,#sizing-btn) {display:none;}
:is(body.workspace-chart-mode,body:not([class])) #timeframe-note:empty,
:is(body.workspace-chart-mode,body:not([class])) #session-choice[hidden] {display:none;}
@media(max-width:850px) {
  :is(body.workspace-chart-mode,body:not([class])) #topbar {height:auto;min-height:78px;}
  :is(body.workspace-chart-mode,body:not([class])) #workspace-mode-tabs,
  :is(body.workspace-chart-mode,body:not([class])) #workspace-mode-tabs button {height:32px;min-height:32px;}
  :is(body.workspace-chart-mode,body:not([class])) #chart-toolbar {height:auto;min-height:44px;overflow-x:auto;scrollbar-width:none;}
  :is(body.workspace-chart-mode,body:not([class])) #chart-toolbar::-webkit-scrollbar {display:none;}
  :is(body.workspace-chart-mode,body:not([class])) #chart-container {height:var(--chart-stage-height,max(360px,calc(100dvh - 214px)))!important;}
}
#chart-live-actions > #alert-manager[open]:not([hidden]) {
  position:fixed;z-index:92;top:54px;right:0;bottom:0;left:auto;transform:none;
  display:block;box-sizing:border-box;width:min(480px,calc(100vw - 64px));max-width:none;height:auto!important;min-height:0;
  max-height:none;overflow:auto;padding:18px 20px;border:1px solid rgba(255,255,255,.13);border-right:0;
  border-radius:15px 0 0 0;background:linear-gradient(145deg,rgba(15,15,18,.985),rgba(7,7,9,.99));
  color:#e8e8ed;box-shadow:-24px 0 80px rgba(0,0,0,.70),0 0 34px rgba(105,82,235,.08);
  backdrop-filter:blur(24px) saturate(112%);
}
#chart-live-actions > #alert-manager[open] > summary {
  margin:0 0 14px;padding:0 0 12px;border-bottom:1px solid rgba(255,255,255,.08);
  color:#f3f3f6;font-size:17px;font-weight:760;list-style:none;
}
#chart-live-actions > #alert-manager[open] > summary::-webkit-details-marker {display:none;}
#chart-live-actions > #alert-manager[open] .alert-manager-actions > button {
  border-color:rgba(255,255,255,.10);background:rgba(23,23,27,.92);color:#dedee5;
}
#chart-live-actions > #alert-manager[open] .alert-manager-actions > button:not(:last-child):hover {
  border-color:rgba(111,149,242,.42);background:linear-gradient(135deg,rgba(47,193,220,.10),rgba(115,87,230,.13));
}
#chart-live-actions > #alert-manager[open] .alert-manager-filters :is(input,select) {
  border-color:rgba(255,255,255,.10);background:#0c0c0f;color:#e6e6eb;
}
#chart-live-actions > #alert-manager[open] .alert-manager-row {
  border-color:rgba(255,255,255,.085);background:linear-gradient(145deg,rgba(22,22,26,.94),rgba(12,12,15,.94));
}
#chart-live-actions > #alert-manager[open] .alert-manager-row p {color:#a5a7b0;}
#chart-live-actions > #alert-manager[open] .alert-manager-row button {
  border-color:rgba(255,255,255,.11);background:rgba(27,27,32,.94);color:#e5e5ea;
}
@media(max-width:700px) {
  #chart-live-actions > #alert-manager[open]:not([hidden]) {
    inset:8px 6px;width:auto;max-height:none;padding:15px;border-right:1px solid rgba(255,255,255,.13);border-radius:15px;
  }
  #chart-live-actions > #alert-manager[open] #alert-manager-list {
    max-height:none;overflow:visible;
  }
}

/* On phones Code is the selected workspace, not a small popover over the
   chart. Start it directly beneath primary navigation and remove duplicated
   discovery copy so the editable source appears in the first viewport. */
@media(max-width:520px) {
  body.workspace-editor-mode #workspace > #strategy-editor:not(.collapsed) {
    top:0;right:6px;bottom:6px;left:48px;z-index:40;width:auto;max-height:none;border-radius:12px;
  }
  body.workspace-editor-mode #strategy-editor #se-body {padding:10px 12px 18px;}
  body.workspace-editor-mode #strategy-editor #se-advanced-start,
  body.workspace-editor-mode #strategy-editor #se-family-note {display:none;}
  body.workspace-editor-mode #strategy-editor .strategy-studio-meta {
    flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
  }
  body.workspace-editor-mode #strategy-editor .strategy-studio-meta::-webkit-scrollbar {display:none;}
  body.workspace-editor-mode #strategy-editor .strategy-studio-badge {flex:0 0 auto;}
  #research-candidate-toggle {
    display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:45px;margin:14px 0 8px;padding:9px 12px;
    border:1px solid rgba(255,255,255,.10);border-radius:10px;background:rgba(255,255,255,.025);color:#ececf1;text-align:left;
  }
  #research-candidate-toggle span {font-size:12px;font-weight:750;}
  #research-candidate-toggle small {color:#818897;font-size:9.5px;font-weight:550;}
  #research-candidate-toggle::after {content:"⌄";color:#8f82ef;}
  #research-candidate-toggle[aria-expanded="true"]::after {content:"⌃";}
  #research-candidate-body:not(.is-open) {display:none;}
  #research-candidate-body.is-open #library-pine-entry {margin-top:8px;}
}

@media(max-width:1120px) {
  #chat-panel-title::after {display:none;}
  #chat-starter-grid,#chat-more-starters-grid {grid-template-columns:1fr;}
  .suggestion {min-height:52px;}
}
@media(max-width:850px) {
  #workspace > #chat-panel {order:4;}
  #chat-panel {border-left:0;}
}

/* Concept C Pine Studio. Pine authoring is a first-class workspace: neutral
   black glass, a compact identity strip, calm panels and one obvious action. */
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings {
  border-color:rgba(255,255,255,.12);
  background:linear-gradient(145deg,rgba(15,15,18,.99),rgba(6,6,8,.995));
  color:#e9e9ee;
  box-shadow:0 32px 100px rgba(0,0,0,.78),0 0 38px rgba(103,81,231,.08),inset 0 1px rgba(255,255,255,.035);
  backdrop-filter:blur(24px) saturate(112%);
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-settings-only {
  width:min(560px,92vw);
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog {
  background:linear-gradient(180deg,rgba(12,12,15,.99),rgba(6,6,8,.995));
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings>header {
  min-height:42px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.075);
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings>header h2 {
  color:#f5f5f8;font-size:15px;letter-spacing:-.015em;
}
.pine-chart-settings .formula-fields>p:first-of-type {max-width:760px;margin:10px 0 6px;color:#9095a2;line-height:1.5;}
.pine-editor-meta {
  display:flex;align-items:center;gap:6px;margin:1px 0 3px;padding:8px 10px;
  border:1px solid rgba(255,255,255,.075);border-radius:9px;
  background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(112,86,231,.025));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.pine-editor-meta span {display:inline-flex;align-items:center;min-height:21px;padding:2px 8px;border-radius:999px;font-size:9.5px;font-weight:750;letter-spacing:.025em;white-space:nowrap;}
.pine-editor-meta-language {border:1px solid rgba(91,207,230,.26);background:rgba(43,184,209,.08);color:#82dbe9;}
.pine-editor-meta-type {border:1px solid rgba(130,106,241,.30);background:rgba(111,87,229,.10);color:#c9c0ff;}
.pine-chart-settings[data-pine-mode="strategy"] .pine-editor-meta-type {border-color:rgba(204,91,193,.30);background:rgba(190,73,179,.09);color:#efb7e9;}
.pine-editor-meta-context {color:#a7abb5;background:rgba(255,255,255,.035);}
.pine-editor-meta-draft {margin-left:auto;color:#777e8d;background:transparent!important;}
.pine-chart-settings .pine-execution-status {
  display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin:7px 0;padding:5px 9px;
  border:1px solid rgba(255,255,255,.085);border-radius:999px;background:rgba(255,255,255,.025);color:#9ca2af;font-size:10px;
}
.pine-chart-settings .pine-execution-status[hidden] {display:none!important;}
.pine-chart-settings .pine-execution-status::before {content:"";flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#7a8190;}
.pine-chart-settings .pine-execution-status[data-ready="true"] {border-color:rgba(55,218,171,.22);background:rgba(34,171,133,.055);color:#a8ddce;}
.pine-chart-settings .pine-execution-status[data-ready="true"]::before {background:#45dfb2;box-shadow:0 0 11px rgba(69,223,178,.68);}
.pine-chart-settings .pine-execution-status[data-ready="false"] {border-color:rgba(238,157,76,.25);color:#e6bd91;}
.pine-chart-settings .pine-code-validation {margin:8px 0 2px;}
.pine-chart-settings .pine-code-validation[data-state="dirty"] {color:#858b98;}
.pine-chart-settings .pine-code-validation[data-state="checking"] {border-color:rgba(93,181,235,.24);color:#9fcce5;}
.pine-chart-settings .pine-code-validation[data-state="checking"]::before {background:#65c7e2;box-shadow:0 0 10px rgba(101,199,226,.52);}
.pine-chart-settings .pine-code-validation[data-state="success"] {border-color:rgba(55,218,171,.24);background:rgba(34,171,133,.055);color:#a9ddce;}
.pine-chart-settings .pine-code-validation[data-state="success"]::before {background:#45dfb2;box-shadow:0 0 11px rgba(69,223,178,.68);}
.pine-chart-settings .pine-code-validation[data-state="attention"] {border-color:rgba(238,157,76,.25);color:#e6bd91;}
.pine-chart-settings .pine-code-validation[data-state="attention"]::before {background:#eaa353;}
.pine-chart-settings .pine-code-validation[data-state="error"] {border-color:rgba(239,91,112,.27);background:rgba(207,62,82,.055);color:#edaab4;}
.pine-chart-settings .pine-code-validation[data-state="error"]::before {background:#ef657a;box-shadow:0 0 10px rgba(239,101,122,.48);}
.pine-chart-settings .pine-validate-code {border-color:rgba(93,193,226,.28)!important;color:#a9dce8!important;}
.pine-chart-settings .pine-validate-code::before {content:"✓";margin-right:5px;color:#70d7e7;font-weight:850;}
.pine-chart-settings details:not(.pine-footer-more) {border-color:rgba(255,255,255,.075);}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings :is(input,select,textarea) {
  border-color:rgba(255,255,255,.10);background:#09090c;color:#e7e7ec;
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings :is(input,select,textarea):focus {
  border-color:rgba(101,166,242,.54);box-shadow:0 0 0 2px rgba(86,118,231,.12),0 0 20px rgba(87,89,225,.06);outline:0;
}
.pine-chart-settings .pine-settings-tabs {
  gap:4px;margin:8px 0 0;padding:5px;border:1px solid rgba(255,255,255,.075);border-radius:10px;
  background:rgba(4,4,6,.78);backdrop-filter:blur(16px);
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-settings-tabs button {
  flex:1 1 auto;min-width:66px;min-height:31px;border:0;border-radius:7px;background:transparent;color:#7f8491;font-size:10px;font-weight:700;
}
.pine-chart-settings .pine-settings-tabs button:hover {background:rgba(255,255,255,.04);color:#d7d8df;}
.pine-chart-settings .pine-settings-tabs button[aria-selected="true"] {
  background:linear-gradient(135deg,rgba(47,193,220,.13),rgba(116,90,232,.17));color:#f3f2fa;
  box-shadow:inset 0 0 0 1px rgba(123,108,239,.20),0 0 18px rgba(99,82,229,.06);
}
.pine-chart-settings .pine-settings-panel {padding-top:12px;}
.pine-chart-settings .pine-code-surface,.pine-chart-settings .python-chart-code-editor {
  border-color:rgba(255,255,255,.09);border-radius:10px;background:#060609;
  box-shadow:inset 0 1px rgba(255,255,255,.025),inset 0 0 40px rgba(93,67,210,.025);
}
.pine-chart-settings .pine-editor-toolbar {padding:6px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:rgba(255,255,255,.022);}
.pine-chart-settings .pine-editor-toolbar button,
.pine-chart-settings .pine-editor-toolbar select,
.pine-chart-settings .pine-editor-toolbar input[type="number"] {border-color:rgba(255,255,255,.085);background:rgba(15,15,19,.95);color:#b9bdc8;}
.pine-chart-settings .pine-editor-toolbar span {color:#707785;}
.pine-chart-settings .pine-editor-find {border-color:rgba(113,96,221,.22);background:rgba(17,16,23,.96);}
.pine-chart-settings .pine-property-group,.pine-chart-settings .pine-visibility-group {
  border-color:rgba(255,255,255,.075);background:linear-gradient(145deg,rgba(21,21,25,.90),rgba(11,11,14,.94));
}
.pine-chart-settings .pine-property-group legend,.pine-chart-settings .pine-visibility-group legend {color:#d8d9e0;}
.pine-chart-settings .pine-input-group-heading {border-bottom-color:rgba(255,255,255,.075);color:#a69bf1;}
.pine-chart-settings .pine-attached-script-details {margin:4px 0 6px;border:0;background:transparent;}
.pine-chart-settings .pine-attached-script-details>summary {width:max-content;padding:4px 7px;border-radius:6px;color:#858b98;font-size:10px;font-weight:650;cursor:pointer;}
.pine-chart-settings .pine-attached-script-details>summary:hover {background:rgba(255,255,255,.035);color:#c3c7d0;}
.pine-chart-settings .pine-attached-script-details[open] {padding:8px 10px 10px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.018);}
.pine-chart-settings .pine-attached-script-details[open]>summary {margin-bottom:8px;}
.pine-chart-settings form>footer {
  border-top-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(8,8,10,.90),rgba(8,8,10,.99));backdrop-filter:blur(18px);
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button {
  border-color:rgba(255,255,255,.10);border-radius:8px;background:rgba(25,25,30,.96);color:#d8d9df;
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button[type="submit"] {
  border:1px solid rgba(128,197,255,.46);background:linear-gradient(120deg,#397ed8 0%,#245cc6 58%,#102a66 100%);color:#fff;font-weight:800;
  box-shadow:0 8px 24px rgba(36,92,198,.32),0 0 28px rgba(128,197,255,.14);
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button[type="submit"]:disabled {opacity:.58;filter:saturate(.72);cursor:wait;}
.pine-chart-settings .or-error:not(:empty) {position:sticky;bottom:70px;z-index:4;margin:8px 0 0;padding:9px 11px;border:1px solid rgba(239,91,112,.28);border-radius:8px;background:rgba(43,13,19,.96);color:#f2b1bb;box-shadow:0 8px 26px #0008;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button[type="submit"]:hover {filter:brightness(1.08);transform:translateY(-1px);}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings footer button.secondary {border-color:rgba(255,255,255,.09);background:rgba(22,22,27,.96);color:#b8bbc5;}
.pine-chart-settings .pine-footer-more>summary {color:#797f8d;}
.pine-chart-settings .pine-backtest-range {border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.02);}
@media(max-width:700px) {
  .pine-editor-meta {align-items:flex-start;flex-wrap:wrap;}
  .pine-editor-meta-draft {margin-left:0;}
  .pine-chart-settings .pine-settings-tabs {overflow-x:auto;scrollbar-width:none;}
  .pine-chart-settings .pine-settings-tabs::-webkit-scrollbar {display:none;}
  :is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings .pine-settings-tabs button {flex:0 0 auto;}
}

/* Pine Inputs follows a compact settings-sheet layout: readable names on the
   left and one predictable control column on the right. */
.pine-chart-settings .pine-settings-panel[id^="pine-inputs-"] {
  max-width:820px;margin-inline:auto;
}
.pine-chart-settings .pine-input-controls:not(:empty) {
  display:block;margin-top:2px;border-top:1px solid rgba(255,255,255,.075);
}
.pine-chart-settings .pine-input-group {
  display:block!important;border:0;border-bottom:1px solid rgba(255,255,255,.075);
  border-radius:0;background:transparent;overflow:visible;
}
.pine-chart-settings .pine-input-group-heading {
  min-height:42px;padding:11px 4px;cursor:pointer;color:#a4a8b3;
  font-size:10px;font-weight:800;letter-spacing:.09em;
}
.pine-chart-settings .pine-input-group-heading:hover {color:#d9dbe2;background:rgba(255,255,255,.018);}
.pine-chart-settings .pine-input-group-heading::before {display:block;}
.pine-chart-settings .pine-input-group-count {display:grid;}
.pine-chart-settings .pine-input-group:not([open])>.pine-input-group-body {
  display:none;
}
.pine-chart-settings .pine-input-group[open]>.pine-input-group-body {
  display:block;padding:0 4px 6px;border:0;
}
.pine-chart-settings .pine-input-inline-row {
  display:block;min-width:0;
}
.pine-chart-settings .pine-input-controls>label,
.pine-chart-settings .pine-input-inline-row>label,
.pine-chart-settings .pine-input-field {
  display:grid!important;grid-template-columns:minmax(170px,1fr) 22px minmax(180px,260px);
  align-items:center;gap:18px;min-height:48px;margin:0;padding:7px 2px;
  border:0;border-top:1px solid rgba(255,255,255,.045);border-radius:0;background:transparent;
  color:#d8d9e0;font-size:12px;font-weight:620;
}
.pine-chart-settings .pine-input-group-body>.pine-input-field:first-child,
.pine-chart-settings .pine-input-controls>.pine-input-field:first-child {border-top:0;}
.pine-chart-settings .pine-input-field :is(input:not([type="checkbox"]),select,textarea) {
  grid-column:3;width:100%;min-height:34px;margin:0;padding:6px 9px;border-radius:7px;
  background:rgba(8,8,11,.96);
}
.pine-chart-settings .pine-input-field input[type="color"] {height:34px;padding:4px;}
.pine-chart-settings .pine-input-field-boolean {
  grid-template-columns:minmax(170px,1fr) 22px 34px;justify-content:space-between;
}
.pine-chart-settings .pine-input-field-boolean input[type="checkbox"] {
  grid-column:3;justify-self:end;align-self:center;width:32px!important;height:18px!important;
  appearance:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;
  background:#25262c;cursor:pointer;transition:.16s ease;
}
.pine-chart-settings .pine-input-field-boolean input[type="checkbox"]::before {
  content:"";display:block;width:12px;height:12px;margin:2px;border-radius:50%;background:#8b8e98;transition:.16s ease;
}
.pine-chart-settings .pine-input-field-boolean input[type="checkbox"]:checked {
  border-color:rgba(69,218,184,.48);background:rgba(36,178,145,.48);
}
.pine-chart-settings .pine-input-field-boolean input[type="checkbox"]:checked::before {
  transform:translateX(14px);background:#eafff9;box-shadow:0 0 8px rgba(72,229,191,.55);
}
.pine-chart-settings .pine-input-help {position:relative;grid-column:2;grid-row:1;align-self:center;justify-self:center;margin:0;}
.pine-chart-settings .pine-input-help summary {
  display:grid;width:18px;height:18px;border:1px solid rgba(255,255,255,.11);border-radius:50%;place-items:center;color:#777d89;
  font-size:10px;font-weight:700;text-decoration:none;
}
.pine-chart-settings .pine-input-help span {top:auto;right:auto;left:0;margin-top:4px;}
.pine-chart-settings .pine-input-hint {grid-column:1/-1;margin:0 0 4px;color:#bd956b;font-size:10px;}
.pine-chart-settings .pine-price-pick,.pine-chart-settings .pine-time-pick {
  grid-column:3;justify-self:end;width:auto!important;min-height:28px!important;margin-top:3px!important;padding:4px 8px!important;
}
.pine-chart-settings .pine-input-browser[hidden] {display:none;}
.pine-chart-settings .pine-input-browser {margin:0 0 8px;}
.pine-chart-settings .pine-input-browser-actions {display:flex;}
.pine-chart-settings .pine-input-search {height:34px;background:rgba(8,8,11,.96);}
.pine-chart-settings .pine-settings-panel[id^="pine-inputs-"]>button.secondary {
  width:auto;min-height:30px;margin-top:12px;padding:5px 9px;color:#8f95a1;background:transparent;border-color:rgba(255,255,255,.075);
}
@media(max-width:640px) {
  .pine-chart-settings .pine-input-controls>label,
  .pine-chart-settings .pine-input-inline-row>label,
  .pine-chart-settings .pine-input-field {grid-template-columns:1fr;gap:6px;padding:10px 2px;}
  .pine-chart-settings .pine-input-field :is(input:not([type="checkbox"]),select,textarea),
  .pine-chart-settings .pine-input-field-boolean input[type="checkbox"] {grid-column:1;justify-self:stretch;}
  .pine-chart-settings .pine-input-field-boolean input[type="checkbox"] {justify-self:start;}
  .pine-chart-settings .pine-input-help {grid-column:1;grid-row:auto;justify-self:start;margin:0;}
}

/* Python strategy inputs use the same calm settings-sheet rhythm as Pine:
   one readable label column, one predictable control column, and a separate
   testing-window section. */
#py-inputs-section {max-width:860px;margin-inline:auto;}
#py-inputs-section>.se-group-title {margin:0 0 5px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.075);}
#py-inputs-section .py-parameter-grid {display:block;border-bottom:1px solid rgba(255,255,255,.075);}
#py-inputs-section .python-parameter-field,
#py-inputs-section .python-history-field {
  display:grid!important;grid-template-columns:minmax(180px,1fr) minmax(200px,280px);
  align-items:center;gap:4px 20px;min-height:48px;margin:0;padding:7px 2px;
  border-top:1px solid rgba(255,255,255,.045);
}
#py-inputs-section .python-parameter-field:first-child {border-top:0;}
#py-inputs-section :is(.python-parameter-field,.python-history-field)>.se-label {
  grid-column:1;grid-row:1;margin:0;color:#d8d9e0;font-size:12px;font-weight:650;
}
#py-inputs-section :is(.python-parameter-field,.python-history-field)>:is(input,select) {
  grid-column:2;grid-row:1;width:100%;min-height:34px;margin:0;padding:6px 9px;border-radius:7px;
  border-color:rgba(255,255,255,.10);background:#09090c;color:#e7e7ec;
}
#py-inputs-section .python-parameter-boolean {grid-template-columns:minmax(180px,1fr) 34px;}
#py-inputs-section .python-parameter-boolean>input[type="checkbox"] {
  grid-column:2;justify-self:end;width:32px!important;height:18px!important;min-height:18px;
  appearance:none;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#25262c;cursor:pointer;
}
#py-inputs-section .python-parameter-boolean>input[type="checkbox"]::before {
  content:"";display:block;width:12px;height:12px;margin:2px;border-radius:50%;background:#8b8e98;transition:.16s ease;
}
#py-inputs-section .python-parameter-boolean>input[type="checkbox"]:checked {border-color:rgba(69,218,184,.48);background:rgba(36,178,145,.48);}
#py-inputs-section .python-parameter-boolean>input[type="checkbox"]:checked::before {transform:translateX(14px);background:#eafff9;box-shadow:0 0 8px rgba(72,229,191,.55);}
#py-inputs-section .python-testing-heading {display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:20px;padding:0 2px 8px;border-bottom:1px solid rgba(255,255,255,.075);}
#py-inputs-section .python-testing-heading strong {color:#d8d9e0;font-size:12px;}
#py-inputs-section .python-testing-heading span {color:#777d89;font-size:10px;}
#py-inputs-section .strategy-period-presets {margin:8px 0;background:rgba(255,255,255,.018);border-color:rgba(255,255,255,.075);}
#py-inputs-section .python-history-field>.se-help {grid-column:1/-1;margin:0;color:#777d89;font-size:10px;}
#py-inputs-section .python-history-field .se-label small {margin-left:5px;color:#777d89;font-size:9px;font-weight:550;text-transform:uppercase;}
#py-inputs-section #py-advanced-params {margin:12px 0 0;border-color:rgba(255,255,255,.075);background:rgba(255,255,255,.012);}
@media(max-width:640px) {
  #py-inputs-section .python-parameter-field,#py-inputs-section .python-history-field {grid-template-columns:1fr;gap:6px;padding:10px 2px;}
  #py-inputs-section :is(.python-parameter-field,.python-history-field)>:is(input,select) {grid-column:1;grid-row:auto;}
  #py-inputs-section .python-parameter-boolean>input[type="checkbox"] {justify-self:start;width:32px!important;}
  #py-inputs-section .python-testing-heading {align-items:flex-start;flex-direction:column;gap:3px;}
}

/* Keep both navigation levels in normal flow after later compact-workspace
   rules have applied. This is intentionally last in the cascade. */
@media(max-width:760px) {
  #topbar {grid-template-rows:auto 32px 32px;min-height:124px;}
  #brand-logo {display:none;}
  #brand-logo-mark {width:22px;height:22px;flex-basis:22px;}
  #workspace-controls {grid-row:1;}
  #workspace-product-switcher {grid-column:1 / -1;grid-row:2;justify-self:start;order:initial;margin-left:30px;}
  #workspace-mode-tabs {grid-row:3;}
}
@media(max-width:440px) {
  #workspace-product-switcher {margin-left:0;}
  #workspace-product-switcher button {padding-inline:8px;}
}

/* Product-scoped navigation has at most three destinations, so the legacy
   laptop rule that hid unselected discovery tabs would recreate the very
   dead-end navigation this split removes. */
@media(max-width:1450px) {
  body.product-quant #workspace-view-strategies,
  body.product-discover #workspace-view-strategies,
  body.product-discover #workspace-view-community,
  body.product-discover #workspace-view-ideas {display:inline-flex!important;}
}

/* The rail is contextual rather than a second copy of product navigation.
   Charts keeps the assistant and chart-object tools; Quant keeps research,
   saved strategies, and deployment; Discover's page tabs own that surface. */
body.product-charts #rail :is(#rail-library,#rail-community,#rail-ideas,#rail-deploy) {display:none;}
body.product-quant #rail :is(#rail-layers,#rail-drawings,#rail-community,#rail-ideas) {display:none;}
body.product-discover #rail {display:none;}


/* Vela-style AI workspace: the conversation is the product surface. Keep
   model/runtime controls inside the composer, let messages own the panel, and
   reveal advanced execution detail only when the customer asks for it. */
#chat-panel {
  --assistant-panel-width:clamp(390px,31vw,480px);
  display:flex;flex-direction:column;min-width:0;
  background:
    radial-gradient(circle at 100% 0%,rgba(78,69,181,.09),transparent 24%),
    linear-gradient(180deg,rgba(10,10,13,.995),rgba(5,5,7,.998));
}
#chat-panel-head {
  position:relative;display:flex;align-items:center;gap:10px;flex:0 0 54px;
  min-height:54px;padding:0 14px;border-bottom:1px solid rgba(255,255,255,.075);
  background:rgba(8,8,11,.88);backdrop-filter:blur(18px);
}
#chat-panel-title {min-width:0;flex:1;gap:8px;}
#chat-panel-title::before {width:24px;height:24px;}
#chat-panel-title::after {display:none;}
#chat-panel-title>span {color:#f4f4f7;font-size:13px;font-weight:760;letter-spacing:-.01em;}
#chat-panel-title>small {
  margin-left:auto;color:#747a89;font-size:9px;font-weight:680;letter-spacing:.07em;text-transform:uppercase;
}
#chat-panel-close {
  display:grid;width:30px;height:30px;place-items:center;margin:0;padding:0;border:0;border-radius:7px;
  background:transparent;color:#8e94a3;font-size:20px;line-height:1;
}
#chat-panel-close:hover,#chat-panel-close:focus-visible {background:rgba(255,255,255,.065);color:#fff;}
#chat-panel-tabs,#authoring-intro {display:none!important;}

#chat-empty-state {
  order:1;flex:0 0 auto;justify-content:flex-start;min-height:0;margin:auto 0 0;padding:28px 24px 18px;
  text-align:left;
}
.chat-empty-kicker {color:#83d7e8;font-size:9px;letter-spacing:.12em;}
#chat-empty-state h2 {max-width:330px;margin:9px 0 9px;font-size:25px;line-height:1.08;}
#chat-empty-state>p {max-width:350px;color:#9a9eaa;font-size:12px;line-height:1.6;}
.chat-empty-workflow {margin-top:13px;}
.chat-empty-workflow>summary {color:#9298a6;font-size:10.5px;}
.chat-empty-workflow>p {max-width:355px;border-left-color:rgba(111,149,242,.44);background:rgba(76,94,155,.06);}

#chat-suggestions {order:2;padding:0 18px 18px;border:0;background:transparent;}
#chat-context {margin:0 0 10px;}
#chat-starter-prompts>summary {
  margin:0;padding:5px 0;border-radius:0;color:#8f95a3;font-size:10.5px;
}
#chat-starter-prompts>summary::before {content:"＋";margin-right:5px;color:#83d7e8;}
#chat-starter-prompts>summary::after {content:"";}
#chat-starter-prompts[open]>summary {margin:0 0 8px;font-size:10.5px;}
#chat-starter-prompts[open]>summary::before {content:"−";}
#chat-starter-prompts[open]>summary::after {content:"";}
#chat-starter-grid,#chat-more-starters-grid {grid-template-columns:1fr;gap:5px;}
#chat-starter-grid>.suggestion {
  min-height:46px;padding:8px 11px;border-color:rgba(255,255,255,.075);border-radius:9px;
  background:rgba(255,255,255,.025);box-shadow:none;
}
#chat-starter-grid>.suggestion:hover,#chat-starter-grid>.suggestion:focus-visible {
  transform:none;border-color:rgba(122,160,245,.38);background:rgba(94,107,165,.09);box-shadow:none;
}
#chat-starter-grid>.suggestion .suggestion-label {font-size:11px;}
#chat-starter-grid>.suggestion .suggestion-cost {font-size:9px;}
#chat-more-starters {display:none;}
#chat-panel:has(#chat-messages:not(:empty)) #chat-suggestions {display:none;}

#chat-messages {
  order:1;flex:1 1 auto;min-height:0;padding:18px 17px 22px;overflow-x:hidden;overflow-y:auto;
  gap:0;scroll-padding-block:18px 28px;
}
#chat-messages:empty {display:none;}
.chat-msg {
  max-width:92%;margin:0 0 16px;padding:0;border:0;background:transparent;box-shadow:none;
  color:#dfe2e9;font-size:12px;line-height:1.58;overflow-wrap:anywhere;
}
.chat-msg.user {
  width:max-content;max-width:90%;margin-left:auto;padding:11px 13px;border:1px solid rgba(151,139,218,.22);
  border-radius:14px 14px 4px 14px;background:linear-gradient(145deg,rgba(50,46,67,.96),rgba(29,29,37,.98));
  color:#f4f3f8;box-shadow:inset 0 1px rgba(255,255,255,.035),0 8px 20px rgba(0,0,0,.12);
}
.chat-msg.assistant {
  width:100%;max-width:100%;margin-right:auto;padding:12px 13px 11px;
  border:1px solid rgba(255,255,255,.085);border-radius:12px;
  background:linear-gradient(145deg,rgba(20,21,25,.94),rgba(14,15,18,.94));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.chat-msg.assistant::before {
  content:"✧  Lume";display:block;margin-bottom:7px;color:#a7dfe4;font-size:9.5px;font-weight:760;letter-spacing:.035em;
}
.chat-msg-meta {margin-top:9px;color:#858b98;font-size:9px;line-height:1.35;}
.chat-msg-warning {margin-top:9px;border-radius:8px;font-size:10px;}
.chat-activity-receipt {
  display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:10px;padding:5px 8px;
  border:1px solid rgba(73,201,166,.16);border-radius:999px;background:rgba(57,184,151,.045);
  color:#93bdb3;font-size:9.5px;line-height:1.2;
}
.chat-activity-receipt>span:first-child {
  flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#47d8b0;box-shadow:0 0 9px rgba(71,216,176,.54);
}
.chat-execution-details {margin-top:7px;}
.chat-execution-details>summary {color:#707785;font-size:9.5px;}
#busy-indicator {order:3;padding:0 18px;color:#9ea4b1;font-size:10px;}

#chat-composer {
  position:relative;order:4;flex:0 0 auto;padding:9px 13px 12px;border-top:1px solid rgba(255,255,255,.075);
  background:linear-gradient(180deg,rgba(9,9,12,.96),rgba(5,5,7,.998));
  box-shadow:0 -18px 35px rgba(0,0,0,.18);
}
#assistant-options-row {justify-content:flex-start;margin:0 0 6px;}
#assistant-options-row label {
  display:inline-flex;align-items:center;gap:6px;margin:0;padding:0;border:0;color:#777e8c;font-size:9.5px;
}
.assistant-option-label {display:none;}
#assistant-code-language {
  width:auto;min-height:26px;padding:3px 24px 3px 8px;border:1px solid rgba(255,255,255,.075);border-radius:7px;
  background-color:rgba(255,255,255,.025);color:#9ea4b1;font-size:9.5px;
}
#region-status:empty,#chat-tool-context[hidden],#chat-draft-context[hidden] {display:none!important;}
#region-status {
  max-height:28px;margin:0 0 6px;overflow:hidden;color:#747b89;font-size:9.5px;line-height:1.35;
}
#chat-input-row {
  min-height:86px;padding:5px;border-color:rgba(255,255,255,.105);border-radius:13px;
  background:rgba(18,18,22,.92);box-shadow:0 10px 30px rgba(0,0,0,.24);
}
#chat-input-row:focus-within {
  border-color:rgba(117,150,235,.50);box-shadow:0 0 0 3px rgba(82,100,181,.09),0 12px 34px rgba(0,0,0,.27);
}
#chat-input {min-height:72px;max-height:190px;padding:9px 9px 20px;color:#eeeff3;font-size:12px;line-height:1.55;}
#chat-input::placeholder {color:#737987;}
#chat-send {
  align-self:flex-end;display:grid;flex:0 0 31px;width:31px;height:31px;place-items:center;margin:0 1px 1px 0;padding:0;
  border:1px solid rgba(126,168,248,.40);border-radius:9px;background:linear-gradient(145deg,#487fd1,#6658ce);
  color:#fff;box-shadow:0 5px 16px rgba(49,75,167,.24);font-size:17px;
}
#chat-compose-hint {display:none;}
#chat-status {
  min-height:0;padding:6px 2px 0;color:#656c79;font-size:9.5px;line-height:1.35;text-align:left;
}
#research-job-status:empty,#chat-draft-notice[hidden],#research-job-details[hidden],
#research-job-cancel[hidden],#chat-restore-previous[hidden],#chat-return-pine-draft[hidden] {display:none!important;}
#research-job-check {float:right;margin:2px 1px 0;color:#6e7582;}
@media(max-width:1120px) {
  #chat-panel {--assistant-panel-width:clamp(350px,35vw,420px);}
}
@media(max-width:850px) {
  #chat-panel {--assistant-panel-width:100%;width:100%;max-width:none;}
  #chat-panel-head {min-height:50px;flex-basis:50px;}
  #chat-empty-state {padding-inline:18px;}
}

/* Lume AI conversation workspace. The panel now has the same durable mental
   model as the chart: one active conversation, a searchable build history,
   and chart-aware actions at the composer. */
#chat-panel-title {display:flex;align-items:stretch;gap:18px;height:100%;}
#chat-panel-title::before,#chat-panel-title::after {display:none!important;}
.lume-chat-view-tab {
  position:relative;width:auto;margin:0;padding:0 1px;border:0;border-radius:0;background:transparent;
  color:#747986;font-size:12px;font-weight:680;letter-spacing:0;cursor:pointer;
}
.lume-chat-view-tab::after {
  content:"";position:absolute;right:0;bottom:0;left:0;height:2px;border-radius:2px 2px 0 0;
  background:linear-gradient(90deg,#42d6cb,#7085ff);opacity:0;transform:scaleX(.7);transition:.14s ease;
}
.lume-chat-view-tab:hover,.lume-chat-view-tab:focus-visible {color:#dfe2e9;outline:0;}
.lume-chat-view-tab.active {color:#f6f7fa;}
.lume-chat-view-tab.active::after {opacity:1;transform:scaleX(1);}
#chat-new {display:grid;place-items:center;width:30px;height:30px;margin:0;padding:0;border:0;border-radius:7px;background:transparent;color:#9298a5;font-size:18px;}
#chat-new:hover,#chat-new:focus-visible {background:rgba(255,255,255,.06);color:#fff;outline:0;}

#chat-conversation-view {display:flex;flex:1 1 auto;min-height:0;flex-direction:column;overflow:hidden;}
#chat-conversation-view[hidden],#chat-history-view[hidden] {display:none!important;}
#chat-history-view {display:flex;flex:1 1 auto;min-height:0;flex-direction:column;padding:18px 14px;overflow:hidden;}
.chat-history-actions {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.chat-history-actions h2 {margin:0;color:#f1f2f5;font-size:16px;letter-spacing:-.02em;}
.chat-history-actions button {
  width:auto;margin:0;padding:7px 10px;border:1px solid rgba(255,255,255,.10);border-radius:8px;
  background:rgba(255,255,255,.035);color:#d8dbe2;font-size:10.5px;
}
.chat-history-search {display:block;margin-bottom:12px;}
.chat-history-search input {
  width:100%;height:36px;margin:0;padding:0 11px;border:1px solid rgba(255,255,255,.09);border-radius:9px;
  background:rgba(255,255,255,.025);color:#eceef2;font-size:11.5px;
}
#chat-history-status {min-height:16px;color:#717785;font-size:10px;}
#chat-history-list {display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:3px;overflow:auto;padding-top:5px;}
.chat-history-row {
  display:flex;width:100%;margin:0;padding:10px 11px;flex-direction:column;align-items:flex-start;gap:4px;
  border:1px solid transparent;border-radius:9px;background:transparent;color:#dfe1e7;text-align:left;
}
.chat-history-row:hover,.chat-history-row:focus-visible {border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.035);outline:0;}
.chat-history-row.active {border-color:rgba(72,210,199,.15);background:rgba(72,210,199,.045);}
.chat-history-row strong {max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;}
.chat-history-row span {color:#6f7582;font-size:9.5px;}

.chat-execution-details>summary {cursor:pointer;list-style:none;color:#767d89;font-size:9.5px;}
.chat-execution-details>summary::-webkit-details-marker {display:none;}
.chat-execution-details>summary::before {content:"›";display:inline-block;margin-right:5px;color:#70cfc8;transition:transform .14s ease;}
.chat-execution-details[open]>summary::before {transform:rotate(90deg);}
.chat-execution-details ol {margin:8px 0 0;padding:8px 8px 8px 25px;border:1px solid rgba(255,255,255,.065);border-radius:8px;background:rgba(255,255,255,.018);color:#8f95a0;font-size:9.5px;line-height:1.55;}

/* Shared Vela-style live work receipt for both LumeCharts AI and LumeQuant AI.
   The same request engine drives both assistants, so progress, cancellation,
   elapsed time, completion and failure must look and behave identically. */
.chat-work-card {
  position:relative;display:flex;min-height:158px;flex:0 0 auto;flex-direction:column;overflow:hidden;
  border:1px solid rgba(255,255,255,.11);border-radius:11px;background:#101317;
  box-shadow:0 12px 28px rgba(0,0,0,.18);color:#b8bec7;animation:lume-work-in .22s ease-out both;
}
.chat-work-card:not(.complete):not(.failed)::before {
  content:"";position:absolute;z-index:5;top:36px;bottom:36px;left:0;width:2px;pointer-events:none;
  background:linear-gradient(180deg,transparent 0%,rgba(62,226,210,.18) 18%,#4ee0ca 46%,rgba(151,106,255,.72) 62%,transparent 100%);
  background-size:100% 210%;filter:drop-shadow(0 0 6px rgba(78,224,202,.55));
  animation:lume-activity-rail 2.4s cubic-bezier(.45,0,.55,1) infinite;
}
@keyframes lume-work-in {from{opacity:0;transform:translateY(5px) scale(.992)}to{opacity:1;transform:none}}
.chat-work-head,.chat-work-footer {display:flex;min-height:37px;align-items:center;gap:9px;padding:0 11px;}
.chat-work-head {position:relative;border-bottom:1px solid rgba(255,255,255,.08);}
.chat-work-card:not(.complete):not(.failed) .chat-work-head::after {
  content:"";position:absolute;right:0;bottom:-1px;left:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(79,224,204,.08) 28%,rgba(79,224,204,.85) 48%,rgba(151,106,255,.55) 58%,transparent 82%);
  background-size:220% 100%;animation:lume-header-flow 3.6s linear infinite;
}
.chat-work-identity {color:#d5d9de;font-size:9.5px;font-weight:650;}
.chat-work-count {margin-left:auto;color:#838b96;font-size:9px;}
.chat-work-request-plan {padding:9px 12px 7px;border-bottom:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.012);}
.chat-work-request-plan small {display:block;margin-bottom:6px;color:#6fd9ce;font-size:7.5px;font-weight:750;letter-spacing:.12em;}
.chat-work-request-plan ol {display:grid;margin:0;padding:0;gap:4px;list-style:none;counter-reset:lume-plan;}
.chat-work-request-plan li {counter-increment:lume-plan;color:#b9bec7;font-size:9px;line-height:1.35;}
.chat-work-request-plan li::before {content:counter(lume-plan,decimal-leading-zero);display:inline-block;width:21px;color:#69727e;font:8px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;}
.chat-work-request-plan li::after {content:"pending";float:right;margin-left:8px;color:#626a75;font:7.5px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;}
.chat-work-request-plan li.built {color:#e3e8eb;}
.chat-work-request-plan li.built::before {color:#4ee0ca;}
.chat-work-request-plan li.built::after {content:"built";color:#4ee0ca;}
.chat-work-steps {
  position:relative;z-index:2;display:flex;max-height:96px;margin:0;padding:10px 12px 8px;flex-direction:column;
  gap:5px;overflow:auto;list-style:none;background:linear-gradient(180deg,rgba(16,19,23,.9),rgba(16,19,23,.7));
}
.chat-work-steps:empty::before {content:"Preparing chart context";padding-left:28px;color:#8e959f;font-size:9.5px;animation:lume-stage-pulse 1.45s ease-in-out infinite;}
.chat-work-steps li {display:grid;grid-template-columns:24px 1fr;gap:6px;align-items:start;}
.chat-work-steps li span {color:#666e79;font-size:8.5px;text-align:right;}
.chat-work-steps li strong {color:#b7bdc5;font-size:9.5px;font-weight:560;line-height:1.35;}
.chat-work-steps li:last-child strong {color:#eef0f2;font-weight:680;animation:lume-active-stage .32s ease-out both;}
.chat-work-steps li:last-child strong::after {content:"";display:inline-block;width:1px;height:12px;margin-left:5px;vertical-align:-2px;background:#4ee0ca;animation:lume-caret .8s steps(1,end) infinite;}
.chat-work-canvas {
  position:absolute;right:10px;bottom:40px;left:10px;overflow:hidden;color:rgba(178,184,193,.18);
  font:650 9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;text-align:center;white-space:nowrap;
  mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);
}
.chat-work-code {display:none;position:relative;isolation:isolate;min-height:118px;max-height:174px;overflow:hidden;padding:8px 0;background:#0c0f13;font:9.5px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;}
.chat-work-card.writing-code {min-height:238px;box-shadow:0 15px 38px rgba(0,0,0,.30),0 0 0 1px rgba(78,224,202,.035),inset 0 0 36px rgba(78,224,202,.025);}
.chat-work-card.writing-code :is(.chat-work-steps,.chat-work-canvas) {display:none;}
.chat-work-card.writing-code:not(.complete):not(.failed) .chat-work-code {display:block;}
.chat-work-card.writing-code:not(.complete):not(.failed) .chat-work-code::before {
  content:"";position:absolute;z-index:3;right:0;left:0;height:42px;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(77,224,205,.07) 45%,rgba(77,224,205,.18) 50%,rgba(151,106,255,.055) 56%,transparent);
  mix-blend-mode:screen;animation:lume-code-scan 2.8s cubic-bezier(.42,0,.58,1) infinite;
}
.chat-work-card.writing-code:not(.complete):not(.failed) .chat-work-code::after {
  content:"";position:absolute;z-index:2;inset:auto -20% -55px 12%;height:105px;pointer-events:none;
  background:radial-gradient(ellipse,rgba(68,224,207,.10),rgba(137,91,255,.035) 42%,transparent 70%);
  filter:blur(13px);animation:lume-code-aurora 4.8s ease-in-out infinite alternate;
}
.chat-work-code-line {position:relative;z-index:1;display:grid;grid-template-columns:32px minmax(0,1fr);min-height:15px;opacity:0;animation:lume-code-line .24s cubic-bezier(.22,.72,.24,1) var(--line-delay,0ms) forwards;}
.chat-work-code-line>span {padding-right:9px;color:#505865;text-align:right;user-select:none;}
.chat-work-code-line>code {position:relative;overflow:hidden;padding-right:12px;color:#b6bdc8;text-overflow:clip;white-space:pre;}
.chat-work-code-line:last-child>code::after {content:"";display:inline-block;width:1px;height:12px;margin-left:3px;vertical-align:-2px;background:#43dfca;animation:lume-caret .8s steps(1,end) infinite;}
.chat-work-language {margin-left:auto;color:#818994;font-size:8.5px;}
.chat-work-card.writing-code .chat-work-elapsed {margin-left:0;}
.chat-work-footer {z-index:3;margin-top:auto;border-top:1px solid rgba(255,255,255,.08);background:#101317;}
.chat-work-state {display:flex;align-items:center;gap:6px;color:#61d8ca;font-size:9.5px;}
.chat-work-state i {position:relative;width:9px;height:9px;border-radius:50%;background:#40dfd0;box-shadow:0 0 0 3px rgba(64,223,208,.10),0 0 12px rgba(64,223,208,.55);animation:lume-stage-pulse 1.35s ease-in-out infinite;}
.chat-work-state i::after {content:"";position:absolute;inset:-4px;border:1px solid rgba(78,224,202,.42);border-radius:50%;animation:lume-status-ring 1.8s ease-out infinite;}
.chat-work-elapsed {margin-left:auto;color:#8c939d;font-size:9px;}
.chat-work-stop {width:auto;margin:0;padding:4px 7px;border:0;border-radius:5px;background:rgba(255,255,255,.04);color:#939aa4;font-size:8.5px;}
.chat-work-stop:hover {background:rgba(255,255,255,.08);color:#fff;}
.chat-work-card.complete {min-height:36px;border-color:rgba(78,224,202,.13);background:rgba(16,19,23,.68);box-shadow:none;}
.chat-work-card.complete .chat-work-head {min-height:30px;}
.chat-work-card.complete :is(.chat-work-steps,.chat-work-canvas,.chat-work-code,.chat-work-footer) {display:none;}
.chat-work-card.complete .chat-work-identity {color:#9aa1aa;font-size:9px;font-weight:560;}
.chat-work-card.complete .chat-work-request-plan {padding-top:7px;padding-bottom:8px;background:transparent;}
.chat-work-card.failed {border-color:rgba(239,101,111,.22);}
.chat-work-card.failed .chat-work-state {color:#ef7a83;}
.chat-work-card.failed .chat-work-state i {background:#ef6d77;box-shadow:none;animation:none;}
#chat-panel:has(.chat-work-card:not(.complete):not(.failed)) #busy-indicator,
#chat-panel:has(.chat-work-card:not(.complete):not(.failed)) #research-job-details,
#chat-panel:has(.chat-work-card:not(.complete):not(.failed)) #research-job-cancel {display:none!important;}
@keyframes lume-stage-pulse {0%,100%{opacity:.48}50%{opacity:1}}
@keyframes lume-caret {0%,48%{opacity:1}49%,100%{opacity:0}}
@keyframes lume-code-line {from{opacity:0;transform:translateY(3px);filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes lume-activity-rail {0%{background-position:0 110%}50%{background-position:0 42%}100%{background-position:0 -110%}}
@keyframes lume-header-flow {from{background-position:110% 0}to{background-position:-110% 0}}
@keyframes lume-active-stage {from{opacity:.25;transform:translateY(3px)}to{opacity:1;transform:none}}
@keyframes lume-code-scan {0%{top:-52px;opacity:0}12%{opacity:1}76%{opacity:.85}100%{top:calc(100% + 10px);opacity:0}}
@keyframes lume-code-aurora {from{transform:translate3d(-6%,0,0) scale(.94);opacity:.55}to{transform:translate3d(8%,-7px,0) scale(1.08);opacity:1}}
@keyframes lume-status-ring {0%{opacity:.72;transform:scale(.55)}70%,100%{opacity:0;transform:scale(1.55)}}
@media(prefers-reduced-motion:reduce){
  .chat-work-card,.chat-work-card::before,.chat-work-head::after,.chat-work-steps li:last-child strong,
  .chat-work-code::before,.chat-work-code::after,.chat-work-code-line,.chat-work-state i,.chat-work-state i::after,
  .chat-work-code-line:last-child>code::after {animation:none!important;}
}

#assistant-options-row {position:relative;align-items:center;gap:7px;}
#chat-tool-menu {position:relative;}
#chat-tool-menu>summary {
  display:grid;width:27px;height:27px;place-items:center;list-style:none;border:1px solid rgba(255,255,255,.08);
  border-radius:7px;background:rgba(255,255,255,.025);color:#afb4bf;font-size:16px;cursor:pointer;
}
#chat-tool-menu>summary::-webkit-details-marker {display:none;}
#chat-tool-menu[open]>summary {border-color:rgba(92,211,202,.32);color:#eef1f5;}
.chat-tool-menu-card {
  position:absolute;z-index:120;bottom:35px;left:0;width:220px;padding:6px;border:1px solid rgba(255,255,255,.11);
  border-radius:11px;background:rgba(13,13,17,.98);box-shadow:0 18px 50px rgba(0,0,0,.56);backdrop-filter:blur(18px);
}
.chat-tool-menu-card button {
  width:100%;margin:0;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:#c9cdd5;
  font-size:10.5px;text-align:left;
}
.chat-tool-menu-card button:hover,.chat-tool-menu-card button:focus-visible {background:rgba(255,255,255,.055);color:#fff;outline:0;}

#assistant-model-menu {position:relative;min-width:0;}
#assistant-model-menu>summary {
  display:flex;height:27px;min-width:64px;align-items:center;gap:7px;padding:0 8px;list-style:none;
  border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(255,255,255,.025);
  color:#d7dae1;font-size:10px;font-weight:650;cursor:pointer;
}
#assistant-model-menu>summary::-webkit-details-marker {display:none;}
#assistant-model-menu>summary::after {content:"⌄";margin-left:auto;color:#707684;font-size:10px;}
#assistant-model-menu[open]>summary {border-color:rgba(92,211,202,.3);background:rgba(255,255,255,.045);}
#assistant-model-plan {display:none;}
#assistant-model-label {white-space:nowrap;}
#assistant-model-options {
  position:absolute;z-index:125;right:auto;bottom:35px;left:-34px;display:flex;width:248px;max-height:350px;padding:6px;
  flex-direction:column;gap:2px;overflow:auto;border:1px solid rgba(255,255,255,.11);border-radius:12px;
  background:rgba(10,10,13,.985);box-shadow:0 20px 55px rgba(0,0,0,.62);backdrop-filter:blur(20px);
}
#assistant-model-options button {
  display:flex;width:100%;margin:0;padding:9px 10px;align-items:center;justify-content:space-between;gap:12px;
  border:1px solid transparent;border-radius:8px;background:transparent;color:#cfd2d9;text-align:left;
}
#assistant-model-options button:hover,#assistant-model-options button:focus-visible {
  border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.045);outline:0;
}
#assistant-model-options button.selected {border-color:rgba(74,210,201,.18);background:rgba(74,210,201,.055);}
#assistant-model-options button.locked {cursor:pointer;opacity:.72;}
#assistant-model-options button:disabled {cursor:not-allowed;opacity:.38;}
.assistant-model-copy {display:flex;min-width:0;flex-direction:column;gap:3px;}
.assistant-model-copy strong {font-size:10.5px;font-weight:680;color:#f0f1f4;}
.assistant-model-copy small {max-width:150px;color:#777d89;font-size:8.5px;line-height:1.35;}
.assistant-model-tier {flex:0 0 auto;color:#6acfc7;font-size:7.5px;font-weight:750;letter-spacing:.04em;}
#assistant-model-options button.locked .assistant-model-tier {color:#a68bf4;}

#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state {
  flex:0 0 auto;min-height:0;margin:0;padding:74px 22px 18px;text-align:center;align-items:center;justify-content:flex-start;
}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state h2 {max-width:260px;margin-top:9px;font-size:25px;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state>p {text-align:center;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-suggestions {display:none;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-composer {
  margin:0 15px auto;padding:0 0 14px;border-top:0;background:transparent;box-shadow:none;
}
#chat-input-row {
  display:grid;min-height:112px;padding:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(66px,auto) 29px;
  gap:7px 8px;align-items:center;
}
#chat-input {
  grid-column:1 / -1;grid-row:1;min-height:66px;max-height:190px;padding:1px 3px 6px;align-self:stretch;resize:none;
}
#assistant-options-row {
  grid-column:1;grid-row:2;min-width:0;margin:0;align-self:end;justify-content:flex-start;gap:6px;
}
#assistant-code-language {max-width:104px;height:27px;min-height:27px;}
#chat-send {position:static;grid-column:2;grid-row:2;align-self:end;margin:0;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-input-row {min-height:112px;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-status {display:none;}
#chat-conversation-view:not(:has(#chat-messages > *)) #research-job-check {display:none;}
#chat-conversation-view:not(:has(#chat-messages > *)) .chat-empty-workflow {margin-top:10px;}

/* Vela-level finish: a calm assistant home, one premium composer, and a
   conversation view that gives generated work the visual weight it deserves. */
#chat-panel:not(.collapsed) {min-width:360px;}
#chat-panel-head {
  min-height:40px;flex-basis:40px;padding:4px 7px;gap:7px;background:#0d0e11;
}
#chat-panel-title {
  height:32px;padding:2px;gap:2px;align-items:center;border-radius:8px;background:rgba(255,255,255,.035);
}
.lume-chat-view-tab {
  display:flex;min-width:0;flex:1;align-items:center;justify-content:center;gap:6px;border-radius:6px!important;
  color:#8d929d;font-size:11px!important;font-weight:600!important;
}
.lume-chat-view-tab::after {display:none!important;}
.lume-chat-view-tab::before {color:#838996;font-size:11px;font-weight:400;}
#chat-current-tab::before {content:"✧";}
#chat-history-tab::before {content:"▱";}
.lume-chat-view-tab.active {
  color:#fff;background:rgba(255,255,255,.09);box-shadow:0 1px 2px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.025);
}
#chat-new,#chat-panel-close {width:27px;height:27px;border-radius:6px;font-size:16px;}

#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state {
  padding:92px 26px 20px;
}
.chat-welcome-title {display:flex;align-items:center;justify-content:center;gap:13px;}
.chat-welcome-title img {
  width:28px;height:32px;object-fit:contain;opacity:.96;
  filter:brightness(0) invert(1) drop-shadow(0 0 18px rgba(255,255,255,.10));
}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state h2 {
  max-width:none;margin:0;color:#f5f5f6;font-size:24px;font-weight:520;line-height:1.15;letter-spacing:-.035em;
  text-transform:none;
}
#chat-empty-title strong {font-weight:590;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state>p {
  max-width:320px;margin:18px auto 0;color:#777c86;font-size:10.5px;line-height:1.55;
}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-composer {
  width:auto;margin:0 18px;padding:0;border:0;background:transparent;box-shadow:none;
}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-input-row {
  min-height:96px;border-color:rgba(255,255,255,.12);border-radius:15px;
  background:linear-gradient(145deg,rgba(27,28,32,.94),rgba(20,21,24,.97));
  box-shadow:0 18px 45px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.025);
}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-input {min-height:54px;font-size:11.5px;}
#chat-conversation-view:not(:has(#chat-messages > *)) #chat-send {
  border-color:rgba(255,255,255,.16);background:linear-gradient(145deg,#7585eb,#6756c7);
  box-shadow:0 7px 20px rgba(89,76,193,.28);
}

#chat-empty-actions {order:5;display:flex;flex-direction:column;align-items:center;gap:18px;padding:15px 18px 0;}
#chat-panel.has-conversation #chat-empty-actions {display:none;}
.chat-empty-mode-wrap {position:relative;z-index:8;}
#chat-empty-mode {
  display:grid;width:230px;height:42px;margin:0;padding:0 13px;grid-template-columns:28px 1fr 20px;align-items:center;
  border:1px solid rgba(255,255,255,.095);border-radius:999px;background:rgba(255,255,255,.025);
  color:#a8adb7;font-size:11px;box-shadow:0 10px 28px rgba(0,0,0,.14);
}
#chat-empty-mode:hover,#chat-empty-mode:focus-visible {
  border-color:rgba(135,148,226,.34);background:rgba(117,125,186,.075);color:#f3f4f7;outline:0;
}
#chat-empty-mode[aria-expanded="true"] {border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.055);}
.chat-empty-mode-icon {display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:rgba(255,255,255,.055);color:#d8dce5;}
#chat-empty-mode strong {color:#edeef2;font-weight:720;}
.chat-empty-mode-arrow {justify-self:end;color:#686e79;}
#chat-empty-mode-menu {
  position:absolute;z-index:50;top:48px;right:0;left:18px;display:flex;width:210px;padding:7px;flex-direction:column;
  border:1px solid rgba(255,255,255,.105);border-radius:14px;background:rgba(20,21,24,.985);
  box-shadow:0 22px 55px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.025);backdrop-filter:blur(20px);
}
#chat-empty-mode-menu[hidden] {display:none;}
#chat-empty-mode-menu button {
  display:grid;min-height:34px;padding:0 10px;grid-template-columns:24px 1fr;align-items:center;border:0;border-radius:8px;
  color:#e4e6eb;background:transparent;text-align:left;
}
#chat-empty-mode-menu button:hover,#chat-empty-mode-menu button:focus-visible {background:rgba(255,255,255,.065);outline:0;}
#chat-empty-mode-menu button>span {color:#9da3ae;font-size:14px;text-align:center;}
#chat-empty-mode-menu button>strong {font-size:10.5px;font-weight:630;}
#chat-latest {
  position:relative;display:grid;width:244px;min-height:50px;margin:0;padding:8px 35px 8px 14px;gap:3px;
  border:1px solid rgba(255,255,255,.085);border-radius:13px;background:rgba(255,255,255,.018);text-align:center;
}
#chat-latest[hidden] {display:none!important;}
#chat-latest>span:first-child {color:#727884;font-size:9px;}
#chat-latest strong {overflow:hidden;color:#e2e4e9;font-size:10.5px;font-weight:650;text-overflow:ellipsis;white-space:nowrap;}
.chat-latest-arrow {position:absolute;right:13px;top:17px;color:#707681;font-size:16px;}
#chat-latest:hover,#chat-latest:focus-visible {border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.035);outline:0;}
#chat-plan-footer {
  order:6;display:flex;margin-top:auto;padding:14px 18px 10px;flex-direction:column;align-items:center;gap:4px;
  color:#5f646e;font-size:8.5px;line-height:1.35;text-align:center;
}
#chat-plan-label {color:#9aa0aa;font-size:9px;font-weight:650;cursor:help;}
#chat-plan-label::before {content:"";display:inline-block;width:5px;height:5px;margin:0 6px 1px 0;border-radius:50%;background:#58d8ce;box-shadow:0 0 8px rgba(88,216,206,.5);}
#chat-plan-label[data-exhausted="true"] {color:#ef9aa6;}
#chat-plan-label[data-exhausted="true"]::before {background:#f06f82;box-shadow:0 0 8px rgba(240,111,130,.45);}

#chat-panel.has-conversation #chat-messages {padding:22px 18px 18px;}
#chat-panel.has-conversation .chat-msg.user {
  padding:11px 14px;border-color:rgba(151,139,218,.22);border-radius:16px 16px 5px 16px;
  background:linear-gradient(145deg,rgba(50,46,67,.96),rgba(29,29,37,.98));color:#f4f3f8;
}
#chat-panel.has-conversation .chat-msg.assistant {width:100%;max-width:100%;}
#chat-panel.has-conversation .chat-msg.assistant::before {color:#a7dfe4;letter-spacing:.035em;text-transform:none;}
#chat-panel.has-conversation .assistant-markdown pre {
  max-height:250px;margin:12px 0;padding:35px 14px 14px;border:1px solid rgba(255,255,255,.10);border-radius:12px;
  background:linear-gradient(180deg,#141519,#101114);color:#cfd3dc;box-shadow:0 16px 40px rgba(0,0,0,.25);
}
#chat-panel.has-conversation .assistant-markdown pre[data-language]::before {
  position:absolute;top:0;right:0;left:0;margin:0;padding:10px 13px;border-bottom:1px solid rgba(255,255,255,.075);
  color:#aeb3bd;background:rgba(255,255,255,.012);font-size:9px;text-transform:none;
}
#chat-panel.has-conversation #chat-composer {padding:8px 15px 5px;border-top:0;background:#090a0c;box-shadow:0 -18px 38px rgba(0,0,0,.25);}
#chat-panel.has-conversation #chat-input-row {border-radius:15px;background:#1a1b1f;}
#chat-panel.has-conversation #chat-plan-footer {margin-top:0;padding-top:7px;}

@media(max-width:850px) {
  #chat-panel:not(.collapsed) {min-width:0;}
  #chat-conversation-view:not(:has(#chat-messages > *)) #chat-empty-state {padding-top:64px;}
}

/* Focused code studio: a real editor surface instead of a tall settings form.
   The detailed inputs remain one click away in the normal strategy panel. */
body.python-code-focus::before {background:#07080a;backdrop-filter:none;}
body.python-code-focus #strategy-editor:has(#py-source) {
  position:fixed;z-index:2500;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;border-radius:0;
  background:#0d0e11;box-shadow:none;
}
body.python-code-focus #strategy-editor #se-head {display:none;}
body.python-code-focus #strategy-editor #se-head {
  min-height:46px;padding:6px 12px;border-bottom-color:rgba(255,255,255,.085);background:#141519;
}
body.python-code-focus #strategy-editor #se-title {font-size:12px;}
body.python-code-focus #strategy-editor>#strategy-bar {
  min-height:44px;padding:7px 14px;align-items:center;flex-wrap:nowrap;border-bottom-color:rgba(255,255,255,.075);background:#101115;
}
body.python-code-focus #strategy-editor>#strategy-bar #sb-identity {flex:1 1 auto;}
body.python-code-focus #code-script-picker {position:relative;}
body.python-code-focus #code-script-picker>summary {display:flex;align-items:center;list-style:none;cursor:pointer;}
body.python-code-focus #code-script-picker>summary::-webkit-details-marker {display:none;}
body.python-code-focus #code-script-menu {
  position:absolute;z-index:30;top:35px;left:-6px;width:334px;padding:8px 8px 6px;border:1px solid rgba(255,255,255,.10);
  border-radius:10px;background:#16171a;box-shadow:0 18px 52px rgba(0,0,0,.58);
}
body.python-code-focus #strategy-editor>#strategy-bar #sb-actions {flex:0 0 auto;flex-wrap:nowrap;}
body.python-code-focus #strategy-editor>#strategy-bar :is(#sb-version,#sb-state,#sb-view-results,#version-rerun,#version-save,#strategy-create-alert,#sb-more) {display:none!important;}
body.python-code-focus #strategy-editor>#strategy-bar #code-studio-actions {display:flex;align-items:center;gap:3px;}
body.python-code-focus #strategy-editor>#strategy-bar #code-studio-run {
  min-height:30px;padding:5px 13px;border:0;border-radius:7px;background:#f0f1f3;color:#17181b;font-weight:800;
}
body.python-code-focus #strategy-editor>#strategy-bar #code-studio-review {
  min-height:30px;padding:5px 10px;border-color:rgba(255,255,255,.11);background:transparent;color:#c6c9d0;font-weight:650;
}
body.python-code-focus #strategy-editor>#strategy-bar #code-studio-review:hover {background:rgba(255,255,255,.055);color:#fff;}
body.python-code-focus #strategy-editor>#strategy-bar .code-studio-icon {
  display:inline-grid;width:30px;min-width:30px;height:30px;padding:0;place-items:center;border-color:transparent;background:transparent;
  color:#8e949f;font-size:16px;
}
body.python-code-focus #strategy-editor>#strategy-bar .code-studio-icon:hover {background:rgba(255,255,255,.06);color:#fff;}
body.python-code-focus #code-studio-more {position:relative;}
body.python-code-focus #code-studio-more>summary {list-style:none;}
body.python-code-focus #code-studio-more>summary::-webkit-details-marker {display:none;}
body.python-code-focus #code-studio-more-menu {
  position:absolute;z-index:20;top:35px;right:0;display:grid;width:180px;padding:5px;border:1px solid rgba(255,255,255,.11);
  border-radius:9px;background:#17181c;box-shadow:0 16px 40px rgba(0,0,0,.52);
}
body.python-code-focus #code-studio-more-menu button {padding:8px 9px;border:0;background:transparent;color:#d8d9de;text-align:left;}
body.python-code-focus #code-studio-more-menu button:hover {background:rgba(255,255,255,.06);}
body.python-code-focus #strategy-editor>#strategy-bar #code-focus-exit {
  display:inline-grid;place-items:center;width:30px;min-width:30px;height:30px;padding:0;
  border:1px solid transparent;border-radius:7px;background:transparent;color:#8e949f;font-size:20px;font-weight:450;
}
body.python-code-focus #strategy-editor>#strategy-bar #code-focus-exit:hover,
body.python-code-focus #strategy-editor>#strategy-bar #code-focus-exit:focus-visible {
  border-color:rgba(126,113,238,.62);background:rgba(116,98,235,.14);color:#fff;
}
body.python-code-focus #strategy-editor #se-body {height:calc(100dvh - 44px);padding:0;overflow:hidden;}
body.python-code-focus #se-create-paths,
body.python-code-focus #se-advanced-start,
body.python-code-focus #se-family-note,
body.python-code-focus .strategy-studio-meta,
body.python-code-focus #se-rules,
body.python-code-focus #py-settings-tabs,
body.python-code-focus #family-params>.se-group:not(#py-code-section) {display:none!important;}
body.python-code-focus #family-params {display:flex;height:100%;min-height:0;flex-direction:column;}
body.python-code-focus #py-code-section {
  display:flex;min-height:0;flex:1;margin:0;padding:0;flex-direction:column;border:0;background:#0d0e11;
}
body.python-code-focus #py-code-section>.se-code-heading {
  display:none;
}
body.python-code-focus #py-code-section>.se-code-heading .se-group-title {
  min-width:max-content;color:#f2f3f5;font-size:11px;letter-spacing:0;text-transform:none;
}
body.python-code-focus #py-code-section .se-code-primary {display:flex;margin-left:auto;gap:5px;}
body.python-code-focus #py-code-section .se-code-primary :is(#py-copy-code,#py-save-code,#py-undo-code) {display:block;}
body.python-code-focus #py-code-section .se-code-primary button {
  width:auto;min-width:0;min-height:30px;padding:5px 9px;border-color:transparent;background:transparent;color:#aeb3bd;font-size:10px;
}
body.python-code-focus #py-code-section .se-code-primary button:hover {background:rgba(255,255,255,.06);color:#fff;}
body.python-code-focus #py-code-section .se-code-primary #py-check-code {
  border-color:rgba(255,255,255,.11);background:#e1e3e7;color:#191a1e;font-weight:720;
}
body.python-code-focus #py-code-section .se-code-more,
body.python-code-focus #py-code-guide,
body.python-code-focus #py-toolkit-help {display:none!important;}
body.python-code-focus #py-code-section>.py-field {
  display:flex;min-height:0;flex:1;margin:0;padding:0;flex-direction:column;
}
body.python-code-focus #strategy-editor .py-editor {
  height:auto;min-height:0;flex:1;border:0;border-radius:0;background:#0b0c0f;
}
body.python-code-focus #strategy-editor .py-gutter {padding-top:13px;background:#101115;color:#565c67;}
body.python-code-focus #strategy-editor .py-code-surface #py-source,
body.python-code-focus #strategy-editor .py-code-surface #py-highlight {padding:13px 14px;font-size:13px;line-height:1.55;}
body.python-code-focus #py-code-check-status,
body.python-code-focus #py-visual-status {
  min-height:25px;margin:0;padding:5px 12px;border-top:1px solid rgba(255,255,255,.07);background:#111216;color:#777d88;font-size:9px;
}
body.python-code-focus #py-code-check-status::before {display:none;}
body.python-code-focus #strategy-editor>#strategy-bar #sb-name::after {content:"⌄";margin-left:5px;color:#7e838d;font-size:10px;font-weight:500;}
.code-studio-icon[hidden] {display:none!important;}
body.python-code-focus #py-visual-status:empty {display:none;}
@media(max-width:850px) {
  body.python-code-focus #strategy-editor:has(#py-source) {inset:0;width:100vw;height:100dvh;}
  body.python-code-focus #py-code-section>.se-code-heading {align-items:flex-start;flex-direction:column;}
  body.python-code-focus #py-code-section .se-code-primary {width:100%;margin-left:0;overflow-x:auto;}
}

/* Pine uses the same focused studio contract as Python. */
body:has(#strategy-editor .pine-inline-dialog.pine-source-expanded)::before {
  content:"";position:fixed;z-index:1998;inset:0;background:#07080a;
}

/* One code workspace for Pine indicators, Pine strategies, Python chart tools,
   and Python strategies. Chart settings stay on the attached object; choosing
   Code opens this same quiet, full-screen authoring surface. */
.chart-tool-dialog.unified-code-editor {
  position:fixed!important;z-index:2600!important;inset:0!important;box-sizing:border-box!important;
  display:flex!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;flex-direction:column!important;border:0!important;border-radius:0!important;
  background:#0d0e11!important;box-shadow:none!important;overflow:hidden!important;
}
.chart-tool-dialog.unified-code-editor::backdrop {background:#07080a!important;backdrop-filter:none!important;}
.chart-tool-dialog.unified-code-editor>header {
  display:flex!important;min-height:44px!important;height:44px!important;padding:7px 12px!important;align-items:center!important;gap:7px!important;
  border:0!important;border-bottom:1px solid rgba(255,255,255,.075)!important;background:#141519!important;
}
.chart-tool-dialog.unified-code-editor>header h2 {
  min-width:80px;max-width:min(34vw,340px);flex:0 1 auto;margin:0!important;overflow:visible;color:#f1f2f4!important;
  font-size:12px!important;font-weight:720!important;text-transform:none!important;white-space:nowrap;
}
.unified-script-picker {position:relative;min-width:0;max-width:100%;font:inherit;}
.unified-script-picker>summary {
  display:flex;min-width:0;height:30px;padding:0 6px;align-items:center;gap:6px;border-radius:6px;list-style:none;
  color:#f1f2f4;cursor:pointer;
}
.unified-script-picker>summary::-webkit-details-marker {display:none;}
.unified-script-picker>summary:hover {background:rgba(255,255,255,.055);}
.unified-script-picker>summary>span:first-child {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.unified-script-picker>summary>span:last-child {color:#767c86;font-size:9px;transition:transform .14s ease;}
.unified-script-picker[open]>summary>span:last-child {transform:rotate(180deg);}
.unified-script-menu {
  position:absolute;z-index:12;top:34px;left:0;display:grid;width:min(286px,calc(100vw - 18px));max-height:min(430px,70vh);padding:5px;
  gap:1px;font:500 11px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  overflow:auto;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:#17181c;
  box-shadow:0 18px 46px rgba(0,0,0,.58);
}
.unified-script-menu>span {
  margin:6px 8px 3px;color:#737985;font-size:9px;font-weight:780;letter-spacing:.08em;text-transform:uppercase;
}
.unified-script-menu>button {
  box-sizing:border-box;display:flex;width:100%;min-width:0;min-height:32px;padding:7px 8px;align-items:center;
  justify-content:space-between;gap:14px;border:0;border-radius:6px;background:transparent;color:#e1e3e7;
  font:600 11px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  text-align:left;white-space:nowrap;cursor:pointer;
}
.unified-script-menu>button:hover {background:rgba(255,255,255,.065);color:#fff;}
.unified-script-menu>button strong {min-width:0;overflow:hidden;font-weight:620;text-overflow:ellipsis;white-space:nowrap;}
.unified-script-menu>button small,.unified-script-menu>small {color:#808692;font-size:10px;font-weight:520;}
.unified-script-menu>small {padding:8px 9px;}
.unified-code-actions {display:flex;align-items:center;gap:3px;}
.unified-code-actions[hidden],.unified-code-logs[hidden] {display:none!important;}
.unified-code-actions>button,.unified-code-actions>details>summary,
.chart-tool-dialog.unified-code-editor>header>button {
  box-sizing:border-box;display:inline-grid;min-width:30px;height:30px;padding:0 9px;place-items:center;border:1px solid transparent;
  border-radius:7px;background:transparent;color:#9298a3;font-size:11px!important;font-weight:650;line-height:1;cursor:pointer;
}
.chart-tool-dialog.unified-code-editor>header>button {margin-left:auto!important;}
.chart-tool-dialog.unified-code-editor>header>button[aria-label="Close code editor"] {
  width:30px!important;min-width:30px!important;padding:0!important;border-color:rgba(255,255,255,.11)!important;
  color:#c8ccd3!important;font-size:19px!important;font-weight:500!important;
}
.unified-code-actions .unified-code-run {padding:0 13px;border:0;background:#f0f1f3;color:#17181b;font-weight:800;}
.unified-code-actions .unified-code-review {padding:0 10px;border-color:rgba(255,255,255,.11);color:#c6c9d0;}
.unified-code-actions .unified-code-icon {width:30px;padding:0;font-size:15px;}
.unified-code-actions>button:hover,.unified-code-actions>details>summary:hover,
.chart-tool-dialog.unified-code-editor>header>button:hover {background:rgba(255,255,255,.06);color:#fff;}
.unified-code-actions .unified-code-run:hover {background:#fff;color:#111216;}
.unified-code-more {position:relative;}
.unified-code-more>summary {list-style:none;font-size:17px!important;}
.unified-code-more>summary::-webkit-details-marker {display:none;}
.unified-code-more>div {
  position:absolute;z-index:5;top:34px;right:0;display:grid;width:204px;padding:5px;gap:1px;border:1px solid rgba(255,255,255,.11);
  border-radius:9px;background:#17181c;box-shadow:0 16px 40px rgba(0,0,0,.52);
}
.unified-code-more>div button {
  box-sizing:border-box;width:100%;min-height:32px;padding:7px 9px;border:0;border-radius:6px;background:transparent;color:#d8d9de;
  font:600 11px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  text-align:left;white-space:nowrap;cursor:pointer;
}
.unified-code-more>div button:hover {background:rgba(255,255,255,.06);}

/* Header popovers must keep application-menu typography even while the code
   editor raises its source font size. These selectors cover both the unified
   chart-tool editor and the older strategy editor entry point. */
:is(#code-script-menu,#code-studio-more-menu) {
  box-sizing:border-box;font:500 11px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#code-script-menu {width:min(286px,calc(100vw - 18px))!important;padding:5px!important;}
#code-script-menu :is(button,.code-script-empty,.code-script-menu-label) {
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
#code-script-menu button {min-height:32px!important;padding:7px 8px!important;font-size:11px!important;line-height:1.25!important;white-space:nowrap;}
#code-studio-more-menu {width:204px!important;gap:1px;}
#code-studio-more-menu button {
  box-sizing:border-box;width:100%;min-height:32px;padding:7px 9px!important;border-radius:6px;
  font:600 11px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  white-space:nowrap;cursor:pointer;
}
.chart-tool-dialog.unified-code-editor>form {
  display:flex!important;min-height:0!important;max-height:none!important;flex:1!important;margin:0!important;padding:0!important;
  flex-direction:column!important;overflow:hidden!important;
}
.chart-tool-dialog.unified-code-editor>form>.formula-fields {
  display:none!important;
}
.chart-tool-dialog.unified-code-editor>form>.formula-fields>:not(.chart-settings-panel):not(.pine-settings-panel) {display:none!important;}
.chart-tool-dialog.unified-code-editor .chart-settings-panel,
.chart-tool-dialog.unified-code-editor .pine-settings-panel {display:none!important;}
.chart-tool-dialog.unified-code-editor .chart-settings-panel.is-code,
.chart-tool-dialog.unified-code-editor .pine-settings-panel:has(.python-chart-code-editor) {
  display:flex!important;width:100%!important;min-width:0!important;min-height:0!important;align-self:stretch!important;
  flex:1!important;margin:0!important;padding:0!important;flex-direction:column!important;border:0!important;overflow:hidden!important;
}
.chart-tool-dialog.unified-code-editor .chart-settings-panel.is-code>details,
.chart-tool-dialog.unified-code-editor .pine-settings-panel>details:has(.python-chart-code-editor) {
  display:flex!important;width:100%!important;min-width:0!important;min-height:0!important;align-self:stretch!important;
  flex:1!important;margin:0!important;padding:0!important;flex-direction:column!important;border:0!important;
}
.chart-tool-dialog.unified-code-editor .chart-settings-panel.is-code>details>summary,
.chart-tool-dialog.unified-code-editor .pine-settings-panel>details:has(.python-chart-code-editor)>summary,
.chart-tool-dialog.unified-code-editor .pine-editor-toolbar,
.chart-tool-dialog.unified-code-editor .pine-editor-shortcuts,
.chart-tool-dialog.unified-code-editor .pine-historical-alert-note,
.chart-tool-dialog.unified-code-editor .pine-code-validation,
.chart-tool-dialog.unified-code-editor .python-validation-row,
.chart-tool-dialog.unified-code-editor .chart-code-wrap {display:none!important;}
.chart-tool-dialog.unified-code-editor label:has(>.python-chart-code-editor) {
  display:flex!important;width:100%!important;min-width:0!important;min-height:0!important;align-self:stretch!important;
  flex:1!important;margin:0!important;padding:0!important;flex-direction:column!important;
}
.chart-tool-dialog.unified-code-editor .python-chart-code-editor {
  display:flex!important;width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;align-self:stretch!important;
  flex:1!important;margin:0!important;border:0!important;border-radius:0!important;background:#0b0c0f!important;
}
.chart-tool-dialog.unified-code-editor>form>.python-chart-code-editor {
  display:flex!important;min-height:0!important;max-height:none!important;flex:1 1 0!important;overflow:hidden!important;
}
.unified-code-review-panel {
  position:absolute;z-index:4;top:44px;right:0;bottom:25px;display:flex;width:min(410px,42vw);min-width:320px;
  flex-direction:column;border-left:1px solid rgba(255,255,255,.09);background:#121317;box-shadow:-18px 0 40px rgba(0,0,0,.26);
}
.unified-code-review-panel[hidden] {display:none!important;}
.unified-code-review-panel>header {display:flex;min-height:43px;padding:0 13px;align-items:center;border-bottom:1px solid rgba(255,255,255,.075);}
.unified-code-review-panel>header strong {color:#eceef2;font-size:12px;}
.unified-code-review-panel>header button {margin-left:auto;border:0;background:transparent;color:#858b96;font-size:18px;cursor:pointer;}
.unified-code-review-status {min-height:31px;margin:0;padding:9px 13px;border-bottom:1px solid rgba(255,255,255,.06);color:#76cde5;font-size:10px;}
.unified-code-review-body {min-height:0;flex:1;padding:14px 15px;overflow:auto;color:#c9cdd5;font-size:12px;line-height:1.55;}
.unified-code-review-body :is(h1,h2,h3) {margin:14px 0 7px;color:#f1f2f5;font-size:13px;}
.unified-code-review-body :is(p,ul,ol,pre) {margin:0 0 11px;}
.unified-code-review-body pre {padding:10px;overflow:auto;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:#090a0d;color:#dfe9f5;font:11px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;}
.unified-code-review-panel>footer {display:flex;min-height:48px;padding:8px 11px;gap:7px;border-top:1px solid rgba(255,255,255,.075);}
.unified-code-review-panel>footer button {min-height:31px;padding:0 11px;border:1px solid rgba(255,255,255,.10);border-radius:7px;background:#202126;color:#cfd2d8;font-size:10px;cursor:pointer;}
.unified-code-review-panel>footer button:last-child {margin-left:auto;border-color:#66b4d6;background:#e9eef3;color:#15171a;font-weight:760;}
.chart-tool-dialog.unified-code-editor.unified-review-open>form {margin-right:min(410px,42vw)!important;}
.chart-tool-dialog.unified-code-editor .python-chart-code-gutter {padding-top:13px!important;background:#101115!important;color:#565c67!important;}
.chart-tool-dialog.unified-code-editor .pine-code-surface {
  position:relative!important;display:block!important;width:auto!important;min-width:0!important;min-height:0!important;
  height:auto!important;align-self:stretch!important;flex:1 1 0!important;overflow:hidden!important;
}
.chart-tool-dialog.unified-code-editor .pine-code-surface[hidden] {display:none!important;}
.chart-tool-dialog.unified-code-editor .pine-code-highlight {display:none!important;}
.chart-tool-dialog.unified-code-editor .pine-code-surface textarea,
.chart-tool-dialog.unified-code-editor .pine-code-surface pre {padding:13px 14px!important;font-size:13px!important;line-height:1.55!important;}
.chart-tool-dialog.unified-code-editor .pine-code-surface textarea {
  position:absolute!important;inset:0!important;box-sizing:border-box!important;
  width:100%!important;height:100%!important;min-height:100%!important;max-height:none!important;
  margin:0!important;overflow:auto!important;resize:none!important;z-index:2!important;
  background:#0b0c0f!important;color:#dce7f4!important;-webkit-text-fill-color:#dce7f4!important;caret-color:#f7f8fa!important;
}
.chart-tool-dialog.unified-code-editor .python-chart-code-editor>textarea {
  position:static!important;display:block!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  align-self:stretch!important;flex:1 1 0!important;margin:0!important;padding:13px 14px!important;overflow:auto!important;border:0!important;border-radius:0!important;
  resize:none!important;background:#0b0c0f!important;color:#dce7f4!important;-webkit-text-fill-color:#dce7f4!important;
  caret-color:#fff!important;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace!important;white-space:pre!important;
}
.chart-tool-dialog.unified-code-editor>form>footer,
.chart-tool-dialog.unified-code-editor>form>.or-error,
.chart-tool-dialog.unified-code-editor>form>.pine-observation-preview,
.chart-tool-dialog.unified-code-editor>form>[role="status"] {display:none!important;}
.unified-code-logs {
  min-height:25px;padding:5px 12px;border-top:1px solid rgba(255,255,255,.07);background:#111216;color:#777d88;font-size:9px;
}
.unified-code-logs[data-state="running"] {color:#9acfed;}
.unified-code-logs[data-state="success"] {color:#75d9bf;}
.unified-code-logs[data-state="error"] {color:#ff9eaa;}

/* Desktop code is a real workspace dock. It participates in the flex layout,
   so opening and resizing it gives the chart less room instead of covering it. */
#workspace>#strategy-editor-resize {order:2;}
#workspace>#strategy-editor {order:3;}
#workspace:has(#strategy-editor:not(.collapsed))>#chat-panel-collapse {display:none;}
#strategy-editor.pine-inline:has(.unified-code-editor) {
  box-sizing:border-box;width:var(--strategy-editor-width,min(48vw,860px));min-width:340px;max-width:min(72vw,980px);
}
body.workspace-editor-mode #workspace>#strategy-editor.pine-inline:has(#py-source):has(.unified-code-editor) {
  position:relative!important;z-index:auto!important;inset:auto!important;display:flex!important;
  flex:0 0 var(--strategy-editor-width,min(48vw,860px))!important;width:var(--strategy-editor-width,min(48vw,860px))!important;
  min-width:340px!important;max-width:min(72vw,980px)!important;height:auto!important;max-height:none!important;
}
#strategy-editor.pine-inline:has(.unified-code-editor)>#strategy-bar {display:none!important;}
#strategy-editor.pine-inline:has(.unified-code-editor)>#se-head {display:none!important;}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.unified-code-editor:not(.unified-code-expanded) {
  position:static!important;z-index:auto!important;inset:auto!important;box-sizing:border-box!important;
  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;
  border:0!important;border-radius:0!important;background:#0d0e11!important;box-shadow:none!important;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.unified-code-editor:not(.unified-code-expanded)>header {
  min-height:44px!important;height:44px!important;padding:7px 9px!important;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.unified-code-editor:not(.unified-code-expanded) .unified-code-review-panel {
  top:44px;width:min(360px,72%);min-width:280px;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.unified-code-editor.unified-code-expanded {
  position:fixed!important;z-index:2600!important;inset:0!important;width:100vw!important;height:100dvh!important;
}
.unified-code-collapse {font-size:20px!important;}
.study-chip.editor-study-pending {--study-color:#69bbed;}
.study-chip.editor-study-pending .study-pending-state {
  display:inline-flex!important;align-items:center;gap:4px;margin-left:4px;color:#9acfed;font-size:9px;font-weight:700;white-space:nowrap;
}
.study-chip.editor-study-pending[data-state="loading"] .study-pending-state::before {
  content:"";width:8px;height:8px;border:1.5px solid #34566f;border-top-color:#77c9f2;border-radius:50%;
  animation:editor-study-spin .7s linear infinite;
}
.study-chip.editor-study-pending[data-state="error"] {--study-color:#ef657a;}
.study-chip.editor-study-pending[data-state="error"] .study-pending-state {color:#ff9eaa;}
@keyframes editor-study-spin {to{transform:rotate(360deg);}}
@media(prefers-reduced-motion:reduce){.study-chip.editor-study-pending .study-pending-state::before{animation:none!important;}}
@media(max-width:700px){
  .unified-code-actions {gap:1px;}
  .unified-code-actions .unified-code-review {padding:0 7px;font-size:10px;}
  .unified-code-actions .unified-code-icon {display:none;}
  .unified-code-review-panel {top:auto;bottom:25px;width:100%;min-width:0;height:48dvh;border-top:1px solid rgba(255,255,255,.09);border-left:0;}
  .chart-tool-dialog.unified-code-editor.unified-review-open>form {margin-right:0!important;margin-bottom:48dvh!important;}
}

/* The indicator library is a workspace, not a dropdown list. It follows the
   same three-part scan used by Vela: navigation, visual catalog, and a stable
   detail/action pane. Pine and Python remain explicit top-level filters. */
#indicators-popover {
  position:fixed!important;inset:12px!important;z-index:2500!important;box-sizing:border-box!important;
  width:auto!important;height:auto!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;
  overflow:hidden!important;border:1px solid rgba(255,255,255,.105)!important;border-radius:10px!important;
  background:#121316!important;box-shadow:0 30px 90px rgba(0,0,0,.72)!important;backdrop-filter:none!important;
}
#indicators-popover.open {display:flex!important;flex-direction:column!important;}
#chart-picker-sticky {
  position:relative!important;top:auto!important;z-index:5!important;flex:none!important;margin:0!important;padding:10px 14px 9px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;background:#15161a!important;
}
#chart-picker-header {display:grid!important;grid-template-columns:auto 1fr auto;align-items:center!important;gap:16px!important;margin:0 0 9px!important;}
#chart-picker-title {font-size:14px!important;font-weight:720!important;}
#chart-picker-language-tabs {display:flex;justify-content:center;gap:3px;}
#chart-picker-language-tabs[hidden] {display:none!important;}
#chart-picker-language-tabs button {
  min-width:68px;height:30px;margin:0;padding:0 13px;border:1px solid transparent;border-radius:7px;
  background:transparent;color:#8d929d;font-size:11px;font-weight:700;cursor:pointer;
}
#chart-picker-language-tabs button:hover {background:rgba(255,255,255,.045);color:#e8e9ed;}
#chart-picker-language-tabs button[aria-pressed="true"] {border-color:rgba(255,255,255,.10);background:#292a2f;color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.035);}
#chart-picker-intro {position:absolute!important;right:52px;top:9px;width:auto;margin:0!important;}
#chart-picker-intro .chart-picker-subtitle {display:none;}
#chart-picker-create-ai {height:30px!important;padding:0 11px!important;border-color:rgba(255,255,255,.10)!important;background:#222329!important;color:#dfe1e7!important;box-shadow:none!important;}
#pine-picker-quick-actions {margin:0 0 8px;}
#indicator-search {height:39px!important;min-height:39px!important;margin:0!important;padding:8px 13px 8px 38px!important;border-color:rgba(255,255,255,.085)!important;border-radius:8px!important;background:#202126!important;color:#ededf0!important;}
#chart-picker-sticky::after {content:"⌕";position:absolute;left:27px;bottom:17px;color:#868b95;font-size:18px;pointer-events:none;}
#chart-picker-filter-disclosure {position:absolute;right:15px;bottom:12px;margin:0!important;}
#chart-picker-filter-disclosure summary {height:28px;margin:0;padding:0 8px;align-items:center;border-radius:6px;background:#26272c;color:#a9adb5;}
#chart-picker-filters {position:absolute;right:0;top:35px;width:520px;margin:0!important;box-shadow:0 18px 44px rgba(0,0,0,.65);}
#indicator-search-hint,#pine-picker-categories {display:none!important;}
#chart-picker-browser {
  display:grid!important;grid-template-columns:176px minmax(0,1fr) 294px!important;align-items:stretch!important;gap:0!important;
  min-height:0!important;flex:1!important;overflow:hidden!important;
}
#chart-picker-sidebar {min-height:0;padding:18px 10px;overflow:auto;border-right:1px solid rgba(255,255,255,.075);background:#15161a;}
.chart-picker-side-label {display:block;margin:4px 7px 7px;color:#696e78;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;}
.chart-picker-sidebar-label {display:block;margin:16px 9px 5px;color:#696e78;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;}
#chart-picker-views .chart-picker-sidebar-label:first-child {margin-top:4px;}
#chart-picker-technicals-count {margin-left:auto;color:#686f7b;font-size:9px;font-weight:700;}
#chart-picker-views {display:flex!important;width:100%!important;max-width:none!important;margin:0 0 20px!important;padding:0!important;flex-direction:column!important;gap:2px!important;overflow:visible!important;border:0!important;background:transparent!important;}
#chart-picker-views .chart-picker-side-label {margin-top:18px;}
#chart-picker-views button {
  display:flex!important;width:100%;min-height:32px;padding:0 9px!important;align-items:center;gap:9px;border:0!important;border-radius:6px!important;
  background:transparent!important;color:#9b9fa8!important;font-size:11px!important;font-weight:600!important;text-align:left;white-space:nowrap;
}
#chart-picker-views button span {width:14px;color:#737985;text-align:center;}
#chart-picker-views button:hover {background:#202126!important;color:#e5e6e9!important;}
#chart-picker-views button[aria-pressed="true"] {background:#2a2b30!important;color:#fff!important;box-shadow:none!important;}
.chart-picker-family-label {margin-top:5px;}
.chart-picker-family-list {display:flex;flex-direction:column;gap:1px;}
.chart-picker-family-list button {border:0;border-radius:6px;background:transparent;padding:7px 9px;color:#858a94;font:inherit;font-size:10.5px;text-align:left;cursor:pointer;}
.chart-picker-family-list button:hover,.chart-picker-family-list button:focus-visible {background:#171a20;color:#e5e7eb;outline:none;}
#chart-picker-results {min-width:0!important;min-height:0!important;padding:18px!important;overflow:auto!important;background:#111216;}
#chart-picker-results>section>h3 {margin-bottom:11px!important;color:#b5b8c0!important;font-size:11px!important;letter-spacing:0!important;text-transform:none!important;}
#chart-picker-results .chart-picker-grid {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-bottom:24px!important;border:0!important;border-radius:0!important;overflow:visible!important;}
#chart-picker-results .chart-picker-card {
  position:relative;display:flex!important;min-height:164px!important;padding:0 0 10px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
  overflow:hidden;border:1px solid rgba(255,255,255,.085)!important;border-radius:9px!important;background:#18191d!important;color:#e9e9ed;text-align:left;
}
#chart-picker-results .chart-picker-card[hidden],
#chart-picker-results .pine-picker-item[hidden],
#chart-picker-results #indicator-list label[hidden] {display:none!important;}
#chart-picker-results .chart-picker-card:hover,#chart-picker-results .chart-picker-card.picker-inspected {border-color:rgba(255,255,255,.19)!important;background:#1d1e22!important;box-shadow:0 12px 28px rgba(0,0,0,.28)!important;}
.chart-picker-preview {display:block;width:100%;height:104px;object-fit:cover;border:0;border-bottom:1px solid rgba(255,255,255,.07);background:transparent;}
#chart-picker-results .chart-picker-community-card:not(:has(>.chart-picker-preview)) {
  min-height:108px!important;padding-top:30px!important;
}
#chart-picker-results .chart-picker-card strong {display:block;padding:9px 10px 0;font-size:11.5px!important;line-height:1.25;}
#chart-picker-results .chart-picker-card>span {display:block;padding:4px 10px 0;color:#858a94!important;font-size:10px!important;line-height:1.35;}
#chart-picker-results .chart-picker-discovery-card {padding-top:0!important;}
#chart-picker-results .chart-picker-discovery-card::before {top:8px;left:8px;padding:3px 6px;border-radius:4px;background:rgba(8,9,12,.78);color:#d8dbe2;z-index:1;}
#chart-picker-results .pine-picker-item>.chart-picker-card {padding-right:0!important;}
#chart-picker-results .pine-picker-favorite {top:7px;right:7px;z-index:2;background:rgba(8,9,12,.70);}
#chart-picker-results #indicator-list {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
#chart-picker-results #indicator-list label {position:relative;display:flex;min-height:160px;overflow:hidden;flex-direction:column;align-items:stretch;gap:0;border-radius:9px;background:#18191d;}
#chart-picker-results #indicator-list label .chart-picker-preview {flex:none;}
#chart-picker-results #indicator-list label input {position:absolute;right:9px;top:9px;z-index:2;}
#chart-picker-detail {
  position:relative!important;top:auto!important;min-height:0!important;padding:18px!important;overflow:auto!important;border:0!important;border-left:1px solid rgba(255,255,255,.075)!important;border-radius:0!important;
  background:#15161a!important;box-shadow:none!important;
}
#chart-picker-detail-preview {height:142px!important;border-color:rgba(255,255,255,.08)!important;background:transparent!important;}
#chart-picker-detail-preview[hidden] {display:none!important;}
#chart-picker-detail-preview::after,#chart-picker-detail-preview i {display:none!important;}
#chart-picker-detail-image {display:block;width:100%;height:100%;object-fit:cover;}
#chart-picker-detail-type {color:#8c919b!important;}
#chart-picker-detail h3 {font-size:18px!important;line-height:1.15;}
#chart-picker-detail p {min-height:0!important;font-size:11.5px!important;}
#chart-picker-detail-add {min-height:38px!important;border:0!important;background:#f1f2f4!important;color:#16171a!important;}
#chart-picker-detail-ask {background:#202126!important;color:#d8dbe1!important;}
@media(max-width:980px){
  #chart-picker-browser {grid-template-columns:150px minmax(0,1fr)!important;}
  #chart-picker-detail {display:none!important;}
  #chart-picker-results .chart-picker-grid,#chart-picker-results #indicator-list {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:680px){
  #indicators-popover {inset:0!important;border-radius:0!important;}
  #chart-picker-header {grid-template-columns:auto 1fr auto!important;}
  #chart-picker-intro {display:none!important;}
  #chart-picker-browser {grid-template-columns:1fr!important;}
  #chart-picker-sidebar {display:none!important;}
  #chart-picker-results .chart-picker-grid,#chart-picker-results #indicator-list {grid-template-columns:1fr!important;}
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded {
  position:fixed;z-index:1999;inset:0;display:flex;width:100vw;height:100dvh;max-width:none;max-height:none;
  padding:0;border:0;border-radius:0;background:#0d0e11;box-shadow:none;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded>header {
  min-height:46px;padding:0 14px;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);background:#141519;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded form {
  display:flex;min-height:0;max-height:none;padding:0;flex:1;flex-direction:column;overflow:hidden;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded .pine-settings-tabs {
  flex:none;margin:0;padding:6px 12px;border-bottom-color:rgba(255,255,255,.075);background:#111216;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded .pine-settings-panel[data-section="code"] {
  display:flex;min-height:0;padding:0;flex:1;flex-direction:column;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded .pine-editor-toolbar {
  flex:none;margin:0;padding:6px 10px;border-bottom:1px solid rgba(255,255,255,.07);background:#141519;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded .python-chart-code-editor {
  height:auto;min-height:0;margin:0;flex:1;border:0;border-radius:0;background:#0b0c0f;
}
#strategy-editor .chart-tool-dialog.pine-inline-dialog.pine-source-expanded form>footer {
  min-height:42px;margin:0;padding:6px 10px;border-top:1px solid rgba(255,255,255,.075);background:#111216;
}

/* TradingView-style attached-tool legend. Rows stay quiet until the pointer or
   keyboard focus reaches them; then the exact controls become available. */
#chart-output-readouts {display:block!important;}
#chart-output-readouts .chart-pane-readout[data-price-pane="true"] {display:none!important;}
#chart-output-readouts .chart-pane-readout {
  right:auto;width:max-content;max-width:calc(100% - 28px);overflow:visible;pointer-events:none;transform:none!important;
}
#chart-output-readouts .chart-readout-content {width:max-content;max-width:100%;overflow:visible!important;}
#chart-output-readouts .chart-readout-tool {
  width:max-content;max-width:100%;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:3px;margin:0 0 2px;pointer-events:auto;
}
#chart-output-readouts .chart-readout-tool-header {
  display:flex!important;width:auto;max-width:100%;gap:2px;padding:0;border:1px solid transparent;border-radius:4px;
  background:transparent;transition:border-color .12s ease,background .12s ease;
}
#chart-output-readouts .chart-readout-tool:is(:hover,:focus-within) .chart-readout-tool-header {
  border-color:#34363d;background:#1b1c21;
}
#chart-output-readouts .chart-readout-tool-name {
  padding:2px 4px;border:0!important;background:transparent!important;color:#c8cbd3;font-size:11px;font-weight:550;
}
#chart-output-readouts .study-strategy-icon {
  display:inline-grid;place-items:center;flex:0 0 15px;width:15px;height:15px;margin:auto 1px;
  border:1px solid rgba(95,209,241,.18);border-radius:3px;background:rgba(22,93,120,.72);color:#5fd1f1;
}
#chart-output-readouts .study-strategy-icon svg {display:block;width:10px;height:10px;}
#chart-output-readouts .chart-readout-tool-controls {display:flex;align-items:center;gap:0;}
#chart-output-readouts .chart-readout-control {
  display:grid;place-items:center;width:0;min-width:0;height:20px;margin:0;padding:0;border:0;border-radius:3px;
  opacity:0;visibility:hidden;overflow:hidden;pointer-events:none;background:transparent;color:#9298a3;font-size:11px;
  transition:opacity .12s ease,width .12s ease,min-width .12s ease;
}
#chart-output-readouts .chart-readout-tool:is(:hover,:focus-within) .chart-readout-control {
  width:22px;min-width:22px;opacity:1;visibility:visible;pointer-events:auto;
}
#chart-output-readouts .chart-readout-control:hover,
#chart-output-readouts .chart-readout-control:focus-visible {background:#2b2d34;color:#fff;outline:none;}
#chart-output-readouts .chart-readout-control .chart-control-icon {
  display:block;width:14px!important;height:14px!important;pointer-events:none;
}
#chart-output-readouts .chart-readout-ask .chart-control-icon {color:#a8bdfd;}
#chart-output-readouts .chart-readout-favorite[aria-pressed="true"] .chart-control-icon {
  fill:currentColor;color:#c2c7cf;
}
#chart-output-readouts .chart-readout-remove:hover {background:#4a2429;color:#ffb7bf;}
#chart-output-readouts .chart-output-readout {
  gap:0;padding:1px 0;background:transparent;border-radius:0;color:#8f949e;font-size:10px;line-height:16px;
}
#chart-output-readouts .chart-readout-swatch {display:none;}
#chart-output-readouts .chart-output-label {display:none;}

/* Persistent chart-side panel rail and watchlist. The rail stays available
   while the panel is closed; opening it reduces chart width without covering
   price action. Quotes shown here come only from markets visited in this
   workspace, so unloaded rows remain explicit instead of displaying samples. */
#workspace > #market-sidebar-resize {order:5;}
#workspace > #market-sidebar {order:6;}
#workspace > #market-alert-sidebar {order:6;}
#workspace > #market-rail {order:7;}
#market-rail {
  flex:0 0 45px;display:flex;flex-direction:column;align-items:center;gap:5px;min-height:0;padding:7px 5px;
  border-left:1px solid rgba(255,255,255,.075);background:#101115;
}
#market-rail>button {
  display:grid;place-items:center;width:34px;height:34px;min-height:34px;margin:0;padding:0;border:0;border-radius:5px;
  background:transparent;color:#777e8a;font-size:15px;line-height:1;cursor:pointer;
}
#market-rail>button:hover,#market-rail>button:focus-visible {background:#23252b;color:#f0f1f4;outline:none;}
#market-rail>button[aria-pressed="true"] {background:#292c34;color:#e9f2ff;box-shadow:inset 2px 0 #61a7ff;}
#market-rail>span {flex:1;}
#market-alert-sidebar {
  flex:0 0 min(420px,38vw);width:min(420px,38vw);min-width:330px;min-height:0;
  border-left:1px solid rgba(255,255,255,.08);background:#0c0d10;color:#e8e8ed;
}
#market-alert-sidebar[hidden] {display:none!important;}
#market-alert-sidebar #alert-manager {
  position:relative;display:block;box-sizing:border-box;width:100%;height:100%;margin:0;padding:18px 18px 24px;
  overflow:auto;border:0;border-radius:0;background:linear-gradient(180deg,#111216,#08090b);box-shadow:none;color:#e8e8ed;
  scrollbar-gutter:stable;
}
#market-alert-sidebar #alert-manager:not([open]),#market-alert-sidebar #alert-manager[hidden] {display:none!important;}
#market-alert-sidebar #alert-manager>summary {
  margin:0 0 16px;padding:0 136px 13px 0;border-bottom:1px solid rgba(255,255,255,.09);
  color:#f3f3f6;font-size:16px;font-weight:760;list-style:none;
}
#market-alert-sidebar #alert-manager>summary::-webkit-details-marker {display:none;}
#market-alert-sidebar .alert-manager-actions {position:absolute;top:10px;right:12px;margin:0;}
#market-alert-sidebar #create-script-alert {display:none!important;}
#market-alert-sidebar #create-price-alert {
  min-height:31px;margin:0;padding:0 11px;border-color:rgba(112,98,231,.34);border-radius:7px;
  background:linear-gradient(135deg,rgba(52,167,198,.12),rgba(105,78,216,.17));color:#e8e7f5;
}
#market-alert-sidebar #create-price-alert::before {content:'+';margin-right:6px;color:#8fe0e3;font-size:15px;font-weight:400;}
#market-alert-sidebar .alert-manager-actions>button[hidden] {display:none!important;}
#market-alert-sidebar #alert-manager-close {
  width:32px;min-width:32px;height:32px;margin:0;padding:0;border:0;border-radius:6px;
  background:transparent;color:transparent;font-size:0;
}
#market-alert-sidebar #alert-manager-close::before {content:'\00d7';color:#9ba2af;font-size:20px;font-weight:300;}
#market-alert-sidebar #alert-manager-close:hover,#market-alert-sidebar #alert-manager-close:focus-visible {background:#24262c;outline:none;}
#market-alert-sidebar .alert-manager-service {
  display:grid;grid-template-columns:8px minmax(0,1fr);align-items:start;gap:3px 9px;
  margin:0 0 14px;padding:11px 12px;border:1px solid rgba(255,255,255,.09);border-radius:9px;
  background:rgba(255,255,255,.025);
}
#market-alert-sidebar .alert-manager-service::before {
  content:'';grid-row:1/3;width:8px;height:8px;margin-top:3px;border-radius:50%;background:#7e8798;
  box-shadow:0 0 10px rgba(126,135,152,.28);
}
#market-alert-sidebar .alert-manager-service strong {color:#e9ebf2;font-size:11px;line-height:1.35;}
#market-alert-sidebar .alert-manager-service span {color:#858e9e;font-size:10px;line-height:1.4;}
#market-alert-sidebar .alert-manager-service[data-state='online'] {border-color:rgba(56,216,171,.22);background:rgba(32,174,134,.055);}
#market-alert-sidebar .alert-manager-service[data-state='online']::before {background:#44dfb1;box-shadow:0 0 12px rgba(68,223,177,.70);}
#market-alert-sidebar .alert-manager-service[data-state='local'] {border-color:rgba(88,193,220,.22);}
#market-alert-sidebar .alert-manager-service[data-state='local']::before {background:#65c9df;box-shadow:0 0 12px rgba(101,201,223,.52);}
#market-alert-sidebar .alert-manager-service[data-state='attention'] {border-color:rgba(239,168,83,.28);background:rgba(190,112,37,.07);}
#market-alert-sidebar .alert-manager-service[data-state='attention']::before {background:#efa853;box-shadow:0 0 12px rgba(239,168,83,.55);}
#market-alert-sidebar .alert-manager-filters {grid-template-columns:minmax(0,1fr) 128px;}
.alert-manager-tabs {
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:-2px 0 14px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.alert-manager-tabs button {
  position:relative;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:38px;
  margin:0;padding:0 7px;border:0;border-radius:0;background:transparent;color:#7f8795;
  font-size:10px;font-weight:680;letter-spacing:.01em;cursor:pointer;
}
.alert-manager-tabs button::after {
  content:'';position:absolute;right:7px;bottom:-1px;left:7px;height:2px;border-radius:2px 2px 0 0;
  background:linear-gradient(90deg,#58d6da,#8070ee);opacity:0;transform:scaleX(.65);
  transition:opacity 140ms ease,transform 140ms ease;
}
.alert-manager-tabs button:hover {color:#c6cad3;background:linear-gradient(180deg,transparent,rgba(255,255,255,.025));}
.alert-manager-tabs button.active {color:#f1f2f6;}
.alert-manager-tabs button.active::after {opacity:1;transform:scaleX(1);}
.alert-manager-tabs button span {
  display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:17px;padding:0 5px;
  border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.035);
  color:#8f96a4;font-size:9px;font-variant-numeric:tabular-nums;
}
.alert-manager-tabs button.active span {border-color:rgba(105,194,225,.20);background:rgba(77,174,211,.09);color:#b9e7f1;}
.alert-preset-bar {display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:end;margin:-4px 0 12px;padding:8px 9px;border:1px solid rgba(255,255,255,.065);border-radius:9px;background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(90,111,223,.025));}
.alert-preset-bar label {min-width:0;margin:0!important;color:#858b98!important;font-size:9px!important;font-weight:750!important;letter-spacing:.05em;text-transform:uppercase;}
.alert-preset-bar select {min-height:33px!important;margin-top:4px!important;padding:5px 8px!important;}
.alert-preset-bar button {width:auto!important;min-height:33px;margin:0!important;padding:6px 9px!important;border-color:rgba(255,255,255,.09)!important;background:rgba(255,255,255,.03)!important;color:#aeb4c0!important;font-size:10px!important;white-space:nowrap;}
.alert-preset-bar button:hover {border-color:rgba(102,209,220,.28)!important;color:#edf8fa!important;}
.alert-schedule-custom {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 10px;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:8px;background:rgba(0,0,0,.12);}
.alert-schedule-custom[hidden] {display:none!important;}
.alert-schedule-custom fieldset {grid-column:1/-1;display:flex;flex-wrap:wrap;gap:5px;margin:0;padding:0;border:0;}
.alert-schedule-custom legend {width:100%;margin:0 0 4px;color:#858b98;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.05em;}
.alert-schedule-custom fieldset label {display:flex!important;align-items:center;gap:4px;margin:0!important;padding:5px 7px;border:1px solid rgba(255,255,255,.07);border-radius:6px;background:rgba(255,255,255,.025);color:#aeb4bf!important;font-size:9px!important;}
.alert-schedule-custom fieldset input {width:auto!important;min-height:0!important;margin:0!important;padding:0!important;}
.alert-schedule-custom>label {margin:0!important;}
.alert-schedule-custom>small {grid-column:1/-1;margin:0!important;}
@media(max-width:520px){.alert-preset-bar{grid-template-columns:minmax(0,1fr) auto}.alert-preset-bar button:last-child{grid-column:2}.alert-schedule-custom{grid-template-columns:1fr}.alert-schedule-custom fieldset,.alert-schedule-custom>small{grid-column:1}}
.alert-log-row {
  margin:0 0 8px;padding:11px 12px;border:1px solid rgba(255,255,255,.075);border-radius:10px;
  background:linear-gradient(145deg,rgba(21,22,27,.92),rgba(10,11,14,.95));
}
.alert-log-row-head {display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px;}
.alert-log-row-head strong {min-width:0;overflow:hidden;color:#e8e9ed;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.alert-log-row-head .alert-manager-state {flex:none;margin:0;}
.alert-log-row p {margin:0 0 5px;color:#b5bac4;font-size:10px;line-height:1.45;}
.alert-log-row p:last-child {margin-bottom:0;}
.alert-log-row .alert-log-error {padding-top:5px;border-top:1px solid rgba(255,106,119,.12);color:#ff9ca8;}
@media(max-width:430px){
  .alert-manager-tabs {grid-template-columns:repeat(2,minmax(0,1fr));}
}
body:has(#market-alert-sidebar #alert-manager[open])::before {display:none!important;}
#market-sidebar-resize {display:block;flex:0 0 5px;cursor:col-resize;touch-action:none;background:#0b0c0f;border-left:1px solid #23252b;}
#market-sidebar-resize[hidden] {display:none;}
#market-sidebar {
  --market-detail-height:38%;flex:0 0 var(--market-panel-width,390px);width:var(--market-panel-width,390px);min-width:310px;max-width:520px;
  display:flex;min-height:0;flex-direction:column;border-left:1px solid rgba(255,255,255,.08);background:#15161a;color:#d6d8df;
}
#market-sidebar.collapsed {display:none;}
.market-sidebar-head {display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:49px;padding:7px 9px;border-bottom:1px solid #282a30;}
.market-sidebar-head>button {display:flex;align-items:center;gap:7px;min-width:0;margin:0;padding:7px 3px;border:0;background:transparent;color:#eceef2;text-align:left;}
.market-sidebar-head>button strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;}
.market-sidebar-head>div {display:flex;gap:3px;}
.market-sidebar-head>div button {width:29px;height:29px;margin:0;padding:0;border:0;border-radius:5px;background:transparent;color:#8d939d;font-size:16px;}
.market-sidebar-head>div button:hover {background:#292b31;color:#fff;}
.market-watchlist-filters {display:grid;grid-template-columns:repeat(3,1fr) auto;gap:2px;margin:7px 8px;padding:3px;border:1px solid #2a2c32;border-radius:8px;background:#111216;}
.market-watchlist-filters>button,.market-watchlist-filters>details>summary {min-height:27px;margin:0;padding:5px 8px;border:0;border-radius:5px;background:transparent;color:#8d929c;font-size:10px;text-align:center;cursor:pointer;list-style:none;}
.market-watchlist-filters>button[aria-pressed="true"] {background:#202126;color:#f0f1f4;}
#market-watchlist-view {position:relative;}
#market-watchlist-view>summary::-webkit-details-marker {display:none;}
#market-watchlist-view>div {position:absolute;z-index:20;top:34px;right:0;display:grid;grid-template-columns:1fr 1fr;gap:4px;width:210px;padding:10px;border:1px solid #32343b;border-radius:8px;background:#18191e;box-shadow:0 18px 42px #000b;}
#market-watchlist-view>div>span {grid-column:1/-1;padding:5px 2px 2px;color:#717783;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;}
#market-watchlist-view>div>button {min-height:27px;margin:0;padding:5px;border:1px solid transparent;border-radius:5px;background:#202127;color:#969ca8;font-size:10px;}
#market-watchlist-view>div>button[aria-pressed="true"] {border-color:#40526e;background:#263246;color:#e9f2ff;}
.market-watchlist-search {display:flex;align-items:center;gap:6px;margin:0 9px;padding:0 2px 6px;border-bottom:1px solid #27292e;color:#7e848e;}
.market-watchlist-search input {width:100%;height:28px;margin:0;padding:4px 3px;border:0;background:transparent;color:#e5e7eb;font-size:11px;outline:none;}
.market-watchlist-columns {display:grid;grid-template-columns:minmax(112px,1fr) 64px 72px 52px;gap:6px;padding:6px 11px;color:#727882;font-size:9px;}
.market-watchlist-columns span:not(:first-child) {text-align:right;}
#market-watchlist-groups {flex:1;min-height:90px;overflow:auto;padding:0 5px 5px;}
.market-watchlist-empty {display:grid;place-items:center;min-height:150px;padding:22px;color:#777d87;text-align:center;font-size:11px;line-height:1.5;}
.market-watchlist-group {margin:0 0 3px;}
.market-watchlist-group>summary {display:flex;align-items:center;gap:7px;min-height:27px;padding:5px 7px;list-style:none;color:#8e949e;font-size:10px;cursor:pointer;}
.market-watchlist-group>summary::-webkit-details-marker {display:none;}
.market-watchlist-group>summary::before {content:'⌄';font-size:9px;}
.market-watchlist-group:not([open])>summary::before {content:'›';}
.market-watchlist-group>summary b {padding:1px 5px;border-radius:999px;background:#24262c;color:#767c87;font-size:9px;}
.market-watchlist-row {position:relative;display:grid;grid-template-columns:minmax(112px,1fr) 64px 72px 52px;align-items:center;gap:6px;min-height:47px;padding:4px 7px;border-radius:5px;}
.market-watchlist-row:hover,.market-watchlist-row.is-current {background:#202126;}
.market-watchlist-open {display:grid;grid-template-columns:25px minmax(0,1fr);grid-template-rows:1fr 1fr;align-items:center;min-width:0;margin:0;padding:0;border:0;background:transparent;color:#ecedf0;text-align:left;}
.market-symbol-avatar {grid-row:1/3;display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#262a33;color:#8bbcff;font-size:9px;font-weight:800;}
.market-watchlist-open strong,.market-watchlist-open small {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.market-watchlist-open strong {font-size:11px;}.market-watchlist-open small {color:#777e89;font-size:9px;}
.market-watchlist-spark {width:62px;height:24px;overflow:visible;}
.market-watchlist-last {text-align:right;color:#e7e8eb;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums;}
.market-watchlist-change {text-align:right;color:#707681;font-size:10px;font-variant-numeric:tabular-nums;}
.market-watchlist-change.positive {color:#18bfa5;}.market-watchlist-change.negative {color:#f05c6b;}
.market-watchlist-remove {position:absolute;right:3px;top:3px;display:none;width:19px;height:19px;margin:0;padding:0;border:0;border-radius:4px;background:#2b2d34;color:#a9adb5;}
.market-watchlist-row:hover .market-watchlist-remove,.market-watchlist-row:focus-within .market-watchlist-remove {display:block;}
.market-watchlist-footer {display:flex;justify-content:space-between;gap:8px;padding:5px 9px;border-top:1px solid #292b31;color:#737985;font-size:9px;}
#market-detail-resize {flex:0 0 7px;cursor:row-resize;touch-action:none;border-top:1px solid #30323a;border-bottom:1px solid #202126;background:#111216;}
#market-symbol-detail {flex:0 0 var(--market-detail-height);min-height:170px;max-height:68%;overflow:auto;background:#131418;}
#market-symbol-detail>header {position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:61px;padding:9px 12px;border-bottom:1px solid #2a2c32;background:#15161aec;backdrop-filter:blur(8px);}
.market-detail-identity {display:flex;align-items:center;gap:9px;min-width:0;}.market-detail-identity>span {display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#263047;color:#9ebfff;}
.market-detail-identity div {display:grid;min-width:0;}.market-detail-identity strong {color:#f0f1f4;font-size:13px;}.market-detail-identity small {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#747b86;font-size:9px;}
#market-detail-toggle {width:28px;height:28px;margin:0;padding:0;border:0;border-radius:5px;background:transparent;color:#7e848f;}
#market-detail-body {padding:15px 14px;}.market-detail-price {display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:16px;}.market-detail-price strong {font-size:25px;letter-spacing:.01em;color:#f0f1f4;font-variant-numeric:tabular-nums;}.market-detail-price span {font-size:11px;color:#777d87;}.market-detail-price span.positive {color:#17bfa5;}.market-detail-price span.negative {color:#f05c6b;}
.market-range-card {display:grid;grid-template-columns:108px 1fr;align-items:center;gap:14px;}.market-range-card dl {display:grid;gap:7px;margin:0;}.market-range-card dl>div {display:flex;justify-content:space-between;gap:12px;font-size:10px;}.market-range-card dt {color:#7b818c;}.market-range-card dd {margin:0;color:#e1e3e8;font-weight:650;font-variant-numeric:tabular-nums;}
#market-range-gauge {position:relative;display:grid;place-items:center;width:100px;height:58px;overflow:hidden;border-radius:100px 100px 0 0;border:5px solid #2b3039;border-bottom:0;color:#7f8793;}#market-range-gauge::before {content:'';position:absolute;inset:4px 4px 0;border-radius:100px 100px 0 0;border:4px solid #397ed8;border-bottom:0;opacity:.75;}#market-range-gauge i {position:absolute;left:50%;bottom:0;width:2px;height:41px;background:#e9edf4;transform-origin:50% 100%;transform:rotate(var(--range-angle,-90deg));}#market-range-gauge span {align-self:end;margin-bottom:8px;color:#dce5f3;font-size:11px;font-weight:700;}
#market-detail-note {margin:15px 0 0;padding-top:11px;border-top:1px solid #292b31;color:#747b86;font-size:9px;line-height:1.45;}
#market-symbol-detail.is-minimized {flex-basis:61px;min-height:61px;overflow:hidden;}#market-symbol-detail.is-minimized #market-detail-body {display:none;}
@media(max-width:1050px) {#market-sidebar {position:absolute;z-index:70;top:0;right:45px;bottom:0;width:min(390px,calc(100vw - 87px));box-shadow:-20px 0 50px #000a;}#market-sidebar-resize {display:none!important;}}
@media(max-width:1050px) {#market-alert-sidebar {position:absolute;z-index:70;top:0;right:45px;bottom:0;width:min(420px,calc(100vw - 87px));min-width:0;box-shadow:-20px 0 50px #000a;}}
@media(max-width:680px) {#market-rail {flex-basis:42px;}#market-sidebar {right:42px;width:calc(100vw - 84px);min-width:0;}.market-watchlist-columns,.market-watchlist-row {grid-template-columns:minmax(110px,1fr) 58px 62px;}.market-watchlist-columns span:nth-child(2),.market-watchlist-spark {display:none;}}
@media(max-width:680px) {#market-alert-sidebar {right:42px;width:calc(100vw - 84px);}}
/* The saved-market star remains available in the toolbar, but the duplicate
   horizontal watchlist consumes chart height in both charting products. The
   full Charts workspace exposes saved markets in its side panel; LumeQuant
   keeps them as workspace state without rendering an otherwise empty strip. */
body:is(.product-charts,.product-quant) #watchlist-strip {display:none!important;}
body:not(.product-charts) :is(#market-sidebar,#market-sidebar-resize,#market-alert-sidebar,#market-rail) {display:none!important;}
/* Charts is already selected in the product switcher. Its Backtest, Alerts,
   and Code destinations live in the chart-side panel rail, so repeating a
   second mode strip in the header wastes space and creates two navigation
   models for the same workspace. Quant and Discover keep their section tabs. */
body.product-charts #workspace-mode-tabs {display:none!important;}
#chart-tools-bar,
#chart-tools-bar:not(.is-expanded) {
  min-height:0!important;padding:0!important;gap:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;
  pointer-events:none;
}
#chart-tools-bar :is(#chart-tools-toggle,.chart-tools-scroll,.study-chip) {pointer-events:auto;}
#chart-tools-bar.is-expanded #chart-studies {
  width:max-content!important;max-width:100%!important;max-height:160px!important;
  flex:0 1 auto!important;flex-direction:column!important;flex-wrap:nowrap!important;
  align-items:flex-start!important;gap:1px!important;padding:0!important;overflow:auto!important;
  pointer-events:none;
}
#chart-tools-bar .study-chip > :is(.study-preview,.study-parameters,.study-language,.study-runtime-state) {
  display:none!important;
}
#chart-tools-bar .study-chip > button {
  width:0!important;min-width:0!important;padding:0!important;
  opacity:0;visibility:hidden;pointer-events:none;overflow:hidden;
  transition:opacity .12s ease,width .12s ease,min-width .12s ease;
}
#chart-tools-bar .study-chip:is(:hover,:focus-within) > button {
  width:23px!important;min-width:23px!important;
  opacity:1;visibility:visible;pointer-events:auto;
}
#chart-tools-bar.is-expanded .study-chip {
  min-height:25px!important;height:25px!important;padding:0 3px 0 6px!important;
  width:max-content!important;max-width:100%!important;flex:0 0 auto!important;flex-wrap:nowrap!important;
  border:1px solid transparent!important;border-radius:4px!important;
  background:transparent!important;box-shadow:none!important;
}
#chart-tools-bar.is-expanded .study-chip:is(:hover,:focus-within) {
  border-color:#35383f!important;background:#202126!important;
}
#chart-tools-bar.is-expanded .study-chip > strong {
  max-width:250px!important;font-size:11px!important;font-weight:550!important;
}

/* Vela-style indicator legend: a quiet vertical list over the chart, with
   hover-only row controls and one chevron below the studies to hide/show it. */
#chart-tools-bar,
#chart-tools-bar.is-expanded,
#chart-tools-bar:not(.is-expanded) {
  position:absolute!important;z-index:24;top:8px;left:8px;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  width:auto!important;max-width:min(430px,calc(100% - 84px))!important;
  padding:0!important;gap:1px!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;
}
#chart-tools-bar[hidden] {display:none!important;}
#chart-shell:has(#paper-chart-widget:not([hidden])) #chart-tools-bar {top:78px!important;}
@media(max-width:800px){#chart-shell:has(#paper-chart-widget:not([hidden])) #chart-tools-bar {top:70px!important;}}
#chart-tools-bar .chart-tools-scroll {display:none!important;}
#chart-tools-bar #chart-studies,
#chart-tools-bar.is-expanded #chart-studies {
  order:1!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  width:auto!important;max-width:100%!important;max-height:none!important;
  padding:0!important;gap:1px!important;overflow:visible!important;
}
#chart-tools-bar:not(.is-expanded) #chart-studies {display:none!important;}
#chart-tools-toggle.study-shelf-summary,
#chart-tools-bar:has(.study-chip.is-strategy) #chart-tools-toggle {
  order:2!important;display:inline-grid!important;place-items:center!important;
  width:auto!important;min-width:22px!important;height:20px!important;min-height:20px!important;
  margin:0 0 0 5px!important;padding:0 5px!important;border:0!important;border-radius:4px!important;
  background:transparent!important;color:#7f8792!important;font-size:11px!important;line-height:1!important;
}
#chart-tools-toggle.study-shelf-summary::before,
#chart-tools-bar:has(.study-chip.is-strategy) #chart-tools-toggle::after {content:none!important;display:none!important;}
#chart-tools-toggle.study-shelf-summary:hover,
#chart-tools-toggle.study-shelf-summary:focus-visible {background:#202126!important;color:#e4e6eb!important;}
#chart-tools-bar .study-chip {
  min-height:25px!important;height:25px!important;padding:0 3px 0 6px!important;
  width:auto!important;max-width:100%!important;border:1px solid transparent!important;
  border-radius:4px!important;background:transparent!important;box-shadow:none!important;
}
#chart-tools-bar .study-chip:is(:hover,:focus-within) {border-color:#35383f!important;background:#202126!important;}
#chart-tools-bar .study-chip > .study-strategy-icon {
  display:inline-grid!important;place-items:center!important;flex:0 0 15px;width:15px;height:15px;
  margin:0 2px 0 1px;border:1px solid rgba(95,209,241,.18);border-radius:3px;background:rgba(22,93,120,.72);color:#5fd1f1;
}
#chart-tools-bar .study-chip > .study-strategy-icon svg {width:10px;height:10px;}
#chart-tools-bar .study-chip .study-favorite[aria-pressed="true"] .chart-control-icon {
  fill:currentColor;color:#c2c7cf;
}

/* Attached tool settings follow the compact Vela sheet: the study name is
   the header, tabs are a quiet underline, controls scan as label/value rows,
   and the footer keeps secondary actions away from Cancel / OK. */
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-settings-only {
  width:min(520px,calc(100vw - 28px));max-height:min(82vh,720px);padding:20px 20px 16px;
  border:1px solid #292b32;border-radius:10px;background:#111216;
  box-shadow:0 28px 90px #000c,inset 0 1px rgba(255,255,255,.035);
}
.pine-chart-settings.pine-settings-only>header {
  min-height:38px;padding:0 0 15px;border-bottom:1px solid #292b31;
}
.pine-chart-settings.pine-settings-only>header h2 {
  margin:0!important;color:#f1f2f5!important;font-size:20px!important;font-weight:650!important;line-height:1.2!important;letter-spacing:-.025em!important;text-transform:none!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.pine-chart-settings.pine-settings-only>header button {
  width:26px;height:26px;min-height:26px;margin:0;padding:0;border:0;background:transparent;
  color:#9297a2;font-size:19px;font-weight:400;
}
.pine-chart-settings.pine-settings-only>header button:hover {background:#23252b;color:#fff;}
.pine-chart-settings.pine-settings-only form {max-height:calc(min(82vh,720px) - 73px);}
.pine-chart-settings.pine-settings-only .formula-fields {padding:0 3px 0 0;scrollbar-width:thin;}
.pine-chart-settings.pine-settings-only :is(.pine-editor-meta,.pine-attached-script-details,.pine-community-origin,.pine-execution-status) {
  display:none!important;
}
.pine-chart-settings.pine-settings-only .pine-settings-tabs {
  position:sticky;top:0;z-index:3;display:flex;gap:24px;margin:0;padding:0 2px;
  border:0;border-bottom:1px solid #292b31;border-radius:0;background:#111216;backdrop-filter:none;
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-settings-only .pine-settings-tabs button {
  position:relative;flex:0 0 auto;min-width:0;min-height:44px;padding:2px 0 0;border:0;border-radius:0;
  background:transparent;color:#838894;font-size:13px;font-weight:600;box-shadow:none;
}
.pine-chart-settings.pine-settings-only .pine-settings-tabs button:hover {background:transparent;color:#d7d9de;}
.pine-chart-settings.pine-settings-only .pine-settings-tabs button[aria-selected="true"] {
  background:transparent;color:#f1f2f5;box-shadow:none;
}
.pine-chart-settings.pine-settings-only .pine-settings-tabs button[aria-selected="true"]::after {
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:#f1f2f5;
}
.pine-chart-settings.pine-settings-only .pine-settings-panel {padding-top:5px;}
.pine-chart-settings.pine-settings-only .pine-settings-panel[id^="pine-inputs-"] {max-width:none;}
.pine-chart-settings.pine-settings-only .pine-input-controls:not(:empty) {margin:0;border-top:0;}
.pine-chart-settings.pine-settings-only .pine-input-controls>label,
.pine-chart-settings.pine-settings-only .pine-input-inline-row>label,
.pine-chart-settings.pine-settings-only .pine-input-field {
  grid-template-columns:minmax(145px,1fr) 20px minmax(150px,210px);gap:12px;min-height:46px;
  padding:6px 2px;border-top:1px solid rgba(255,255,255,.055);font-size:11.5px;font-weight:580;
}
.pine-chart-settings.pine-settings-only .pine-input-controls>.pine-input-field:first-child {border-top:0;}
.pine-chart-settings.pine-settings-only .pine-input-field :is(input:not([type="checkbox"]),select,textarea) {
  min-height:32px;padding:5px 9px;border-color:#30323a;border-radius:6px;background:#0b0c0f;font-size:11.5px;
}
.pine-chart-settings.pine-settings-only .pine-input-field :is(input:not([type="checkbox"]),select,textarea):focus {
  border-color:#8b91a0;box-shadow:0 0 0 2px rgba(255,255,255,.07);
}
.pine-chart-settings.pine-settings-only .pine-input-help summary {border-color:#3a3c44;color:#777d88;}
.pine-chart-settings.pine-settings-only .pine-input-group {border-bottom:1px solid #292b31;}
.pine-chart-settings.pine-settings-only .pine-input-group-heading {
  min-height:36px;padding:9px 2px;color:#8c919c;font-size:9px;letter-spacing:.10em;
}
.pine-chart-settings.pine-settings-only .pine-input-group[open]>.pine-input-group-body {padding:0 2px 4px;}
.pine-chart-settings.pine-settings-only .pine-input-group-count {border:0;background:transparent;color:#686d77;}
.pine-chart-settings.pine-settings-only .pine-input-browser {margin:5px 0 7px;}
.pine-chart-settings.pine-settings-only .pine-input-browser-actions button {min-height:30px;padding:4px 8px;}
.pine-chart-settings.pine-settings-only .pine-settings-panel[id^="pine-inputs-"]>button.secondary {
  min-height:28px;margin:9px 4px 3px 0;padding:4px 7px;border:0;background:transparent;color:#777d88;
}
.pine-chart-settings.pine-settings-only .pine-settings-panel[id^="pine-inputs-"]>button.secondary:hover {color:#d3d5db;background:#202126;}
.pine-chart-settings.pine-settings-only :is(.pine-secondary-markets,details:has(>summary:first-child))>summary {
  margin:4px 0;padding:6px 2px;color:#7b808b;font-size:10px;font-weight:600;
}
.pine-chart-settings.pine-settings-only .pine-property-group,
.pine-chart-settings.pine-settings-only .pine-visibility-group {
  margin:4px 0 8px;padding:10px 11px 12px;border-color:#292b31;border-radius:7px;background:#0d0e12;
}
.pine-chart-settings.pine-settings-only .pine-properties-grid {grid-template-columns:1fr;gap:7px;}
.pine-chart-settings.pine-settings-only form>footer {
  position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) 88px 88px!important;align-items:center;gap:8px;
  margin-top:10px;padding:16px 0 0;border-top:1px solid #292b31;background:#111216;backdrop-filter:none;
}
.pine-chart-settings.pine-settings-only footer .pine-footer-more {grid-column:1;grid-row:1;min-width:0;order:1;}
.pine-chart-settings.pine-settings-only footer .pine-settings-cancel {grid-column:2!important;grid-row:1!important;order:2!important;}
.pine-chart-settings.pine-settings-only footer button[type="submit"] {grid-column:3!important;grid-row:1!important;order:3!important;}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-settings-only footer button {
  width:100%;min-height:34px;border-radius:6px;font-size:11px;box-shadow:none;
}
:is(#opening-range-dialog,.chart-tool-dialog).pine-chart-settings.pine-settings-only footer button[type="submit"] {
  border-color:#e8e9ed;background:#eceef2;color:#101116;font-weight:760;box-shadow:none;
}
.pine-chart-settings.pine-settings-only .pine-footer-more>summary {
  width:max-content;min-height:32px;justify-content:flex-start;margin:0;padding:0 7px;border-radius:6px;color:#8b909b;
}
.pine-chart-settings.pine-settings-only .pine-footer-more>summary::before {content:"▾";font-size:11px;}
.pine-chart-settings.pine-settings-only .pine-footer-more[open]>.pine-footer-more-grid {
  position:absolute;z-index:8;left:0;right:0;bottom:44px;display:grid;padding:10px;
  border:1px solid #30323a;border-radius:8px;background:#15161b;box-shadow:0 18px 55px #000c;
}
@media(max-width:520px) {
  .pine-chart-settings.pine-settings-only .pine-input-controls>label,
  .pine-chart-settings.pine-settings-only .pine-input-inline-row>label,
  .pine-chart-settings.pine-settings-only .pine-input-field {grid-template-columns:minmax(110px,1fr) 18px minmax(120px,46%);gap:8px;}
  .pine-chart-settings.pine-settings-only form>footer {grid-template-columns:minmax(0,1fr) 76px 76px;}
}

/* Python strategy settings use the same compact TradingView/Vela sheet as
   Pine. Inputs come from the script, Properties contains only simulator
   properties, and appearance/visibility share the same quiet row system. */
:is(#opening-range-dialog,.chart-tool-dialog).python-strategy-settings.pine-settings-only {
  width:min(520px,calc(100vw - 28px));max-height:min(82vh,720px);
}
.python-strategy-settings.pine-settings-only form {max-height:calc(min(82vh,720px) - 67px);}
.python-strategy-settings.pine-settings-only .formula-fields {min-height:260px;}
.python-strategy-settings.pine-settings-only .se-group {
  margin:0;padding:0;border:0;background:transparent;
}
.python-strategy-settings.pine-settings-only :is(#py-inputs-section,#py-properties-section,#py-style-section,#py-visibility-section)>.se-group-title,
.python-strategy-settings.pine-settings-only :is(#py-properties-section,#py-style-section,#py-visibility-section)>p.se-help {
  display:none!important;
}

/* Script-declared inputs: one readable label and one predictable value. */
.python-strategy-settings.pine-settings-only #py-inputs-section>.python-testing-heading,
.python-strategy-settings.pine-settings-only #py-inputs-section>.strategy-period-presets,
.python-strategy-settings.pine-settings-only #py-inputs-section>.python-history-field,
.python-strategy-settings.pine-settings-only #py-inputs-section>#py-advanced-execution,
.python-strategy-settings.pine-settings-only #py-inputs-section>#py-technical-details {
  display:none!important;
}
.python-strategy-settings.pine-settings-only #py-parameter-controls {display:block;margin:0;}
.python-strategy-settings.pine-settings-only .python-parameter-field {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(150px,210px)!important;align-items:center;gap:14px;flex-direction:row!important;
  min-height:46px;margin:0;padding:6px 2px;border-bottom:1px solid rgba(255,255,255,.055);
  color:#d1d3d9;font-size:11.5px;font-weight:580;
}
.python-strategy-settings.pine-settings-only .python-parameter-field :is(input:not([type="checkbox"]),select) {
  width:100%;min-height:32px;margin:0;padding:5px 9px;border:1px solid #30323a;border-radius:6px;background:#0b0c0f;
  color:#eceef2;font-size:11.5px;
}
.python-strategy-settings.pine-settings-only .python-parameter-boolean input {justify-self:end;width:18px;height:18px;min-height:18px;margin:0;accent-color:#d8d9dd;}
.python-strategy-settings.pine-settings-only #py-inputs-section:has(#py-parameter-controls:not(:empty)) #py-advanced-params {display:none!important;}
.python-strategy-settings.pine-settings-only #py-advanced-params {
  margin:8px 0 0;padding:9px 2px;border:0;border-top:1px solid #292b31;background:transparent;
}

/* TradingView-style Properties: flat sections and aligned value controls. */
.python-strategy-settings.pine-settings-only #py-properties-section>
  :not(.python-property-overview):not(.python-property-heading):not(.tv-property-row):not(#py-signal-costs) {
  display:none!important;
}
.python-strategy-settings.pine-settings-only .python-property-overview {
  margin:0;padding:0;border:0;border-radius:0;background:transparent;
}
.python-strategy-settings.pine-settings-only :is(.python-property-overview>h4,.python-property-heading) {
  margin:13px 0 3px;padding:0;color:#797e89;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;
}
.python-strategy-settings.pine-settings-only .python-property-overview>h4 {margin-top:7px;}
.python-strategy-settings.pine-settings-only .tv-property-row {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(180px,230px)!important;align-items:center;gap:14px;flex-direction:row!important;
  min-height:44px;margin:0;padding:5px 2px;border-bottom:1px solid rgba(255,255,255,.055);
  color:#d1d3d9;font-size:11.5px;font-weight:580;
}
.python-strategy-settings.pine-settings-only .tv-property-control {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,112px);gap:7px;min-width:0;
}
.python-strategy-settings.pine-settings-only .tv-property-control.single {grid-template-columns:minmax(0,1fr);}
.python-strategy-settings.pine-settings-only .tv-property-control :is(input,select) {
  box-sizing:border-box;width:100%;min-width:0;min-height:32px;height:32px;margin:0;padding:5px 8px;
  border:1px solid #30323a;border-radius:6px;background:#0b0c0f;color:#eceef2;font-size:11.5px;
}
.python-strategy-settings.pine-settings-only .tv-property-control :disabled {color:#777c87;background:#0d0e11;opacity:1;}
.python-strategy-settings.pine-settings-only #py-signal-costs {display:block;}

/* Appearance and interval visibility use the same rows and the modal OK
   action; duplicate in-panel apply buttons stay out of the interface. */
.python-strategy-settings.pine-settings-only #py-style-section>.py-risk-grid {display:block;margin:4px 0 0;}
.python-strategy-settings.pine-settings-only #py-style-section .se-field {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(150px,210px)!important;align-items:center;gap:14px;flex-direction:row!important;
  min-height:46px;margin:0;padding:6px 2px;border-bottom:1px solid rgba(255,255,255,.055);
  color:#d1d3d9;font-size:11.5px;
}
.python-strategy-settings.pine-settings-only #py-style-section .se-field :is(input:not([type="checkbox"]),select) {
  box-sizing:border-box;width:100%;min-height:32px;margin:0;padding:5px 9px;border:1px solid #30323a;border-radius:6px;background:#0b0c0f;
}
.python-strategy-settings.pine-settings-only #py-style-section input[type="color"] {height:32px;padding:3px;}
.python-strategy-settings.pine-settings-only #py-style-section>.indicator-switch {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(150px,210px)!important;align-items:center;gap:14px;
  min-height:46px;margin:0;padding:6px 2px;border-bottom:1px solid rgba(255,255,255,.055);color:#c8cbd2;font-size:11.5px;
}
.python-strategy-settings.pine-settings-only #py-style-section>.indicator-switch input {justify-self:end;width:18px;height:18px;min-height:18px;margin:0;accent-color:#d8d9dd;}
.python-strategy-settings.pine-settings-only :is(#py-style-section,#py-visibility-section)>button.secondary,
.python-strategy-settings.pine-settings-only :is(#py-style-section,#py-visibility-section)>p[role="status"] {display:none!important;}
.python-strategy-settings.pine-settings-only .pine-visibility-actions {margin:7px 0 10px;}
.python-strategy-settings.pine-settings-only .pine-visibility-actions button {min-height:30px!important;border-radius:6px!important;background:#191a1f!important;color:#aeb2bb!important;}
.python-strategy-settings.pine-settings-only .python-visibility-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;}
.python-strategy-settings.pine-settings-only .python-visibility-grid label {
  display:flex!important;flex-direction:row!important;align-items:center;gap:8px;min-height:34px;margin:0;padding:6px 8px;
  border:1px solid #292b31;border-radius:6px;background:#0d0e12;color:#c7cad1;font-size:11px;
}
.python-strategy-settings.pine-settings-only .python-visibility-grid label input[type="checkbox"] {flex:none;width:16px!important;height:16px!important;min-height:16px!important;margin:0!important;padding:0!important;accent-color:#d8d9dd;}

@media(max-width:520px) {
  .python-strategy-settings.pine-settings-only .python-parameter-field,
  .python-strategy-settings.pine-settings-only .tv-property-row,
  .python-strategy-settings.pine-settings-only #py-style-section .se-field {grid-template-columns:minmax(110px,1fr) minmax(120px,48%);gap:8px;}
  .python-strategy-settings.pine-settings-only .python-visibility-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* One settings language across built-in, Pine, and Python indicators. */
.pine-chart-settings.pine-settings-only.unified-tool-settings .formula-fields {min-height:250px;}
.python-indicator-settings.pine-settings-only :is(.python-studio-meta,.python-community-origin,.python-convert-strategy,.instrument-note),
.python-indicator-settings.pine-settings-only .formula-fields>p:first-of-type {display:none!important;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-nested {display:contents;}
.formula-tool-settings.pine-settings-only .tool-settings-panel.is-inputs>.session-pin-option {display:flex;min-height:42px;align-items:center;justify-content:space-between;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel,
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel {padding-top:6px;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>label,
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>label {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(150px,210px)!important;align-items:center;gap:16px;flex-direction:row!important;
  min-height:50px;margin:0;padding:8px 2px;border-bottom:1px solid rgba(255,255,255,.055);
  color:#d1d3d9;font-size:13px;font-weight:500;
}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>label>:is(input:not([type="checkbox"]),select,textarea),
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>label>:is(input:not([type="checkbox"]),select,textarea) {
  box-sizing:border-box;width:100%;min-width:0;min-height:34px;margin:0;padding:6px 10px;
  border:1px solid #30323a;border-radius:6px;background:#0b0c0f;color:#eceef2;font-size:13px;
}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>label>input[type="color"],
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>label>input[type="color"] {height:34px;padding:4px;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>.indicator-switch,
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>.indicator-switch {
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>.indicator-switch input,
.pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>.indicator-switch input {
  width:18px;height:18px;min-height:18px;margin:0;accent-color:#dedfe3;
}
.pine-chart-settings.pine-settings-only.unified-tool-settings .settings-empty-note {margin:26px 2px;color:#858a95;font-size:12px;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .python-visibility-grid,
.pine-chart-settings.pine-settings-only.python-indicator-settings .python-visibility-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:2px 0;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .python-visibility-grid label,
.pine-chart-settings.pine-settings-only.python-indicator-settings .python-visibility-grid label {
  display:flex!important;flex-direction:row!important;align-items:center;gap:8px;min-height:36px;margin:0;padding:7px 9px;
  border:1px solid #292b31;border-radius:6px;background:#0d0e12;color:#c7cad1;font-size:12px;
}
.pine-chart-settings.pine-settings-only :is(.python-visibility-grid,.pine-visibility-grid) label input[type="checkbox"] {flex:none;width:16px!important;height:16px!important;min-height:16px!important;margin:0!important;padding:0!important;accent-color:#d8d9dd;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .pine-visibility-actions,
.pine-chart-settings.pine-settings-only.python-indicator-settings .pine-visibility-actions {margin:7px 0 11px;}
.pine-chart-settings.pine-settings-only.unified-tool-settings .pine-visibility-actions button,
.pine-chart-settings.pine-settings-only.python-indicator-settings .pine-visibility-actions button {
  min-height:31px!important;border-radius:6px!important;background:#191a1f!important;color:#aeb2bb!important;
}

/* Pine strategy Properties uses the same flat section/row grammar; its extra
   tab is the only structural difference from an indicator. */
.pine-chart-settings.pine-settings-only .pine-property-group {
  display:block;margin:0;padding:0;border:0;border-radius:0;background:transparent;
}
.pine-chart-settings.pine-settings-only .pine-property-group legend {
  width:100%;box-sizing:border-box;margin:14px 0 0;padding:8px 2px 4px;color:#797e89;
  font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;
}
.pine-chart-settings.pine-settings-only .pine-property-group>label {
  display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(150px,210px)!important;align-items:center;gap:16px;flex-direction:row!important;
  min-height:50px;margin:0;padding:8px 2px;border-bottom:1px solid rgba(255,255,255,.055);
  color:#d1d3d9;font-size:13px;font-weight:500;
}
.pine-chart-settings.pine-settings-only .pine-property-group>label>:is(input,select) {
  box-sizing:border-box;width:100%;min-height:34px;margin:0;padding:6px 10px;border:1px solid #30323a;border-radius:6px;background:#0b0c0f;color:#eceef2;
}
.pine-chart-settings.pine-settings-only .pine-property-group>label>small {grid-column:1/-1;margin:-3px 0 2px;color:#757b87;font-size:10px;line-height:1.4;}
.pine-chart-settings.pine-settings-only .pine-property-group>label.pine-property-toggle {grid-template-columns:minmax(145px,1fr) 36px!important;}
.pine-chart-settings.pine-settings-only .pine-property-toggle>span {grid-column:1;grid-row:1;}
.pine-chart-settings.pine-settings-only .pine-property-toggle>input[type="checkbox"] {grid-column:2;grid-row:1;justify-self:end;align-self:center;width:17px;height:17px;}

@media(max-width:520px) {
  .pine-chart-settings.pine-settings-only.unified-tool-settings .tool-settings-panel>label,
  .pine-chart-settings.pine-settings-only.python-indicator-settings .chart-settings-panel>label,
  .pine-chart-settings.pine-settings-only .pine-property-group>label {grid-template-columns:minmax(110px,1fr) minmax(120px,48%);gap:8px;}
  .pine-chart-settings.pine-settings-only.unified-tool-settings .python-visibility-grid,
  .pine-chart-settings.pine-settings-only.python-indicator-settings .python-visibility-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* Monochrome product theme -------------------------------------------------
   True black and neutral-white chrome, with a quiet violet warmth confined
   to low-opacity ambient gradients. */
:root {
  color-scheme:dark;
  --bg-near-black:#050506;
  --bg-card:#0b0b0d;
  --bg-card-elevated:#151518;
  --border-subtle:rgba(255,255,255,.105);
  --text-body:#c7c8cc;
  --text-muted:#7e8087;
  --text-headline:#f7f7f8;
  --accent-blue:#f2f2f3;
  --accent-violet:#bfc0c5;
  --lume-ice:#fff;
  --lume-glacier:#f2f2f3;
  --lume-blue:#d1d1d4;
  --lume-cobalt:#a5a6ab;
  --lume-navy:#73747a;
  --gradient-hero:linear-gradient(105deg,#fff 0%,#d9d9dc 58%,#929399 100%);
  --gradient-action:linear-gradient(180deg,#fff 0%,#d9d9dc 100%);
}
html,body {background:#050506;}
body {
  background-color:#050506;
  background-image:
    radial-gradient(900px 430px at 94% -8%,rgba(101,67,129,.105),transparent 64%),
    radial-gradient(720px 380px at 8% -12%,rgba(255,255,255,.045),transparent 68%);
}
#topbar {
  background:linear-gradient(112deg,rgba(18,21,22,.985) 0%,rgba(10,10,12,.985) 54%,rgba(23,15,30,.94) 100%);
  border-bottom-color:rgba(255,255,255,.10);
  box-shadow:0 12px 34px rgba(0,0,0,.36);
}
#topbar::after,#workspace-mode-tabs button[aria-selected="true"]::after {
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent);
  box-shadow:0 0 10px rgba(255,255,255,.10);
}
#rail,#market-rail {
  background:linear-gradient(180deg,rgba(10,10,12,.99),rgba(5,5,6,.99));
  border-color:rgba(255,255,255,.085);
}
#chat-panel,#strategy-editor {
  background:radial-gradient(560px 260px at 100% 0,rgba(78,54,96,.075),transparent 70%),linear-gradient(180deg,rgba(12,12,14,.99),rgba(7,7,8,.99));
  border-color:rgba(255,255,255,.09);
}
#main {background:radial-gradient(760px 360px at 96% 0,rgba(82,56,103,.055),transparent 68%),#060607;}
#chart-toolbar,#chart-context-bar,#chart-range-controls,#chart-tools-bar,
#results-collapse-bar,#strategy-bar,#se-head {
  background:rgba(8,8,10,.94);
  border-color:rgba(255,255,255,.09);
  box-shadow:none;
}

/* Raised surfaces share one soft black-to-violet material. */
:is(.toolbar-popover,#indicators-popover,#chart-context-menu,
  #workspace-menu,#workspace-manage-menu,#workspace-recovery-menu,.timeframe-popover,.chart-style-popover,
  .unified-code-menu,.unified-code-new-menu,.pine-footer-more-grid,
  #opening-range-dialog,.chart-tool-dialog,#strategy-chooser-dialog,
  .alert-dialog,.symbol-search-dialog,.instrument-picker) {
  background:radial-gradient(520px 210px at 100% 0,rgba(102,71,126,.10),transparent 72%),linear-gradient(145deg,rgba(18,19,21,.995),rgba(9,9,11,.995))!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.50),inset 0 1px rgba(255,255,255,.025)!important;
}
:is(#opening-range-dialog,.chart-tool-dialog)::backdrop,
#strategy-chooser-dialog::backdrop {background:rgba(0,0,0,.78);backdrop-filter:blur(10px) saturate(30%);}

/* Inputs and secondary controls stay neutral at rest and brighten on focus. */
:is(input,select,textarea) {background:#09090b;border-color:rgba(255,255,255,.115);color:#eeeeef;}
:is(input,select,textarea):focus,:is(input,select,textarea):focus-visible {
  border-color:rgba(255,255,255,.64)!important;
  outline:0;
  box-shadow:0 0 0 3px rgba(255,255,255,.065)!important;
}
button:focus-visible,[role="button"]:focus-visible,[role="tab"]:focus-visible {
  outline:2px solid rgba(255,255,255,.72)!important;
  outline-offset:2px;
}
:is(.icon-btn,.secondary,.lib-btn,.dep-btn,.sb-btn,
  #chart-toolbar button,#chart-range-controls button,
  .toolbar-popover button,.chart-style-popover>button,.timeframe-popover button) {
  border-color:rgba(255,255,255,.095);
  background:rgba(255,255,255,.025);
  color:#bfc0c4;
}
:is(.icon-btn,.secondary,.lib-btn,.dep-btn,.sb-btn,
  #chart-toolbar button,#chart-range-controls button,
  .toolbar-popover button,.chart-style-popover>button,.timeframe-popover button):hover {
  border-color:rgba(255,255,255,.20);
  background:rgba(255,255,255,.065);
  color:#fff;
}

/* Selected navigation is white, with no residual blue fill. */
#workspace-product-switcher button[aria-pressed="true"] {
  border-color:rgba(255,255,255,.82)!important;
  background:linear-gradient(180deg,#f7f7f8,#d9d9dc)!important;
  color:#0a0a0b!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.08),0 5px 18px rgba(0,0,0,.28)!important;
}
#workspace-mode-tabs button {color:#777980;}
#workspace-mode-tabs button:hover {color:#c8c9cc;}
#workspace-mode-tabs button[aria-selected="true"] {color:#fff;}
.rail-btn.active,
#chart-toolbar :is(#ai-toggle,#editor-toggle,#chart-focus,#chart-volume)[aria-pressed="true"],
#chart-toolbar #chart-more[aria-expanded="true"],.chat-tab.active {
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.chat-tab.active {border-bottom-color:#fff!important;border-image:none!important;}
.timeframe-popover>button[aria-checked="true"],.chart-style-popover>button[aria-checked="true"] {
  background:linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.025))!important;
  box-shadow:inset 2px 0 #f3f3f4!important;
  color:#fff!important;
}

/* Primary actions use the reference's clean white pill treatment. */
:is(button.primary,button[type="submit"],.lib-btn-primary,.dep-btn-primary,
  .sb-btn.sb-primary,.ai-draft-primary-actions>.ai-draft-run,.ai-draft-primary-actions>.ai-draft-apply,
  #live-webhook-save,.unified-code-review-panel>footer button:last-child,
  .pine-chart-settings footer button[type="submit"]) {
  border-color:rgba(255,255,255,.90)!important;
  background:linear-gradient(180deg,#f8f8f9 0%,#d8d8db 100%)!important;
  color:#0a0a0b!important;
  box-shadow:0 7px 20px rgba(0,0,0,.30),inset 0 1px #fff!important;
}
:is(button.primary,button[type="submit"],.lib-btn-primary,.dep-btn-primary,
  .sb-btn.sb-primary,.ai-draft-primary-actions>.ai-draft-run,.ai-draft-primary-actions>.ai-draft-apply,
  #live-webhook-save,.unified-code-review-panel>footer button:last-child,
  .pine-chart-settings footer button[type="submit"]):hover {filter:brightness(1.06);transform:translateY(-1px);}
:is(button.primary,button[type="submit"],.lib-btn-primary,.dep-btn-primary,
  .sb-btn.sb-primary,.ai-draft-primary-actions>.ai-draft-run,.ai-draft-primary-actions>.ai-draft-apply,
  #live-webhook-save,.unified-code-review-panel>footer button:last-child,
  .pine-chart-settings footer button[type="submit"]):disabled {
  border-color:rgba(255,255,255,.13)!important;
  background:#252529!important;
  color:#777980!important;
  box-shadow:none!important;
}
/* Keep the monochrome theme from reversing the dark conversation bubble's
   foreground. Conversation-specific styling above owns its surface color. */
#chat-panel .chat-msg.user {color:#f4f3f8;}

/* Cards are quiet black glass with the same top-right ambient falloff. */
:is(.community-starter-card,.community-card,.research-candidate-card,
  .lib-card,.dep-card,.result-card,.metric-card,.alert-card,
  .pine-observation-card,.strategy-card,.market-watch-card) {
  background:radial-gradient(360px 150px at 100% 0,rgba(92,64,112,.075),transparent 72%),linear-gradient(145deg,#111114,#0a0a0c)!important;
  border-color:rgba(255,255,255,.095)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.02);
}

/* Remove the remaining decorative blue chrome. */
* {scrollbar-color:rgba(255,255,255,.20) transparent;}
*::-webkit-scrollbar-thumb {
  background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(255,255,255,.14))!important;
  border-color:#09090a!important;
}
*::-webkit-scrollbar-thumb:active {background:rgba(255,255,255,.38)!important;}
#brand-mark,#brand-name,#confidence-headline.gradient-hero {
  background:var(--gradient-hero);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
#chart-picker-detail-preview::after,.workspace-product-accent {
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent)!important;
  box-shadow:none!important;
}

/* Persisted Light / Dark preference, placed with workspace/account controls. */
#app-theme-preference {margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);}
#app-theme-preference>strong {display:block;margin:0 0 7px;color:#8d8f95;font-size:10px;letter-spacing:.08em;text-transform:uppercase;}
#app-theme-switcher {display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#08080a;}
#workspace-manage-menu #app-theme-switcher button {
  display:flex;min-height:32px;margin:0;padding:6px 10px;align-items:center;justify-content:center;gap:6px;
  border:0;border-radius:6px;background:transparent;color:#85878d;font-size:11px;text-align:center;
}
#workspace-manage-menu #app-theme-switcher button:hover {background:rgba(255,255,255,.045);color:#d4d4d7;}
#workspace-manage-menu #app-theme-switcher button[aria-pressed="true"] {background:#242428;color:#fff;box-shadow:0 1px 5px rgba(0,0,0,.35);}
#workspace-manage-menu>button,#workspace-archived-list button {
  border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);color:#bfc0c4;
}
#workspace-manage-menu>button:hover,#workspace-archived-list button:hover {
  border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;
}

/* Light mode uses warm-white glass and soft neutral shadows. */
:root[data-theme="light"] {
  color-scheme:light;
  --bg-near-black:#f3f3f4;
  --bg-card:#fafafa;
  --bg-card-elevated:#ededee;
  --border-subtle:rgba(10,10,12,.13);
  --text-body:#36363a;
  --text-muted:#77787d;
  --text-headline:#101012;
  --accent-blue:#101012;
  --accent-violet:#4d4e53;
  --lume-ice:#08080a;
  --lume-glacier:#1a1a1d;
  --lume-blue:#343439;
  --lume-cobalt:#595a60;
  --lume-navy:#7c7d83;
  --gradient-hero:linear-gradient(105deg,#060607 0%,#343438 58%,#77787d 100%);
  --gradient-action:linear-gradient(180deg,#161618 0%,#050506 100%);
}
html[data-theme="light"],html[data-theme="light"] body {background:#f3f3f4;color:#36363a;}
html[data-theme="light"] body {
  background-image:radial-gradient(900px 430px at 94% -8%,rgba(116,85,139,.09),transparent 64%),radial-gradient(720px 380px at 8% -12%,rgba(255,255,255,.92),transparent 68%);
}
[data-theme="light"] #topbar {
  background:linear-gradient(112deg,rgba(255,255,255,.98),rgba(246,246,247,.985) 54%,rgba(242,237,246,.96));
  border-bottom-color:rgba(10,10,12,.12);
  box-shadow:0 10px 28px rgba(25,20,30,.09);
}
[data-theme="light"] #topbar::after,
[data-theme="light"] #workspace-mode-tabs button[aria-selected="true"]::after {
  background:linear-gradient(90deg,transparent,rgba(10,10,12,.75),transparent);
  box-shadow:none;
}
[data-theme="light"] #rail,[data-theme="light"] #market-rail {
  background:linear-gradient(180deg,rgba(250,250,251,.99),rgba(240,240,241,.99));
  border-color:rgba(10,10,12,.10);
}
[data-theme="light"] #chat-panel,[data-theme="light"] #strategy-editor {
  background:radial-gradient(560px 260px at 100% 0,rgba(109,79,129,.06),transparent 70%),linear-gradient(180deg,#fafafa,#f3f3f4);
  border-color:rgba(10,10,12,.11);
}
[data-theme="light"] #main {background:radial-gradient(760px 360px at 96% 0,rgba(105,76,126,.045),transparent 68%),#f5f5f6;}
[data-theme="light"] :is(#chart-toolbar,#chart-context-bar,#chart-range-controls,#chart-tools-bar,
  #results-collapse-bar,#strategy-bar,#se-head) {
  background:rgba(249,249,250,.95);
  border-color:rgba(10,10,12,.11);
  color:#303034;
}
[data-theme="light"] #chart-readout {
  background:linear-gradient(90deg,rgba(250,250,251,.98),rgba(242,242,244,.98));
  border-color:rgba(10,10,12,.10);
  color:#303034;
}
[data-theme="light"] #chart-readout strong {color:#101012;}
[data-theme="light"] #chart-readout-values {color:#3f4045;}
[data-theme="light"] #chart-readout-time,[data-theme="light"] #chart-data-note {color:#77787d;}
[data-theme="light"] #chart-asset-class {border-color:rgba(10,10,12,.14);background:#e9e9eb;color:#35363a;}
[data-theme="light"] #chart-live-controls {border-color:rgba(10,10,12,.10);background:rgba(247,247,248,.94);}
[data-theme="light"] #chart-tabs-bar {
  border-bottom-color:rgba(10,10,12,.11);
  background:linear-gradient(180deg,#fafafa 0%,#f3f3f4 100%);
}
[data-theme="light"] .chart-tab {border-right-color:rgba(10,10,12,.09);}
[data-theme="light"] .chart-tab-select {color:#68696e;}
[data-theme="light"] .chart-tab-select:hover {background:rgba(10,10,12,.045);color:#18181a;}
[data-theme="light"] .chart-tab-select[aria-selected="true"] {
  background:#fff;color:#111113;box-shadow:inset 0 -2px #171719,0 1px 5px rgba(0,0,0,.07);
}
[data-theme="light"] .chart-tab-mark {background:#e2e2e5;color:#4d4e54;}
[data-theme="light"] .chart-tab-select small {color:#85868b;}
[data-theme="light"] .chart-tab-close {color:#8a8b90;}
[data-theme="light"] .chart-tab-close:hover {background:rgba(10,10,12,.08);color:#111113;}
[data-theme="light"] #chart-tab-add {color:#717277;}
[data-theme="light"] #chart-tab-add:hover {background:rgba(10,10,12,.055);color:#111113;}
[data-theme="light"] .chart-tab-menu {border-color:#d2d3d7;background:#fff;box-shadow:0 18px 46px rgba(0,0,0,.18);}
[data-theme="light"] .chart-tab-menu button {color:#222328;}
[data-theme="light"] .chart-tab-menu button:hover,[data-theme="light"] .chart-tab-menu button:focus-visible,
[data-theme="light"] .chart-tab-menu button[aria-expanded="true"] {background:#f0f1f3;color:#111;}
[data-theme="light"] #chart-tab-menu,[data-theme="light"] #chart-tab-workspace-menu {
  border-color:#d2d3d7!important;background:#fff!important;color:#222328!important;
}
[data-theme="light"] #chart-tab-menu button,[data-theme="light"] #chart-tab-workspace-menu button {color:#222328!important;}
[data-theme="light"] #chart-tab-menu button:hover,[data-theme="light"] #chart-tab-menu button:focus-visible,
[data-theme="light"] #chart-tab-menu button[aria-expanded="true"],
[data-theme="light"] #chart-tab-workspace-menu button:hover,[data-theme="light"] #chart-tab-workspace-menu button:focus-visible {
  background:#f0f1f3!important;color:#111!important;
}
[data-theme="light"] :is(.toolbar-popover,#indicators-popover,#chart-context-menu,
  #workspace-menu,#workspace-recovery-menu,#workspace-manage-menu,.timeframe-popover,.chart-style-popover,
  .unified-code-menu,.unified-code-new-menu,.pine-footer-more-grid,
  #opening-range-dialog,.chart-tool-dialog,#strategy-chooser-dialog,
  .alert-dialog,.symbol-search-dialog,.instrument-picker) {
  background:radial-gradient(520px 210px at 100% 0,rgba(109,77,130,.075),transparent 72%),linear-gradient(145deg,rgba(255,255,255,.995),rgba(243,243,244,.995))!important;
  border-color:rgba(10,10,12,.14)!important;
  color:#303034!important;
  box-shadow:0 22px 60px rgba(35,27,42,.16),inset 0 1px rgba(255,255,255,.70)!important;
}
[data-theme="light"] :is(input,select,textarea) {background:#fff;border-color:rgba(10,10,12,.16);color:#18181b;}
[data-theme="light"] :is(input,select,textarea):focus,
[data-theme="light"] :is(input,select,textarea):focus-visible {
  border-color:rgba(10,10,12,.58)!important;
  box-shadow:0 0 0 3px rgba(10,10,12,.065)!important;
}
[data-theme="light"] :is(.icon-btn,.secondary,.lib-btn,.dep-btn,.sb-btn,
  #chart-toolbar button,#chart-range-controls button,
  .toolbar-popover button,.chart-style-popover>button,.timeframe-popover button) {
  border-color:rgba(10,10,12,.12);
  background:rgba(10,10,12,.025);
  color:#4f5055;
}
[data-theme="light"] :is(.icon-btn,.secondary,.lib-btn,.dep-btn,.sb-btn,
  #chart-toolbar button,#chart-range-controls button,
  .toolbar-popover button,.chart-style-popover>button,.timeframe-popover button):hover {
  border-color:rgba(10,10,12,.24);
  background:rgba(10,10,12,.065);
  color:#0a0a0b;
}
[data-theme="light"] #workspace-product-switcher:not(details) button[aria-pressed="true"] {
  border-color:#0b0b0d!important;
  background:linear-gradient(180deg,#242426,#080809)!important;
  color:#fff!important;
  box-shadow:0 5px 18px rgba(0,0,0,.17)!important;
}
[data-theme="light"] #workspace-mode-tabs button {color:#77787d;}
[data-theme="light"] #workspace-mode-tabs button:hover {color:#343438;}
[data-theme="light"] #workspace-mode-tabs button[aria-selected="true"] {color:#08080a;}
[data-theme="light"] :is(.rail-btn.active,
  #chart-toolbar #ai-toggle[aria-pressed="true"],#chart-toolbar #editor-toggle[aria-pressed="true"],
  #chart-toolbar #chart-focus[aria-pressed="true"],#chart-toolbar #chart-volume[aria-pressed="true"],
  #chart-toolbar #chart-more[aria-expanded="true"],.chat-tab.active) {
  border-color:rgba(10,10,12,.16)!important;
  background:rgba(10,10,12,.085)!important;
  color:#08080a!important;
}
[data-theme="light"] :is(button.primary,button[type="submit"],.lib-btn-primary,.dep-btn-primary,
  .sb-btn.sb-primary,.ai-draft-primary-actions>.ai-draft-run,.ai-draft-primary-actions>.ai-draft-apply,
  #live-webhook-save,.unified-code-review-panel>footer button:last-child,
  .pine-chart-settings footer button[type="submit"]) {
  border-color:#050506!important;
  background:linear-gradient(180deg,#242426,#050506)!important;
  color:#fff!important;
  box-shadow:0 7px 20px rgba(0,0,0,.17),inset 0 1px rgba(255,255,255,.12)!important;
}
[data-theme="light"] #chat-panel .chat-msg.user {
  border-color:rgba(67,54,120,.22);background:linear-gradient(145deg,#24212f,#17171d);color:#fff;
}
[data-theme="light"] :is(.community-starter-card,.community-card,.research-candidate-card,
  .lib-card,.dep-card,.result-card,.metric-card,.alert-card,
  .pine-observation-card,.strategy-card,.market-watch-card) {
  background:radial-gradient(360px 150px at 100% 0,rgba(105,74,126,.055),transparent 72%),linear-gradient(145deg,#fff,#f3f3f4)!important;
  border-color:rgba(10,10,12,.11)!important;
  color:#303034;
}
[data-theme="light"] #app-theme-preference {border-top-color:rgba(10,10,12,.10);}
[data-theme="light"] #app-theme-preference>strong {color:#77787d;}
[data-theme="light"] #app-theme-switcher {border-color:rgba(10,10,12,.10);background:#ececee;}
[data-theme="light"] #workspace-manage-menu #app-theme-switcher button {color:#77787d;}
[data-theme="light"] #workspace-manage-menu #app-theme-switcher button:hover {background:rgba(10,10,12,.05);color:#161618;}
[data-theme="light"] #workspace-manage-menu #app-theme-switcher button[aria-pressed="true"] {background:#fff;color:#111113;box-shadow:0 1px 5px rgba(0,0,0,.13);}
[data-theme="light"] #workspace-manage-menu>button,[data-theme="light"] #workspace-archived-list button {
  border-color:rgba(10,10,12,.11);background:rgba(10,10,12,.025);color:#4f5055;
}
[data-theme="light"] img[src*="/static/brand/lumecharts"] {filter:brightness(0);}
[data-theme="light"] :is(.study-chip,.study-chip strong,#chart-readout,#chart-range-controls,#chart-tools-bar) {color:#3c3c41;}
[data-theme="light"] :is(.chart-tool-dialog.unified-code-editor,.unified-code-review-panel,
  #strategy-editor .chart-tool-dialog.pine-inline-dialog.unified-code-editor:not(.unified-code-expanded)) {background:#f7f7f8!important;color:#242428!important;}
[data-theme="light"] .chart-tool-dialog.unified-code-editor :is(.pine-code-surface textarea,.python-chart-code-editor>textarea),
[data-theme="light"] .chart-tool-dialog.unified-code-editor .python-chart-code-editor>textarea {
  background:#fff!important;color:#18181b!important;-webkit-text-fill-color:#18181b!important;caret-color:#050506!important;
}
[data-theme="light"] .chart-tool-dialog.unified-code-editor .python-chart-code-gutter {background:#ededee!important;color:#929399!important;}
[data-theme="light"] .unified-code-logs {background:#ededee;color:#66676c;border-color:rgba(10,10,12,.10);}
[data-theme="light"] .pine-chart-settings.pine-settings-only form>footer {background:#f7f7f8;border-color:rgba(10,10,12,.11);}
[data-theme="light"] .pine-chart-settings.pine-settings-only .pine-input-field :is(input:not([type="checkbox"]),select,textarea) {background:#fff;color:#18181b;border-color:rgba(10,10,12,.15);}
[data-theme="light"] * {scrollbar-color:rgba(10,10,12,.22) transparent;}
[data-theme="light"] *::-webkit-scrollbar-thumb {background:linear-gradient(180deg,rgba(10,10,12,.28),rgba(10,10,12,.13))!important;border-color:#f1f1f2!important;}

/* Main-chart strategy tester -------------------------------------------------
   Charts keeps price, the compact result strip, and the expanded report in one
   linked workspace. LumeQuant retains the full research report rules above. */
body.product-charts #headline-strip:not([hidden]) {
  display:grid;grid-template-columns:minmax(180px,.72fr) minmax(560px,1.8fr) auto;
  align-items:center;gap:12px;min-height:64px;margin:0;padding:8px 12px;
  border-block:1px solid rgba(255,255,255,.085);border-radius:0;
  background:linear-gradient(180deg,rgba(18,19,23,.98),rgba(11,12,15,.99));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
body.product-charts #headline-strip #hs-source {display:grid;gap:3px;min-width:0;}
body.product-charts #headline-strip #hs-source .hs-sub {
  overflow:hidden;color:#858b96;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap;
}
body.product-charts #headline-strip #hs-source .state-chip {width:max-content;max-width:100%;}
body.product-charts #headline-strip #hs-metrics {
  display:grid;grid-template-columns:repeat(5,minmax(86px,1fr));gap:0;min-width:0;
}
body.product-charts #headline-strip .hs-metric {
  min-width:0;padding:2px 11px;border-left:1px solid rgba(255,255,255,.065);
}
body.product-charts #headline-strip .hs-label {
  overflow:hidden;color:#777d87;font-size:8px;font-weight:730;letter-spacing:.055em;
  text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;
}
body.product-charts #headline-strip .hs-value {
  margin-top:3px;color:#e9ebef;font-size:14px;font-weight:740;line-height:1.15;
  font-variant-numeric:tabular-nums;
}
#chart-backtest-strip-actions {display:flex;align-items:center;gap:6px;justify-content:flex-end;}
#chart-backtest-strip-actions button {width:auto;min-height:31px;margin:0;padding:6px 10px;font-size:10px;white-space:nowrap;}
#chart-backtest-strip-properties {width:31px!important;padding:0!important;font-size:14px!important;}

body.product-charts.workspace-tester-mode #chart-container {
  height:clamp(300px,44dvh,510px)!important;min-height:300px;
}
/* Multi-chart layouts take their height from the shared grid rather than the
   primary chart node. Reserve the lower half for Strategy Tester so opening
   it cannot leave the report below a full-screen 2x2 or 3x3 canvas. */
body.product-charts.workspace-tester-mode #chart-layout-grid {
  height:clamp(240px,35dvh,400px)!important;
}
body.product-charts.workspace-tester-mode #chart-toolbar,
body.product-charts.workspace-tester-mode #chart-readout,
body.product-charts.workspace-tester-mode #chart-shell,
body.product-charts.workspace-tester-mode #chart-range-controls {display:flex;}
body.product-charts.workspace-tester-mode #chart-shell {display:block;}
body.product-charts.workspace-tester-mode #results-panel:not([hidden]) {
  max-height:clamp(340px,45dvh,560px);min-height:340px;margin:0;padding:0 14px 24px;
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;
  border:0;border-top:1px solid rgba(255,255,255,.10);border-radius:0;
  background:#090a0d;box-shadow:0 -16px 40px rgba(0,0,0,.32);
}
body.product-charts.workspace-tester-mode #results-panel.research-tools-only:not([hidden]) {
  min-height:150px;max-height:220px;padding-bottom:14px;
}
body.product-charts.workspace-tester-mode #results-panel.research-tools-only #results-empty-state {
  max-width:680px;margin:18px auto 0;padding:18px 20px;
}
body.product-charts.workspace-tester-mode #results-header {
  position:relative;display:grid;grid-template-columns:minmax(220px,1fr) auto;
  gap:12px;padding:12px 0 8px;background:#090a0d;
}
.results-viewer-close {
  display:inline-flex;position:absolute;top:8px;right:10px;z-index:2;
  width:30px;min-width:30px;height:30px;min-height:30px;margin:0;padding:0;
  align-items:center;justify-content:center;border-radius:5px;
}
body.product-charts.workspace-tester-mode #results-header-actions {
  grid-column:2;grid-row:1;display:flex;width:auto;align-items:center;justify-content:flex-end;
  gap:6px;overflow:visible;
}
body.product-charts.workspace-tester-mode #results-header-actions>#results-net {
  grid-column:auto;grid-row:auto;order:0;margin:0 6px 0 0;color:#edf0f3;
  font-size:13px;line-height:1.2;text-align:right;
}
body.product-charts.workspace-tester-mode #results-header-actions>:is(.results-reliability,.results-reliability-note,#results-optimize-ai,#results-create-alert,#results-attach-exact) {display:none!important;}
body.product-charts.workspace-tester-mode #results-header-actions>#results-rerun,
body.product-charts.workspace-tester-mode #results-header-actions>#results-more-actions,
body.product-charts.workspace-tester-mode #results-header-actions>#results-maximize-chart-viewer,
body.product-charts.workspace-tester-mode #results-header-actions>#results-close-chart-viewer {
  display:inline-flex;grid-column:auto;grid-row:auto;order:1;align-items:center;justify-content:center;
}
body.product-charts.workspace-tester-mode #results-maximize-chart-viewer {
  width:auto;min-width:74px;height:30px;padding:0 10px;font-size:10px;
}
body.product-charts.workspace-tester-mode #results-close-chart-viewer {
  width:30px;min-width:30px;height:30px;padding:0;font-size:17px;
}
body.product-charts.pine-results-focus.workspace-tester-mode #results-panel:not([hidden]) {
  min-height:calc(100dvh - 82px);max-height:none;margin:0;padding-bottom:28px;overflow-y:auto;
}
body.product-charts.pine-results-focus.workspace-tester-mode #results-header {
  position:sticky;top:0;z-index:10;
}
body.product-charts.workspace-tester-mode #result-tabs {
  position:sticky;top:0;z-index:8;display:flex;justify-content:flex-start;gap:0;
  margin:0 -14px 12px;padding:0 14px;border-block:1px solid rgba(255,255,255,.075);
  background:rgba(9,10,13,.96);backdrop-filter:blur(18px);
}
body.product-charts.workspace-tester-mode #result-tabs .tab-btn {
  width:auto;min-width:0;padding:10px 14px;border-radius:0;color:#858a94;
  background:transparent;box-shadow:none;font-size:10.5px;font-weight:660;
}
body.product-charts.workspace-tester-mode #result-tabs .tab-btn.active,
body.product-charts.workspace-tester-mode #result-tabs .tab-btn[aria-selected="true"] {
  color:#f3f4f6;background:rgba(255,255,255,.035);
  box-shadow:inset 0 -2px #e8e9ec;
}
body.product-charts #result-tabs [data-products="quant"],
body.product-quant #result-tabs [data-products="charts"] {display:none!important;}

#chart-strategy-properties {padding:4px 0 20px;}
#chart-strategy-properties>.results-section-heading {align-items:center;margin-bottom:4px;}
.chart-strategy-properties-actions {display:flex;gap:7px;}
.chart-strategy-properties-actions button {width:auto;min-height:31px;margin:0;padding:6px 11px;font-size:10px;}
#chart-strategy-properties-grid {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:13px;
  border:1px solid rgba(255,255,255,.075);border-radius:8px;overflow:hidden;
}
.chart-strategy-property {
  display:grid;grid-template-columns:minmax(130px,.85fr) minmax(0,1.15fr);gap:14px;
  min-height:42px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.014);
}
.chart-strategy-property:nth-child(odd) {border-right:1px solid rgba(255,255,255,.055);}
.chart-strategy-property span {color:#777d87;font-size:10px;}
.chart-strategy-property strong {overflow-wrap:anywhere;color:#e2e4e8;font-size:10.5px;font-weight:660;text-align:right;}
.chart-strategy-property.is-warning strong {color:#efc36f;}
#chart-strategy-inputs {margin-top:18px;}
#chart-strategy-inputs h4 {margin:0 0 8px;color:#dfe1e5;font-size:11px;}
#chart-strategy-inputs-grid {
  display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,1.5fr);margin:0;
  border-top:1px solid rgba(255,255,255,.075);
}
#chart-strategy-inputs-grid :is(dt,dd) {margin:0;padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.055);font-size:10.5px;}
#chart-strategy-inputs-grid dt {color:#777d87;}
#chart-strategy-inputs-grid dd {color:#e1e3e7;font-variant-numeric:tabular-nums;}

@media(max-width:980px) {
  body.product-charts #headline-strip:not([hidden]) {grid-template-columns:1fr auto;}
  body.product-charts #headline-strip #hs-source {display:none;}
  body.product-charts #headline-strip #hs-metrics {grid-column:1;}
  body.product-charts.workspace-tester-mode #chart-container {height:clamp(260px,40dvh,420px)!important;min-height:260px;}
  body.product-charts.workspace-tester-mode #chart-layout-grid {height:clamp(220px,32dvh,340px)!important;}
  body.product-charts.workspace-tester-mode #results-header {grid-template-columns:1fr;}
  body.product-charts.workspace-tester-mode #results-header-actions {grid-column:1;grid-row:2;justify-content:flex-start;}
  body.product-charts.workspace-tester-mode #results-header-actions>#results-net {text-align:left;}
}
@media(max-width:680px) {
  body.product-charts #headline-strip:not([hidden]) {grid-template-columns:1fr;padding-inline:8px;}
  body.product-charts #headline-strip #hs-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.product-charts #headline-strip .hs-metric {padding:5px 8px;}
  #chart-backtest-strip-actions {grid-row:2;justify-content:stretch;}
  #chart-backtest-strip-open {flex:1;}
  body.product-charts.workspace-tester-mode #result-tabs {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  body.product-charts.workspace-tester-mode #result-tabs .tab-btn {width:100%;padding-inline:5px;text-align:center;}
  #chart-strategy-properties-grid {grid-template-columns:1fr;}
  .chart-strategy-property:nth-child(odd) {border-right:0;}
}
[data-theme="light"] body.product-charts #headline-strip:not([hidden]),
[data-theme="light"] body.product-charts.workspace-tester-mode #results-panel:not([hidden]),
[data-theme="light"] body.product-charts.workspace-tester-mode #results-header,
[data-theme="light"] body.product-charts.workspace-tester-mode #result-tabs {background:#f7f7f8;color:#17171a;}
[data-theme="light"] body.product-charts #headline-strip:not([hidden]),
[data-theme="light"] body.product-charts.workspace-tester-mode #results-panel:not([hidden]) {border-color:rgba(10,10,12,.13);}
[data-theme="light"] body.product-charts #headline-strip .hs-value,
[data-theme="light"] .chart-strategy-property strong,
[data-theme="light"] #chart-strategy-inputs-grid dd {color:#1c1c20;}
[data-theme="light"] .chart-strategy-property,
[data-theme="light"] #chart-strategy-properties-grid {border-color:rgba(10,10,12,.11);background:rgba(10,10,12,.018);}

/* Vela-compatible chart backtesting ---------------------------------------
   Charts owns one attached strategy instance and one chart-native report.
   Authoring, research history, and reliability workflows remain in their
   dedicated products instead of leaking into this surface. */
body.product-charts #workspace-view-tester,
body.product-charts #results-collapse-bar,
body.product-charts #strategy-tester-journey,
body.product-charts #results-empty-state,
body.product-charts #backtest-job-activity,
body.product-charts #backtest-job-history,
body.product-charts #results-next-step,
body.product-charts #results-run-details,
body.product-charts #stale-banner,
body.product-charts #results-header .results-header-kicker,
body.product-charts #results-header .results-header-status,
body.product-charts #results-header-actions>#results-net,
body.product-charts #results-header-actions>#results-rerun,
body.product-charts #results-header-actions>#results-more-actions,
body.product-charts #results-header-actions>#results-maximize-chart-viewer,
body.product-charts #results-header-actions>#results-create-alert,
body.product-charts #results-header-actions>#results-optimize-ai {display:none!important;}

body.product-charts #headline-strip:not([hidden]) {
  position:relative;display:grid!important;grid-template-columns:1fr;
  grid-template-rows:8px 42px auto minmax(0,1fr);gap:0;
  height:var(--chart-backtest-height,280px);min-height:104px;max-height:calc(100dvh - 250px);
  margin:0;padding:0;
  border:0;border-top:1px solid #2a2b30;border-radius:0;background:#121316;
  box-shadow:none;overflow:hidden;
}
body.product-charts #headline-strip[data-pre-result="true"] {
  grid-template-rows:42px auto;height:104px;min-height:104px;
}
body.product-charts #headline-strip[data-pre-result="true"] #chart-backtest-mini-equity[hidden] {display:none;}
body.product-charts #headline-strip[data-pre-result="true"] #chart-backtest-resize {display:none;}
body.product-charts #headline-strip[data-size="compact"] {
  grid-template-rows:8px 42px minmax(0,1fr);
}
body.product-charts #headline-strip[data-size="compact"] #chart-backtest-mini-equity {display:none!important;}
body.product-charts #chart-backtest-resize {
  position:relative;z-index:3;height:8px;margin-top:-4px;cursor:ns-resize;touch-action:none;
}
body.product-charts #chart-backtest-resize::after {
  content:'';position:absolute;left:50%;top:3px;width:42px;height:2px;transform:translateX(-50%);
  border-radius:999px;background:#4a4b51;opacity:0;transition:opacity .12s,background .12s;
}
body.product-charts #chart-backtest-resize:is(:hover,:focus-visible)::after,
body.resizing-chart-backtest #chart-backtest-resize::after {opacity:1;background:#8a8d96;}
body.product-charts #chart-backtest-resize:focus-visible {outline:0;}
body.resizing-chart-backtest {cursor:ns-resize!important;user-select:none;}
body.product-charts #chart-backtest-strip-head {
  display:grid;grid-template-columns:minmax(0,1fr) 30px 30px;align-items:center;gap:4px;
  min-height:42px;padding:6px 12px;border-bottom:1px solid #24252a;background:#141518;
}
body.product-charts #headline-strip #hs-source {display:flex;align-items:baseline;gap:9px;min-width:0;}
body.product-charts #headline-strip #hs-source strong {
  overflow:hidden;color:#ededf0;font-size:12px;font-weight:690;text-overflow:ellipsis;white-space:nowrap;
}
body.product-charts #headline-strip #hs-source .hs-sub {color:#81838a;font-size:10px;}
body.product-charts #chart-backtest-strip-head>button {
  width:30px;height:28px;min-height:28px;margin:0;padding:0;border:0;background:transparent;color:#8c8e95;
}
body.product-charts #chart-backtest-strip-head>button:hover {background:#222328;color:#fff;}
body.product-charts #chart-backtest-strip-head>button:disabled {cursor:default;opacity:.32;background:transparent;color:#72747b;}
body.product-charts #headline-strip #hs-metrics {
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:10px 12px 5px;
}
body.product-charts #headline-strip .hs-metric {padding:2px 0;border:0;}
body.product-charts #headline-strip .hs-label {color:#74777f;font-size:9px;letter-spacing:.04em;}
body.product-charts #headline-strip .hs-value {margin-top:6px;color:#e9eaed;font-size:13px;font-weight:650;}
body.product-charts #headline-strip .hs-value.value-positive {color:#27c8aa;}
body.product-charts #headline-strip .hs-value.value-negative {color:#f04a60;}
/* The equity canvas owns only the final grid track. SVG's intrinsic 150px
   height must not enlarge that track when the splitter is pulled down to the
   compact metrics-only state; doing so made the plot paint beneath the title
   and metrics. */
body.product-charts #chart-backtest-mini-equity {
  position:relative;align-self:stretch;height:100%;min-height:0;max-height:100%;padding:0 12px 10px;overflow:hidden;
}
body.product-charts #chart-backtest-mini-equity .vela-backtest-equity-frame {
  width:100%;height:100%;min-height:0;overflow:visible;
}
/* The mini-equity host reserves 10px below its SVG frame. Treat that padding
   as part of the visible gray date row: move the labels by half of it so they
   center between the plot edge and the host's actual bottom edge. */
body.product-charts #chart-backtest-mini-equity .vela-equity-x-axis>span {margin-top:5px;}
body.product-charts #chart-backtest-mini-equity svg {display:block;width:100%;height:100%;min-height:0;}
body.product-charts #chart-backtest-strip-actions {display:none;}
body.product-charts #chart-backtest-strip-properties {
  width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border:0!important;
  background:transparent!important;color:#85878e!important;font-size:14px!important;
}
body.product-charts #headline-strip.is-minimized {
  grid-template-rows:45px;height:45px!important;min-height:45px;max-height:45px;
}
body.product-charts #headline-strip.is-minimized :is(#chart-backtest-resize,#hs-metrics,#chart-backtest-mini-equity) {display:none!important;}

/* When the user pulls the compact summary upward, mirror Vela's dense chart
   state: the active market remains in the command bar while duplicate tab,
   readout and marker-control rows yield their height to price and equity. */
body.product-charts.workspace-chart-mode.chart-backtest-expanded #chart-tabs-bar,
body.product-charts.workspace-chart-mode.chart-backtest-expanded #chart-context-bar,
body.product-charts.workspace-chart-mode.chart-backtest-expanded #chart-legend {
  display:none!important;
}

body.product-charts.workspace-tester-mode #results-panel:not([hidden]) {
  height:clamp(420px,60dvh,680px);min-height:340px;max-height:calc(100dvh - 235px);
  margin:0;padding:0 0 24px;overflow-y:auto;
  border:0;border-top:1px solid #2a2b30;border-radius:0;background:#121316;box-shadow:none;
}
body.product-charts.workspace-tester-mode #results-header {
  position:sticky;top:0;z-index:12;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  min-height:45px;padding:6px 10px 6px 12px;border-bottom:1px solid #24252a;background:#141518;
}
body.product-charts #results-header .results-header-title {gap:9px;color:#e7e8eb;font-size:11px;font-weight:650;}
body.product-charts #results-header .results-header-title::before {
  content:none;
}
body.product-charts #results-header .results-header-separator {display:none;}
body.product-charts #results-header-actions {display:flex!important;grid-column:2!important;grid-row:1!important;gap:4px;}
body.product-charts #results-maximize-chart-viewer,
body.product-charts #results-close-chart-viewer {
  display:inline-flex!important;width:30px;min-width:30px;height:28px;min-height:28px;margin:0;padding:0;border:0;
  align-items:center;justify-content:center;background:transparent;color:#8d9098;font-size:17px;
}
body.product-charts #results-close-chart-viewer::before,
body.product-charts #results-close-chart-viewer::after,
body.product-charts .results-viewer-close::before,
body.product-charts .results-viewer-close::after {content:none!important;}
body.product-charts #results-close-chart-viewer {
  display:inline-flex!important;position:static!important;border-radius:5px;
}
body.product-charts :is(#results-maximize-chart-viewer,#results-close-chart-viewer):hover {background:#24252a;color:#fff;}
body.product-charts :is(#results-maximize-chart-viewer,#results-close-chart-viewer):focus-visible {
  outline:2px solid #f2f2f3;outline-offset:1px;color:#fff;
}
body.product-charts.workspace-tester-mode #result-tabs {
  position:sticky;top:45px;z-index:11;display:flex;margin:0;padding:0 12px;border:0;border-bottom:1px solid #2a2b30;
  background:#121316;backdrop-filter:none;
}
/* Vela's ordinary expanded pane is a single performance surface. Secondary
   research views appear only after the user explicitly maximizes the tester,
   keeping the chart/report split quiet and immediately scannable. */
body.product-charts.workspace-tester-mode:not(.pine-results-focus) #result-tabs {
  display:none;
}
/* The base report rule targets both IDs (`#results-panel #result-tabs`) and
   otherwise wins the cascade, pinning the tabs at 0 underneath the sticky
   report header. Match that specificity so the Vela-style header and tabs
   remain visible as one anchored navigation stack while the report scrolls. */
body.product-charts.workspace-tester-mode #results-panel #result-tabs {
  top:45px;z-index:11;
}
body.product-charts.workspace-tester-mode #result-tabs .tab-btn {
  width:auto;padding:12px 14px 10px;border:0;border-radius:0;background:transparent;color:#888b92;
  font-size:12px;font-weight:560;
}
body.product-charts.workspace-tester-mode #result-tabs .tab-btn:is(.active,[aria-selected="true"]) {
  color:#f0f0f2;background:transparent;box-shadow:inset 0 -2px #f2f2f3;
}
body.product-charts.workspace-tester-mode #results-panel>.tab-content {padding:14px 18px 26px;}
body.product-charts .results-overview-followup {display:none;}

body.product-charts .pine-vela-trade-analysis {display:grid;gap:18px;}
body.product-charts .pine-trade-analysis-charts {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:28px;
  min-height:250px;padding:2px 14px 18px;border-bottom:1px solid #292a2f;
}
body.product-charts .pine-trade-distribution,
body.product-charts .pine-trade-win-rate {
  min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;
}
body.product-charts :is(.pine-trade-distribution,.pine-trade-win-rate) figcaption {
  margin:0 0 16px;color:#e7e8eb;font-size:13px;font-weight:650;
}
body.product-charts .pine-trade-distribution-bars {
  grid-template-columns:repeat(16,minmax(0,1fr));height:155px;gap:5px;padding-inline:12px;border-bottom:1px solid #34353a;
  background:repeating-linear-gradient(to bottom,transparent 0,transparent 38px,#232429 39px);
}
body.product-charts .pine-trade-distribution-bar {width:min(100%,34px);border-radius:2px 2px 0 0;}
body.product-charts .pine-trade-distribution-bar.loss {background:#f2364f;}
body.product-charts .pine-trade-distribution-bar.gain {background:#13a98e;}
body.product-charts .pine-trade-distribution-bar.flat {background:#d8a22a;}
body.product-charts .pine-trade-distribution-axis {padding-inline:4px;color:#777a82;}
body.product-charts .pine-trade-distribution-legend {display:flex;flex-wrap:wrap;gap:18px;margin-top:16px;color:#8b8e96;font-size:10px;}
body.product-charts .pine-trade-distribution-legend span {display:inline-flex;align-items:center;gap:6px;}
body.product-charts .pine-trade-distribution-legend span::before {content:'';width:18px;border-top:2px dashed currentColor;}
body.product-charts .pine-trade-distribution-legend .gain {color:#28c9aa;}
body.product-charts .pine-trade-distribution-legend .loss {color:#f04a60;}
body.product-charts .pine-trade-win-rate-body {display:flex;align-items:center;justify-content:center;gap:64px;min-height:190px;}
body.product-charts .pine-trade-win-rate-donut {
  display:grid;place-items:center;width:160px;aspect-ratio:1;border-radius:50%;
  background:conic-gradient(#14a98f 0 var(--win-angle),#d99b24 var(--win-angle) calc(var(--win-angle) + var(--flat-angle)),#f2364f 0);
}
body.product-charts .pine-trade-win-rate-donut::before {
  content:'';grid-area:1/1;width:118px;aspect-ratio:1;border-radius:50%;background:#121316;
}
body.product-charts .pine-trade-win-rate-donut>div {z-index:1;grid-area:1/1;display:grid;place-items:center;gap:4px;}
body.product-charts .pine-trade-win-rate-donut strong {color:#f3f3f5;font-size:27px;font-weight:720;}
body.product-charts .pine-trade-win-rate-donut small {color:#92949c;font-size:8px;font-weight:800;letter-spacing:.18em;}
body.product-charts .pine-trade-win-rate-legend {display:grid;gap:15px;min-width:96px;}
body.product-charts .pine-trade-win-rate-legend>div {position:relative;display:grid;padding-left:15px;}
body.product-charts .pine-trade-win-rate-legend>div::before {content:'';position:absolute;left:0;top:5px;width:8px;height:8px;border-radius:50%;background:#d99b24;}
body.product-charts .pine-trade-win-rate-legend .gain::before {background:#14a98f;}
body.product-charts .pine-trade-win-rate-legend .loss::before {background:#f2364f;}
body.product-charts .pine-trade-win-rate-legend strong {color:#e6e7ea;font-size:13px;}
body.product-charts .pine-trade-win-rate-legend small {color:#777a82;font-size:9px;}
body.product-charts .pine-trade-direction-table {border:0;border-radius:0;background:transparent;box-shadow:none;}
body.product-charts .pine-trade-direction-table thead th {background:transparent;color:#8e9199;font-size:11px;font-weight:500;text-transform:none;letter-spacing:0;}
body.product-charts .pine-trade-direction-table th,
body.product-charts .pine-trade-direction-table td {padding:10px 16px;border-color:#292a2f;font-size:12px;}
body.product-charts .pine-trade-direction-table tbody th {color:#979aa2;font-weight:500;text-align:left;}
body.product-charts .pine-trade-direction-table td {width:20%;color:#e4e5e8;}
body.product-charts .pine-trade-direction-table tbody tr:nth-child(even),
body.product-charts .pine-trade-direction-table tbody tr:hover {background:transparent;}
body.product-charts .pine-duration-analysis {margin-top:26px;padding-top:20px;border-top:1px solid #292a2f;}
body.product-charts .pine-additional-analysis {margin-top:24px;border-top:1px solid #292a2f;}
body.product-charts .pine-additional-analysis>summary {
  padding:16px 2px;color:#9a9da5;font-size:11px;font-weight:650;cursor:pointer;list-style:none;
}
body.product-charts .pine-additional-analysis>summary::after {content:'⌄';margin-left:8px;color:#6f7279;}
body.product-charts .pine-additional-analysis[open]>summary::after {content:'⌃';}
body.product-charts .pine-additional-analysis-body {display:grid;gap:18px;padding-bottom:16px;}
@media(max-width:820px){
  body.product-charts .pine-trade-analysis-charts {grid-template-columns:1fr;}
  body.product-charts .pine-trade-win-rate-body {gap:34px;}
}

/* Vela parity for the full backtest viewer. Resizing the compact summary keeps
   the chart above it; opening the viewer is a different action and replaces
   the chart workspace below the global ribbon with the tabbed report. */
body.product-charts.pine-results-focus.workspace-tester-mode #main {
  height:100%;min-height:0;overflow:hidden;
}
body.product-charts.pine-results-focus.workspace-tester-mode #chart-tabs-bar,
body.product-charts.pine-results-focus.workspace-tester-mode #chart-toolbar,
body.product-charts.pine-results-focus.workspace-tester-mode #chart-context-bar,
body.product-charts.pine-results-focus.workspace-tester-mode #chart-shell,
body.product-charts.pine-results-focus.workspace-tester-mode #chart-range-controls,
body.product-charts.pine-results-focus.workspace-tester-mode #chart-legend {
  display:none!important;
}
body.product-charts.pine-results-focus.workspace-tester-mode #results-panel:not([hidden]) {
  display:block!important;flex:1 1 0;min-height:0!important;max-height:none!important;height:auto;
  margin:0;padding-bottom:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
body.product-charts.pine-results-focus.workspace-tester-mode #results-header {
  flex:none;
}

/* Vela performance parity: the expanded report groups the net-profit curve
   and five decision metrics in one card, followed by the detailed charts and
   table. Assumptions and cost diagnostics live in Details. */
body.product-charts.workspace-tester-mode #pine-performance-view .pine-observation-overview {
  display:block;max-width:none;margin:0;padding:0;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-observation-overview>h4 {
  display:none;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics {
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;
  max-width:none;margin:0 16px 16px;padding:15px 0 12px;border:1px solid #34353a;border-radius:6px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics>div {
  min-height:52px;padding:2px 16px;border:0;border-radius:0;background:transparent;box-shadow:none;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics span {
  color:#898b93;font-size:9px;font-weight:650;letter-spacing:.025em;text-transform:uppercase;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics strong {
  color:#e7e8eb;font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.015em;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics strong .pine-metric-inline-detail {
  display:inline;margin-left:7px;color:inherit;font-size:10px;font-weight:600;letter-spacing:0;text-transform:none;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics small {
  display:none;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics .pine-result-gain strong {
  color:#14c7a6;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics .pine-result-loss strong {
  color:#f0445e;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-equity {
  position:relative;margin:0;padding:0 16px 4px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-equity figcaption {
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-equity .vela-backtest-equity-frame {
  width:100%;height:clamp(310px,calc(100dvh - 390px),560px);min-height:310px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-equity svg {
  display:block;width:100%;height:100%;min-height:0;touch-action:none;
}
.pine-vela-performance-stack {display:block;min-width:0;}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-equity-card {
  margin:16px 4px 0;padding:12px 0 0;border:1px solid #34353a;border-radius:7px;background:#17181b;overflow:hidden;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-detail {
  margin:22px 4px 24px;padding:0;min-width:0;scroll-margin-top:120px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-detail>h2 {
  margin:0 0 15px;color:#f1f2f4;font-size:16px;font-weight:700;line-height:1.25;text-transform:none;letter-spacing:0;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-panel {
  overflow:hidden;border:1px solid #34353a;border-radius:7px;background:#17181b;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-charts {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;padding:30px 17px 4px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-bars {
  position:relative;min-width:0;margin:0;padding:0;background:transparent;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-bars figcaption {
  margin:0 0 2px;color:#f0f1f3;font-size:13px;font-weight:700;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-bars svg {
  display:block;width:100%;height:250px;overflow:visible;
}
.vela-performance-grid {stroke:#292a2f;stroke-width:1;vector-effect:non-scaling-stroke;}
.vela-performance-zero {stroke:#4b4d53;stroke-width:1;vector-effect:non-scaling-stroke;}
.vela-performance-axis {fill:#8c8f98;font-size:9px;font-weight:500;font-variant-numeric:tabular-nums;}
.vela-performance-profit {fill:#0da58f;}
.vela-performance-loss {fill:#f43c54;}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-legend {
  display:flex;align-items:center;gap:27px;height:28px;color:#c4c6cc;font-size:11px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-legend span {
  display:inline-flex;align-items:center;gap:8px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-legend span::before {
  content:"";width:8px;height:8px;border-radius:2px;background:#0da58f;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-legend span[data-tone="loss"]::before {
  background:#f43c54;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table {
  width:calc(100% - 34px);margin:0 17px 10px;border-collapse:collapse;table-layout:fixed;color:#e9eaed;font-size:12px;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table th,
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table td {
  height:37px;padding:0 15px;border-bottom:1px solid #2a2b30;text-align:right;font-variant-numeric:tabular-nums;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table thead th {
  color:#c4c6cc;font-size:12px;font-weight:500;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table th:first-child {
  width:42%;padding-left:15px;text-align:left;color:#c4c6cc;font-weight:500;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table tbody tr:last-child th,
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table tbody tr:last-child td {
  border-bottom:0;
}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table td[data-tone="positive"] {color:#0cc5a6;}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table td[data-tone="negative"] {color:#ff3f58;}
body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table .pine-vela-performance-section-row th {
  height:44px;padding-top:10px;color:#f0f1f3;font-size:12px;font-weight:700;text-align:left;
}
.pine-vela-chart-tooltip {
  position:absolute;z-index:4;display:grid;gap:4px;min-width:116px;padding:10px 11px;border:1px solid #3a3b40;border-radius:5px;
  background:#222326;color:#f2f3f5;box-shadow:0 7px 20px rgba(0,0,0,.32);pointer-events:none;font-variant-numeric:tabular-nums;
}
.pine-vela-chart-tooltip::before {
  content:"";position:absolute;top:-6px;left:50%;width:10px;height:10px;border-top:1px solid #3a3b40;border-left:1px solid #3a3b40;
  background:#222326;transform:translateX(-50%) rotate(45deg);
}
.pine-vela-chart-tooltip.is-above::before {top:auto;bottom:-6px;transform:translateX(-50%) rotate(225deg);}
.pine-vela-chart-tooltip[hidden] {display:none;}
.pine-vela-chart-tooltip strong {font-size:11px;font-weight:650;line-height:1.35;white-space:nowrap;}
.pine-vela-chart-tooltip .pine-vela-chart-tooltip-metric {display:flex;align-items:center;gap:7px;color:#8f929a;font-size:10px;line-height:1.3;}
.pine-vela-chart-tooltip .pine-vela-chart-tooltip-metric::before {content:"";width:7px;height:7px;border-radius:2px;background:#10b79d;}
.pine-vela-chart-tooltip .pine-vela-chart-tooltip-metric[data-tone="loss"]::before {background:#f43c54;}
.pine-vela-chart-tooltip b {padding-left:14px;font-size:12px;line-height:1.2;}
.pine-vela-chart-tooltip small {color:#858890;font-size:9px;line-height:1.3;}
.vela-equity-grid {stroke:transparent;stroke-width:1;vector-effect:non-scaling-stroke;}
.vela-equity-zero {stroke:#27292e;stroke-width:1;vector-effect:non-scaling-stroke;}
.vela-backtest-equity-frame {position:relative;min-width:0;overflow:hidden;}
.vela-backtest-equity-frame>.vela-backtest-equity-svg {position:absolute;inset:0;}
.vela-equity-html-axis {position:absolute;z-index:2;color:#a0a2aa;font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none;}
.vela-equity-y-axis {top:0;right:0;bottom:0;width:52px;}
.vela-equity-y-axis>span {position:absolute;right:4px;transform:translateY(-50%);text-align:right;white-space:nowrap;}
.vela-equity-x-axis {inset:0;}
.vela-equity-x-axis>span {position:absolute;transform:translate(-50%,-50%);white-space:nowrap;}
.vela-equity-x-axis>span.is-start {transform:translateY(-50%);}
.vela-equity-x-axis>span.is-end {transform:translate(-100%,-50%);}
.vela-backtest-equity-frame.is-compact .vela-equity-html-axis {font-size:9px;}
.vela-backtest-equity-frame.is-compact .vela-equity-y-axis>span {right:2px;}

/* Vela-compatible chart settings. The graph remains the source of truth;
   this surface is a durable, instant-apply editor for the same options. */
.canvas-settings-dialog.vela-chart-settings {
  width:min(876px,calc(100vw - 24px));height:min(680px,calc(100dvh - 24px));max-height:none;margin:auto;padding:0;
  overflow:hidden;border:1px solid #36383e;border-radius:10px;background:#151619;color:#d8d9de;
  box-shadow:0 28px 90px rgba(0,0,0,.72);font:12px/1.35 Inter,ui-sans-serif,system-ui,sans-serif;
}
.canvas-settings-dialog.vela-chart-settings[open] {display:grid;grid-template-rows:58px 60px minmax(0,1fr) 48px;}
.canvas-settings-dialog.vela-chart-settings.canvas-no-preview[open] {height:min(540px,calc(100dvh - 24px));}
.canvas-settings-dialog.vela-chart-settings::backdrop {background:rgba(3,4,6,.58);backdrop-filter:blur(2px);}
.vela-chart-settings>header {display:grid;grid-template-columns:28px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:0 17px;border-bottom:1px solid #303137;}
.vela-chart-settings>header h2 {margin:0;color:#f3f4f6;font-size:14px;font-weight:720;letter-spacing:-.01em;text-transform:none;}
.vela-settings-title-icon {display:grid;place-items:center;width:26px;height:26px;border:1px solid #34363c;border-radius:6px;color:#8e929c;font-size:13px;}
.vela-chart-settings>header button[data-canvas-close] {width:28px;height:28px;padding:0;border:0;background:transparent;color:#858891;font-size:20px;line-height:1;}
.vela-chart-settings>header button[data-canvas-close]:hover {background:#25272c;color:#f5f5f7;}
.vela-settings-tabs {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;padding:10px 18px;border-bottom:1px solid #2f3035;background:#151619;}
.vela-settings-tabs button {display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;height:40px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#92959d;font-size:11px;font-weight:550;white-space:nowrap;}
.vela-settings-tabs button i {color:#71757f;font-style:normal;font-size:13px;}
.vela-settings-tabs button:hover {background:#1d1e22;color:#d8d9dd;}
.vela-settings-tabs button[aria-selected="true"] {background:#1e2024;color:#f1f2f4;font-weight:680;box-shadow:inset 0 1px rgba(255,255,255,.02);}
.vela-settings-tabs button[aria-selected="true"] i {color:#a8abb3;}
.vela-settings-scroll {min-height:0;padding:16px 20px 20px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3c3e44 transparent;}
.vela-settings-panel {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 22px;align-items:start;}
.vela-settings-panel[hidden] {display:none!important;}
.vela-setting-card {min-width:0;padding:14px 15px 15px;border:1px solid #34353a;border-radius:9px;background:#17181b;}
.vela-setting-card.vela-card-wide {grid-column:1/-1;}
.vela-setting-card h3 {display:flex;align-items:center;gap:9px;margin:0 0 10px;color:#858891;font-size:10px;font-weight:720;letter-spacing:.075em;text-transform:uppercase;}
.vela-setting-card h3::after {content:"";flex:1;height:1px;background:#303136;}
.vela-setting-row {display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:31px;margin:0;color:#c6c8cf;font-size:11px;}
.vela-setting-row>span:first-child {min-width:0;}
.vela-setting-row :is(select,input[type="number"]) {box-sizing:border-box;width:min(176px,55%);height:30px;padding:0 9px;border:1px solid #3a3c43;border-radius:6px;background:#18191d;color:#e5e6e9;font:11px/1.2 inherit;}
.vela-setting-row select {padding-right:28px;}
.vela-setting-row input[type="color"] {width:27px;height:27px;padding:3px;border:1px solid #3b3d44;border-radius:5px;background:#1a1b1f;cursor:pointer;}
.vela-setting-row input[type="color"]::-webkit-color-swatch-wrapper {padding:0;}
.vela-setting-row input[type="color"]::-webkit-color-swatch {border:0;border-radius:2px;}
.vela-switch-row input[type="checkbox"] {position:relative;appearance:none;width:29px;height:17px;margin:0;border:1px solid #44464e;border-radius:999px;background:#292b31;cursor:pointer;}
.vela-switch-row input[type="checkbox"]::after {content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#8d9098;transition:transform .12s,background .12s;}
.vela-switch-row input[type="checkbox"]:checked {border-color:#8ea2d5;background:#e9edf5;}
.vela-switch-row input[type="checkbox"]:checked::after {transform:translateX(12px);background:#252831;}
.vela-color-pair {display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 4px;padding:0 0 4px 13px;}
.vela-color-pair .vela-setting-row {min-height:28px;color:#81848c;font-size:10px;}
.vela-setting-help {margin:7px 0 0;color:#737780;font-size:10px;line-height:1.45;}
.vela-number-unit {display:flex;align-items:center;justify-content:flex-end;gap:8px;width:min(210px,65%);}
.vela-number-unit input[type="number"] {width:72px;max-width:none;}
.vela-number-unit small {min-width:47px;color:#858891;font-size:10px;}
.vela-grid-color-row {display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;align-items:center;}
.vela-grid-color-row>.vela-setting-row:last-child>span {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
.vela-grid-color-row>.vela-setting-row:last-child {justify-content:flex-end;}
.vela-settings-preview {grid-column:1/-1;margin-top:20px;padding-top:18px;border-top:1px solid #303136;--preview-bg:#090a0c;--preview-grid:#1d2024;--preview-text:#a7aab0;--preview-up:#26a69a;--preview-down:#ef5350;}
.vela-settings-preview[hidden] {display:none;}
.vela-settings-preview h4 {margin:0 0 12px;color:#888b94;font-size:9px;font-weight:720;letter-spacing:.09em;text-transform:uppercase;}
.vela-preview-head {display:flex;justify-content:space-between;padding:0 12px 9px;color:#888b94;font-size:9px;}
.vela-preview-head strong {color:#e2e3e6;font-weight:650;}
.vela-preview-canvas {position:relative;height:134px;overflow:hidden;border:1px solid #34363b;border-radius:7px;background-color:var(--preview-bg);color:var(--preview-text);background-image:linear-gradient(to right,var(--preview-grid) 1px,transparent 1px),linear-gradient(to bottom,var(--preview-grid) 1px,transparent 1px);background-size:12.5% 100%,100% 33.333%;}
.vela-settings-preview[data-vertical="false"] .vela-preview-canvas {background-image:linear-gradient(to bottom,var(--preview-grid) 1px,transparent 1px);}
.vela-settings-preview[data-horizontal="false"] .vela-preview-canvas {background-image:linear-gradient(to right,var(--preview-grid) 1px,transparent 1px);}
.vela-settings-preview[data-vertical="false"][data-horizontal="false"] .vela-preview-canvas {background-image:none;}
.vela-preview-status {position:absolute;z-index:3;top:8px;left:10px;display:flex;align-items:center;gap:6px;font-size:10px;white-space:nowrap;}
.vela-preview-avatar {display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#d95c9e;color:white;font-size:8px;font-weight:750;}
.vela-preview-status strong {color:#e8e9eb;font-size:11px;}.vela-preview-status strong small {color:#858891;font-size:9px;}
.vela-preview-status i {width:6px;height:6px;border-radius:50%;background:#16bea5;box-shadow:0 0 7px #16bea5;}
.vela-preview-status b {font-weight:600;}.vela-preview-status em {color:#17c4aa;font-style:normal;}
.vela-preview-watermark {position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);color:color-mix(in srgb,var(--preview-text) 14%,transparent);font-size:20px;font-weight:760;white-space:nowrap;}
.vela-preview-indicator {position:absolute;z-index:3;left:10px;bottom:8px;font-size:9px;}.vela-preview-indicator b {margin-left:6px;color:#d7d9de;}
.vela-preview-candles {position:absolute;inset:34px 20px 16px;}
.vela-preview-candles i {position:absolute;left:calc(var(--x)*3.55%);top:calc(var(--y)*1%);width:4px;height:calc(var(--h)*1%);max-height:54px;background:var(--preview-up);}
.vela-preview-candles i::before {content:"";position:absolute;left:1.5px;top:-6px;bottom:-6px;width:1px;background:inherit;}.vela-preview-candles i.down {background:var(--preview-down);}
.vela-settings-preview>p {margin:8px 0 0;color:#737780;font-size:9px;}
.vela-chart-settings>footer {position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:0 16px;border-top:1px solid #303137;background:#151619;}
.vela-chart-settings>footer>span {color:#858891;font-size:9px;text-align:center;}
.vela-chart-settings>footer>button {justify-self:end;width:auto;min-width:53px;height:29px;padding:0 13px;border:0;border-radius:6px;background:#eef0f5;color:#1c1d21;font-size:11px;font-weight:670;}
.vela-settings-template {position:relative;justify-self:start;}
.vela-settings-template>summary {display:flex;align-items:center;min-width:86px;height:29px;box-sizing:border-box;padding:0 10px;border:1px solid #3b3d44;border-radius:6px;color:#9a9da5;cursor:pointer;font-size:10px;list-style:none;}
.vela-settings-template>summary::after {content:"⌄";margin-left:auto;}.vela-settings-template>summary::-webkit-details-marker {display:none;}
.vela-settings-template>div {position:absolute;z-index:12;bottom:36px;left:0;display:grid;min-width:170px;padding:5px;border:1px solid #3a3c42;border-radius:7px;background:#1a1b1f;box-shadow:0 12px 30px rgba(0,0,0,.45);}
.vela-settings-template:not([open])>div {display:none;}.vela-settings-template button,.vela-settings-template [data-canvas-template-list]>span {padding:8px 9px;border:0;border-radius:5px;background:transparent;color:#c9cbd1;font-size:10px;text-align:left;}.vela-settings-template button:hover {background:#282a30;color:#fff;}.vela-settings-template [data-canvas-template-list] {display:grid;border-top:1px solid #313238;}
#chart-symbol-watermark {position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);color:rgba(180,183,191,.08);font-size:clamp(22px,3vw,44px);font-weight:760;letter-spacing:-.03em;pointer-events:none;white-space:nowrap;}
#chart-symbol-watermark[hidden] {display:none;}
body[data-chart-status-symbol="false"] #chart-readout-identity {display:none;}
body[data-chart-status-market="false"] #chart-live-status {display:none!important;}
body[data-chart-status-ohlc="false"] #chart-readout-values {display:none;}
body[data-chart-status-change="false"] #chart-readout-change {display:none!important;}
body[data-chart-status-indicator-titles="false"] #chart-output-readouts .chart-readout-tool-name {display:none;}
body[data-chart-status-indicator-values="false"] #chart-output-readouts .chart-output-readout {display:none;}
body[data-chart-countdown="false"] :is(#chart-live-price-label,.chart-layout-live-price-label) .chart-live-countdown {display:none;}
@media(max-width:700px){.canvas-settings-dialog.vela-chart-settings[open]{grid-template-rows:52px auto minmax(0,1fr) 48px}.vela-settings-tabs{grid-template-columns:repeat(3,1fr);gap:4px;padding:7px}.vela-settings-tabs button{height:32px;font-size:10px}.vela-settings-panel{grid-template-columns:1fr}.vela-chart-settings>footer>span{display:none}.vela-chart-settings>footer{grid-template-columns:1fr 1fr}.vela-preview-status [data-preview-ohlc]{display:none}}
.vela-equity-line {fill:none;stroke-width:1.8;vector-effect:non-scaling-stroke;}
.vela-equity-line.positive {stroke:#0db79f;}
.vela-equity-line.negative {stroke:#f0445e;}
.vela-equity-guide {stroke:#7b7e87;stroke-width:1;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;}
.vela-equity-cursor {stroke:#111216;stroke-width:2;vector-effect:non-scaling-stroke;fill:#12c5aa;}
.vela-equity-cursor[data-tone="negative"] {fill:#f0445e;}
.vela-equity-html-tooltip {
  --vela-equity-caret-left:50%;position:absolute;z-index:6;display:grid;gap:4px;width:max-content;min-width:168px;max-width:210px;
  padding:10px 11px;border:1px solid #3b3c42;border-radius:5px;background:#222326;color:#f2f3f5;
  box-shadow:0 7px 20px rgba(0,0,0,.34);pointer-events:none;font-variant-numeric:tabular-nums;
}
.vela-equity-html-tooltip[hidden] {display:none;}
.vela-equity-html-tooltip::before {
  content:"";position:absolute;top:-6px;left:var(--vela-equity-caret-left);width:10px;height:10px;border-top:1px solid #3b3c42;
  border-left:1px solid #3b3c42;background:#222326;transform:translateX(-50%) rotate(45deg);
}
.vela-equity-html-tooltip.is-above::before {top:auto;bottom:-6px;transform:translateX(-50%) rotate(225deg);}
.vela-equity-html-tooltip-head {display:flex;align-items:center;gap:6px;min-height:18px;}
.vela-equity-html-tooltip-head strong {font-size:12px;font-weight:700;line-height:18px;white-space:nowrap;}
.vela-equity-html-tooltip-badge {padding:1px 5px;border-radius:4px;background:rgba(13,183,159,.18);color:#13c3a8;font-size:10px;font-weight:650;line-height:16px;}
.vela-equity-html-tooltip-badge[data-side="short"] {background:rgba(240,68,94,.16);color:#f06a7b;}
.vela-equity-html-tooltip-metric {display:flex;align-items:center;gap:7px;color:#93959d;font-size:10px;line-height:14px;}
.vela-equity-html-tooltip-metric i {width:7px;height:7px;border-radius:50%;background:#13c3a8;}
.vela-equity-html-tooltip-metric i[data-tone="negative"] {background:#f0445e;}
.vela-equity-html-tooltip b {padding-left:14px;font-size:12px;line-height:16px;}
.vela-equity-html-tooltip small {color:#93959d;font-size:9px;line-height:13px;white-space:nowrap;}
body.product-charts.workspace-tester-mode #pine-details-view .pine-performance-evidence {
  margin:16px 0;padding-top:14px;border-top:1px solid #2a2b30;
}
body.product-charts.workspace-tester-mode #pine-details-view .pine-performance-evidence>h3 {
  margin:0 0 10px;color:#e8e9ec;font-size:13px;font-weight:650;
}
@media(max-width:780px){
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-headline-metrics {
    grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px;
  }
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-equity .vela-backtest-equity-frame {
    height:360px;min-height:300px;
  }
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-charts {
    grid-template-columns:1fr;padding-top:20px;
  }
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table {
    width:calc(100% - 20px);margin-inline:10px;font-size:10px;
  }
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table th:first-child {width:34%;}
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table th,
  body.product-charts.workspace-tester-mode #pine-performance-view .pine-vela-performance-table td {padding-inline:6px;}
}

.prop-firm-controls {display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:8px;margin:14px 0;}
.prop-firm-controls label {display:grid;grid-template-columns:1fr auto;gap:5px;align-items:center;padding:10px;border:1px solid #2b2c32;background:#17181c;color:#8d9098;font-size:10px;}
.prop-firm-controls label input {grid-column:1;width:100%;min-width:0;margin-top:4px;padding:7px 8px;border-color:#34353c;background:#101114;color:#eee;}
.prop-firm-controls label span {grid-column:2;grid-row:2;color:#70737b;}
.prop-firm-results {display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));border:1px solid #2a2b30;}
.prop-firm-rule {display:grid;gap:6px;padding:14px;border-right:1px solid #2a2b30;background:#15161a;}
.prop-firm-rule:last-child {border-right:0;}
.prop-firm-rule span,.prop-firm-rule small {color:#80838b;font-size:9px;}
.prop-firm-rule strong {font-size:16px;color:#e6e7e9;}
.prop-firm-rule.is-pass strong {color:#27c8aa;}.prop-firm-rule.is-fail strong {color:#f04a60;}

body.product-charts .trades-log-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:20px;}
body.product-charts .trades-log-heading>div:first-child>small,
body.product-charts .trades-log-heading>div:first-child>p {display:none;}
body.product-charts .trades-log-heading h3 {margin:0;color:#e9eaed;font-size:13px;font-weight:650;}
.trades-log-mode {display:flex;align-items:center;gap:9px;color:#8a8c93;font-size:10px;white-space:nowrap;}
.trades-log-actions {display:flex;align-items:center;gap:2px;padding:3px;border:1px solid #2b2c31;border-radius:7px;background:#18191d;}
.trades-log-actions button {display:grid;place-items:center;width:29px;min-width:29px;height:27px;min-height:27px;margin:0;padding:0;border:0;border-radius:5px;background:transparent;color:#888b92;font-size:15px;}
.trades-log-actions button[aria-pressed="true"] {background:#303137;color:#f3f3f5;}
.trade-calendar {display:grid;gap:10px;margin-top:10px;}
.trade-calendar-head {display:flex;align-items:center;gap:8px;min-height:38px;}
.trade-calendar-head strong {min-width:126px;color:#e9eaed;font-size:16px;}
.trade-calendar-head button {width:28px;min-width:28px;height:28px;min-height:28px;margin:0;padding:0;border:0;background:transparent;color:#a4a6ad;font-size:18px;}
.trade-calendar-head button:hover:not(:disabled) {background:#222329;color:#fff;}
.trade-calendar-head button:disabled {opacity:.28;}
.trade-calendar-weekdays,.trade-calendar-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;}
.trade-calendar-weekdays span {padding:9px 4px;border-radius:5px;background:#1a1b1f;color:#95979e;font-size:10px;text-align:center;}
.trade-calendar-day {display:grid;align-content:start;gap:7px;min-height:92px;padding:9px;border:1px solid #292a2f;border-radius:6px;background:#17181b;color:#d6d7db;font-variant-numeric:tabular-nums;}
.trade-calendar-day.is-empty {visibility:hidden;}
.trade-calendar-day.is-profit {border-color:#17866f;background:rgba(20,92,76,.26);}
.trade-calendar-day.is-loss {border-color:#9d3040;background:rgba(105,30,42,.26);}
.trade-calendar-date {font-size:11px;}
.trade-calendar-pnl {margin-top:auto;font-size:12px;font-weight:720;}
.trade-calendar-day.is-profit .trade-calendar-pnl {color:#29cfac;}
.trade-calendar-day.is-loss .trade-calendar-pnl {color:#f25a6d;}
.trade-calendar-meta {color:#92949b;font-size:9.5px;line-height:1.45;white-space:pre-line;}
.trade-calendar-month-summary {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:5px;border:1px solid #292a2f;border-radius:7px;overflow:hidden;}
.trade-calendar-month-summary article {display:grid;gap:7px;min-height:66px;padding:11px 13px;border-right:1px solid #292a2f;background:#15161a;}
.trade-calendar-month-summary article:last-child {border-right:0;}
.trade-calendar-month-summary small {color:#777a82;font-size:8.5px;font-weight:700;letter-spacing:.055em;text-transform:uppercase;}
.trade-calendar-month-summary strong {color:#e7e8eb;font-size:12px;font-weight:680;}
.trade-calendar-month-summary strong.is-profit {color:#29cfac;}.trade-calendar-month-summary strong.is-loss {color:#f25a6d;}

@media(max-width:860px){
  body.product-charts #headline-strip #hs-metrics {grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px;}
  .prop-firm-controls,.prop-firm-results {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.product-charts.workspace-tester-mode #result-tabs {overflow-x:auto;}
  .trade-calendar-day {min-height:72px;padding:7px;}
  .trade-calendar-month-summary {grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* Failed chart tools keep their exact engine diagnostic one click from the
   legend. The trigger stays visible while ordinary row actions remain
   hover-only. */
#chart-tools-bar .study-chip > .study-error-trigger {
  display:inline-grid!important;place-items:center!important;flex:none!important;
  width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;
  margin:0 2px!important;padding:0!important;border:0!important;border-radius:50%!important;
  background:#e5484d!important;color:#fff!important;box-shadow:0 0 0 2px rgba(229,72,77,.18)!important;
  opacity:1!important;visibility:visible!important;overflow:visible!important;pointer-events:auto!important;
  font:800 10px/16px ui-sans-serif,system-ui,sans-serif!important;
}
#chart-tools-bar .study-chip > .study-error-trigger:hover,
#chart-tools-bar .study-chip > .study-error-trigger:focus-visible {
  background:#f2555a!important;color:#fff!important;outline:2px solid rgba(255,128,133,.45)!important;
  outline-offset:2px!important;
}
.study-error-popover {
  position:fixed;inset:auto;width:min(390px,calc(100vw - 16px));max-height:min(440px,calc(100dvh - 16px));
  box-sizing:border-box;margin:0;padding:0;overflow:hidden;border:1px solid #3a3034;border-radius:9px;
  background:#151316;color:#e9e7ea;box-shadow:0 18px 54px rgba(0,0,0,.68),inset 0 1px rgba(255,255,255,.035);
}
.study-error-popover:popover-open {display:flex;flex-direction:column;}
.study-error-popover::backdrop {background:transparent;}
.study-error-popover>header {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid #302a2d;}
.study-error-popover>header strong {min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5f2f4;font-size:12px;}
.study-error-popover .study-error-close {width:24px;height:24px;min-height:24px;padding:0;border:0;background:transparent;color:#aaa2a7;font-size:18px;}
.study-error-popover .study-error-close:hover {background:#2a2528;color:#fff;}
.study-error-popover>p {margin:0;padding:10px 12px 7px;color:#b8b0b5;font-size:11px;line-height:1.45;}
.study-error-diagnostic {margin:0 12px 11px;padding:10px;overflow:auto;border:1px solid rgba(229,72,77,.25);border-radius:6px;background:#21171a;color:#ffb8bd;font:11px/1.48 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;}
.study-error-popover>footer {display:flex;justify-content:flex-end;gap:7px;padding:10px 12px;border-top:1px solid #302a2d;background:#121113;}
.study-error-popover>footer button {min-height:30px;margin:0;padding:5px 11px;border:1px solid #3c373b;border-radius:6px;background:#202023;color:#d8d5d8;font-size:11px;font-weight:650;}
.study-error-popover>footer .study-error-ai {border-color:#e4e4e6;background:#ededee;color:#171719;}
.study-error-popover>footer button:hover {filter:brightness(1.08);}
[data-theme="light"] .study-error-popover {border-color:#d7c9cd;background:#fff;color:#242126;box-shadow:0 18px 54px rgba(37,25,29,.2);}
[data-theme="light"] .study-error-popover>header,
[data-theme="light"] .study-error-popover>footer {border-color:#e6dde0;background:#faf8f9;}
[data-theme="light"] .study-error-popover>header strong {color:#242126;}
[data-theme="light"] .study-error-diagnostic {border-color:#e8b9bc;background:#fff3f4;color:#9d252d;}
/* Pine-only release: legacy Python records remain server-side for migration,
   but no Python product surface may flash, receive focus, or be re-opened by
   older client code. */
[data-code-language="python"],
[data-language="python"],
[data-chart-language="python"],
[data-strategy-language="python"],
[data-results-language="python"],
[data-chat-mode="author"],
#python-public-library,
#community-python-settings,
#python-quick-strategy,
#python-tool-add,
#python-sdk-indicators-add,
#python-candles-add,
#python-signal-add,
#python-table-add,
#python-note-add,
#python-drawings-add,
#python-sdk-starters-title,
#python-sdk-starters,
#se-quick-python,
#strategy-chooser-python,
#portfolio-preview-open,
#portfolio-preview-dialog {
  display: none !important;
}
.community-access-dialog{width:min(680px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 32px));padding:22px;border:1px solid #27303a;border-radius:12px;background:#0b0e12;color:#e7ebef;box-shadow:0 28px 90px #000b}
.community-access-dialog::backdrop{background:#000a;backdrop-filter:blur(3px)}
.community-access-dialog>input{width:100%;box-sizing:border-box;margin:12px 0;padding:11px 12px;border:1px solid #303944;border-radius:8px;background:#10151b;color:inherit}
.community-access-results{display:grid;gap:8px;max-height:420px;overflow:auto;margin:12px 0}
.community-access-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #20262d}
.community-access-row>span:first-child{font-weight:650}
.community-access-row select{padding:7px 9px;border:1px solid #303944;border-radius:7px;background:#10151b;color:inherit}
.pine-publish-status{min-width:0;color:#9eacb9;font-size:11px}

/* Published-script layout follows TradingView's content hierarchy. */
#community-view.community-detail-open {
  max-width:1200px;padding-top:0;background:transparent!important;
}
#community-view.community-detail-open>:not(#community-detail) {display:none!important;}
#community-detail {
  margin:18px 0 28px!important;padding:0!important;overflow:visible!important;border:0!important;
  border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.community-detail-header {
  align-items:flex-end;padding:16px 0 18px!important;border:0!important;background:transparent!important;
}
.community-detail-eyebrow {align-items:center;margin-bottom:12px!important;}
.community-detail-eyebrow>span {
  min-height:22px!important;padding:0 9px!important;border-color:rgba(41,177,149,.2)!important;border-radius:3px!important;
  background:rgba(25,118,101,.24)!important;color:#57c9ad!important;font-size:9px!important;letter-spacing:.055em!important;
}
.community-detail-eyebrow>span[data-access="protected"],
.community-detail-eyebrow>span[data-access="invite_only"] {border-color:rgba(43,177,149,.2)!important;color:#57c9ad!important;}
.community-detail-eyebrow>span[data-access="protected"]::after,
.community-detail-eyebrow>span[data-access="invite_only"]::after {content:"  ▣";margin-left:5px;color:#8f969f;}
.community-detail-eyebrow>time {color:#7c838d;font-size:11px;}
#community-detail .community-detail-title {font-size:clamp(28px,3vw,40px)!important;letter-spacing:-.045em!important;}
.community-detail-header-actions {display:flex;align-items:center;gap:8px;}
.community-detail-header-actions>.lib-btn {
  margin:0;padding:7px 10px;border-color:transparent;background:transparent;color:#b8bdc6;box-shadow:none;
}
.community-detail-header-actions>.lib-btn:hover {background:rgba(255,255,255,.04);color:#fff;}
#community-detail .community-detail-back::before {content:"×";margin-right:6px;}
.community-detail-media {padding:0!important;}
.community-detail-media-toolbar {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
#community-detail .community-detail-tabs {gap:8px;border:0!important;}
#community-detail .community-detail-tabs .lib-btn {
  min-height:36px;padding:0 17px!important;border:1px solid transparent!important;border-radius:999px!important;
  background:#1b1c20!important;color:#a7adb7!important;font-size:11px!important;
}
#community-detail .community-detail-tabs [role="tab"][aria-selected="true"] {
  border-color:#f3f3f4!important;background:#f3f3f4!important;color:#0a0a0b!important;
}
#community-detail .community-detail-tabs [role="tab"]::after {display:none!important;}
.community-detail-top-actions {display:flex;align-items:center;gap:8px;}
.community-detail-top-actions>.lib-btn {
  margin:0;min-height:36px;padding:0 13px;border-color:rgba(255,255,255,.16);border-radius:7px;
  background:transparent;color:#c2c7cf;box-shadow:none;
}
#community-detail [role="tabpanel"] {padding:0!important;}
#community-detail .community-detail-cover {
  max-height:none!important;border-color:rgba(255,255,255,.16)!important;border-radius:5px!important;box-shadow:none!important;
}
.community-detail-overview {display:block!important;padding:0!important;border:0!important;}
.community-detail-action-deck {
  display:flex!important;align-items:center;justify-content:space-between;gap:18px;padding:14px 0 20px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.community-detail-primary-actions {display:flex!important;align-items:center;gap:8px;}
.community-detail-primary-actions>.lib-btn,
.community-detail-more-actions>summary {
  min-height:38px!important;margin:0!important;padding:0 13px!important;border:1px solid rgba(255,255,255,.18)!important;
  border-radius:7px!important;background:transparent!important;color:#d3d6dc!important;box-shadow:none!important;
  font-size:10.5px;font-weight:700;line-height:36px;list-style:none;cursor:pointer;
}
.community-detail-primary-actions>.lib-btn-primary {
  border-color:rgba(255,255,255,.85)!important;background:transparent!important;color:#f2f2f3!important;
  box-shadow:none!important;
}
#community-detail .community-detail-primary-actions>.lib-btn-primary::before {content:"▧";margin-right:7px;color:#e9ebee;}
.community-detail-primary-actions>.lib-btn:hover,
.community-detail-more-actions>summary:hover {background:rgba(255,255,255,.055)!important;transform:none!important;}
.community-detail-primary-actions>.community-use-note {display:block!important;position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.community-detail-primary-actions>.community-use-note:not([hidden]) {
  position:static;display:block!important;width:auto;height:auto;overflow:visible;color:#e2ab67;font-size:10px;
}
.community-detail-more-actions {position:relative;}
.community-detail-more-actions>summary::-webkit-details-marker {display:none;}
.community-detail-more-actions[open]>.community-detail-utility-actions {
  display:grid;position:absolute;z-index:30;top:44px;left:0;min-width:180px;padding:6px;border:1px solid rgba(255,255,255,.12);
  border-radius:9px;background:#15161a;box-shadow:0 18px 50px rgba(0,0,0,.55);
}
.community-detail-utility-actions {display:none;}
.community-detail-utility-actions>.lib-btn {justify-content:flex-start;margin:0;border:0;background:transparent;text-align:left;}
.community-detail-author-rail {margin-left:auto;}
.community-detail-author-rail>.lib-btn {
  margin:0;padding:0;border:0;background:transparent;color:#c9cdd4;box-shadow:none;font-weight:750;
}
.community-detail-author-rail>.lib-btn::before {
  content:"";display:inline-block;width:32px;height:32px;margin-right:8px;border-radius:50%;vertical-align:middle;
  background:linear-gradient(145deg,#5367c9,#9681d8);
}
.community-detail-description-label {display:block;margin:22px 0 8px;color:#7f8793;font-size:10px;font-weight:750;text-transform:uppercase;}
#community-detail .community-detail-description {max-width:850px;margin:0;color:#d0d4db;font-size:13px;line-height:1.65;}
.community-detail-disclaimer {max-width:850px;margin:22px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.07);color:#808793;font-size:11px;}
.community-detail-technical {margin:20px 0 0!important;padding:0!important;border:0!important;background:transparent!important;}
.community-detail-technical-heading {min-height:38px!important;width:max-content;color:#a7adb7!important;}
.community-detail-technical-heading::before {font-size:15px!important;}
#community-detail .community-detail-meta {margin:4px 0 8px;color:#7d8490;font-size:10px;}
#community-detail .community-source-hash {max-width:850px;}
.community-version-history {max-width:850px;}
#community-detail .community-discussion {padding:26px 0 10px!important;background:transparent!important;}
#community-detail .community-discussion h4 {font-size:20px!important;}
.community-comment-composer {max-width:850px;margin-top:18px;background:#0d0e11;}
#community-detail .community-report {max-width:850px;margin:20px 0 0!important;}
@media(max-width:700px){
  .community-detail-media-toolbar,.community-detail-action-deck {align-items:flex-start;flex-direction:column;}
  .community-detail-primary-actions {flex-wrap:wrap;}
  .community-detail-author-rail {margin-left:0;}
}

/* Published-script controls mirror TradingView: one return link, compact
   author controls, and an icon rail beneath the chart. */
#community-detail>.community-detail-back {
  display:inline-flex!important;align-items:center!important;min-height:30px!important;margin:4px 0 2px!important;
  padding:0!important;border:0!important;background:transparent!important;color:#858c97!important;
  box-shadow:none!important;font-size:11px!important;font-weight:600!important;
}
#community-detail>.community-detail-back::before {content:"←"!important;margin-right:7px!important;font-size:14px!important;}
#community-detail>.community-detail-back:hover {color:#eef0f4!important;transform:none!important;}
.community-detail-edit::before,.community-detail-favorite::before,.community-detail-use::before,
.community-detail-boost::before,.community-detail-comment-jump::before {
  content:"";display:inline-block;flex:none;width:16px;height:16px;background:currentColor;
  -webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain;
  mask-position:center;mask-repeat:no-repeat;mask-size:contain;
}
.community-detail-edit::before {
  margin-right:7px;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L8 18l-4 1 1-4Z'/%3E%3C/svg%3E");
}
.community-detail-favorite::before {
  margin-right:8px;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='m12 2.8 2.8 5.7 6.3.9-4.6 4.4 1.1 6.3-5.6-3-5.6 3 1.1-6.3-4.6-4.4 6.3-.9Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='m12 2.8 2.8 5.7 6.3.9-4.6 4.4 1.1 6.3-5.6-3-5.6 3 1.1-6.3-4.6-4.4 6.3-.9Z'/%3E%3C/svg%3E");
}
#community-detail .community-detail-use {
  display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:38px!important;
  padding:0 15px!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:7px!important;
  background:transparent!important;color:#f3f4f5!important;box-shadow:none!important;font-weight:750!important;
}
.community-detail-use::before {
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M8 16V9m4 7V6m4 10v-4'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M8 16V9m4 7V6m4 10v-4'/%3E%3C/svg%3E");
}
#community-detail .community-detail-boost,#community-detail .community-detail-comment-jump {
  display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:38px!important;
  padding:0 7px!important;border:0!important;background:transparent!important;color:#aeb4be!important;
  box-shadow:none!important;font-size:11px!important;
}
#community-detail .community-detail-boost[aria-pressed="true"] {color:#8cb9ff!important;}
.community-detail-boost::before {
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4c3-2 5-2 6-2 0 1 0 3-2 6l-6 6-4-4Z'/%3E%3Cpath d='m9 14-4 1 1-4m4 4-1 4 4-1m-7 1-2 2'/%3E%3Ccircle cx='15.5' cy='6.5' r='1'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4c3-2 5-2 6-2 0 1 0 3-2 6l-6 6-4-4Z'/%3E%3Cpath d='m9 14-4 1 1-4m4 4-1 4 4-1m-7 1-2 2'/%3E%3Ccircle cx='15.5' cy='6.5' r='1'/%3E%3C/svg%3E");
}
.community-detail-comment-jump::before {
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h9a4 4 0 0 1 4 4Z'/%3E%3C/svg%3E");
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h9a4 4 0 0 1 4 4Z'/%3E%3C/svg%3E");
}
#community-detail .community-detail-more-actions>summary {padding:0 9px!important;border:0!important;color:#aeb4be!important;font-size:15px!important;}
#community-detail [role="tabpanel"]>pre {margin:0;min-height:260px;padding:18px 20px;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:#0d0e11;color:#d8dbe1;line-height:1.55;}

/* Community catalog follows TradingView's scripts directory: centered title,
   pill categories, compact filters, and a borderless two-column media feed. */
#community-view:not(.community-detail-open) {max-width:1200px;padding:56px 0 80px;}
#community-view:not(.community-detail-open) .community-hero {display:block;margin:0;text-align:center;}
#community-view:not(.community-detail-open) .community-hero h2 {
  margin:0;color:#f2f2f3;font-size:clamp(42px,4.4vw,56px);font-weight:760;line-height:1.14;letter-spacing:-.042em;
  text-transform:none!important;
}
#community-view:not(.community-detail-open) .community-hero h2::before,
#community-view:not(.community-detail-open) .community-hero p,
#community-view:not(.community-detail-open) .community-hero-actions,
#community-view:not(.community-detail-open)>.publication-path-note,
#community-view:not(.community-detail-open)>#community-sections,
#community-view:not(.community-detail-open)>#community-starters {display:none!important;}
#community-view:not(.community-detail-open)>#community-feeds {
  display:flex!important;justify-content:center;gap:16px!important;margin:24px 0 0!important;border:0!important;
}
#community-view:not(.community-detail-open)>#community-feeds .lib-btn {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:0;padding:0 23px;
  border:0!important;border-radius:999px!important;background:#1f2024!important;color:#aeb0b6!important;
  box-shadow:none!important;font-size:16px;font-weight:500;line-height:48px;
}
#community-view:not(.community-detail-open)>#community-feeds .lib-btn[aria-pressed="true"] {
  background:#f2f2f2!important;color:#050506!important;
}
#community-view:not(.community-detail-open)>#community-feeds .lib-btn::after {display:none!important;}
#community-view:not(.community-detail-open)>#community-feeds .lib-btn:hover {color:#fff;transform:none;}
#community-view:not(.community-detail-open)>#community-feeds .lib-btn[aria-pressed="true"]:hover {color:#050506;}
#community-view:not(.community-detail-open)>#community-feeds #community-saved-feed[hidden] {display:none!important;}
#community-view:not(.community-detail-open)>#community-signed-in,
#community-view:not(.community-detail-open)>#community-account-status {display:none!important;}
#community-view:not(.community-detail-open)>#community-account-panel:not([open]) {display:none!important;}
#community-view:not(.community-detail-open)>#community-account-panel[open] {
  max-width:760px;margin:20px auto 0;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#141519;
}
#community-view:not(.community-detail-open)>.community-controls {
  display:flex!important;align-items:center;justify-content:flex-end;gap:12px;height:36px;min-height:36px;
  margin:58px 8px 23px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
.community-search-shell {
  display:flex;align-items:center;flex:1 1 300px;max-width:340px;min-height:36px;margin-right:auto;
  border:1px solid rgba(255,255,255,.12);border-radius:9px;background:#191a1e;overflow:hidden;
}
.community-search-shell>span {
  flex:none;width:16px;height:16px;margin-left:11px;background:#9699a2;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") center/contain no-repeat;
}
#community-view:not(.community-detail-open) .community-search-shell>#community-search {
  flex:1 1 auto;min-width:0;min-height:34px;margin:0;padding:0 9px;border:0!important;background:transparent!important;
  color:#f0f1f3;font-size:13px;box-shadow:none;
}
.community-search-shell>#community-search-button {
  min-height:28px;margin:3px 4px 3px 0;padding:0 10px;border:0;border-radius:6px;background:#2b2c31;
  color:#cacdd3;font-size:11px;box-shadow:none;
}
#community-view:not(.community-detail-open)>.community-controls>#community-kind {
  flex:0 0 108px;width:108px;min-height:36px;margin:0;padding:0 12px;border:1px solid rgba(255,255,255,.16);
  border-radius:8px;background:#090a0c;color:#c7c9ce;font-size:13px;
}
.community-open-source-filter {
  display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.17);
  border-radius:8px;background:#0a0b0d;color:#d8d9dc;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;
}
.community-open-source-filter:has(input:checked) {border-color:#e6e6e8;color:#f1f1f2;}
.community-open-source-filter:has(input:disabled) {opacity:.45;cursor:default;}
.community-open-source-filter>input {position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none;}
.community-open-source-filter>span {
  width:15px;height:15px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 7.6-1.8'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 7.6-1.8'/%3E%3C/svg%3E") center/contain no-repeat;
}
.community-sort-buttons {display:flex;flex:none;gap:4px;padding:3px;border-radius:9px;background:#25262b;}
.community-sort-buttons>.lib-btn {
  display:grid;place-items:center;width:30px;height:30px;min-height:30px;margin:0;padding:0;border:0;border-radius:7px;
  background:transparent;color:#858891;box-shadow:none;
}
.community-sort-buttons>.lib-btn[aria-pressed="true"] {background:#393a40;color:#f2f2f3;}
.community-sort-buttons>.lib-btn::before {content:"";width:17px;height:17px;background:currentColor;}
#community-sort-newest::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/contain no-repeat;
}
#community-sort-popular::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M13.4 2.2c.5 3.2-.9 4.6-2.4 6.2-1.4 1.5-2.9 3.1-2.4 6 .4-1.3 1.2-2.1 2-2.8.2 2.1 1.4 3.1 2.8 4.2 1 .8 2 1.6 2.2 3.1 2.4-1.5 4-4.2 3.7-7.1-.4-4-3.3-7.2-5.9-9.6ZM7.2 8.1C4.8 10 3.6 12.4 4 15.1c.5 3.8 3.8 6.7 7.8 6.7.8 0 1.6-.1 2.3-.4-.1-1.8-1.2-2.7-2.4-3.6-1.5-1.2-3.2-2.5-3.1-5.6-1 1-1.7 2.1-1.8 4.1-1.9-2.7-1.1-5.3.4-8.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M13.4 2.2c.5 3.2-.9 4.6-2.4 6.2-1.4 1.5-2.9 3.1-2.4 6 .4-1.3 1.2-2.1 2-2.8.2 2.1 1.4 3.1 2.8 4.2 1 .8 2 1.6 2.2 3.1 2.4-1.5 4-4.2 3.7-7.1-.4-4-3.3-7.2-5.9-9.6ZM7.2 8.1C4.8 10 3.6 12.4 4 15.1c.5 3.8 3.8 6.7 7.8 6.7.8 0 1.6-.1 2.3-.4-.1-1.8-1.2-2.7-2.4-3.6-1.5-1.2-3.2-2.5-3.1-5.6-1 1-1.7 2.1-1.8 4.1-1.9-2.7-1.1-5.3.4-8.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
#community-view:not(.community-detail-open)>.community-status-row {min-height:0;height:0;margin:0 8px 4px;}
#community-view:not(.community-detail-open) #community-status {min-height:0;color:#73767e;font-size:11px;}
#community-view:not(.community-detail-open)>#community-cards {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0;
}
#community-view:not(.community-detail-open) .community-card {
  display:flex!important;flex-direction:column;width:auto!important;min-width:0;min-height:0!important;margin:0!important;padding:8px!important;
  overflow:visible!important;border:0!important;border-radius:16px!important;background:transparent!important;color:#b8b8b8!important;
  box-shadow:none!important;transform:none!important;
}
#community-view:not(.community-detail-open) .community-card:hover {background:rgba(255,255,255,.025)!important;}
#community-view:not(.community-detail-open) .community-card-open {display:flex!important;flex-direction:column;margin:0!important;}
#community-view:not(.community-detail-open) .community-card-figure {
  order:0;width:100%;aspect-ratio:16/9;margin:0!important;overflow:hidden;border-radius:8px;background:#090a0c;
}
#community-view:not(.community-detail-open) .community-card-figure>img {display:block;width:100%;height:100%;object-fit:cover;}
#community-view:not(.community-detail-open) .community-card-type {
  top:9px;right:9px;padding:4px 7px;border:0;border-radius:3px;background:#123b31;color:#48d6a9;font-size:10px;
}
#community-view:not(.community-detail-open) .community-card strong {
  order:1;display:block;margin:8px 0 0;color:#b8b8b8;font-size:18px;font-weight:650;line-height:24px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
#community-view:not(.community-detail-open) .community-card-description {
  order:2;display:-webkit-box;min-height:72px;margin:8px 0 0;overflow:hidden;color:#b8b8b8;
  font-size:16px;line-height:24px;-webkit-box-orient:vertical;-webkit-line-clamp:3;
}
.community-card-footer {display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-height:40px;margin-top:12px;}
.community-card-publication {display:grid;gap:4px;min-width:0;}
#community-view:not(.community-detail-open) button.community-card-author,
#community-view:not(.community-detail-open) .community-card-author {
  margin:0;padding:0;border:0;background:transparent;color:#b8b8b8;font-size:14px;text-align:left;text-decoration:none;box-shadow:none;
  line-height:18px;
}
.community-card-publication>time {color:#777a82;font-size:14px;line-height:18px;}
.community-card-social {display:flex;align-items:center;gap:8px;}
#community-view:not(.community-detail-open) .community-card-social>button {
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:40px;height:40px;margin:0;padding:0 12px;
  border:1px solid rgba(255,255,255,.16);border-radius:8px;background:transparent;color:#b8b8b8;box-shadow:none;font-size:14px;
}
#community-view:not(.community-detail-open) .community-card-social>button::before {
  content:"";display:inline-block;width:18px;height:18px;background:currentColor;
}
#community-view:not(.community-detail-open) .community-card-boost[aria-pressed="true"] {
  border-color:rgba(91,152,255,.65)!important;background:rgba(41,98,190,.18)!important;color:#8cb9ff!important;
}
#community-view:not(.community-detail-open) .community-card-comments {border-color:transparent!important;padding:0 6px!important;}
#community-view:not(.community-detail-open) .community-card-comments::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M20 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h9a4 4 0 0 1 4 4Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M20 15a4 4 0 0 1-4 4H8l-5 3V7a4 4 0 0 1 4-4h9a4 4 0 0 1 4 4Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
#community-view:not(.community-detail-open) .community-card-boost::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4c3-2 5-2 6-2 0 1 0 3-2 6l-6 6-4-4Z'/%3E%3Cpath d='m9 14-4 1 1-4m4 4-1 4 4-1m-7 1-2 2'/%3E%3Ccircle cx='15.5' cy='6.5' r='1'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4c3-2 5-2 6-2 0 1 0 3-2 6l-6 6-4-4Z'/%3E%3Cpath d='m9 14-4 1 1-4m4 4-1 4 4-1m-7 1-2 2'/%3E%3Ccircle cx='15.5' cy='6.5' r='1'/%3E%3C/svg%3E") center/contain no-repeat;
}
#community-view:not(.community-detail-open)>#community-more {display:block;margin:28px auto 0;}
@media(max-width:900px){
  #community-view:not(.community-detail-open) {padding-top:36px;}
  #community-view:not(.community-detail-open)>.community-controls {height:auto;min-height:0;flex-wrap:wrap;margin-top:36px!important;}
  .community-search-shell {order:2;max-width:none;flex-basis:100%;}
  #community-view:not(.community-detail-open)>#community-cards {grid-template-columns:1fr;}
}
@media(max-width:640px){
  #community-view:not(.community-detail-open) .community-hero h2 {font-size:36px;line-height:1.1;}
  #community-view:not(.community-detail-open)>#community-feeds {justify-content:flex-start;gap:8px!important;overflow-x:auto;}
  #community-view:not(.community-detail-open)>#community-feeds .lib-btn {min-height:42px;padding:0 16px;font-size:14px;line-height:42px;white-space:nowrap;}
  #community-view:not(.community-detail-open)>.community-controls {justify-content:flex-start;margin-inline:0!important;}
  #community-view:not(.community-detail-open) .community-card {padding-inline:0!important;}
}

/* Strategy Library discovery preview -------------------------------------
   The backend-owned verified registry still loads below this surface, but is
   intentionally hidden while the discovery composition is being validated.
   These cards use temporary client fixtures; they never impersonate server
   evidence or alter the existing publication/detail contracts. */
#library-view:not(.community-open):not(.ideas-open) {
  padding:0 24px 32px;
  background:#090b0f;
}
#library-view:not(.community-open):not(.ideas-open) #library-head {
  display:grid;
  grid-template-columns:auto minmax(280px,1fr);
  align-items:center;
  gap:28px;
  padding:22px 0 14px;
}
#library-view:not(.community-open):not(.ideas-open) .library-head-row {
  display:block;
  min-width:max-content;
}
#library-view:not(.community-open):not(.ideas-open) #library-title {
  margin:0;
  color:#f3f4f7;
  font-size:29px;
  font-weight:760;
  letter-spacing:-.035em;
  line-height:1;
}
.library-legacy-label {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}
#library-view:not(.community-open):not(.ideas-open) .library-head-actions,
#library-view:not(.community-open):not(.ideas-open) #library-sub,
#library-view:not(.community-open):not(.ideas-open) #library-head>.publication-path-note,
#library-view:not(.community-open):not(.ideas-open) #library-search-button,
#library-view:not(.community-open):not(.ideas-open) #library-filter-panel,
#library-view:not(.community-open):not(.ideas-open) #published-strategy-board {
  display:none!important;
}
#library-view:not(.community-open):not(.ideas-open) .library-search {
  width:100%;
  max-width:none;
  margin:0;
}
#library-view:not(.community-open):not(.ideas-open) .library-search input {
  height:42px;
  padding:0 16px 0 42px;
  border-color:rgba(255,255,255,.13);
  border-radius:9px;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23888d98' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m16.2 16.2 4 4'/%3E%3C/svg%3E") 14px center/17px 17px no-repeat,
    #0d1015;
  color:#f1f2f5;
  font-size:13px;
  box-shadow:none;
}
#library-view:not(.community-open):not(.ideas-open) .library-search input:focus {
  border-color:rgba(105,224,202,.46);
  outline:none;
  box-shadow:0 0 0 3px rgba(56,211,184,.08);
}
#strategy-discovery {
  display:grid;
  gap:0;
  min-width:0;
}
#library-view.detail-open #strategy-discovery {display:none;}
.strategy-discovery-section {
  min-width:0;
  padding:16px 0 18px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.strategy-discovery-section:last-child {border-bottom:0;}
.strategy-section-heading,
.strategy-catalog-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.strategy-section-heading h3,
.strategy-catalog-head h3 {
  margin:0;
  color:#f0f1f4;
  font-size:21px;
  font-weight:720;
  letter-spacing:-.025em;
}
.strategy-section-heading p,
.strategy-catalog-head p {
  margin:3px 0 0;
  color:#777d88;
  font-size:11px;
  line-height:1.35;
}
.strategy-ranking-section {
  padding:13px 0 15px;
  border-bottom-color:rgba(255,255,255,.07);
}
.strategy-compact-heading {
  align-items:center;
  margin-bottom:8px;
}
.strategy-compact-heading > div:first-child {
  display:flex;
  align-items:baseline;
  gap:9px;
  min-width:0;
}
.strategy-compact-heading h3 {
  flex:0 0 auto;
  font-size:14px;
  font-weight:700;
  letter-spacing:-.01em;
}
.strategy-compact-heading > div:first-child > p {
  margin:0;
  padding-left:9px;
  border-left:1px solid rgba(255,255,255,.12);
  font-size:10px;
  line-height:1.2;
}
.strategy-carousel-actions {display:flex;gap:7px;}
.strategy-carousel-actions button,
.strategy-catalog-filters button {
  display:inline-grid;
  place-items:center;
  min-width:34px;
  height:34px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;
  background:#0e1116;
  color:#aeb3bc;
  cursor:pointer;
}
.strategy-carousel-actions button:hover,
.strategy-catalog-filters button:hover {border-color:rgba(110,226,205,.36);color:#eef2f1;}
.strategy-carousel {
  overflow:hidden;
  min-width:0;
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
}
.strategy-carousel.is-dragging {cursor:grabbing;}
.strategy-carousel-track {
  display:flex;
  gap:10px;
  min-width:0;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.strategy-boost-card {
  flex:0 0 calc((100% - 30px)/4);
  min-width:0;
  padding:12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:10px;
  background:#0c0f14;
  color:#daddE3;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,transform .16s ease;
}
.strategy-boost-card:hover,
.strategy-boost-card:focus-within {
  border-color:rgba(123,112,236,.58);
  background:#0f1218;
  transform:translateY(-1px);
}
.strategy-card-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.strategy-identity {min-width:0;}
.strategy-symbol {
  overflow:hidden;
  color:#f0f2f5;
  font-size:17px;
  font-weight:750;
  letter-spacing:-.02em;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.strategy-name {
  overflow:hidden;
  margin-top:3px;
  color:#c4c8d0;
  font-size:12px;
  font-weight:630;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.strategy-author {margin-top:4px;color:#777d88;font-size:10.5px;}
.strategy-author::before {content:'by ';color:#555b66;}
.strategy-card-meta {display:grid;justify-items:end;gap:6px;flex:0 0 auto;}
.strategy-boost-count {color:#c8cbd2;font-size:10.5px;font-variant-numeric:tabular-nums;}
.strategy-boost-count::before {content:'\26A1 ';color:#d9dce2;}
.strategy-live-pill {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:3px 6px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  color:#aeb5bd;
  font-size:8.5px;
  font-weight:720;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
}
.strategy-live-pill::before {
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:#2dd4b0;
  box-shadow:0 0 9px rgba(45,212,176,.5);
}
.strategy-equity {display:block;width:100%;height:68px;margin:9px 0 5px;overflow:visible;}
.strategy-equity .history {fill:none;stroke:#29d8b4;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.strategy-equity-placeholder {height:68px;display:grid;place-items:center;border:1px solid rgba(133,151,181,.08);border-radius:10px;background:linear-gradient(100deg,rgba(255,255,255,.015) 20%,rgba(41,216,180,.07) 45%,rgba(255,255,255,.015) 70%);background-size:220% 100%;animation:strategy-curve-loading 1.8s ease-in-out infinite;color:var(--text-muted);font-size:10px;letter-spacing:.03em;}
.strategy-profit-item .strategy-equity-placeholder,.strategy-row .strategy-equity-placeholder {height:34px;}
@keyframes strategy-curve-loading {0%,100%{background-position:100% 0}50%{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.strategy-equity-placeholder{animation:none}}
.strategy-equity .paper,.strategy-equity .forward {fill:none;stroke:#927dff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.strategy-equity .boundary {stroke:rgba(255,255,255,.28);stroke-width:1;stroke-dasharray:3 3;}
.strategy-equity .paper-area {fill:url(#strategy-paper-fill);opacity:.78;}
.strategy-metrics {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.08);
}
.strategy-metric span {display:block;color:#737985;font-size:9px;}
.strategy-metric strong {display:block;margin-top:2px;color:#e4e7eb;font-size:13px;font-variant-numeric:tabular-nums;}
.strategy-metric.is-positive strong {color:#2ce0b7;}
.strategy-metric.is-negative strong {color:#ff6e73;}
.strategy-card-actions {display:flex;gap:6px;margin-top:9px;}
.strategy-action {
  flex:1 1 0;
  height:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:7px;
  background:#101319;
  color:#b7bcc5;
  font-size:10px;
  cursor:pointer;
}
.strategy-action:hover {border-color:rgba(99,218,197,.34);color:#edf1f0;}
.strategy-action[aria-pressed='true'] {border-color:rgba(52,221,188,.48);background:rgba(33,155,131,.12);color:#67e7cd;}
.strategy-ranking-list {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;}
.strategy-profit-item {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:8px;
  min-width:0;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:9px;
  background:#0c0f14;
  color:#d6dae0;
}
.strategy-profit-rank {grid-row:1/3;display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#171a20;color:#aeb3bc;font-size:10px;font-weight:750;}
.strategy-profit-copy {display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0;}
.strategy-profit-copy strong {overflow:hidden;color:#e4e7eb;font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.strategy-profit-copy span {flex:0 0 auto;color:#2bdcaf;font-size:11px;font-weight:720;font-variant-numeric:tabular-nums;}
.strategy-profit-item .strategy-equity {grid-column:2;height:29px;margin:3px 0 0;}
.strategy-catalog-head {align-items:flex-end;margin-bottom:10px;}
.strategy-catalog-filters {display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}
.strategy-catalog-filters select {
  width:auto;
  min-width:118px;
  height:34px;
  margin:0;
  padding:0 30px 0 10px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:8px;
  background:#0e1116;
  color:#b9bec6;
  font-size:10.5px;
}
.strategy-catalog-filters button {
  flex:0 0 auto;
  width:auto;
  min-width:auto;
  color:#8d83d9;
}
.strategy-catalog-list {display:grid;gap:5px;}
.strategy-row {
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(180px,.9fr) repeat(3,minmax(78px,.45fr)) minmax(136px,.6fr);
  align-items:center;
  gap:10px;
  min-width:0;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:9px;
  background:#0b0e12;
  color:#d9dde3;
  transition:border-color .15s ease,background .15s ease;
}
.strategy-row:hover,
.strategy-row:focus-within {border-color:rgba(91,217,194,.42);background:#0d1116;}
.strategy-row .strategy-identity {
  display:flex;
  flex-wrap:wrap;
  align-content:center;
  column-gap:6px;
  row-gap:1px;
}
.strategy-row .strategy-symbol {font-size:12px;}
.strategy-row .strategy-symbol {flex:0 0 100%;}
.strategy-row .strategy-name {margin:0;font-size:10.5px;}
.strategy-row .strategy-author {margin:0;font-size:9.5px;}
.strategy-row .strategy-author::before {content:'· ';}
.strategy-row .strategy-equity {height:34px;margin:0;}
.strategy-row-metric span {display:block;color:#717783;font-size:8.5px;white-space:nowrap;}
.strategy-row-metric strong {display:block;margin-top:2px;color:#e7e9ec;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap;}
.strategy-row-metric.is-positive strong {color:#2bdcb2;}
.strategy-row-metric.is-negative strong {color:#ff6d73;}
.strategy-row-actions {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  min-width:0;
}
.strategy-row-actions .strategy-action {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  padding:0 7px;
}
.strategy-catalog-empty {padding:26px;border:1px dashed rgba(255,255,255,.12);border-radius:9px;color:#7d838d;text-align:center;font-size:12px;}
#research-candidate-toggle {margin-top:24px;}

@media(max-width:1180px){
  .strategy-boost-card {flex-basis:calc((100% - 20px)/3);}
  .strategy-ranking-list {grid-template-columns:repeat(3,minmax(0,1fr));}
  .strategy-row {grid-template-columns:minmax(170px,1fr) minmax(170px,.9fr) repeat(2,minmax(72px,.5fr)) 136px;}
  .strategy-row .strategy-row-metric.is-age {display:none;}
}
@media(max-width:820px){
  #library-view:not(.community-open):not(.ideas-open) {padding-inline:14px;}
  #library-view:not(.community-open):not(.ideas-open) #library-head {grid-template-columns:1fr;gap:12px;}
  #library-view:not(.community-open):not(.ideas-open) .library-head-row {min-width:0;}
  .strategy-boost-card {flex-basis:calc((100% - 10px)/2);}
  .strategy-ranking-list {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-catalog-head {align-items:flex-start;flex-direction:column;}
  .strategy-catalog-filters {justify-content:flex-start;width:100%;}
  .strategy-row {grid-template-columns:minmax(145px,1fr) minmax(150px,.9fr) minmax(72px,.55fr) 68px;}
  .strategy-row .strategy-row-metric.is-negative,
  .strategy-row .strategy-row-metric.is-age {display:none;}
  .strategy-row-actions {grid-template-columns:1fr;}
  .strategy-row-actions .strategy-action:last-child {display:none;}
}
@media(max-width:560px){
  #library-view:not(.community-open):not(.ideas-open) #library-title {font-size:25px;}
  .strategy-section-heading p,.strategy-catalog-head p {display:none;}
  .strategy-boost-card {flex-basis:100%;}
  .strategy-ranking-list {grid-template-columns:1fr;}
  .strategy-catalog-filters {display:grid;grid-template-columns:1fr 1fr;}
  .strategy-catalog-filters select {width:100%;min-width:0;}
  .strategy-row {grid-template-columns:minmax(0,1fr) 88px;gap:8px;padding:10px;}
  .strategy-row .strategy-equity {grid-column:1/-1;grid-row:2;}
  .strategy-row .strategy-row-metric {grid-row:3;}
  .strategy-row .strategy-row-metric.is-negative,
  .strategy-row .strategy-row-metric.is-age,
  .strategy-row-actions {display:none;}
}

/* Published strategy detail --------------------------------------------- */
.strategy-profit-item {cursor:pointer;transition:border-color .15s ease,background .15s ease;}
.strategy-profit-item:hover,.strategy-profit-item:focus-visible,
.strategy-row:focus-visible,.strategy-boost-card:focus-visible {
  border-color:rgba(72,222,194,.5);
  outline:none;
  box-shadow:0 0 0 2px rgba(46,214,181,.08);
}
#library-view.strategy-detail-open {
  padding:0!important;
  background:#080a0e;
}
#library-view.strategy-detail-open > :not(#library-detail) {display:none!important;}
#library-view.strategy-detail-open #library-detail.open {
  display:block;
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  min-height:100%;
  margin:0!important;
  color:#d9dde3;
}
.strategy-detail-shell {
  --strategy-glass:rgba(15,18,24,.82);
  --strategy-line:rgba(142,158,184,.15);
  --strategy-teal:#55e2c6;
  --strategy-violet:#9b8cff;
  box-sizing:border-box;
  min-height:100%;
  padding:0 clamp(16px,2.4vw,36px) 48px;
  background:
    radial-gradient(850px 380px at 78% -8%,rgba(73,212,190,.075),transparent 67%),
    radial-gradient(760px 350px at 18% -12%,rgba(139,113,255,.07),transparent 70%),
    linear-gradient(180deg,#090b0f 0,#07090d 46%,#080a0e 100%);
  isolation:isolate;
}
.strategy-detail-header {
  position:sticky;
  z-index:5;
  top:0;
  padding:16px 2px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
  background:
    radial-gradient(520px 170px at 86% 0,rgba(73,212,190,.055),transparent 72%),
    linear-gradient(180deg,rgba(10,12,17,.97),rgba(8,10,14,.93));
  box-shadow:0 10px 34px rgba(0,0,0,.18),inset 0 -1px rgba(255,255,255,.018);
  backdrop-filter:blur(22px) saturate(125%);
}
.strategy-detail-back {
  display:inline-flex;
  align-items:center;
  width:auto;
  height:29px;
  margin:0 0 13px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  color:#9199a5;
  font:inherit;
  font-size:10px;
  font-weight:630;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 7px 20px rgba(0,0,0,.12);
  backdrop-filter:blur(12px);
  transition:border-color .16s ease,color .16s ease,background .16s ease,transform .16s ease;
}
.strategy-detail-back:hover {border-color:rgba(92,226,201,.22);background:linear-gradient(135deg,rgba(81,219,194,.075),rgba(141,118,255,.055));color:#e9eeee;transform:translateY(-1px);}
.strategy-detail-title-row {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;}
.strategy-detail-eyebrow {
  display:flex;
  align-items:center;
  gap:7px;
  margin:0 0 7px;
  color:#6f7c88;
  font-size:8px;
  font-weight:780;
  letter-spacing:.15em;
  line-height:1;
  text-transform:uppercase;
}
.strategy-detail-eyebrow i {width:14px;height:1px;background:linear-gradient(90deg,#55e2c6,#9b8cff);box-shadow:0 0 8px rgba(85,226,198,.38);}
.strategy-detail-title-row h2 {
  margin:0;
  max-width:820px;
  color:#f3f5f7;
  font-size:clamp(23px,2.05vw,29px);
  font-weight:780;
  letter-spacing:-.042em;
  line-height:1.1;
  text-wrap:balance;
}
.strategy-detail-title-row p {display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px;margin:10px 0 0;color:#858e9a;font-size:10.5px;}
.strategy-detail-title-row p strong {color:#c7cdd4;font-weight:690;letter-spacing:.01em;}
.strategy-detail-actions {display:flex;align-items:center;align-self:start;justify-content:flex-end;flex-wrap:wrap;gap:8px;width:auto;max-width:100%;}
.strategy-detail-actions .strategy-action {
  flex:0 0 auto;
  box-sizing:border-box;
  width:auto;
  min-width:64px;
  height:36px;
  padding:0 14px;
  border-color:rgba(159,173,198,.16);
  border-radius:9px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.014)),
    rgba(12,15,21,.78);
  color:#c2c8d0;
  font-weight:680;
  white-space:nowrap;
  box-shadow:inset 0 1px rgba(255,255,255,.04),0 8px 22px rgba(0,0,0,.16);
  backdrop-filter:blur(14px) saturate(120%);
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.strategy-detail-actions .strategy-action::before {
  display:inline-grid;
  width:14px;
  margin-right:6px;
  place-items:center;
  color:#83909d;
  font-size:11px;
  font-weight:600;
  transition:color .16s ease,transform .16s ease;
}
.strategy-detail-actions .strategy-action[data-strategy-action='boost']::before {content:'↗';}
.strategy-detail-actions .strategy-action[data-strategy-action='save']::before {content:'◇';font-size:12px;}
.strategy-detail-actions #pine-library-edit::before {content:'⎘';}
.strategy-detail-actions .strategy-action:hover::before {color:#66e4cc;transform:translateY(-1px);}
.strategy-detail-actions .strategy-action:hover {border-color:rgba(100,226,204,.3);background:linear-gradient(135deg,rgba(73,216,193,.09),rgba(139,113,255,.065));color:#f1f5f4;transform:translateY(-1px);box-shadow:inset 0 1px rgba(255,255,255,.05),0 11px 28px rgba(0,0,0,.2);}
.strategy-detail-actions .strategy-action:focus-visible,
.strategy-open-chart:focus-visible,
.strategy-detail-back:focus-visible,
.strategy-detail-tabs button:focus-visible {outline:2px solid rgba(93,228,204,.52);outline-offset:2px;}
.strategy-detail-actions #pine-library-edit {min-width:92px;}
.strategy-open-chart {
  box-sizing:border-box;
  width:116px;
  height:36px;
  padding:0 17px;
  border:1px solid rgba(217,255,248,.72);
  border-radius:9px;
  background:linear-gradient(120deg,#58dfc5 0%,#98eee0 53%,#a6b2ff 115%);
  color:#06110f;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,255,255,.48),0 9px 26px rgba(52,211,183,.17),0 0 24px rgba(141,118,255,.06);
  transition:filter .16s ease,transform .16s ease,box-shadow .16s ease;
}
.strategy-open-chart:hover {filter:brightness(1.06);transform:translateY(-1px);box-shadow:inset 0 1px rgba(255,255,255,.55),0 12px 32px rgba(52,211,183,.22),0 0 28px rgba(141,118,255,.09);}
.strategy-open-chart:disabled {cursor:wait;opacity:.65;}
.strategy-detail-tabs {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:4px;
  margin-top:19px;
  padding:4px;
  overflow:visible;
  border:1px solid rgba(255,255,255,.075);
  border-bottom:0;
  border-radius:12px 12px 0 0;
  background:linear-gradient(135deg,rgba(255,255,255,.029),rgba(139,113,255,.022)),rgba(5,7,10,.68);
  box-shadow:inset 0 1px rgba(255,255,255,.028);
  backdrop-filter:blur(16px);
}
.strategy-detail-tabs button {
  position:relative;
  min-width:0;
  height:38px;
  padding:0 10px;
  border:1px solid transparent;
  border-radius:8px 8px 5px 5px;
  background:transparent;
  color:#858d98;
  font-size:10.5px;
  font-weight:650;
  cursor:pointer;
  white-space:nowrap;
  transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.strategy-detail-tabs button:hover {background:rgba(255,255,255,.025);color:#d9dde2;}
.strategy-detail-tabs button[aria-selected='true'] {
  border-color:rgba(94,226,202,.13);
  color:#f3f6f6;
  background:linear-gradient(135deg,rgba(76,218,193,.105),rgba(138,113,255,.085));
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 7px 22px rgba(0,0,0,.16);
}
.strategy-detail-tabs button[aria-selected='true']::after {
  position:absolute;
  right:22%;
  bottom:-5px;
  left:22%;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#5ce5c9 28%,#a79cff 72%,transparent);
  box-shadow:0 0 12px rgba(91,227,201,.38);
  content:'';
}
.strategy-detail-content {display:grid;gap:20px;padding-top:22px;}
.strategy-detail-kpis {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1px;
  padding:1px;
  overflow:hidden;
  border:1px solid var(--strategy-line);
  border-radius:13px;
  background:linear-gradient(110deg,rgba(79,219,195,.13),rgba(255,255,255,.035) 44%,rgba(147,127,255,.12));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 14px 38px rgba(0,0,0,.12);
}
.strategy-detail-metric {
  position:relative;
  min-width:0;
  min-height:86px;
  padding:15px 16px;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:
    radial-gradient(180px 90px at 100% 0,rgba(88,225,199,.07),transparent 72%),
    linear-gradient(145deg,rgba(18,22,29,.92),rgba(8,11,16,.96));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.strategy-detail-metric::after {position:absolute;top:0;right:12px;left:12px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);content:'';}
.strategy-detail-metric.positive {background:radial-gradient(180px 90px at 100% 0,rgba(46,224,184,.09),transparent 72%),linear-gradient(145deg,rgba(15,25,27,.94),rgba(8,11,16,.96));}
.strategy-detail-metric.negative {background:radial-gradient(180px 90px at 100% 0,rgba(255,107,115,.07),transparent 72%),linear-gradient(145deg,rgba(25,17,22,.92),rgba(8,11,16,.96));}
.strategy-detail-metric > span {display:block;color:#8f98a4;font-size:9.5px;font-weight:680;letter-spacing:.015em;}
.strategy-detail-metric > strong {display:block;margin-top:7px;color:#edf0f2;font-size:20px;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.018em;}
.strategy-detail-metric > small {display:block;margin-top:5px;color:#707986;font-size:9.5px;line-height:1.35;}
.strategy-detail-metric.positive > strong,.positive {color:#2ee0b8!important;}
.strategy-detail-metric.negative > strong,.negative {color:#ff6b73!important;}
.strategy-detail-metric .strategy-detail-line {position:absolute;right:7px;bottom:8px;width:38%;height:26px;opacity:.55;}
.strategy-detail-metric .strategy-detail-grid,.strategy-detail-metric .strategy-detail-line circle {display:none;}
.strategy-detail-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-width:0;}
.strategy-detail-grid-overview {grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);}
.strategy-detail-grid-overview .strategy-detail-panel-wide {grid-column:span 2;}
.strategy-detail-panel,.strategy-detail-table-panel {
  position:relative;
  min-width:0;
  padding:20px;
  overflow:hidden;
  border:1px solid var(--strategy-line);
  border-radius:14px;
  background:
    radial-gradient(420px 170px at 100% 0,rgba(86,224,199,.048),transparent 72%),
    radial-gradient(360px 160px at 0 100%,rgba(139,113,255,.03),transparent 74%),
    linear-gradient(145deg,rgba(15,18,24,.96),rgba(7,10,14,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 18px 50px rgba(0,0,0,.13);
}
.strategy-detail-panel::before,.strategy-detail-table-panel::before {position:absolute;z-index:0;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(114,235,214,.11) 55%,rgba(163,147,255,.08),transparent);content:'';pointer-events:none;}
.strategy-detail-panel>* ,.strategy-detail-table-panel>* {position:relative;z-index:1;}
.strategy-panel-head {display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px;}
.strategy-panel-head h3 {margin:0;color:#edf0f2;font-size:14.5px;font-weight:730;letter-spacing:-.015em;}
.strategy-panel-head p {margin:5px 0 0;color:#7c8591;font-size:10.5px;line-height:1.45;}
.strategy-panel-head > strong {font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:-.015em;}
.strategy-detail-line {display:block;width:100%;height:168px;overflow:visible;}
.strategy-detail-grid-lines,.strategy-detail-grid line {stroke:rgba(255,255,255,.065);stroke-width:1;}
.strategy-axis {display:flex;justify-content:space-between;margin:2px 18px 0;color:#626975;font-size:8.5px;}
.strategy-month-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:13px;}
.strategy-month-grid.is-wide {grid-template-columns:repeat(4,minmax(0,1fr));}
.strategy-month-grid > div {padding:11px 8px;border:1px solid rgba(47,224,184,.12);border-radius:7px;background:rgba(37,214,175,var(--heat));color:#dffbf4;}
.strategy-month-grid span {display:block;color:rgba(231,255,249,.66);font-size:8px;text-transform:uppercase;}
.strategy-month-grid strong {display:block;margin-top:4px;font-size:11px;font-variant-numeric:tabular-nums;}
.strategy-detail-list {display:grid;gap:0;margin:4px 0 0;}
.strategy-detail-list > div {display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.065);}
.strategy-detail-list > div:last-child {border-bottom:0;}
.strategy-detail-list dt {color:#818a96;font-size:10px;}
.strategy-detail-list dd {margin:0;color:#dce0e5;font-size:11px;font-weight:650;font-variant-numeric:tabular-nums;text-align:right;}
.strategy-detail-panel-copy > p {margin:13px 0;color:#99a1ac;font-size:11px;line-height:1.68;}
.strategy-detail-tags {display:flex;flex-wrap:wrap;gap:6px;}
.strategy-detail-tags span,.strategy-filled-pill {padding:5px 8px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));color:#a5adb7;font-size:9px;box-shadow:inset 0 1px rgba(255,255,255,.025);}
.strategy-detail-validation-charts,.strategy-detail-trade-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.strategy-chart-legend {color:#8d949e;font-size:8.5px;}
.strategy-chart-legend::before {display:inline-block;width:18px;margin-right:5px;border-top:2px solid #b9c0cb;vertical-align:middle;content:'';}
.strategy-chart-legend.is-dashed::before {border-top-style:dashed;}
.strategy-variance {padding:4px 7px;border:1px solid rgba(43,224,183,.28);border-radius:999px;background:rgba(35,208,169,.08);color:#4de5c3;font-size:8.5px;white-space:nowrap;}
.strategy-detail-table-panel {padding:0;overflow:hidden;}
.strategy-detail-table-panel > .strategy-panel-head {padding:16px 18px 12px;margin:0;}
.strategy-detail-table-scroll {overflow:auto;}
.strategy-detail-table {width:100%;border-collapse:collapse;color:#c1c7cf;font-size:11px;font-variant-numeric:tabular-nums;}
.strategy-detail-table th {position:sticky;z-index:2;top:0;padding:11px 16px;border-block:1px solid rgba(255,255,255,.085);background:rgba(18,22,29,.97);color:#89929e;font-size:9px;font-weight:700;letter-spacing:.035em;text-align:left;text-transform:uppercase;white-space:nowrap;backdrop-filter:blur(12px);}
.strategy-detail-table td {padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.058);white-space:nowrap;}
.strategy-detail-table tbody tr:last-child td {border-bottom:0;}
.strategy-detail-table tbody tr {transition:background .13s ease;}
.strategy-detail-table tbody tr:hover {background:linear-gradient(90deg,rgba(74,215,191,.045),rgba(139,113,255,.025));}
.strategy-detail-table tr.is-live {background:rgba(36,216,176,.08);}
.strategy-detail-table td:first-child {color:#d8dce1;font-weight:610;}
.strategy-validation-bottom {grid-template-columns:1.25fr 1fr .62fr;}
.strategy-validation-bottom .strategy-detail-line {height:120px;}
.strategy-stability ul {display:grid;gap:0;margin:4px 0 0;padding:0;list-style:none;}
.strategy-stability li {padding:8px 0;border-bottom:1px solid rgba(255,255,255,.07);color:#cbd0d6;font-size:9.5px;}
.strategy-stability li:last-child {border-bottom:0;}
.strategy-stability li::before {display:inline-grid;place-items:center;width:15px;height:15px;margin-right:8px;border-radius:50%;background:#31dfb9;color:#06110e;font-size:9px;font-weight:900;content:'✓';}
.strategy-histogram {display:flex;align-items:flex-end;justify-content:center;gap:9px;height:156px;padding:20px 12px 2px;border-bottom:1px solid rgba(255,255,255,.08);}
.strategy-histogram > div {display:flex;align-items:center;flex:1;flex-direction:column;justify-content:flex-end;height:100%;}
.strategy-histogram i {display:block;width:min(34px,75%);min-height:4px;border-radius:3px 3px 0 0;background:#2edab5;}
.strategy-histogram i.loss {background:#ff6670;}
.strategy-histogram span {margin-top:6px;color:#656c77;font-size:8px;}
.strategy-trade-sequence {display:flex;align-items:center;gap:7px;height:157px;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.08);}
.strategy-trade-sequence span {flex:1;max-width:48px;border-radius:3px;background:#2edab5;transform-origin:center;}
.strategy-trade-sequence span.loss {background:#ff6670;transform:scaleY(-1);}
.strategy-trade-breakdown {grid-template-columns:1.15fr .9fr .9fr;}
.strategy-session-bars,.strategy-hold-bars {display:grid;gap:9px;margin-top:13px;}
.strategy-session-bars > div,.strategy-hold-bars > div {display:grid;grid-template-columns:86px minmax(0,1fr) 48px;align-items:center;gap:8px;color:#7f8590;font-size:8.5px;}
.strategy-session-bars i,.strategy-hold-bars i {display:block;width:min(100%,var(--size));height:5px;border-radius:999px;background:#30dab5;}
.strategy-session-bars strong,.strategy-hold-bars strong {color:#cbd0d6;font-size:9px;text-align:right;font-variant-numeric:tabular-nums;}
.strategy-filled-pill {border-color:rgba(71,221,191,.24);background:linear-gradient(135deg,rgba(47,207,176,.095),rgba(129,111,237,.055));color:#65e4c9;}
.strategy-detail-source {padding:4px 8px;border:1px solid rgba(144,160,187,.16);border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));color:#b6bdc6;box-shadow:inset 0 1px rgba(255,255,255,.025);}
.strategy-performance-loading {
  display:grid;
  place-items:center;
  align-content:center;
  gap:14px;
  min-height:56vh;
  color:#c9d0d7;
  font-size:11px;
  letter-spacing:.01em;
}
.strategy-performance-loading span {
  position:relative;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(125,233,214,.17);
  border-radius:14px;
  background:radial-gradient(circle at 30% 20%,rgba(78,225,198,.13),transparent 55%),linear-gradient(145deg,rgba(22,27,35,.94),rgba(8,11,16,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 14px 40px rgba(0,0,0,.28),0 0 28px rgba(86,224,199,.07);
}
.strategy-performance-loading span::before {
  width:20px;
  height:20px;
  border:2px solid rgba(144,124,255,.18);
  border-top-color:#64e6ce;
  border-right-color:#a394ff;
  border-radius:50%;
  animation:strategy-performance-spin .85s linear infinite;
  content:'';
}
.strategy-performance-loading span::after {
  position:absolute;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#d9fff8;
  box-shadow:0 0 9px rgba(101,231,207,.75);
  content:'';
}
@keyframes strategy-performance-spin {to{transform:rotate(360deg)}}
.strategy-performance-empty {
  position:relative;
  display:grid;
  place-items:center;
  min-height:180px;
  padding:28px;
  overflow:hidden;
  border:1px solid var(--strategy-line,rgba(255,255,255,.1));
  border-radius:14px;
  background:radial-gradient(320px 150px at 50% 0,rgba(82,220,197,.055),transparent 72%),linear-gradient(145deg,rgba(14,18,23,.96),rgba(7,10,14,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.03),0 18px 48px rgba(0,0,0,.13);
  text-align:center;
}
.strategy-performance-empty::before {width:28px;height:4px;margin-bottom:10px;border-radius:999px;background:linear-gradient(90deg,#52dfc4,#9f91ff);box-shadow:0 0 18px rgba(82,223,196,.17);content:'';}
.strategy-performance-empty strong {color:#e8ecef;font-size:15px;letter-spacing:-.01em;}
.strategy-performance-empty p {max-width:560px;margin:8px auto 0;color:#818a96;font-size:10.5px;line-height:1.65;}
.strategy-performance-chart {margin:0;}
.strategy-performance-chart .strategy-panel-head>strong {color:#e7ebee;font-size:16px;}
.strategy-performance-chart.positive .strategy-panel-head>strong {color:#2ee0b8;}
.strategy-performance-chart.negative .strategy-panel-head>strong {color:#ff6b73;}
.strategy-combined-equity {min-width:0;}
.strategy-combined-equity .strategy-detail-line {display:block;width:100%;height:292px;overflow:visible;}
.strategy-combined-equity .strategy-detail-grid text {fill:#727985;font-size:8px;stroke:none;}
.strategy-publication-line {stroke:#ad9cff;stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;}
.strategy-equity-legend {display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin:7px 0 5px;color:#858e99;font-size:9.5px;}
.strategy-equity-legend span {display:inline-flex;align-items:center;gap:6px;}
.strategy-equity-legend span::before {width:18px;border-top:2px solid #29d8b4;content:'';}
.strategy-equity-legend .forward::before {border-color:#927dff;}
.strategy-equity-legend .boundary::before {height:10px;width:0;border-top:0;border-left:1px dashed #ad9cff;}
.strategy-combined-axis {display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:29px;margin:0;padding:0 64px 0 18px;border:1px solid rgba(255,255,255,.05);border-radius:7px;background:linear-gradient(180deg,rgba(21,25,32,.75),rgba(12,15,20,.82));}
.strategy-combined-axis span:nth-child(2) {color:#a99bff;text-align:center;}
.strategy-combined-axis span:last-child {text-align:right;}
.strategy-forward-kpis .strategy-detail-metric {border-color:rgba(146,125,255,.16);}
.strategy-native-results {display:grid;gap:20px;min-width:0;}
.strategy-native-results>section,
.strategy-native-results>figure,
.strategy-native-results>.pine-open-position,
.strategy-native-results>.pine-observation-overview {
  position:relative;
  margin:0;
  overflow:hidden;
  border:1px solid var(--strategy-line,rgba(255,255,255,.1));
  border-radius:14px;
  background:radial-gradient(420px 170px at 100% 0,rgba(83,222,198,.045),transparent 72%),linear-gradient(145deg,rgba(15,18,24,.96),rgba(7,10,14,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 18px 50px rgba(0,0,0,.12);
}
.strategy-native-results>section::before,
.strategy-native-results>figure::before,
.strategy-native-results>.pine-open-position::before,
.strategy-native-results>.pine-observation-overview::before {position:absolute;z-index:0;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(113,234,213,.1),rgba(164,148,255,.07),transparent);content:'';pointer-events:none;}
.strategy-native-results>.pine-observation-overview,
.strategy-native-results>.pine-trade-streaks,
.strategy-native-results>.pine-entry-time-patterns,
.strategy-native-results>.pine-observation-chronology,
.strategy-native-results>.pine-sequence-simulation,
.strategy-native-results>.pine-duration-analysis,
.strategy-native-results>.pine-period-attribution,
.strategy-native-results>.pine-growth-decline,
.strategy-native-results>.pine-market-comparison,
.strategy-native-results>.pine-margin-exposure,
.strategy-native-results>.periodic-performance,
.strategy-native-results>.pine-open-position {padding:18px;}
.strategy-native-results .results-section-heading,
.strategy-native-results .trades-log-heading {margin-top:0;}
.strategy-native-results .periodic-performance .trades-log-heading {align-items:center;}
.strategy-native-results .periodic-performance .trades-log-actions {gap:4px;flex-wrap:wrap;justify-content:flex-end;}
.strategy-native-results .periodic-performance .trades-log-actions button {
  width:auto;
  min-width:62px;
  padding:0 10px;
  font-size:10px;
  white-space:nowrap;
}
.strategy-native-results .pine-observation-metrics {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  padding:1px;
  overflow:hidden;
  border:1px solid rgba(127,151,177,.14);
  border-radius:11px;
  background:linear-gradient(110deg,rgba(72,215,190,.11),rgba(255,255,255,.025) 48%,rgba(144,124,255,.09));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.strategy-native-results .pine-observation-metrics>div {
  min-width:0;
  min-height:76px;
  box-sizing:border-box;
  justify-content:center;
  gap:5px;
  padding:13px 14px;
  border:0;
  border-radius:0;
  background:linear-gradient(145deg,rgba(16,23,29,.96),rgba(8,12,17,.98));
}
.strategy-native-results .pine-observation-metrics span {color:#7f8994;font-size:9.5px;line-height:1.35;}
.strategy-native-results .pine-observation-metrics strong {color:#e7ebee;font-size:14px;font-weight:720;letter-spacing:-.01em;overflow-wrap:anywhere;}
.strategy-native-results .pine-observation-metrics small {color:#68737f;font-size:8.7px;line-height:1.45;overflow-wrap:anywhere;}
.strategy-native-results>:is(.pine-growth-decline,.pine-market-comparison,.pine-margin-exposure)>h3 {
  margin:0;
  color:#e7ebee;
  font-size:14px;
  font-weight:720;
  letter-spacing:-.01em;
}
.strategy-native-results>:is(.pine-growth-decline,.pine-market-comparison,.pine-margin-exposure)>.pine-observation-metrics {
  margin:14px 0 0;
}
.strategy-native-results>.pine-market-comparison>.pine-observation-metrics {grid-template-columns:repeat(3,minmax(0,1fr));}
.strategy-native-results>:is(.pine-growth-decline,.pine-market-comparison,.pine-margin-exposure)>.pine-observation-metrics>div {
  min-height:82px;
  box-sizing:border-box;
  justify-content:center;
  gap:5px;
  padding:14px 15px;
  border:0;
  border-radius:0;
  background:radial-gradient(150px 72px at 100% 0,rgba(76,220,196,.06),transparent 72%),linear-gradient(145deg,rgba(16,24,30,.96),rgba(8,12,17,.98));
  box-shadow:inset 0 1px rgba(255,255,255,.025);
}
.strategy-native-results>:is(.pine-growth-decline,.pine-market-comparison,.pine-margin-exposure)>.pine-observation-metrics small {
  color:#7f8994;
  font-size:9.5px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.strategy-native-results>:is(.pine-growth-decline,.pine-market-comparison,.pine-margin-exposure)>:is(.pine-equity-readout,p:last-child) {
  margin:14px 0 0;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.07);
  color:#89919c;
  font-size:10.5px;
  line-height:1.55;
}
.strategy-native-results .pine-vela-trade-analysis {display:grid;gap:18px;}
.strategy-native-results .pine-trade-analysis-charts {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:24px;
  min-height:246px;
  padding:18px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.strategy-native-results :is(.pine-trade-distribution,.pine-trade-win-rate) {
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.strategy-native-results :is(.pine-trade-distribution,.pine-trade-win-rate) figcaption {
  margin:0 0 16px;
  color:#e7e8eb;
  font-size:12px;
  font-weight:680;
}
.strategy-native-results .pine-trade-distribution-bars {
  grid-template-columns:repeat(16,minmax(0,1fr));
  height:150px;
  gap:5px;
  padding-inline:10px;
  border-bottom:1px solid #34353a;
  background:repeating-linear-gradient(to bottom,transparent 0,transparent 36px,#232429 37px);
}
.strategy-native-results .pine-trade-distribution-legend {
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin-top:14px;
  color:#8b8e96;
  font-size:9.5px;
}
.strategy-native-results .pine-trade-distribution-legend span {display:inline-flex;align-items:center;gap:6px;}
.strategy-native-results .pine-trade-distribution-legend span::before {width:16px;border-top:2px dashed currentColor;content:'';}
.strategy-native-results .pine-trade-distribution-legend .gain {color:#28c9aa;}
.strategy-native-results .pine-trade-distribution-legend .loss {color:#f06c7c;}
.strategy-native-results .pine-trade-win-rate-body {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:42px;
  min-height:190px;
}
.strategy-native-results .pine-trade-win-rate-donut {
  display:grid;
  place-items:center;
  width:150px;
  aspect-ratio:1;
  border-radius:50%;
  background:conic-gradient(#14a98f 0 var(--win-angle),#d99b24 var(--win-angle) calc(var(--win-angle) + var(--flat-angle)),#f2364f 0);
}
.strategy-native-results .pine-trade-win-rate-donut::before {
  grid-area:1/1;
  width:108px;
  aspect-ratio:1;
  border-radius:50%;
  background:#0d1116;
  content:'';
}
.strategy-native-results .pine-trade-win-rate-donut>div {z-index:1;grid-area:1/1;display:grid;place-items:center;gap:3px;}
.strategy-native-results .pine-trade-win-rate-donut strong {color:#f3f3f5;font-size:26px;font-weight:740;}
.strategy-native-results .pine-trade-win-rate-donut small {color:#92949c;font-size:8px;font-weight:800;letter-spacing:.16em;}
.strategy-native-results .pine-trade-win-rate-legend {display:grid;gap:13px;min-width:100px;}
.strategy-native-results .pine-trade-win-rate-legend>div {position:relative;display:grid;padding-left:16px;}
.strategy-native-results .pine-trade-win-rate-legend>div::before {position:absolute;top:5px;left:0;width:8px;height:8px;border-radius:50%;background:#d99b24;content:'';}
.strategy-native-results .pine-trade-win-rate-legend .gain::before {background:#14a98f;}
.strategy-native-results .pine-trade-win-rate-legend .loss::before {background:#f2364f;}
.strategy-native-results .pine-trade-win-rate-legend strong {color:#e6e7ea;font-size:13px;}
.strategy-native-results .pine-trade-win-rate-legend small {color:#777a82;font-size:9px;}
.strategy-native-results .pine-trade-direction-table {margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;}
.strategy-native-results .pine-trade-direction-table th,
.strategy-native-results .pine-trade-direction-table td {padding:10px 16px;border-color:#292a2f;font-size:11px;}
.strategy-native-results .pine-trade-direction-table tbody th {color:#979aa2;font-weight:550;text-align:left;}
.strategy-native-results .pine-trade-direction-table td {width:20%;color:#e4e5e8;}
.strategy-native-results .mc-tail-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  padding:1px;
  overflow:hidden;
  border:1px solid rgba(127,151,177,.14);
  border-radius:11px;
  background:linear-gradient(110deg,rgba(72,215,190,.11),rgba(255,255,255,.025) 48%,rgba(144,124,255,.09));
}
.strategy-native-results .mc-tail-grid>div {
  min-height:78px;
  padding:14px;
  align-content:center;
  border:0;
  border-radius:0;
  background:linear-gradient(145deg,rgba(16,23,29,.96),rgba(8,12,17,.98));
}
.strategy-native-results .mc-tail-grid span {color:#7f8994;font-size:8.5px;letter-spacing:.06em;}
.strategy-native-results .mc-tail-grid strong {color:#e7ebee;font-size:14px;font-weight:720;}
.strategy-backtest-trades td small {display:block;margin-top:3px;color:#69717c;font-size:8px;}
.strategy-run-notice {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  padding:14px 16px;
  border:1px solid rgba(231,164,66,.34);
  border-radius:11px;
  background:linear-gradient(135deg,rgba(95,62,18,.22),rgba(17,14,10,.92));
}
.strategy-run-notice-icon {display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(237,177,86,.4);border-radius:50%;background:rgba(216,143,36,.14);color:#efb75f;font-size:14px;font-weight:800;}
.strategy-run-notice strong {display:block;color:#f0dfc3;font-size:11.5px;}
.strategy-run-notice p {margin:4px 0 0;color:#a99c89;font-size:9.5px;line-height:1.55;}
.strategy-run-notice dl {display:flex;gap:18px;margin:0;}
.strategy-run-notice dl>div {min-width:74px;}
.strategy-run-notice dt {color:#8f8372;font-size:8px;}
.strategy-run-notice dd {margin:4px 0 0;color:#ded3c3;font-size:10px;font-weight:680;font-variant-numeric:tabular-nums;}
.strategy-detail-table tr.is-margin-call {background:rgba(211,135,32,.055);}
.strategy-detail-table .strategy-exit-margin {color:#e6ae58;font-weight:680;}
.strategy-more-trades {display:block;width:auto;margin:12px auto;}
.strategy-detail-note {margin:10px 0 0;color:#939ca7;font-size:10.5px;line-height:1.65;}
.strategy-tracking-panel p {margin:10px 0 15px;color:#9aa2ad;font-size:11px;line-height:1.68;}
.strategy-tracking-dot {width:8px;height:8px;margin-top:4px;border-radius:50%;background:#2eddb8;box-shadow:0 0 0 5px rgba(46,221,184,.09),0 0 16px rgba(46,221,184,.35);}
.strategy-tracking-dot.is-error {background:#ff6b73;box-shadow:0 0 0 5px rgba(255,107,115,.09);}
.strategy-detail-inputs {max-height:210px;margin:0;border-color:rgba(255,255,255,.08);background:#080b0f;color:#aeb5bf;}
.strategy-input-list{max-height:320px;overflow:auto;padding-right:4px}
.strategy-input-list dd{max-width:55%;overflow-wrap:anywhere}
.strategy-input-empty{display:grid;gap:6px;min-height:92px;align-content:center;justify-items:center;padding:22px;border:1px dashed rgba(143,164,191,.22);border-radius:10px;background:rgba(13,18,25,.46);color:var(--text-primary);text-align:center}
.strategy-input-empty p{margin:0;color:var(--text-muted)}
.strategy-detail-content>.strategy-detail-table-panel,
.strategy-detail-content>.strategy-performance-empty {margin-top:0;}
#strategy-detail-status {min-height:18px;margin-top:8px;color:#e3ad62;font-size:10px;}
.strategy-result-section {display:grid;gap:11px;}
.strategy-result-section.is-forward {padding-top:2px;}
.strategy-result-section-head {display:flex;align-items:center;gap:10px;margin:2px 2px -1px;}
.strategy-result-section-head::after {height:1px;flex:1;background:linear-gradient(90deg,rgba(255,255,255,.075),transparent);content:'';}
.strategy-result-section-head span {color:#e3e7ea;font-size:12px;font-weight:740;letter-spacing:-.005em;}
.strategy-result-section-head p {margin:0;color:#79828e;font-size:9.5px;}
.strategy-result-section.is-forward .strategy-result-section-head span {color:#aa9cff;}
.strategy-trade-sections {display:grid;gap:14px;}
.strategy-trade-sections>.strategy-result-section-head:not(:first-child) {margin-top:12px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);}
.strategy-open-forward-position {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid rgba(146,125,255,.2);border-radius:13px;background:linear-gradient(135deg,rgba(92,222,198,.1),rgba(146,125,255,.15));box-shadow:0 16px 42px rgba(0,0,0,.12);}
.strategy-open-forward-position>div {min-width:0;padding:15px 17px;background:linear-gradient(145deg,rgba(15,19,25,.96),rgba(9,12,17,.98));}
.strategy-open-forward-position span {display:block;color:#858d98;font-size:9px;}
.strategy-open-forward-position strong {display:block;margin-top:5px;color:#e4e8ed;font-size:13px;font-variant-numeric:tabular-nums;}
.strategy-forward-empty {min-height:112px;padding:20px;}
.strategy-forward-empty strong {font-size:13px;}
.strategy-detail-table td small {display:block;margin-top:3px;color:#6f7782;font-size:8.5px;}

@media(max-width:1100px){
  .strategy-detail-kpis {grid-template-columns:repeat(3,minmax(0,1fr));}
  .strategy-detail-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-detail-grid-overview {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-validation-bottom,.strategy-trade-breakdown {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-validation-bottom > :last-child,.strategy-trade-breakdown > :last-child {grid-column:1/-1;}
  .strategy-open-forward-position {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-native-results .pine-trade-analysis-charts {grid-template-columns:1fr;}
  .strategy-native-results .mc-tail-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  .strategy-detail-shell {padding-inline:12px;}
  .strategy-detail-header {position:static;}
  .strategy-detail-title-row {grid-template-columns:1fr;align-items:flex-start;}
  .strategy-detail-actions {justify-content:start;gap:7px;width:100%;}
  .strategy-detail-tabs {display:flex;gap:4px;overflow-x:auto;border-radius:11px;scrollbar-width:none;}
  .strategy-detail-tabs::-webkit-scrollbar {display:none;}
  .strategy-detail-tabs button {flex:0 0 auto;min-width:108px;}
  .strategy-detail-content {gap:15px;padding-top:15px;}
  .strategy-detail-panel {padding:16px;border-radius:12px;}
  .strategy-detail-kpis {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-detail-grid,.strategy-detail-validation-charts,.strategy-detail-trade-grid,
  .strategy-validation-bottom,.strategy-trade-breakdown {grid-template-columns:1fr;}
  .strategy-detail-grid-overview .strategy-detail-panel-wide,
  .strategy-validation-bottom > :last-child,.strategy-trade-breakdown > :last-child {grid-column:auto;}
  .strategy-detail-title-row h2 {font-size:20px;}
  .strategy-combined-equity .strategy-detail-line {height:230px;}
  .strategy-combined-axis {padding-right:12px;}
  .strategy-native-results .pine-observation-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-native-results>.pine-market-comparison>.pine-observation-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-native-results .mc-tail-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .strategy-open-forward-position {grid-template-columns:1fr;}
  .strategy-run-notice {grid-template-columns:auto minmax(0,1fr);align-items:start;}
  .strategy-run-notice dl {grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:4px;}
}
@media(max-width:520px){
  .strategy-native-results .pine-observation-metrics,
  .strategy-native-results>.pine-market-comparison>.pine-observation-metrics {grid-template-columns:1fr;}
  .strategy-native-results .mc-tail-grid {grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){
  .strategy-performance-loading span::before {animation:none;}
  .strategy-detail-back,.strategy-detail-actions .strategy-action,.strategy-open-chart {transition:none;}
}

/* LumeQuant immutable publishing ----------------------------------------- */
.workspace-icon-publish::before {content:'↗';font-size:13px;font-weight:800;}
body.workspace-publish-mode #main > :not(#lumequant-publish-view):not(#lq-publish-confirm):not(#startup-error),
body:has(#lumequant-publish-view:not([hidden])) #main > :not(#lumequant-publish-view):not(#lq-publish-confirm):not(#startup-error) {display:none!important;}
body.workspace-publish-mode #main :is(#chart-shell,#chart-empty-state,#lumequant-workspace-tester),
body:has(#lumequant-publish-view:not([hidden])) #main :is(#chart-shell,#chart-empty-state,#lumequant-workspace-tester) {display:none!important;}
body.workspace-publish-mode #main,
body:has(#lumequant-publish-view:not([hidden])) #main {overflow:auto;background:#090b0f;}
#lumequant-publish-view {box-sizing:border-box;width:100%;min-height:calc(100dvh - 146px);padding:34px clamp(18px,4vw,64px) 54px;color:#eef1f5;background:
  radial-gradient(circle at 83% 5%,rgba(72,202,201,.08),transparent 27%),
  radial-gradient(circle at 25% -10%,rgba(95,81,220,.1),transparent 30%),#090b0f;}
.lq-publish-header {display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:1220px;margin:0 auto 26px;}
.lq-publish-header small,.lq-publish-preview>small,.lq-publish-confirm>form>small {color:#53d9ce;font-size:9px;font-weight:850;letter-spacing:.17em;}
.lq-publish-header h1 {margin:7px 0 7px;font-size:30px;letter-spacing:-.035em;}
.lq-publish-header p {max-width:680px;margin:0;color:#8d96a3;font-size:12px;line-height:1.55;}
.lq-public-pill {display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(72,222,195,.2);border-radius:999px;background:rgba(42,193,170,.07);color:#adf1e5;font-size:10px;font-weight:750;white-space:nowrap;}
.lq-public-pill i {width:6px;height:6px;border-radius:50%;background:#49e0c3;box-shadow:0 0 12px #49e0c3;}
.lq-publish-layout {display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:18px;max-width:1220px;margin:auto;}
.lq-publish-form {display:grid;gap:13px;}
.lq-publish-card,.lq-publish-preview {border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(17,20,26,.9);box-shadow:inset 0 1px rgba(255,255,255,.025);}
.lq-publish-card {padding:20px;}
.lq-publish-card-heading {display:flex;align-items:flex-start;gap:13px;margin-bottom:17px;}
.lq-publish-card-heading>span {display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(82,220,206,.2);border-radius:8px;background:rgba(53,191,180,.07);color:#68e1d5;font-size:9px;font-weight:850;}
.lq-publish-card-heading h2 {margin:0 0 3px;font-size:14px;}
.lq-publish-card-heading p {margin:0;color:#7e8794;font-size:10px;line-height:1.45;}
.lq-publish-name {display:grid;gap:7px;color:#aeb5bf;font-size:10px;font-weight:700;}
.lq-publish-name input {height:39px;padding:0 12px;border:1px solid #303640;border-radius:8px;background:#0c0f14;color:#f4f6f8;font:700 13px/1 inherit;outline:none;}
.lq-publish-name input:focus {border-color:#4fb9b5;box-shadow:0 0 0 3px rgba(69,194,187,.09);}
.lq-publish-locks {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;}
.lq-publish-locks>div {display:grid;grid-template-columns:1fr auto;gap:4px;padding:11px 12px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:#0c0f14;}
.lq-publish-locks small {color:#68717d;font-size:8px;font-weight:850;letter-spacing:.12em;}
.lq-publish-locks strong {grid-row:1/3;grid-column:2;align-self:center;color:#e7ebef;font-size:13px;}
.lq-publish-locks span {color:#606975;font-size:8.5px;}
.lq-source-options {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.lq-source-options label {position:relative;display:grid;grid-template-columns:1fr 20px;min-height:70px;padding:14px;border:1px solid #282e37;border-radius:10px;background:#0c0f14;cursor:pointer;}
.lq-source-options input {position:absolute;opacity:0;pointer-events:none;}
.lq-source-options span {display:grid;align-content:center;gap:5px;}
.lq-source-options strong {color:#dfe3e8;font-size:11px;}
.lq-source-options small {color:#78818d;font-size:9px;line-height:1.45;}
.lq-source-options i {display:none;place-items:center;width:18px;height:18px;border-radius:50%;background:#52d9c8;color:#07110f;font-size:10px;font-style:normal;font-weight:900;}
.lq-source-options label:has(input:checked) {border-color:rgba(80,221,204,.48);background:linear-gradient(135deg,rgba(58,199,185,.1),rgba(58,199,185,.025));box-shadow:0 0 0 1px rgba(80,221,204,.07) inset;}
.lq-source-options label:has(input:checked) i {display:grid;}
.lq-publish-grade {display:flex;align-items:center;gap:14px;padding:13px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#0c0f14;}
.lq-grade-orbit {display:grid;place-items:center;width:64px;height:64px;border:2px solid #29333d;border-top-color:#4fe0cc;border-radius:50%;}
.lq-grade-orbit strong {grid-area:1/1;color:#f2f5f7;font-size:20px;}
.lq-grade-orbit span {grid-area:1/1;margin-top:31px;color:#68727e;font-size:7px;}
.lq-publish-grade>div:last-child strong {font-size:12px;}
.lq-publish-grade>div:last-child p {margin:4px 0 0;color:#747e8a;font-size:9px;}
.lq-publish-checks {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 0;padding:0;list-style:none;}
.lq-publish-checks li {display:flex;align-items:center;gap:7px;padding:9px;border:1px solid rgba(255,255,255,.055);border-radius:8px;color:#747d89;font-size:9px;}
.lq-publish-checks i {width:7px;height:7px;border-radius:50%;background:#404750;}
.lq-publish-checks li.complete {color:#c4eae4;}.lq-publish-checks li.complete i {background:#4ed8c2;box-shadow:0 0 8px rgba(78,216,194,.55);}
.lq-publish-preview {align-self:start;position:sticky;top:18px;padding:20px;}
.lq-publish-preview>article {margin-top:12px;padding:16px;border:1px solid rgba(255,255,255,.075);border-radius:12px;background:linear-gradient(145deg,#11161d,#0b0f14);box-shadow:0 18px 50px rgba(0,0,0,.26);}
.lq-publish-preview article header,.lq-publish-preview article footer {display:flex;align-items:center;justify-content:space-between;gap:8px;}
.lq-publish-preview article header span {color:#5de0d1;font-size:10px;font-weight:800;}.lq-publish-preview article header em {padding:4px 6px;border-radius:5px;background:rgba(85,215,197,.08);color:#8bdcd2;font-size:7px;font-style:normal;font-weight:850;letter-spacing:.1em;}
.lq-publish-preview article h2 {margin:22px 0 5px;font-size:17px;letter-spacing:-.02em;}.lq-publish-preview article>p {margin:0;color:#717b87;font-size:9px;}
.lq-publish-preview article>div {display:flex;align-items:flex-end;justify-content:space-between;margin:24px 0 16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);color:#78818d;font-size:9px;}.lq-publish-preview article>div strong {color:#f2f5f6;font-size:24px;}
.lq-publish-preview article footer {justify-content:flex-start;}.lq-publish-preview article footer span {padding:4px 6px;border:1px solid rgba(255,255,255,.07);border-radius:5px;color:#7f8995;font-size:7.5px;}
.lq-publish-rule {margin:14px 0;padding:12px;border-left:2px solid #ad7cf2;background:rgba(138,97,218,.055);}.lq-publish-rule strong {font-size:10px;}.lq-publish-rule p {margin:4px 0 0;color:#7d8693;font-size:9px;line-height:1.5;}
#lq-publish-continue {width:100%;min-height:39px;border:0;border-radius:8px;background:linear-gradient(100deg,#25baa8,#6577e6);color:#07100f;font-size:11px;font-weight:850;}#lq-publish-continue:disabled {background:#252b33;color:#68717b;cursor:not-allowed;}
#lq-publish-status {min-height:16px;margin:9px 0 0;color:#dba75d;font-size:9px;line-height:1.4;text-align:center;}
#lq-publish-success {margin-top:12px;padding:13px;border:1px solid rgba(67,214,183,.25);border-radius:9px;background:rgba(54,190,164,.07);}#lq-publish-success>strong {color:#83e6d5;font-size:11px;}#lq-publish-success>p {margin:4px 0 10px;color:#8c969f;font-size:9px;}#lq-publish-success>div {display:flex;gap:7px;}#lq-publish-success button {flex:1;min-height:31px;font-size:9px;}
.lq-publish-confirm {box-sizing:border-box;position:fixed;z-index:1200;top:50%;left:50%;width:min(520px,calc(100vw - 32px));max-height:min(720px,calc(100dvh - 32px));overflow:auto;transform:translate(-50%,-50%);padding:0;border:1px solid rgba(117,130,154,.35);border-radius:18px;background:radial-gradient(circle at 10% 0%,rgba(77,214,196,.09),transparent 32%),radial-gradient(circle at 100% 0%,rgba(117,130,233,.11),transparent 36%),#101319;color:#eff2f5;box-shadow:0 0 0 100vmax rgba(2,4,7,.82),0 32px 90px rgba(0,0,0,.72);}.lq-publish-confirm[hidden] {display:none;}.lq-publish-confirm form {position:relative;padding:30px;}.lq-confirm-close {position:absolute;top:14px;right:14px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:#818b97;font-size:20px;line-height:1;}.lq-confirm-close:hover {border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:#e6eaf0;}.lq-confirm-mark {display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border:1px solid rgba(117,233,218,.25);border-radius:12px;background:linear-gradient(135deg,#4dd6c4,#7582e9);color:#07110f;font-size:21px;box-shadow:0 10px 28px rgba(72,190,190,.18);}.lq-publish-confirm h2 {margin:8px 0;font-size:22px;letter-spacing:-.025em;}.lq-publish-confirm>form>p {max-width:420px;margin:0;color:#949eaa;font-size:11px;line-height:1.6;}.lq-confirm-warning {margin:21px 0 0;padding:15px 16px;border:1px solid rgba(233,177,91,.18);border-radius:11px;background:linear-gradient(135deg,rgba(205,143,58,.075),rgba(205,143,58,.025));}.lq-confirm-warning strong {color:#edc88f;font-size:10px;letter-spacing:.03em;}.lq-confirm-warning ul {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;margin:12px 0 0;padding:0;list-style:none;color:#a4adb8;font-size:9.5px;line-height:1.45;}.lq-confirm-warning li {position:relative;padding-left:14px;}.lq-confirm-warning li::before {content:"";position:absolute;top:.45em;left:0;width:6px;height:6px;border-radius:50%;background:#55d8c7;box-shadow:0 0 8px rgba(85,216,199,.45);}.lq-confirm-actions {display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:23px;padding-top:18px;border-top:1px solid rgba(255,255,255,.075);}.lq-confirm-actions button {min-height:42px;padding-inline:16px;border-radius:9px;font-size:10px;font-weight:800;}.lq-confirm-actions .secondary {border:1px solid #303743;background:#11151b;color:#bac1ca;}.lq-confirm-actions .secondary:hover {border-color:#46505f;background:#161b22;color:#f0f3f6;}#lq-publish-confirm-button {border:0;background:linear-gradient(135deg,#45d4c1,#7384ef);color:#071014;box-shadow:0 9px 24px rgba(67,183,190,.17);}#lq-publish-confirm-button:hover:not(:disabled) {filter:brightness(1.06);}#lq-publish-confirm-button:disabled {opacity:.72;cursor:wait;box-shadow:none;}
@media(max-width:850px){.lq-publish-layout {grid-template-columns:1fr;}.lq-publish-preview {position:static;}.lq-publish-checks {grid-template-columns:1fr;}}
@media(max-width:560px){#lumequant-publish-view {padding:22px 12px 40px;}.lq-publish-header {display:grid;}.lq-public-pill {justify-self:start;}.lq-publish-locks,.lq-source-options {grid-template-columns:1fr;}.lq-publish-card {padding:15px;}}
@media(max-width:560px){.lq-publish-confirm form {padding:24px 20px 20px;}.lq-confirm-warning ul {grid-template-columns:1fr;}.lq-confirm-actions {grid-template-columns:1fr;}.lq-confirm-actions .secondary {order:2;}}
