/* Chart workspace and compact controls share one layout at every viewport. */
body.terminal-active{overflow:hidden;background:var(--bg)}
.terminal{height:100dvh;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);overflow:hidden}
.tv-toolbar{display:flex;align-items:center;gap:24px;min-height:72px;height:72px;padding:0 max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--line)}
.terminal-brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;font-size:19px;font-weight:700;letter-spacing:-.8px}.terminal-brand img{width:34px;height:34px}.terminal-brand small{display:block;color:var(--muted);font-size:8px;font-weight:600;letter-spacing:1.8px;margin-top:-3px}
.instrument-tools{display:flex;gap:8px;align-items:center;min-width:0}
.tv-toolbar button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;height:42px;border-radius:11px;font-size:13px;white-space:nowrap;background:transparent;border-color:transparent;padding:9px 12px}
.tv-toolbar button:hover{background:var(--soft)}.tv-toolbar button svg{height:20px;width:20px}
.tv-toolbar .pair-picker{justify-content:flex-start;padding:7px 12px 7px 8px;gap:10px;background:var(--soft);border-color:var(--line);min-width:140px;max-width:250px;height:46px}
.pair-mark{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:14px;font-weight:700}
.pair-copy{min-width:0;display:grid;gap:0;text-align:left}.pair-copy strong{font-size:13px;letter-spacing:.1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pair-copy small{font-size:8px;font-weight:600;letter-spacing:1px;line-height:1.4}.pair-picker>.chevron-icon{width:13px;height:13px;color:var(--muted);margin-left:auto}
.tv-toolbar #timeframe{color:var(--accent);background:var(--accent-soft);font-size:13px;min-width:64px;padding-left:12px;padding-right:9px}.tv-toolbar #timeframe svg{width:14px;height:14px}
.tv-toolbar #chart-type{width:42px;padding:10px}.tv-toolbar #chart-type[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}
.tv-toolbar #indicators{background:var(--soft);border-color:var(--line)}.indicator-count{display:grid;place-items:center;min-width:18px;height:18px;border-radius:5px;background:var(--accent-soft);color:var(--accent);font-size:10px;font-weight:700}
.toolbar-spacer{flex:1}.toolbar-account{display:flex;align-items:center;gap:8px;min-width:0}.tv-toolbar #profile{padding:5px 7px;gap:9px}.profile-dot{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;flex:0 0 32px;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:700}.profile-name{max-width:120px;text-overflow:ellipsis;overflow:hidden;font-size:12px}
.chart-workspace{display:flex;flex:1;min-height:0;padding:12px;overflow:hidden}
.chart-stage{position:relative;min-width:0;min-height:0;flex:1;overflow:hidden;background:var(--chart-bg);border:1px solid var(--line);border-radius:15px;overscroll-behavior:contain}
#terminal-chart{position:relative;width:100%;height:100%;min-height:0}
#terminal-chart canvas{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.chart-overlays{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.price-scale-handle{position:absolute;pointer-events:auto;touch-action:none;cursor:ns-resize;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
.price-scale-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.pane-overlay{position:absolute;padding:12px 14px;overflow:hidden;pointer-events:none;line-height:1.3;color:var(--chart-ink)}
.pane-overlay button{pointer-events:auto;background:var(--chart-bg);border-color:transparent;color:var(--chart-ink)}
.price-heading{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;white-space:nowrap}.price-heading span{font-size:9px;letter-spacing:.7px;color:var(--chart-muted);font-weight:500}
.ohlc{display:flex;align-items:center;gap:9px;margin-top:5px;font-size:20px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.6px;white-space:nowrap}.price-change{font-size:10px;font-weight:600;letter-spacing:0;padding:3px 6px;border-radius:5px;background:#16a77c12;color:#0b966b}.price-change.negative{background:#ed657013;color:#df6470}body.dark .price-change{color:#5fd8af}body.dark .price-change.negative{color:#ff8c99}
.price-error{font-size:11px;color:var(--danger);margin-top:5px;max-width:300px;line-height:1.5}
.indicator-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px}
.pane-overlay .indicator-name{display:grid;gap:3px;text-align:left;min-width:0;min-height:36px;padding:0;background:transparent;line-height:1.25;border-radius:5px}
.indicator-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}.indicator-scope{display:flex;align-items:center;gap:5px;color:var(--chart-muted);font-size:9px;font-weight:600;letter-spacing:.6px}.indicator-scope::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent)}
.pane-buttons{display:flex;align-items:center;gap:3px;flex-shrink:0}.pane-buttons button{display:grid;place-items:center;min-height:34px;height:34px;width:34px;min-width:34px;border-radius:9px;padding:8px;color:var(--chart-muted)}.pane-buttons button:hover{background:var(--soft);color:var(--ink)}.pane-buttons button:disabled{display:none}.pane-buttons svg{width:17px;height:17px}
.indicator-values{display:none;align-items:center;gap:6px 12px;font-size:10px;white-space:nowrap;overflow:hidden;max-height:28px;margin-top:5px;font-variant-numeric:tabular-nums}.inspecting .indicator-values{display:flex}.indicator-values span{font-weight:500}.indicator-values b{font-weight:650;margin-left:4px}
.pane-status{position:absolute;left:38px;bottom:6px;max-width:calc(100% - 46px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.3;color:var(--chart-muted)}.pane-status[data-state=unavailable]{color:#b2833e}body.dark .pane-status[data-state=unavailable]{color:#d6ae69}.pane-status[data-state=error]{color:var(--danger)}
.pane-collapsed .pane-status,.pane-collapsed .indicator-values{display:none}.pane-compact .indicator-values,.pane-compact .pane-status{display:none}.pane-compact .price-heading{font-size:11px}.pane-compact .ohlc{font-size:15px;margin-top:3px}
.pane-compact .indicator-name{display:flex;align-items:center;gap:9px;min-height:32px}.pane-compact .indicator-title{min-width:0}.pane-compact .indicator-scope{flex-shrink:0}.pane-compact .pane-buttons button{min-height:32px;height:32px}
.mobile-nav{display:none}
.argument-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 18px}.argument-rows label{gap:9px;font-size:12px}.argument-rows .field-wide{grid-column:1/-1}.argument-rows input,.argument-rows select{min-height:48px}.argument-rows .info{grid-column:1/-1}
.settings-caption{color:var(--muted);font-size:12px;line-height:1.6;margin-bottom:18px}
.style-lines{display:grid;gap:10px}.style-group-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;letter-spacing:1px;font-weight:650;color:var(--muted);margin:18px 2px 2px}.style-group-title:first-child{margin-top:0}.style-group-title small{font-weight:500;font-size:10px;letter-spacing:0}
.style-line{border:1px solid var(--line);border-radius:13px;background:var(--surface);overflow:hidden;min-width:0}.style-line:has(input[data-key=visible]:checked){border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent-soft) 28%,var(--surface))}
.style-line-main{display:grid;grid-template-columns:minmax(0,1fr) 88px 36px;gap:10px;align-items:center;padding:10px 12px;min-width:0}.style-line-main .check-label{font-size:13px;gap:10px;min-height:40px}.line-depth{color:var(--muted);font-size:12px;font-weight:500;margin-left:3px}
.line-swatch{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;width:88px;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--soft);cursor:pointer;overflow:hidden}.line-swatch::before{content:"";width:18px;height:18px;border-radius:5px;background:var(--swatch);box-shadow:inset 0 0 0 1px #0000000d}.line-swatch i{height:2px;width:25px;background:var(--swatch);border-radius:4px}.line-swatch input[type=color]{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;opacity:0;cursor:pointer}.line-swatch:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.style-line:not(:has(input[data-key=visible]:checked)) .line-swatch{opacity:.55}
.line-options-toggle{display:grid;place-items:center;width:36px;min-height:36px;height:36px;padding:8px;border:0;background:transparent;border-radius:8px;color:var(--muted)}.line-options-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.line-options-toggle svg{width:19px;height:19px}
.line-options{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(0,1.3fr);gap:12px;border-top:1px solid var(--line);padding:14px 12px;background:var(--soft)}.line-options label{font-size:11px}.line-options select{background:var(--surface);font-size:13px;min-height:42px;padding:8px}
.style-line.is-diff .style-line-main{grid-template-columns:minmax(0,1fr) 36px}.diff-colors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 12px 14px}.diff-colors>div{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.diff-colors>div>span{font-size:11px;color:var(--muted)}.diff-colors .line-swatch{width:72px;flex:0 0 72px}.diff-colors .line-swatch i{width:18px}

/* Flat selection lists follow the reference, with independent favorite buttons. */
.timeframe-list{display:block;padding-bottom:8px}.timeframe-group h3{margin:0;padding:16px 20px 7px;font-size:11px;font-weight:500;letter-spacing:.65px;color:var(--muted)}
.timeframe-row{display:flex;align-items:stretch;min-height:40px}
.timeframe-row>button{border:0;border-radius:0;background:transparent;min-height:40px;height:40px;padding:7px 20px;font-size:16px;font-weight:500;text-align:left;color:var(--ink)}
.timeframe-row>[data-timeframe]{flex:1;min-width:0}.timeframe-row .timeframe-star{width:56px;min-width:56px;flex:0 0 56px;padding:9px 18px;display:grid;place-items:center;color:var(--muted)}
.timeframe-star svg{width:20px;height:20px}.timeframe-star.is-favorite{color:#f6b443}.timeframe-star.is-favorite svg{fill:currentColor}
.timeframe-row.chosen{background:#2962ff}.timeframe-row.chosen>[data-timeframe]{color:#fff}
.timeframe-row>button:hover{background:#7e879815}.timeframe-row.chosen>button:hover{background:#ffffff12}
.timeframe-close{position:absolute;z-index:2;top:4px;right:8px;display:grid;place-items:center;width:32px;height:32px;min-height:32px;border:0;background:transparent;padding:7px;color:var(--muted);border-radius:4px}
.timeframe-close svg{width:18px;height:18px}.reference-modal[data-kind=timeframes] .modal-body{padding:0}
.indicator-section{padding-top:3px}.indicator-list-item{display:flex;align-items:center;justify-content:space-between;min-height:44px;width:100%;border:0;border-radius:0;padding:9px 20px;text-align:left;background:transparent;font-size:16px;font-weight:400}
.indicator-list-item .list-add{color:var(--muted)}.indicator-list-item svg{width:18px;height:18px}
.reference-modal .library-limit{font-size:12px;color:var(--muted);padding:8px 20px;line-height:1.6}
.reference-modal .added-indicators{display:block;margin:24px 0 0}.reference-modal .saved-indicator{display:flex;align-items:center;gap:15px;width:100%;padding:10px 20px;border:0;border-radius:0;text-align:left;background:transparent;min-height:57px}
.saved-indicator-copy{display:grid;min-width:0;flex:1;gap:4px}.saved-indicator-copy strong{font-size:15px;font-weight:450;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.saved-indicator-copy small{font-size:11px;font-weight:400;color:var(--muted)}.saved-indicator>svg{width:18px;height:18px;color:var(--muted)}
.empty-library{padding:12px 20px;color:var(--muted);font-size:13px;line-height:1.6}
.quick-timeframes{display:flex;align-items:center;gap:2px}.quick-timeframes:empty{display:none}.tv-toolbar .quick-timeframes button{color:var(--muted);font-size:12px;padding:8px;min-width:32px}
@media(max-width:1050px){.tv-toolbar{gap:16px}.terminal-brand span{display:none}.profile-name{display:none}}
@media(max-width:700px){.terminal-brand{display:none}.tv-toolbar{gap:8px;padding-left:12px;padding-right:12px}.toolbar-account{gap:4px}.toolbar-label{display:none}.tv-toolbar #indicators{position:relative;width:44px;padding:10px}.indicator-count{position:absolute;top:-4px;right:-3px;min-width:16px;height:16px;font-size:9px;border:2px solid var(--surface)}.chart-workspace{padding:8px}.chart-stage{border-radius:12px}}
@media(max-width:600px){
 .tv-toolbar{height:64px;min-height:64px;padding:8px max(10px,env(safe-area-inset-right)) 8px max(10px,env(safe-area-inset-left));gap:0}.instrument-tools{display:grid;grid-template-columns:minmax(0,1fr) 60px 40px 40px;gap:7px;width:100%}.tv-toolbar .pair-picker{width:100%;min-width:0;max-width:none;height:44px;padding:6px 8px;gap:7px}.pair-mark{width:26px;height:26px;flex-basis:26px;font-size:12px;border-radius:8px}.pair-copy strong{font-size:11px}.pair-copy small{font-size:7px;letter-spacing:.7px}.pair-picker>.chevron-icon{display:none}
 .tv-toolbar #timeframe{min-width:0;width:60px;height:44px;min-height:44px;padding:8px;gap:4px;font-size:12px}.tv-toolbar #timeframe svg{width:12px;height:12px}.tv-toolbar #chart-type,.tv-toolbar #indicators{width:40px;height:44px;min-height:44px;padding:9px}.toolbar-account,.toolbar-spacer{display:none}
 .chart-workspace{padding:0 6px 6px}.chart-stage{border-radius:12px;border-color:var(--line)}
 .pane-overlay{padding:10px}.price-heading{font-size:11px;gap:6px}.price-heading span{font-size:8px}.ohlc{font-size:17px;gap:7px;margin-top:4px}.price-change{font-size:9px;padding:3px 5px}.price-error{font-size:10px}
 .indicator-heading{gap:5px}.indicator-title{font-size:11px}.indicator-scope{font-size:8px}.pane-buttons{gap:2px}.pane-buttons button{width:32px;min-width:32px;min-height:36px;height:36px;padding:7px}.pane-buttons [data-up]{display:none}.pane-buttons svg{width:16px;height:16px}.indicator-values{font-size:9px;gap:8px}.pane-status{font-size:8px}
 .mobile-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;flex-shrink:0;min-height:calc(64px + env(safe-area-inset-bottom));padding:7px max(20px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:var(--surface);border-top:1px solid var(--line)}
 .mobile-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:48px;height:48px;padding:5px;border:0;border-radius:13px;background:transparent;font-size:9px;font-weight:550;color:var(--muted)}.mobile-nav button svg{width:21px;height:21px}.mobile-nav .selected{background:var(--accent-soft);color:var(--accent)}
 .terminal-active .toast{bottom:calc(78px + env(safe-area-inset-bottom))}
 .argument-rows{grid-template-columns:1fr;gap:19px}.argument-rows .field-wide{grid-column:auto}.argument-rows label{font-size:12px}
 .style-line-main{grid-template-columns:minmax(0,1fr) 80px 34px;padding:9px 10px;gap:8px}.line-swatch{width:80px;height:40px}.line-options-toggle{width:34px;min-height:36px}.line-options{padding:13px 10px}.line-options select{font-size:16px}.diff-colors{gap:10px;padding:0 10px 12px}.diff-colors>div{flex-direction:column;align-items:flex-start;gap:7px}.diff-colors .line-swatch{width:100%;flex-basis:40px}
 .instrument-tools:has(.quick-timeframes:not(:empty)){grid-template-columns:minmax(0,1fr) 32px 60px 40px 40px}.quick-timeframes>button:nth-child(n+2){display:none}.tv-toolbar .quick-timeframes button{padding:6px 2px;width:32px}
}
@media(max-width:360px){.instrument-tools{grid-template-columns:minmax(0,1fr) 55px 38px 38px;gap:5px}.tv-toolbar #timeframe{width:55px}.tv-toolbar #chart-type,.tv-toolbar #indicators{width:38px}.pair-mark{display:none}.tv-toolbar .pair-picker{padding-left:9px}.pair-copy strong{font-size:11px}.price-heading span{display:none}.ohlc{font-size:16px;gap:5px}.pane-overlay{padding:8px}.indicator-heading{gap:3px}.indicator-title{font-size:10px}.pane-buttons button{width:30px;min-width:30px}.style-line-main{grid-template-columns:minmax(0,1fr) 72px 32px;gap:6px}.line-swatch{width:72px}.style-line-main .check-label{gap:8px;font-size:12px}.line-options-toggle{width:32px}.modal-footer .ghost{padding:8px}.quick-timeframes{display:none}.instrument-tools:has(.quick-timeframes:not(:empty)){grid-template-columns:minmax(0,1fr) 55px 38px 38px}}
@media(max-height:500px) and (orientation:landscape){.tv-toolbar{height:52px;min-height:52px}.mobile-nav{display:none}.toolbar-account{display:flex}.toolbar-spacer{display:block}.tv-toolbar .instrument-tools{width:auto;flex:1}.chart-workspace{padding:5px 8px}.pane-overlay{padding-top:6px;padding-bottom:6px}.modal-header{padding-top:15px;padding-bottom:13px}.modal-body{padding-top:16px}.modal-footer{padding-top:10px;padding-bottom:10px}}

/* Metric library and the explicit unavailable margin source. */
.library-item-copy{display:grid;gap:5px;min-width:0}.library-item-copy small{font-size:11px;color:var(--muted);line-height:1.5;font-weight:400}.indicator-list-item{gap:16px;min-height:64px}.picker-filters{overflow-x:auto;flex-shrink:0}.picker-filters button{white-space:nowrap;flex-shrink:0}
.pane-message{position:absolute;left:10px;right:10px;top:60px;bottom:44px;display:flex;flex-direction:column;justify-content:center;gap:8px;color:var(--chart-muted);font-size:11px;line-height:1.6;overflow:hidden}.pane-message strong{color:var(--chart-ink);font-size:12px;font-weight:600}.pane-message[hidden],.pane-collapsed .pane-message{display:none}.pane-compact .pane-message{top:43px;bottom:34px;gap:2px}.pane-compact .pane-message span{display:none}.pane-compact .pane-message strong{font-size:10px}.margin-pane .pane-status{left:44px;max-width:calc(100% - 52px)}.margin-pane.pane-compact .indicator-scope{display:none}
