/* =========================================================
   Jackfa — backtester (demo): result chart, readout, trade list.
   Builds on .w-replay-visual / .w-empty-chart from site.css.
   ========================================================= */
.w-empty-chart.has-result{background:none}
.w-test-svg{position:absolute;left:0;right:0;top:20px;bottom:20px;width:100%;height:calc(100% - 40px);overflow:visible;touch-action:pan-y;cursor:crosshair}
.w-test-svg:focus{outline:none}
.w-test-svg:focus-visible{outline:1px solid #8d8d8d;outline-offset:6px}
.w-test-grid{stroke:#ffffff12;stroke-width:1}
.w-test-zero{stroke:#6d6d6d;stroke-width:1}
.w-test-tick{font:8px GeistMono,monospace;fill:#7f7f7f}
.w-test-area{fill:#dcdcdc;fill-opacity:.07}
.w-test-line{fill:none;stroke:#dcdcdc;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.w-test-ring{fill:#121212}
.w-test-dot.win{fill:#dcdcdc}
.w-test-dot.loss{fill:#121212;stroke:#dcdcdc;stroke-width:1.6}
.w-test-cross{stroke:#9a9a9a;stroke-width:1}
.w-test-focus{fill:#f2f2f2;stroke:#121212;stroke-width:2}
.w-test-tip{position:absolute;z-index:2;pointer-events:none;transform:translate(-50%,calc(-100% - 12px));display:flex;flex-direction:column;gap:2px;min-width:150px;padding:10px 12px;background:#e8e8e8;color:#1f1f1f;border:1px solid #b8b8b8;box-shadow:0 8px 30px #00000066;font:9px/1.6 GeistMono,monospace;letter-spacing:.04em;white-space:nowrap}
.w-test-tip[hidden]{display:none}
.w-test-tip strong{font:500 16px/1.3 Geist,Arial,sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:no-preference){
  .has-result:not(.is-static) .w-test-line{stroke-dasharray:1;stroke-dashoffset:1;animation:w-test-draw 1.1s cubic-bezier(.3,.7,.2,1) forwards}
  .has-result:not(.is-static) .w-test-area,.has-result:not(.is-static) .w-test-ring,.has-result:not(.is-static) .w-test-dot{animation:w-test-fade .5s .7s both}
}
@keyframes w-test-draw{to{stroke-dashoffset:0}}
@keyframes w-test-fade{from{opacity:0}}

/* four metrics instead of three */
.w-replay-visual .w-mini-metrics{flex-wrap:wrap;row-gap:16px}
.w-replay-visual .w-mini-metrics strong{font-size:clamp(21px,2vw,29px);font-variant-numeric:tabular-nums}

/* test identity + trade list */
.w-test-id{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0 0 6px;font:9px/1.7 GeistMono,monospace;letter-spacing:.06em;color:#8a8a8a}
.w-test-id>span:first-child:not(:only-child){color:#6f6f6f}
.w-test-id code{color:#d6d6d6;overflow-wrap:anywhere;font:inherit;letter-spacing:.02em}
.w-test-trades{margin-top:14px;border-top:1px solid var(--w-line);padding-top:12px}
.w-test-trades summary{cursor:pointer;font:9px/1.6 GeistMono,monospace;letter-spacing:.12em;text-transform:uppercase;color:#afafaf;min-height:30px;display:flex;align-items:center}
.w-test-trades summary:hover{color:#ffffff}
.w-test-trades .w-note{margin-top:10px}
.w-test-table{overflow-x:auto;margin-top:8px}
.w-test-table table{width:100%;border-collapse:collapse;font:10px/1.6 GeistMono,monospace;font-variant-numeric:tabular-nums;white-space:nowrap}
.w-test-table th{font-weight:400;color:#7f7f7f;text-align:left;padding:6px 10px 6px 0;border-bottom:1px solid var(--w-line)}
.w-test-table td{padding:6px 10px 6px 0;border-bottom:1px solid #ffffff0d;color:#cfcfcf}
.w-test-table td:nth-child(n+4),.w-test-table th:nth-child(n+4){text-align:right}
.w-test-table td:last-child,.w-test-table th:last-child{padding-right:0}
