:root{--color-background: #f7f8f4;--color-surface: #ffffff;--color-text: #16202a;--color-muted: #5c6773;--color-border: #d7dfe5;--color-primary: #0f5c6e;--color-secondary: #6e8a3a;--color-accent: #b55d2d;--color-ink-soft: #56727d;--color-primary-soft: #dcecef;--color-up: #186a41;--color-down: #b2442f;--container: 72rem;--radius: 18px;--shadow: 0 10px 30px rgba(15, 26, 37, .06);--font-sans: Inter, "Source Sans 3", system-ui, sans-serif}*{box-sizing:border-box}html{font-family:var(--font-sans);color:var(--color-text);background:var(--color-background)}body{margin:0}a{color:inherit;text-decoration:none}main{min-height:100vh}.container{width:min(calc(100% - 2rem),var(--container));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;background:#f7f8f4eb;border-bottom:1px solid var(--color-border);backdrop-filter:blur(14px)}.header-inner,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}.brand{display:inline-flex;align-items:center;gap:.75rem;font-weight:700}.brand-mark{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:.6rem;background:var(--color-primary);color:#fff;font-size:.8rem}.site-nav{display:flex;flex-wrap:wrap;gap:1rem;color:var(--color-muted)}.site-footer{border-top:1px solid var(--color-border);color:var(--color-muted);font-size:.95rem}.hero,.page-section,.hero-stat,.dashboard{padding:3rem 0}.hero h1,.prose h1{margin:0;font-size:clamp(2.4rem,4vw,4.6rem);line-height:.95;letter-spacing:-.04em}.hero-copy,.prose p,.section-heading p{max-width:48rem;color:var(--color-muted);font-size:1.05rem;line-height:1.65}.eyebrow{margin:0 0 .75rem;color:var(--color-primary);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-heading{margin-bottom:1.5rem}.section-heading h2{margin:0 0 .5rem;font-size:1.7rem}.theme-grid,.stat-grid,.chart-list{display:grid;gap:1rem}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.theme-tile,.stat-card,.chart-card,.trend-panel{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow)}.theme-tile{display:grid;gap:.7rem;padding:1.4rem}.theme-tile__header,.theme-tile__title{display:flex;align-items:center;justify-content:space-between;gap:.85rem}.theme-tile__title{justify-content:flex-start}.theme-tile__header h2{margin:0;font-size:1.2rem}.theme-tile__value,.hero-stat__value{margin:0;font-size:clamp(2rem,4vw,3.5rem);font-weight:700;letter-spacing:-.04em}.theme-tile__value span{display:block;color:var(--color-muted);font-size:.95rem;font-weight:500;letter-spacing:0}.theme-tile__meta,.theme-tile__trend,.hero-stat__meta,.stat-card span,.chart-source{margin:0;color:var(--color-muted)}.trend{font-size:1.4rem}.trend--up,.trend-panel--up strong{color:var(--color-up)}.trend--down,.trend-panel--down strong{color:var(--color-down)}.hero-stat__inner{display:grid;grid-template-columns:minmax(0,1fr) 16rem;gap:1rem}.trend-panel{padding:1.25rem;background:var(--color-primary-soft)}.trend-panel span,.trend-panel p{margin:0}.trend-panel strong{display:block;margin:.3rem 0;font-size:1.5rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.stat-card,.chart-card{padding:1.25rem}.stat-card p,.stat-card strong{margin:0}.stat-card strong{display:block;margin:.4rem 0;font-size:1.7rem}.chart-card h3{margin-top:0}.chart-card>p{color:var(--color-muted);line-height:1.6}.plot-shell{margin:1rem 0 1.25rem}.plot-frame{min-height:20rem;border-radius:1rem;background:linear-gradient(180deg,#dcecef5c,#fff0);padding:.5rem}.plot-frame svg{width:100%;height:auto;overflow:visible}.icon-mark{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);flex-shrink:0}.icon-mark svg{width:1rem;height:1rem}.chart-source a{color:var(--color-primary)}@media(max-width:48rem){.header-inner,.footer-inner,.hero-stat__inner{flex-direction:column;align-items:flex-start;grid-template-columns:1fr}.site-nav{gap:.75rem}.theme-tile,.stat-card,.chart-card,.trend-panel{border-radius:1rem}.plot-frame{min-height:18rem;padding:.25rem}}
