/* Live-chart workspace: BlinkChart's noir surfaces and silver controls. */
.nav-live-dot { width:4px; height:4px; background:#80bda8; border-radius:50%; }
.live-workspace { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:20px; align-items:start; animation:surface-enter .65s .05s var(--noir-out) both; }
.live-chart-panel,.live-setup-panel,.live-signals-panel { min-width:0; border:1px solid #ffffff12; border-radius:24px; background:linear-gradient(180deg,#141519,#0d0e11); box-shadow:inset 0 1px 0 #ffffff08,0 30px 60px -36px #000d; }
.live-chart-panel { overflow:hidden; }
.live-instrument-bar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:22px 22px 0; }
#live-asset-identity { display:flex; align-items:center; gap:10px; }
#live-asset-identity .asset-logo { width:36px; height:36px; border-radius:11px; }
#live-asset-identity .asset-logo svg { width:21px; height:21px; }
#live-asset-identity .asset-info strong { font-size:15px; }
#live-asset-identity .asset-info small { font-size:10px; margin-top:5px; }
.live-instrument-meta { display:flex; gap:10px; align-items:center; color:#737b87; font-size:8px; letter-spacing:.7px; }
.live-instrument-meta>span:first-child { border:1px solid #ffffff0f; border-radius:5px; padding:4px 6px; font-size:7px; }
.live-instrument-meta .icon-button { margin-left:3px; }
.live-quote-row { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:20px 22px 0; }
.live-quote-row>div { display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }
#live-last-price { font-size:38px; font-weight:600; letter-spacing:-1.8px; font-variant-numeric:tabular-nums; display:inline-block; }
.live-day-change { display:inline-flex; align-items:center; gap:3px; font-size:11px; }
.live-day-change .icon { width:11px; height:11px; }
.live-day-change small { font-size:8px; color:#777f8c; margin-left:5px; }
.live-chart-toolbar { position:relative; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:11px 17px; background:#0b0c0f55; border-block:1px solid #ffffff0b; z-index:3; }
.live-chart-types { display:flex; border-radius:999px; padding:3px; background:#0a0b0d; border:1px solid #ffffff12; gap:2px; }
.live-chart-types>button { display:flex; align-items:center; gap:5px; padding:6px 10px; border-radius:999px; color:#7e8693; font-size:10px; transition:background .25s,color .25s; }
.live-chart-types>button .icon { width:12px; height:12px; }
.live-chart-types>button.active { color:#f3f4f6; background:radial-gradient(110% 100% at 50% 0,#45464c,#202125 62%); box-shadow:inset 0 1px 0 #ffffff14,0 6px 16px #0008; }
.live-toolbar-actions { display:flex; align-items:center; gap:10px; }
.live-tool-button { display:flex; gap:6px; align-items:center; padding:6px 8px; color:#b7bdc7; font-size:10px; border-radius:8px; }
.live-tool-button>.icon { height:13px; width:13px; }
.live-tool-button:hover,.live-tool-button[aria-expanded=true] { background:#ffffff08; color:#f3f4f6; }
.live-indicators { position:absolute; top:calc(100% + 10px); right:17px; width:303px; border:1px solid #ffffff17; border-radius:21px; padding:17px; background:linear-gradient(180deg,#1b1c22,#111217); box-shadow:inset 0 1px 0 #ffffff09,0 20px 50px #000b; animation:modal-enter .2s var(--noir-out) both; }
.live-indicators[hidden],.live-latest[hidden],#live-signal-legend[hidden] { display:none; }
.live-indicators>div { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.live-indicators>div>strong { font-size:13px; font-weight:500; }
.live-indicators>div>.icon-button { height:22px; width:22px; }
.live-indicators>p { font-size:10px; color:#8d929b; margin:3px 0 12px; }
.live-indicators>label { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 0; border-top:1px solid #ffffff09; color:#bbc1cb; font-size:11px; cursor:pointer; position:relative; }
.live-indicators input { position:absolute; opacity:0; width:32px; height:24px; right:0; margin:0; cursor:pointer; }
.live-checkbox { display:block; position:relative; width:29px; height:17px; border-radius:999px; border:1px solid #ffffff0d; background:#292c33; pointer-events:none; flex-shrink:0; transition:background .2s; }
.live-checkbox:after { content:''; position:absolute; left:2px; top:2px; height:11px; width:11px; background:#8d929b; border-radius:50%; transition:transform .25s var(--noir-spring),background .2s; }
.live-indicators input:checked+.live-checkbox { background:#9dbdff; border-color:#9dbdff; }
.live-indicators input:checked+.live-checkbox:after { transform:translateX(12px); background:#1a2338; }
.live-indicators input:focus-visible+.live-checkbox { outline:2px solid #9dbdff; outline-offset:4px; }
.live-chart-frame { position:relative; background:#0f1013; }
.live-ohlc { display:flex; align-items:center; gap:10px; min-height:37px; padding:12px 17px 7px; color:#717a87; font-size:9px; white-space:nowrap; overflow:hidden; }
.live-ohlc>strong { color:#b9c0cb; font-size:9px; font-weight:500; margin-right:4px; }
.live-ohlc>strong>span { color:#78818f; font-weight:400; }
.live-ohlc>span { display:flex; gap:5px; }
.live-ohlc b { font-weight:400; color:#a3acba; }
.live-ohlc b.positive { color:var(--green); }.live-ohlc b.negative { color:var(--red); }
.live-ohlc em { font-style:normal; font-size:8px; color:#b4a8ed; margin-left:auto; }
.live-canvas { height:400px; width:100%; position:relative; touch-action:pan-y; }
.live-canvas.has-rsi { height:510px; }
.live-latest { position:absolute; right:77px; bottom:35px; z-index:2; display:flex; align-items:center; gap:5px; background:#1b2029e6; backdrop-filter:blur(10px); border:1px solid #ffffff20; border-radius:999px; padding:7px 11px; font-size:10px; color:#d0d8e7; box-shadow:0 5px 20px #0005; }
.live-latest>.icon { height:11px; width:11px; }
.live-signals-column { min-width:0; display:flex; flex-direction:column; gap:18px; }
.live-setup-panel { padding:21px; }
.live-panel-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:21px; }
.live-panel-heading h2 { font-size:13px; font-weight:600; letter-spacing:-.1px; }
.live-plan-direction { display:flex; align-items:center; gap:5px; font-size:12px; font-weight:600; }
.live-plan-direction>.icon { width:13px; height:13px; }
.live-plan-direction>span { margin-left:auto; color:#7f8998; border:1px solid #ffffff10; border-radius:5px; padding:3px 5px; font-size:8px; font-weight:400; }
#live-plan-content>h3 { font-size:19px; font-weight:500; line-height:1.3; letter-spacing:-.6px; margin-top:12px; }
.live-plan-status { display:flex; align-items:center; gap:5px; color:#7e8795; font-size:9px; margin-top:9px; }
.live-plan-status i { width:4px; height:4px; background:#8d929b; border-radius:50%; }
.live-plan-status>span { margin:0 3px; color:#4d5663; }
.live-plan-values { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 17px; margin-top:25px; padding-bottom:22px; border-bottom:1px solid #ffffff0c; }
.live-plan-values small { display:block; font-size:9px; color:#848d9a; }
.live-plan-values strong { display:block; font-size:16px; font-weight:500; letter-spacing:-.3px; margin-top:7px; }
.live-plan-values strong.entry { color:#cbd9f4; }
.live-risk-ratio { display:grid; grid-template-columns:1fr auto; gap:11px; padding:17px 0; border-bottom:1px solid #ffffff0b; }
.live-risk-ratio>span { color:#8d929b; font-size:10px; }
.live-risk-ratio>strong { color:#c3c6cd; font-weight:500; font-size:10px; }
.live-risk-ratio i:first-child { width:28.57%; background:#b5606a77; border-radius:3px; }
.live-risk-ratio i:last-child { flex:1; background:#3ecf8e55; border-radius:3px; }
.live-next-signal:hover { transform:translateY(-2px); background:#24262d; }
.live-signals-panel { overflow:hidden; }
.live-signals-panel .live-panel-heading { padding:20px 19px 15px; margin:0; }
#live-signal-count { padding:3px 5px; font-size:8px; border:1px solid #ffffff0d; border-radius:4px; color:#7f8998; background:#ffffff04; }
.live-signal-row { display:flex; gap:9px; align-items:center; padding:15px 16px; width:100%; text-align:left; border-top:1px solid #ffffff09; transition:background .2s; position:relative; }
.live-signal-row:hover { background:#ffffff04; }
.live-signal-row.selected { background:linear-gradient(90deg,#8fb4ff09,transparent); }
.live-signal-row.selected:before { content:''; position:absolute; width:2px; background:#9dbdff88; left:0; top:12px; bottom:12px; border-radius:3px; }
.signal-direction-icon { width:26px; height:26px; display:grid; place-items:center; background:#ffffff04; border:1px solid #ffffff08; border-radius:9px; flex-shrink:0; }
.signal-direction-icon .icon { width:13px; height:13px; }
.live-signal-row>span:nth-child(2) { margin-right:auto; min-width:0; }
.live-signal-row strong { display:flex; align-items:center; gap:5px; font-size:10px; font-weight:500; white-space:nowrap; }
.live-signal-row strong small { font-size:6px; color:#8d929b; border:1px solid #ffffff10; padding:2px 3px; border-radius:3px; font-weight:400; }
.live-signal-row>span>small { display:block; font-size:7px; color:#697585; margin-top:5px; white-space:nowrap; }
.live-signal-row small>span { color:#434e5e; padding:0 2px; }
.live-signal-entry { display:flex; flex-direction:column; align-items:flex-end; gap:5px; color:#9da8b9; font-size:10px; flex-shrink:0; }
.live-signal-entry>.icon { width:9px; height:9px; color:#515f72; }
.live-chart-fallback { display:grid; place-items:center; padding:60px 25px; color:#9ba7b9; font-size:13px; height:100%; text-align:center; }
.quote-up { animation:quote-up .65s ease-out; }.quote-down { animation:quote-down .65s ease-out; }
@keyframes stream-breathe { 0%,100% { opacity:1; } 50% { opacity:.4; } }
@keyframes quote-up { from { color:#6ed6ab; } to { color:#f3f4f6; } }
@keyframes quote-down { from { color:#ec8e96; } to { color:#f3f4f6; } }
@media(min-width:1500px) { .live-workspace { grid-template-columns:minmax(0,1fr) 340px; gap:24px; } .live-canvas { height:470px; } .live-canvas.has-rsi { height:580px; } .live-plan-values strong { font-size:18px; } .live-signal-row { padding-block:18px; } }
@media(max-width:1020px) { .live-workspace { grid-template-columns:1fr; } .live-signals-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; } .live-demo-explainer { grid-column:1/-1; max-width:480px; } .live-canvas { height:420px; } .live-canvas.has-rsi { height:530px; } .live-page-heading { margin-bottom:24px; } .live-signal-row { padding-block:18px; } }
@media(max-width:850px) and (min-width:701px) { .noir .header-actions #notifications { display:none; } .noir .topbar { gap:12px; } .wordmark { font-size:20px; gap:6px; } .wordmark .icon { width:21px; } .topbar-pill>a { padding-inline:13px; font-size:12px; } }
@media(max-width:700px) {
  .topbar-pill>a { padding-inline:12px; font-size:11.5px; }
  .nav-live-dot { width:3px; height:3px; }
  .live-workspace { gap:17px; }
  .live-chart-panel,.live-setup-panel,.live-signals-panel { border-radius:22px; }
  .live-instrument-bar { padding:18px 16px 0; gap:12px; }
  #live-asset-identity .asset-logo { height:32px; width:32px; border-radius:10px; }
  #live-asset-identity .asset-logo svg { height:19px; width:19px; }
  #live-asset-identity .asset-info strong { font-size:13px; }
  #live-asset-identity .asset-info small { font-size:8px; max-width:95px; }
  .live-instrument-meta { gap:6px; font-size:7px; }
  .live-instrument-meta>span:first-child { font-size:6px; padding:3px 4px; }
  .live-instrument-meta .icon-button { width:23px; height:23px; margin-left:0; }
  .live-instrument-meta .icon-button .icon { height:14px; width:14px; }
  .live-quote-row { padding:18px 16px 0; }
  .live-quote-row>div { gap:7px; }
  #live-last-price { font-size:32px; letter-spacing:-1.5px; }
  .live-day-change { font-size:9px; gap:2px; }
  .live-day-change small { display:none; }
  .live-chart-toolbar { padding:10px 11px; gap:8px; }
  .live-chart-types>button { font-size:9px; padding:6px 8px; gap:4px; }
  .live-chart-types>button .icon { width:10px; height:10px; }
  .live-toolbar-actions { gap:2px; }
  .live-tool-button { padding:6px 4px; font-size:9px; gap:4px; }
  .live-tool-button>.icon { width:12px; height:12px; }
  .live-toolbar-actions>.icon-button { width:24px; height:24px; }
  .live-toolbar-actions>.icon-button .icon { height:13px; width:13px; }
  .live-indicators { right:10px; left:10px; width:auto; padding:16px; }
  .live-ohlc { font-size:7px; gap:7px; min-height:32px; padding:11px 12px 6px; }
  .live-ohlc>strong { font-size:7px; margin-right:0; }
  .live-ohlc>span { gap:3px; }
  .live-ohlc em { display:none; }
  .live-canvas { height:310px; }
  .live-canvas.has-rsi { height:410px; }
  .live-signals-column { grid-template-columns:1fr; gap:17px; }
  .live-setup-panel { padding:22px; }
  .live-plan-values { gap:24px; }
  .live-plan-values strong { font-size:20px; letter-spacing:-.7px; }
  .live-plan-values small { font-size:10px; }
  .live-panel-heading h2 { font-size:14px; }
  #live-plan-content>h3 { font-size:22px; }
  .live-plan-direction { font-size:13px; }
  .live-signal-row { padding:17px 20px; }
  .live-signal-row strong { font-size:12px; }
  .live-signal-row>span>small { font-size:9px; }
  .live-signal-entry { font-size:12px; }
  .live-signal-row strong small { font-size:7px; }
  .signal-direction-icon { width:30px; height:30px; }
  .signal-direction-icon .icon { height:15px; width:15px; }
}
@media(max-width:480px) { .topbar-pill .nav-count { display:none; } .topbar-pill>a { padding-inline:10px; gap:5px; } }
@media(max-width:360px) { .live-page-heading h1 { font-size:26px; } .live-page-heading p { max-width:170px; font-size:9px; } .live-demo-label { font-size:5px; } #live-last-price { font-size:29px; } .live-day-change { font-size:8px; } .live-simulation-note { display:none; } .live-chart-types>button { padding-inline:7px; } .live-tool-button>span:not(.live-indicator-count) { display:none; } .live-ohlc { font-size:6px; gap:6px; } .live-ohlc>strong { font-size:6px; } .live-feed-count { display:none; } .live-canvas { height:290px; } .live-canvas.has-rsi { height:390px; } }
@media(prefers-reduced-motion:reduce) { .noir .stream-dot,.noir .quote-up,.noir .quote-down { animation:none; } .noir .live-next-signal:hover { transform:none; } }

/* Compact chart view: data and controls only. */
.noir.live-view main { padding-top:18px; padding-bottom:24px; }
.live-setup-panel .live-panel-heading { margin-bottom:18px; }
.live-setup-panel .live-panel-heading .icon-button { width:24px; height:24px; border-radius:50%; border:1px solid #ffffff0c; }
.live-setup-panel .live-panel-heading .icon-button .icon { height:12px; width:12px; }
.live-plan-direction { font-size:17px; gap:6px; }
.live-plan-direction>.icon { width:16px; height:16px; }
.live-plan-status { margin-top:9px; }
.live-plan-values { margin-top:22px; }
.live-risk-ratio { padding:16px 0 0; border-bottom:0; gap:0; }
.live-signals-panel .live-panel-heading { padding-bottom:18px; }
@media(max-width:700px) {
  .noir.live-view main { padding-top:12px; }
  .live-plan-direction { font-size:18px; }
}

/* Stock search and a single chart-controls toolbar. */
.live-instrument-bar { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,280px) minmax(0,1fr); gap:16px; z-index:4; }
.live-market-heading { min-width:0; justify-self:start; }
#live-asset-identity .asset-info small { max-width:92px; }
.live-instrument-meta { justify-self:end; }
.live-stock-search { min-width:0; position:relative; width:100%; }
.live-stock-search-field { display:flex; align-items:center; gap:8px; height:35px; padding:0 12px; border:1px solid #ffffff10; border-radius:999px; background:#090a0c; box-shadow:inset 0 1px 2px #0006,0 1px 0 #ffffff04; transition:border-color .2s,box-shadow .2s; }
.live-stock-search-field:focus-within { border-color:#9dbdff70; box-shadow:0 0 0 3px #8fb4ff0a,inset 0 1px 2px #0006; }
.live-stock-search-field>.icon { width:13px; height:13px; color:#6f7989; }
.live-stock-search-field input { width:100%; min-width:0; padding:0; border:0; outline:0; background:transparent; color:#d4d9e2; font:11px var(--font); }
.live-stock-search-field input:focus-visible { outline:0; }
.live-stock-search-field input::placeholder { color:#687283; }
.live-market-results { position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:8; max-height:300px; overflow-y:auto; padding:5px; border:1px solid #ffffff16; border-radius:17px; background:linear-gradient(180deg,#1b1c22,#111217); box-shadow:inset 0 1px 0 #ffffff07,0 20px 40px #0009; scrollbar-width:thin; }
.live-market-results[hidden] { display:none; }
.live-market-option { display:flex; align-items:center; gap:9px; width:100%; padding:10px 8px; border-radius:11px; text-align:left; }
.live-market-option:hover,.live-market-option.active { background:#8fb4ff0e; }
.live-market-option .asset-logo { width:26px; height:26px; border-radius:8px; }
.live-market-option .asset-logo>svg { width:16px; height:16px; }
.live-market-option .asset-info { flex:1; }
.live-market-option .asset-info strong { font-size:10px; }
.live-market-option .asset-info small { max-width:none; font-size:9px; }
.live-market-option>.icon { width:11px; height:11px; color:#59667a; }
.live-market-empty { padding:18px 12px; color:#7b8595; font-size:11px; text-align:center; }
.live-quote-row { padding-bottom:20px; }
.live-chart-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:12px; }
.live-chart-types { justify-self:start; }
.live-toolbar-actions { justify-self:end; }
.live-intervals { display:flex; align-items:center; justify-content:center; gap:2px; padding:3px; border:1px solid #ffffff0d; border-radius:999px; background:#0a0b0d; }
.live-intervals>button { padding:6px 9px; border-radius:999px; color:#818b9a; font-size:10px; transition:color .2s,background .2s; }
.live-intervals>button:hover { color:#e6eaf1; background:#ffffff05; }
.live-intervals>button.active { color:#f3f4f6; background:radial-gradient(110% 100% at 50% 0,#45464c,#202125 62%); box-shadow:inset 0 1px 0 #ffffff12; }
.live-ohlc>.live-chart-zone { margin-left:auto; color:#657183; font-size:8px; }
@media(max-width:700px) {
  .live-instrument-bar { grid-template-columns:minmax(0,1fr) auto; gap:14px 12px; }
  .live-market-heading { grid-column:1; grid-row:1; }
  .live-instrument-meta { grid-column:2; grid-row:1; }
  .live-stock-search { grid-column:1/-1; grid-row:2; }
  .live-stock-search-field { height:34px; }
  .live-market-results { max-height:260px; }
  .live-quote-row { padding-bottom:18px; }
  .live-chart-toolbar { grid-template-columns:minmax(0,1fr) auto; gap:10px; }
  .live-chart-types { grid-column:1; grid-row:1; }
  .live-toolbar-actions { grid-column:2; grid-row:1; }
  .live-intervals { grid-column:1/-1; grid-row:2; justify-self:center; }
  .live-intervals>button { padding:6px 13px; font-size:9px; }
  .live-ohlc>.live-chart-zone { font-size:7px; }
}
@media(max-width:360px) { .live-intervals>button { padding-inline:11px; } }
