/* Travel FX Data: neutral report styling. White page, one accent, no decoration. */
:root{color-scheme:light;
 --bg:#fff;--ink:#1b1b1f;--muted:#5f5f6b;--line:#e4e4ea;--panel:#f6f6f9;--surface:#fff;
 --accent:#2F057B;--brand-ink:#2F057B;--coral:#C82F5D;--blue:#2455F8;--lilac:#8F45C9;--grid:#ececf1;--good:#2F057B;--bad:#C82F5D;
 --font:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:16px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
 padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
a{color:var(--accent)} a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.site{border-bottom:1px solid var(--line);margin:0 calc(-1*max(16px,env(safe-area-inset-left,0px)));padding:14px max(16px,env(safe-area-inset-left,0px))}
.site .in{max-width:1120px;margin:0 auto;display:flex;align-items:center}
.site .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.site .brand span{font-size:18px;font-weight:400;padding-left:12px;border-left:1px solid var(--line);line-height:26px}
.site img{height:26px;width:auto;display:block}
.site a.series{font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;letter-spacing:.02em}
.site a.series b{color:var(--ink)}
.page{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:48px;padding-top:32px}
.toc{position:sticky;top:20px;align-self:start;font-size:13px;max-height:calc(100vh - 40px);overflow:auto;padding-bottom:20px}
.toc h2{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-weight:700}
.toc a{display:block;color:var(--ink);text-decoration:none;padding:5px 0 5px 10px;border-left:2px solid var(--line);line-height:1.35}
.toc a:hover{border-left-color:var(--accent);color:var(--accent)}
main{min-width:0;max-width:780px}
.label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 10px}
h1{font-size:clamp(30px,4.6vw,44px);line-height:1.12;font-weight:750;letter-spacing:-.015em;margin:0 0 12px;text-wrap:balance}
.sub{font-size:19px;color:var(--muted);line-height:1.5;margin:0 0 16px;max-width:38em}
.meta{font-size:13px;color:var(--muted);margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.meta span+span::before{content:"·";margin:0 8px}
.draftnote{font-size:13px;background:#fff8e6;border:1px solid #f0d58a;border-radius:6px;padding:8px 12px;margin:0 0 18px;color:#5a4400}
h2{font-size:24px;line-height:1.25;font-weight:700;letter-spacing:-.01em;margin:0 0 12px;text-wrap:balance}
h3{font-size:15px;margin:0 0 4px}
section{padding:30px 0 6px;border-top:1px solid var(--line);margin-top:30px}
section.first{border-top:0;margin-top:0;padding-top:6px}
p{margin:0 0 14px}
ul{padding-left:22px} li{margin-bottom:6px}
section>p>strong:only-child{display:block;margin-top:12px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 8px;border-top:1px solid var(--ink)}
.stat{padding:14px 14px 12px 0;min-width:0}
.stat+.stat{padding-left:14px;border-left:1px solid var(--line)}
.stat .n{font-size:clamp(26px,3.4vw,34px);font-weight:750;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat .l{font-size:13px;color:var(--ink);margin-top:6px;line-height:1.4}
.stat .s{font-size:11px;color:var(--muted);margin-top:6px}
.cite{border:1px solid var(--line);border-radius:6px;padding:14px 16px;margin:18px 0;font-size:14px;background:var(--panel)}
.cite p{margin:0 0 8px} .cite p:last-child{margin:0}
.cite .btn,.cite button{font:inherit;font-size:13px;font-weight:600;border:1px solid var(--line);background:#fff;border-radius:6px;padding:5px 12px;cursor:pointer;color:var(--ink);text-decoration:none;display:inline-block;margin-right:6px}
.cite button:hover,.cite .btn:hover{border-color:var(--accent);color:var(--accent)}
.base{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}
.base div{background:var(--panel);border-radius:6px;padding:12px 14px;font-size:14px}
.base b{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.scroll{overflow-x:auto;margin:6px 0 16px}
table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
th,td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700;border-bottom:1px solid var(--ink);vertical-align:bottom;white-space:normal;text-align:right}
th:first-child,td:first-child{text-align:left;padding-left:0}
td.n{text-align:right;white-space:nowrap} td.t{text-align:left;min-width:110px}
td.up{color:var(--good);font-weight:650} td.down{color:var(--bad);font-weight:650}
p.src{font-size:12px;color:var(--muted);margin:6px 0 18px;max-width:none}
.fig{margin:22px 0 12px;padding:0}
.fig h3{font-size:15px;margin-bottom:2px}
.fig .sub2{font-size:13px;color:var(--muted);margin:0 0 8px}
svg{display:block;width:100%;height:auto;overflow:visible}
svg text{font-family:var(--font);fill:var(--muted);font-size:11px} svg .lab{font-weight:700;font-size:12px}
.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:0 0 8px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px}
.bars .row{display:grid;grid-template-columns:132px 1fr 62px;align-items:center;gap:10px;font-size:13px;padding:3px 0}
.bars .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bars .track{position:relative;height:14px}
.bars .zero{position:absolute;top:-3px;bottom:-3px;width:1px;background:var(--muted);opacity:.6}
.bars .bar{position:absolute;top:2px;height:10px;border-radius:2px}
.bars .bar.up{background:var(--good)} .bars .bar.down{background:var(--bad)}
.bars .val{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.bars .val.up{color:var(--good)} .bars .val.down{color:var(--bad)}
.bars.three .row{grid-template-columns:96px 1fr 62px}
.srcs p{font-size:13px}
footer{border-top:1px solid var(--line);margin-top:40px;padding:20px 0 48px;font-size:12.5px;color:var(--muted)}
.list{border-bottom:0}
.item{display:block;border-top:1px solid var(--line);padding:18px 0;text-decoration:none;color:var(--ink)}
.item h2{font-size:21px;margin:0 0 4px;color:var(--accent)} .item p{margin:0;color:var(--muted);font-size:15px}
summary.tsum{display:none}
@media (max-width:960px){summary.tsum{display:block;font-weight:700;cursor:pointer}.toc[open]>h2{display:none}.page{grid-template-columns:1fr;gap:0}.toc{position:static;max-height:none;margin-bottom:18px;border:1px solid var(--line);border-radius:6px;padding:12px 14px}.toc details{display:block}}
@media (max-width:700px){.stats{grid-template-columns:1fr 1fr}.stat:nth-child(3){padding-left:0;border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}.base{grid-template-columns:1fr}}
@media (max-width:520px){.bars .row{grid-template-columns:104px 1fr 54px}}
@media print{.toc,.site .series,.cite button,.draftnote{display:none}.page{display:block}body{font-size:12pt}section{break-inside:auto}.fig,table{break-inside:avoid}}

p.aside{font-size:13px;color:var(--ink);line-height:1.5;margin:0 0 8px}
.toc p.aside a{display:inline;border:0;padding:0;color:var(--accent);text-decoration:underline}

.item p.date{font-size:13px;margin-top:6px;color:var(--muted)}
