.sb-proof-chart { color:var(--sb-text-1);font:12px system-ui,sans-serif;min-width:0; }
.sb-proof-chart svg { display:block;width:100%;background:var(--sb-panel);overflow:hidden; }
.sb-proof-chart .sb-proof-options,.sb-proof-chart .sb-proof-legend { display:flex;flex-wrap:wrap;gap:8px 12px;margin:6px 0; }
.sb-proof-legend span { border-bottom:2px solid;padding-bottom:3px; }
.sb-proof-chart label { display:flex;align-items:center;gap:4px; }
.sb-proof-chart input { width:auto; }
.sb-proof-chart table { width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums; }
.sb-proof-chart td,.sb-proof-chart th { text-align:right;border-bottom:1px solid var(--sb-border);padding:6px; }
.sb-proof-chart td:first-child,.sb-proof-chart th:first-child { text-align:left; }
.sb-proof-chart summary { padding:8px 0;cursor:pointer; }
.sb-chart-notice,.sb-proof-chart p { color:var(--sb-text-2);font-size:11px;line-height:1.5; }
.sb-proof-compact .sb-proof-options,.sb-proof-compact .sb-proof-extended,.sb-proof-compact [data-chart-id="period"],.sb-proof-compact .sb-proof-legend { display:none; }
.sb-proof-compact { display:grid;grid-template-rows:auto auto minmax(0,1fr) var(--sb-volume-height,64px);height:100%; }
.sb-proof-compact svg { height:100%;min-height:0; }
.sb-proof-detail { padding:4px 10px; }
.sb-proof-detail [data-chart-id="chart"] { max-height:420px; }
.sb-proof-detail [data-chart-id="pressureChart"] { height:80px; }
.sb-proof-detail [data-chart-id="investorChart"] { height:84px; }

.sb-proof-compact svg text { display:none; }

.sb-proof-detail .sb-proof-options,.sb-proof-detail .sb-proof-legend { gap:4px 10px;margin:2px 0; }
.sb-proof-detail .sb-proof-legend span { padding-bottom:1px; }
.sb-proof-detail summary { padding:2px 0;line-height:18px; }
.sb-proof-detail p { margin:2px 0;line-height:1.3; }
.sb-proof-detail [data-chart-id="period"] { margin-top:2px; }

.sb-proof-detail > .sb-proof-options,.sb-proof-detail > .sb-proof-legend { display:inline-flex;vertical-align:middle;margin-right:12px; }

.sb-proof-chart [hidden] { display:none!important; }

.sb-proof-compact [data-chart-id="pressureChart"] { height:var(--sb-volume-height,64px); }
.sb-proof-year.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr); }
.sb-proof-chart { position:relative; }
.sb-proof-chart [data-chart-id="chart"] { touch-action:none;user-select:none; }
.sb-chart-tools,.sb-chart-navigation { display:flex;align-items:center;flex-wrap:wrap;gap:var(--sb-space-1,4px);padding:var(--sb-space-2,8px) 0; }
.sb-chart-tools .sb-btn,.sb-chart-navigation .sb-btn,.sb-chart-window .sb-btn { background:var(--sb-surface);color:var(--sb-text-1);border:1px solid var(--sb-border);border-radius:var(--sb-radius-1,4px);padding:6px 9px;font:inherit;cursor:pointer; }
.sb-chart-tools [aria-pressed="true"] { border-color:var(--sb-accent);color:var(--sb-accent); }
.sb-chart-tools .sb-input,.sb-chart-window .sb-input { background:var(--sb-surface);color:var(--sb-text-1);border:1px solid var(--sb-border);padding:6px;max-width:100%; }
.sb-chart-tools input { width:130px; }.sb-chart-navigation input { flex:1;min-width:100px;width:150px; }.sb-chart-count { min-width:45px; }
.sb-chart-tooltip { position:fixed;z-index:10000;pointer-events:none;white-space:pre-line;font:12px/1.5 system-ui,sans-serif;color:var(--sb-text-1);background:var(--sb-panel);border:1px solid var(--sb-border);padding:8px;max-width:min(300px,90vw);max-height:80vh;overflow:auto; }
.sb-chart-tool-status { color:var(--sb-text-2);font-size:12px;min-height:20px; }
.sb-chart-window .sb-modal { background:var(--sb-panel);color:var(--sb-text-1);border:1px solid var(--sb-border);border-radius:8px;max-width:min(480px,95vw); }
.sb-chart-window .sb-modal::backdrop { background:var(--sb-overlay); }.sb-chart-window .sb-modal__head,.sb-chart-window .sb-modal__foot { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px; }.sb-chart-window .sb-modal__body { padding:12px; }.sb-chart-window .sb-modal__body label { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0; }.sb-chart-window .sb-modal p { color:var(--sb-text-2);font-size:12px; }

.sb-chart-window [hidden] { display:none!important; }

.sb-chart-navigation label { display:flex;align-items:center;gap:4px;flex:1;min-width:140px; }

