:root,[data-theme="dark"] { --series-blue:#82adff; --series-amber:#e8b96e; --series-purple:#c5a3ff; --series-green:#a9d27c; --series-price:#c0caf5; }
[data-theme="light"] { --series-blue:#245fc2; --series-amber:#956112; --series-purple:#7b45b7; --series-green:#477b20; --series-price:#344257; }
.prose .series-chart { margin:32px 0; padding:0; border:1px solid var(--border); border-radius:8px; background:var(--bg-deep); overflow:hidden; max-width:100%; }
.series-chart [hidden] { display:none!important; }
.series-chart figcaption { display:grid; gap:6px; padding:18px 20px 10px; }
.series-chart figcaption strong { color:var(--text); font-size:1.05rem; line-height:1.4; }
.series-chart-kicker { font-family:var(--font-mono); text-transform:uppercase; font-size:.68rem; color:var(--text-muted); }
.prose .series-chart-description,.prose .series-chart-note,.prose .series-chart-fallback { margin:0; padding:4px 20px 14px; font-size:.84rem; line-height:1.6; max-width:none; }
.series-chart-notes { display:flex; flex-wrap:wrap; gap:7px; padding:8px 20px 12px; }
.series-chart button { color:var(--text-paragraph); border:1px solid var(--border); border-radius:4px; background:var(--surface); font:inherit; font-size:.75rem; padding:8px 10px; cursor:pointer; min-height:36px; }
.series-chart button[aria-pressed="true"] { color:var(--text); border-color:var(--series-blue); background:var(--accent-hover); }
.series-chart button:focus-visible,.series-chart input:focus-visible { outline:2px solid var(--series-blue); outline-offset:3px; }
.prose .series-chart-panel-title { margin:0; padding:10px 20px 0; font-size:.75rem; font-weight:600; color:var(--text-paragraph); }
.series-chart-legend { display:flex; flex-wrap:wrap; gap:5px 14px; padding:5px 20px; font-size:.7rem; line-height:1.5; }
.series-chart-legend span { color:var(--series-color); }
.series-chart-legend span::before { content:""; display:inline-block; width:14px; height:2px; margin-right:6px; vertical-align:middle; background:var(--series-color); }
.series-chart-legend span.is-dashed::before { height:0; background:none; border-top:2px dashed var(--series-color); }
.series-chart svg { display:block; width:100%; height:auto; cursor:crosshair; }
.series-chart-line { fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.series-chart-grid { stroke:var(--divider); stroke-width:1; }
.series-chart-guide { stroke:var(--text-muted); stroke-dasharray:4 4; opacity:.6; }
.series-chart-axis { fill:var(--text-muted); font:11px var(--font-mono); }
.series-chart-cursor { stroke:var(--text-muted); stroke-dasharray:3 4; pointer-events:none; }
.series-chart-inspect { display:flex; align-items:center; gap:14px; padding:6px 20px; font-size:.75rem; color:var(--text-muted); }
.series-chart-inspect input { min-width:0; width:100%; accent-color:var(--series-blue); }
.series-chart-readout { display:flex; flex-wrap:wrap; gap:5px 15px; padding:8px 20px 18px; font: .7rem/1.6 var(--font-mono); min-height:90px; }
.series-chart-readout strong { flex-basis:100%; color:var(--text); }
.series-chart-readout span { color:var(--series-color); }
.series-chart-readout-panel { display:flex; flex-wrap:wrap; flex-basis:100%; gap:4px 15px; }
.series-chart-readout .series-chart-readout-panel-label { flex-basis:100%; color:var(--text-paragraph); }
.series-chart-source { padding:14px 20px; border-top:1px solid var(--divider); color:var(--text-paragraph); font-size:.75rem; line-height:1.6; }
.series-chart-source a { color:inherit; }
.series-chart-source-compact { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 18px; }
.series-chart-source-compact details { flex:1 1 220px; min-width:0; }
.series-chart-source-compact summary { cursor:pointer; }
.series-chart-source-compact details div { padding-top:10px; }
.series-chart-data { padding:0 20px 16px; font-size:.75rem; color:var(--text-muted); }
.series-chart-data summary { cursor:pointer; }
.series-chart-table { margin-top:10px; max-height:330px; overflow:auto; border:1px solid var(--border); }
.prose .series-chart-table table { margin:0; font: .7rem/1.5 var(--font-mono); white-space:nowrap; }
.prose .series-chart-table th,.prose .series-chart-table td { padding:7px 10px; text-align:right; }
.prose .series-chart-table th:first-child { text-align:left; }
@media(max-width:560px) { .series-chart figcaption,.series-chart-source,.series-chart-inspect,.series-chart-readout,.series-chart-notes { padding-left:14px; padding-right:14px; } .prose .series-chart-description,.prose .series-chart-note { padding-left:14px; padding-right:14px; } }
