.chart-block{background:var(--surface);border:1px solid var(--rule);border-radius:6px;margin:2.5rem 0;padding:1.5rem 1.25rem 1rem}.chart-title{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;font-size:11px;font-weight:500}.chart-svg{display:block;overflow:visible}.chart-grid{stroke:#ffffff12;stroke-width:1px}.chart-tick{fill:var(--muted);font:300 11px var(--font-mono), monospace}.chart-value{fill:var(--ice);font:400 10.5px var(--font-mono), monospace}.chart-direct{font:400 11px var(--font-mono), monospace;fill:var(--ice);opacity:.85}.chart-key{font:300 11px var(--font-mono), monospace;color:var(--muted);flex-wrap:wrap;gap:.35rem 1.1rem;margin:.9rem 0 0;padding:0;list-style:none;display:flex}.chart-key li{align-items:center;gap:.45rem;margin:0;display:flex}.chart-source{font-family:var(--font-mono), monospace;color:var(--muted);font-size:10px;line-height:1.6;margin:.75rem 0 0!important}.chart-error{font-family:var(--font-mono), monospace;color:var(--ice);border:1px dashed var(--muted);border-radius:4px;padding:1rem;font-size:12px}.chart-canvas.is-live{gap:.75rem;display:grid}.chart-stage{touch-action:pan-y;cursor:crosshair;border-radius:4px;position:relative}.chart-stage:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.chart-stage svg{max-width:100%;height:auto;display:block}.chart-tip{border:1px solid var(--rule);min-width:9rem;max-width:min(20rem,80%);font:300 11px var(--font-mono), monospace;color:var(--muted);pointer-events:none;z-index:2;background:#0f1215;border-radius:6px;padding:.55rem .7rem;position:absolute;top:8px;box-shadow:0 6px 20px #00000059}.chart-tip-head{color:var(--ice);margin-bottom:.35rem}.chart-tip-row{grid-template-columns:auto auto 1fr;align-items:center;gap:.5rem;line-height:1.6;display:grid}.chart-tip-row strong{color:var(--ice);font-variant-numeric:tabular-nums;text-align:right;min-width:3.2em;font-weight:500}.chart-tip-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.chart-key.is-live{gap:.35rem .4rem;margin:0}.chart-key-item{font:300 11px var(--font-mono), monospace;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.45rem;padding:.2rem .5rem .2rem .35rem;display:inline-flex}.chart-key-item:hover{border-color:var(--rule);color:var(--ice)}.chart-key-item:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.chart-key-item[aria-pressed=false]{opacity:.45;text-decoration:line-through}.chart-foot{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem 1rem;margin-top:.75rem;display:flex}.chart-foot .chart-source{flex:18rem;min-width:0;margin:0!important}.chart-actions{gap:.9rem;margin-left:auto;display:flex}.chart-action{font:300 11px var(--font-mono), monospace;color:var(--muted);text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0}.chart-action:hover{color:var(--cyan)}.chart-action[hidden]{display:none}.chart-table{border:1px solid var(--rule);border-radius:4px;max-height:18rem;overflow:auto}.chart-table[hidden]{display:none}.essay-body .chart-table table{font:300 11px var(--font-mono), monospace;font-variant-numeric:tabular-nums;margin:0}.essay-body .chart-table caption{text-align:left;color:var(--muted);padding:.5rem .75rem}.essay-body .chart-table th,.essay-body .chart-table td{white-space:nowrap;padding:.3rem .75rem}@media (width<=520px){.chart-block{margin-left:-.5rem;margin-right:-.5rem;padding:1rem .75rem .75rem}.chart-direct{display:none}.chart-tick{font-size:19px}.chart-value{font-size:17px}}.dsw{gap:.6rem;display:grid}.dsw-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.dsw-label{font-size:.875rem;font-weight:500}.dsw-btn{font:inherit;border:1px solid color-mix(in srgb, currentColor 30%, transparent);color:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .7rem;font-size:.8rem}.dsw-btn:hover{border-color:currentColor}.dsw-btn:focus-visible,.dsw-x:focus-visible,.dsw-grid input:focus-visible,.dsw-text:focus-visible{outline-offset:1px;outline:2px solid #00a3b4}.dsw-scroll{border:1px solid color-mix(in srgb, currentColor 20%, transparent);border-radius:6px;max-height:420px;overflow:auto}.dsw-grid{border-collapse:collapse;width:max-content;min-width:100%;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem}.dsw-grid th,.dsw-grid td{border-bottom:1px solid color-mix(in srgb, currentColor 12%, transparent);border-right:1px solid color-mix(in srgb, currentColor 12%, transparent);text-align:left;padding:0}.dsw-grid thead th{z-index:1;background:canvas;font-weight:600;position:sticky;top:0}.dsw-grid input{font:inherit;color:inherit;background:0 0;border:0;width:100%;min-width:7rem;padding:.35rem .5rem}.dsw-grid thead input{font-weight:600}.dsw-colhead{align-items:center;display:flex}.dsw-corner,.dsw-rownum{opacity:.6;white-space:nowrap;width:3.5rem;font-weight:400;padding:0 .4rem!important}.dsw-rownum{justify-content:space-between;align-items:center;display:flex}.dsw-x{font:inherit;color:inherit;cursor:pointer;opacity:.5;background:0 0;border:0;padding:0 .35rem}.dsw-x:hover{opacity:1}.dsw-text{border:1px solid color-mix(in srgb, currentColor 20%, transparent);color:inherit;background:0 0;border-radius:6px;width:100%;padding:.5rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem}.dsw-actions{align-items:center;gap:.5rem;display:flex}.dsw-count,.dsw-hint{opacity:.7;font-size:.75rem}.dsw-count{margin-left:auto}.dsw-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dsw-preview{--night:#161a1f;--ice:#e8f0ff;--muted:#8a9098;--rule:#22242a;--cyan:#00d4e8;--surface:#ffffff08;--chart-bg:var(--night);--chart-ink:var(--ice);--font-mono:"IBM Plex Mono";background:var(--night);color:var(--muted);border-radius:6px;padding:.25rem 1rem}.dsw-preview .chart-block{margin:.75rem 0}
