:root{color-scheme:light;--surface:#fff;--text:#1d1d1f;--secondary:#606774;--accent:#0066cc;--navy:#1b3454;--rule:#dce1e6}
*{box-sizing:border-box}
body{margin:0;background:var(--surface);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.showcase{max-width:1280px;margin:0 auto;padding:54px 40px 48px}
.intro{margin-bottom:28px}
h1{margin:0;font-size:clamp(32px,3.7vw,46px);line-height:1.15;font-weight:650;letter-spacing:-.04em;color:var(--navy)}
.descriptor{max-width:960px;margin:17px 0 0;font-size:19px;line-height:1.6;color:var(--secondary)}
.stack{margin:20px 0 0;font-size:14px;line-height:1.7;color:var(--secondary)}
.pipeline{padding:22px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:8px}
.pipeline ol{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;margin:0;padding:0}
.pipeline li{display:flex;align-items:center;flex:1;font-size:16px;font-weight:600;line-height:1.5;color:var(--navy);white-space:nowrap}
.pipeline li:not(:last-child)::after{content:"→";font-size:21px;font-weight:400;color:#8d97a4;margin:0 0 0 auto;padding:0 18px}
.pipeline li:last-child{flex:0 0 auto}
.step{display:grid;grid-template-columns:232px minmax(0,1fr);gap:40px;padding:48px 0;border-bottom:1px solid var(--rule)}
.step:last-child{border-bottom:0;padding-bottom:0}
h2{margin:0;font-size:25px;line-height:1.25;font-weight:600;letter-spacing:-.025em;color:var(--navy)}
.caption{margin:13px 0 0;font-size:16px;line-height:1.6;color:var(--secondary)}
.step-evidence{min-width:0}
.evidence{margin:0}
.evidence a{display:block}
.evidence img{display:block;width:100%;height:auto}
.evidence--intake{max-width:808px}
.pricing-adapters{margin:0;padding:28px 0 30px;border-bottom:1px solid var(--rule)}
.pricing-adapters h2{margin:0 0 18px;font-size:15px;line-height:1.4;font-weight:600;color:var(--navy)}
.provider-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;list-style:none;margin:0;padding:0}
.provider-list li{min-width:0}
.provider-mark{display:flex;align-items:center;height:32px;max-width:100%;font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.035em;color:var(--navy)}
.provider-mark--yahoo{color:#6001d2;font-size:19px}
.provider-mark--stooq{color:#273f6e;font-size:24px}
.provider-mark--manual{font-size:17px;font-weight:550;letter-spacing:-.02em}
.provider-mark img{display:block;width:auto;height:auto;max-width:100%;max-height:27px;object-fit:contain}
.provider-mark--marketdata img{max-height:26px;max-width:142px;width:100%}
.provider-label{min-height:42px;margin:10px 0 0;font-size:14px;line-height:1.5;color:var(--text)}
.provider-role{margin:7px 0 0;font-size:13px;line-height:1.5;color:var(--secondary)}
.code-visual{margin:0;background:#f7f9fb;overflow-x:auto}
.code-visual pre{margin:0;padding:16px 0;font-family:Consolas,"SFMono-Regular",Menlo,monospace;font-size:14px;line-height:1.6}
.code-visual code{display:block;min-width:max-content;font:inherit}
.code-line{display:flex;min-height:22.4px;padding-right:18px}
.source-line{flex:0 0 56px;text-align:right;padding-right:14px;font-size:12px;color:#87919c;user-select:none}
.source-code{white-space:pre}
.code-focus{background:#e8eef5;box-shadow:inset 2px 0 #52759a}
.code-omission{color:#89939d}
.syntax-keyword{color:#216294}.syntax-string{color:#8d3f5b}.syntax-function{color:#285469}.syntax-number{color:#796227}
.evidence--state{max-width:604px;margin-top:25px}
.step--wide{display:block}
.step--wide .step-copy{display:flex;justify-content:space-between;align-items:baseline;gap:40px;margin-bottom:23px}
.step--wide .caption{max-width:650px;margin:0}
.step--wide .step-evidence{width:100%}
.website-link{margin:0 0 18px;font-size:15px;line-height:1.5}
.website-link a{color:var(--accent);text-decoration:none;text-underline-offset:4px}
.website-link a:hover{text-decoration:underline}
.evidence--allocation{width:100%;margin:34px 0 0}
a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
@media(max-width:1050px){.provider-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.showcase{padding:40px 28px}.step{grid-template-columns:190px minmax(0,1fr);gap:28px}.pipeline li{font-size:14px}.pipeline li:not(:last-child)::after{padding:0 12px}.code-visual pre{font-size:14px}.source-line{flex-basis:48px}}
@media(max-width:760px){.showcase{padding:30px 20px}.intro{margin-bottom:23px}h1{font-size:34px}.descriptor{font-size:17px}.stack{font-size:13px}.pipeline{padding:18px 0}.pipeline ol{display:block}.pipeline li,.pipeline li:last-child{display:inline;font-size:14px;line-height:2.1;white-space:normal}.pipeline li:not(:last-child)::after{display:inline;font-size:17px;margin:0;padding:0 10px}.step{display:block;padding:36px 0}.step-copy,.step--wide .step-copy{display:block;margin-bottom:19px}.caption,.step--wide .caption{margin-top:9px;font-size:15px}.code-visual pre{font-size:14px}.code-line{min-height:22.4px}.source-line{flex-basis:50px}.provider-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px}.provider-label{font-size:14px}.evidence--state{max-width:604px;margin-top:20px}.evidence--allocation{margin-top:22px}.website-link{font-size:14px}}
@media print{.showcase{max-width:none;padding:0}.step{break-inside:avoid}.code-visual{overflow:visible}.code-visual pre{font-size:8px}.source-line{font-size:7px}.pipeline li{font-size:10px}.step--reporting{break-before:page}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

@media(max-width:480px){.provider-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.provider-mark--yahoo{font-size:19px}.provider-mark--manual{font-size:17px}}