/* Embedded controls stay in one row; drawing tools open above the plot. */
.sb-proof-compact .sb-chart-compact-controls { display:flex;align-items:center;gap:8px;min-width:0;position:relative; }
.sb-chart-bar-info { min-width:0;flex:1;overflow-x:auto;white-space:nowrap;font-size:11px;line-height:24px;color:var(--sb-text-1); }
.sb-chart-tool-panel { flex-shrink:0; }
.sb-proof-compact .sb-chart-tool-panel > summary { padding:3px 6px;border:1px solid var(--sb-border);border-radius:var(--sb-radius-1);font-size:11px;cursor:pointer; }
.sb-chart-tool-panel-body { position:absolute;inset:100% 0 auto 0;z-index:30;max-height:min(260px,60vh);overflow:auto;padding:8px;background:var(--sb-panel);border:1px solid var(--sb-border);box-shadow:var(--sb-shadow-2); }
.sb-proof-compact svg .sb-chart-crosshair text,.sb-proof-compact svg .sb-chart-drawings text { display:block; }
.sb-proof-compact .sb-chart-tools .sb-btn,.sb-proof-compact .sb-chart-navigation .sb-btn { padding:4px 6px;font-size:11px; }

.sb-chart-axis-label { position:fixed;z-index:9999;pointer-events:none;font:12px/18px system-ui,sans-serif;padding:1px 4px;white-space:nowrap;color:var(--sb-text-1);background:var(--sb-surface);border:1px solid var(--sb-border); }
.sb-proof-legend .sb-chart-indicator,.sb-chart-indicator-controls .sb-chart-indicator { background:transparent;border:0;border-bottom:2px solid;padding:0 2px 1px;font:inherit;cursor:pointer; }
.sb-chart-indicator[aria-pressed="true"] { outline:2px solid var(--sb-warn,var(--sb-accent));outline-offset:2px; }
.sb-proof-no-pressure.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr); }

.sb-chart-indicator-controls { display:flex;flex-wrap:wrap;gap:8px;margin-block:4px; }
.sb-proof-chart [data-chart-indicator],.sb-chart-drawing { cursor:grab; }
.sb-chart-object-dragging [data-drawing-id] { cursor:grabbing; }
.sb-chart-indicator-panel { border:1px solid var(--sb-border);padding:2px 8px;margin-block:4px; }
.sb-chart-indicator-panel > summary { cursor:pointer; }
.sb-chart-indicator-list { display:flex;flex-wrap:wrap;gap:8px 16px;padding:6px 0; }
.sb-chart-indicator-list label { cursor:pointer; }
.sb-proof-compact .sb-chart-indicator-panel { margin:4px 0; }
.sb-chart-type { max-width:120px; }
.sb-proof-compact .sb-chart-compact-controls > label { flex-shrink:0;font-size:11px; }
.sb-proof-compact .sb-chart-type { padding:2px;max-width:94px; }

