.evidence-link{display:block;text-decoration:none;color:inherit}.evidence-link:focus-visible{outline-offset:8px}.evidence-link .brief-paper,.evidence-link .canvas-diagram{transition:transform .45s ease,box-shadow .45s ease}.evidence-link:hover .brief-paper,.evidence-link:focus-visible .brief-paper{transform:perspective(1e3px)rotateY(-2deg)translateY(-3px);box-shadow:8px 12px 30px #1726380d}.evidence-link:hover .canvas-diagram,.evidence-link:focus-visible .canvas-diagram{box-shadow:0 14px 30px #17678112}.sync-connection{position:relative}.sync-connection>.sync-packet{position:absolute;left:calc(50% - 11px);top:12px;font-size:25px;color:#176781;opacity:0;pointer-events:none}.evidence-link:hover .sync-packet,.evidence-link:focus-visible .sync-packet,.canvas-evidence:hover .sync-packet{animation:course-arrival 2.6s ease-in-out infinite}.evidence-link:hover .folder-content>div:first-child,.evidence-link:focus-visible .folder-content>div:first-child{animation:course-received 2.6s ease-in-out infinite}@keyframes course-arrival{0%,8%{opacity:0;transform:translateY(-19px)scale(.7)}25%{opacity:1}70%{opacity:1;transform:translateY(72px)scale(.8)}85%,100%{opacity:0;transform:translateY(89px)scale(.6)}}@keyframes course-received{0%,60%,100%{background:0 0}78%{background:#d4e8f2}}.system-layer>.layer-art{position:absolute;left:auto;right:19px;top:14px;bottom:auto;width:125px;height:73px;transform:translateZ(17px);color:inherit;opacity:1}.layer-art svg{display:block;width:100%;height:100%;overflow:visible}.system-layer[aria-pressed=true] .art-check{stroke-dasharray:230;stroke-dashoffset:230;animation:review-line .9s ease forwards}.system-layer:hover .art-doc{animation:document-lift 1.1s ease}.system-layer[aria-pressed=true] .art-flow{animation:data-flow 1.2s ease 2}@keyframes review-line{to{stroke-dashoffset:0}}@keyframes document-lift{50%{transform:translateY(-4px)}}@keyframes data-flow{50%{opacity:.25}}.replay-chart{position:relative;background:#fff;color:#203650;border:1px solid #d9e1ed;padding:15px 12px 10px;min-width:0}.replay-top,.replay-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;line-height:1.4}.replay-top{padding:0 9px 10px;color:#506580}.replay-top button{border:0;background:0 0;font:inherit;color:#194e98;cursor:pointer;padding:3px 0}.replay-key{display:inline-block;width:8px;height:8px;margin:0 5px 0 12px}.replay-key:first-child{margin-left:0}.bot-key{background:#194e98}.market-key{background:#84909f}.replay-plot{display:block;width:100%;height:auto;overflow:visible}.replay-plot .replay-grid{stroke:#e0e6ef;stroke-width:1}.replay-axis{fill:#506580;font:12px var(--body)}.replay-benchmark{fill:none;stroke:#8995a4;stroke-width:1.8;stroke-linejoin:round}.replay-bot{fill:none;stroke-width:2.6;stroke-linecap:round}.replay-dot{stroke:#fff;stroke-width:2}.replay-meta{padding:3px 9px 0;font-variant-numeric:tabular-nums}.replay-meta time{color:#596d86}.replay-fallback{width:100%;height:auto}.replay-compact{height:100%;display:flex;flex-direction:column;padding:13px 9px 10px;border:0}.replay-compact .replay-top,.replay-compact .replay-meta{font-size:10px}.replay-compact .replay-plot{flex:1;min-height:0}.replay-compact .replay-axis{font-size:14px}.replay-compact .replay-meta{gap:5px}.cover-trading .replay-fallback{object-fit:contain;height:80%}.trading-evidence>.replay-chart{border-top:0}.newsletter-page .mkt-spark svg{width:75%!important;margin-inline:auto}.report-reader{margin:30px 0}.report-reader iframe{height:850px;width:100%;border:1px solid #cbd8e7;background:#fff}.report-reader>p{font-size:14px;color:var(--muted);margin-top:14px}.paper-flight{margin:38px 0;background:#f0f3f9;border:1px solid #dce4ed;padding:22px}.paper-flight>img{width:100%;height:auto;max-width:600px;margin:auto}.paper-flight-footer{display:flex;flex-wrap:wrap;align-items:center;gap:15px 24px;border-top:1px solid #d6e0ed;padding-top:19px;margin-top:18px}.paper-flight-footer figcaption{flex:1 1 100%;font-size:16px;color:var(--ink);margin:0}.paper-flight-footer button{background:var(--accent);color:#fff;border:0;border-radius:2px;padding:8px 14px;font-size:14px}.paper-flight-footer a{font-size:14px}@media(prefers-reduced-motion:reduce){.sync-packet,.folder-content>div,.art-check,.art-doc,.art-flow{animation:none!important}.evidence-link .brief-paper,.evidence-link .canvas-diagram{transition:none}.evidence-link:hover .brief-paper,.evidence-link:focus-visible .brief-paper{transform:none}}.bot-key{background:linear-gradient(90deg,#b03943 50%,#21734b 50%)}@media(prefers-reduced-motion:reduce){.art-check{stroke-dashoffset:0!important}}.pdf-toolbar{display:flex;align-items:center;gap:15px;background:#e9eff8;padding:14px 18px;font-size:14px;border:1px solid #cbd8e7}.pdf-toolbar>strong{margin-right:auto;font-weight:500}.pdf-toolbar label{display:flex;align-items:center;gap:9px}.pdf-toolbar select{min-width:65px;padding:4px 7px;background:#fff;color:var(--ink);border:1px solid #b4c8e0;font-size:14px}.pdf-scroller{height:850px;overflow:auto;overscroll-behavior:contain;background:#dce3ec;padding:20px;position:relative;border:1px solid #cbd8e7;border-top:0}.pdf-page{position:relative;background:#fff;margin:0 0 22px;box-shadow:0 2px 9px #1b2d471a;overflow:hidden}.pdf-page:last-child{margin-bottom:0}.pdf-page canvas{display:block}.pdf-page-text{padding:8px 14px;border-top:1px solid #e1e7ee;font-size:12px}.pdf-page-text summary{cursor:pointer;color:#4a6180}.pdf-page-text p{font-size:14px;white-space:pre-wrap;margin:14px 0;line-height:1.65}.tile-image:hover .cover-folders>span:nth-child(1),.tile-image:focus-visible .cover-folders>span:nth-child(1){animation:folder-source 2.6s ease-in-out infinite}.tile-image:hover .cover-folders>span:nth-child(2),.tile-image:focus-visible .cover-folders>span:nth-child(2){animation:folder-organise 2.6s ease-in-out infinite}@keyframes folder-source{0%,100%{transform:translate3d(0,0,0)}40%{transform:translate3d(-8px,-12px,12px)}}@keyframes folder-organise{0%,100%{transform:translate3d(10px,-15px,35px)}60%{transform:translate3d(14px,-30px,52px)}}@media(prefers-reduced-motion:reduce){.cover-folders>span{animation:none!important}}