/* Source figures share the home's existing colour and type system. */
.source-figure{min-width:0;margin:0;padding:22px;background:var(--ek-card,#fcfaf6);border:1px solid var(--ek-line);border-radius:3px}
.source-figure h2{margin:0 0 18px;font:700 22px/1.25 var(--ek-serif);color:var(--ek-ink)}
.sf-stocks{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:start}
.sf-observed,.sf-forecast{min-width:0;padding:14px 14px 12px}
.sf-observed{border-left:4px solid #1f4e79;background:#eef2f4}
.sf-forecast{border:1px dashed #627480}
.sf-period{margin:0;font:400 13px/1.45 var(--ek-sans);color:var(--ek-muted)}
.sf-value{margin:9px 0 3px;font:700 clamp(36px,3.3vw,48px)/1.05 var(--ek-serif);color:var(--ek-ink)}
.sf-unit{margin:0;font:400 13px/1.45 var(--ek-sans);color:var(--ek-ink-soft)}
.sf-detail{margin:10px 0 0;font:400 12px/1.45 var(--ek-sans);color:var(--ek-ink-soft)}
.sf-share{margin-top:22px;padding-top:16px;border-top:1px solid var(--ek-line)}
.sf-share-title{display:flex;align-items:baseline;gap:12px;margin:0 0 3px}
.sf-share-title b{font:700 34px/1 var(--ek-serif);color:#1f4e79}
.sf-share-title span{font:700 14px/1.4 var(--ek-sans);color:var(--ek-ink)}
.sf-share svg{display:block;width:100%;height:22px;margin-top:12px}
.sf-scale{display:flex;justify-content:space-between;margin-top:4px;font:400 11px/1.3 var(--ek-sans);color:var(--ek-muted)}
.source-figure figcaption{margin-top:16px;font:400 12px/1.5 var(--ek-sans);color:var(--ek-muted)}
@media(max-width:500px){.source-figure{padding:16px}.source-figure h2{font-size:20px}.sf-stocks{gap:10px;grid-template-columns:1fr 1fr}.sf-observed,.sf-forecast{padding:12px 9px}.sf-period,.sf-unit{font-size:12px}.sf-value{font-size:32px}.sf-share-title{gap:10px}.sf-share-title span{font-size:13px}}
@media(max-width:360px){.source-figure .sf-value{font-size:28px}}
/* These rules affect only homepage share images. */
.sn-hx .source-figure{padding:15px}
.sn-hx .source-figure h2{font-size:19px;margin-bottom:12px}
.sn-hx .sf-stocks{gap:12px}
.sn-hx .sf-observed,.sn-hx .sf-forecast{padding:11px}
.sn-hx .sf-period,.sn-hx .sf-unit{font-size:12px}
.sn-hx .sf-value{font-size:36px}
.sn-hx .sf-detail{font-size:11px;margin-top:7px}
.sn-hx .sf-share{margin-top:14px;padding-top:12px}
.sn-hx .sf-share-title b{font-size:29px}
.sn-hx .sf-share-title span{font-size:12px}
.sn-hx .sf-share svg{height:17px;margin-top:8px}
.sn-hx .source-figure figcaption{font-size:10px;margin-top:10px}
.sn--wide .sn-hx:has(.source-figure){grid-template-columns:1fr 1.15fr}
.sn--wide .sn-hx:has(.source-figure) h1{font-size:29px}