/* Horizontal separators change vertical proportions without taking a grid row. */
.sb-chart-resizers { position:absolute;inset:0 0 auto;height:0;pointer-events:none;z-index:25; }
.sb-resize-handle { position:absolute;left:0;width:100%;height:10px;cursor:row-resize;touch-action:none;user-select:none;pointer-events:auto;z-index:25; }
.sb-resize-handle::after { content:'';position:absolute;left:0;right:0;top:4px;height:2px;background:var(--sb-border); }
.sb-resize-handle:hover::after,.sb-resize-handle:focus-visible::after,.sb-resize-active::after { background:var(--sb-accent);height:3px; }
.sb-resize-handle:focus-visible { outline:2px solid var(--sb-accent);outline-offset:-2px; }
.sb-resize-handle[hidden] { display:none!important; }
@media(min-width:901px) {
 .mdi-dock.sb-desktop-home.sb-user-split { grid-template-rows:0 minmax(0,1fr) minmax(0,var(--sb-work-height)); }
 .mdi-dock.sb-desktop-home.sb-user-split > :is(#mdi-panel-portfolio,#mdi-panel-trading,.sb-analysis) { max-height:none; }
}

.sb-proof-chart { --sb-chart-money-300:var(--sb-down,#3b82f6);--sb-chart-money-500:#adff2f;--sb-chart-money-1000:#ff9800;--sb-chart-money-3000:var(--sb-up,#f43f5e);--sb-chart-money-5000:#d8b4fe;--sb-chart-money-10000:var(--sb-text-1); }
.sb-proof-money { border-top:1px solid var(--sb-border);min-height:0; }
.sb-proof-money [data-chart-id="moneyChart"] { height:100px;min-height:32px; }
.sb-money-legend { display:flex;flex-wrap:wrap;gap:4px 12px;padding-block:4px;font-size:11px; }
.sb-proof-money > p { margin:2px 0; }
.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr) var(--sb-volume-height,64px) auto; }
.sb-proof-compact .sb-proof-money [data-chart-id="moneyChart"] { height:64px; }
.sb-proof-no-pressure.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr) auto; }
.sb-proof-year.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr); }
body.light-mode .sb-proof-chart { --sb-chart-money-500:#4d7c0f;--sb-chart-money-1000:var(--sb-warn);--sb-chart-money-5000:#7c3aed; }
.sb-proof-compact .sb-proof-money > p,.sb-proof-compact .sb-proof-money > button,.sb-proof-compact .sb-money-legend { display:none; }

.sb-chart-search { position:relative;flex:0 1 300px;min-width:200px;max-width:100%; }
.sb-chart-search-label { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
.sb-chart-search-row { display:flex;gap:var(--sb-space-1,4px); }
.sb-chart-search-row .sb-input { flex:1;min-width:0;width:100%;font:inherit; }
.sb-chart-search-panel { position:absolute;inset:calc(100% + 4px) 0 auto;z-index:10001;padding:var(--sb-space-2,8px);background:var(--sb-panel);border:1px solid var(--sb-border);box-shadow:var(--sb-shadow-2);max-height:min(360px,60vh);overflow:auto; }
.sb-chart-search-panel p { margin:0 0 6px;color:var(--sb-text-2);font-size:12px; }
.sb-chart-search-result { display:block;width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere;margin-top:4px; }
.sb-chart-search-result[aria-selected="true"] { border-color:var(--sb-accent);background:var(--sb-surface);color:var(--sb-text-1);outline:1px solid var(--sb-accent); }

.sb-proof-chart { --sb-chart-investor-foreign:#ff94c4;--sb-chart-investor-institution:#fff16c;--sb-chart-investor-individual:#3e5eb8; }
body.light-mode .sb-proof-chart { --sb-chart-investor-foreign:#b52964;--sb-chart-investor-institution:#957100;--sb-chart-investor-individual:#243e89; }
.sb-investor-controls,.sb-investor-legend { display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-block:4px; }
.sb-proof-detail [data-chart-id="investorChart"] { height:180px; }
.sb-proof-detail .sb-investor-legend { display:none; }
.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr) var(--sb-volume-height,64px) auto auto; }
.sb-proof-no-pressure.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr) auto auto; }
.sb-proof-year.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr); }
.sb-proof-compact .sb-proof-extended { display:block;min-height:0; }
.sb-proof-compact .sb-proof-investors { border-top:1px solid var(--sb-border); }
.sb-proof-compact .sb-proof-investors > p,.sb-proof-compact .sb-investor-controls,.sb-proof-compact .sb-proof-investors > details { display:none; }
.sb-proof-compact [data-chart-id="investorChart"] { height:120px; }
.sb-proof-compact .sb-proof-money > summary,.sb-proof-compact .sb-proof-investors > summary { white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.sb-proof-compact .sb-investor-legend { flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;font-size:11px;line-height:16px; }
.sb-proof-compact .sb-investor-legend > span { flex-shrink:0; }
.sb-proof-compact .sb-proof-money > summary,.sb-proof-compact .sb-proof-investors > summary { padding:2px 0;line-height:18px; }
.sb-proof-compact .sb-investor-legend { margin-block:2px; }

.sb-proof-obv { border-top:1px solid var(--sb-border);--sb-chart-obv:var(--sb-chart-investor-institution);--sb-chart-obv-signal:var(--sb-chart-money-300); }
.sb-proof-obv [data-chart-id="obvChart"] { height:140px;min-height:64px; }

.sb-proof-chart { --sb-chart-signal-new-low:var(--sb-chart-money-300);--sb-chart-signal-oversold:var(--sb-warn); }

/* Keep close/apply available while longer indicator conditions scroll. */
.sb-chart-window .sb-modal[open] { max-height:calc(100dvh - 32px);overflow:hidden; }
.sb-chart-window .sb-modal[open] > form { display:flex;flex-direction:column;max-height:calc(100dvh - 66px); }
.sb-chart-window .sb-modal__head,.sb-chart-window .sb-modal__foot { flex-shrink:0; }
.sb-chart-window .sb-modal__body { min-height:0;overflow:auto; }

/* Each cycle keeps its own lower pane in the compact chart. */
.sb-proof-week.sb-proof-compact,.sb-proof-year.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr) var(--sb-volume-height,64px); }
.sb-proof-week.sb-proof-no-obv.sb-proof-compact,.sb-proof-year.sb-proof-no-pressure.sb-proof-compact { grid-template-rows:auto auto minmax(0,1fr); }
.sb-proof-week.sb-proof-compact .sb-proof-obv { display:block;min-height:0;height:100%; }
.sb-proof-week.sb-proof-compact .sb-proof-obv > summary { padding:0;line-height:18px;pointer-events:none;cursor:default; }
.sb-proof-week.sb-proof-compact .sb-proof-obv > p { display:none; }
.sb-proof-week.sb-proof-compact [data-chart-id="obvChart"] { min-height:0;height:calc(var(--sb-volume-height,64px) - 20px); }

.sb-proof-chart { --sb-chart-signal-entry:var(--sb-success,#10b981); }
