:root{--paper: #edf1ee;--paper-2: #e2e8e4;--ink: #10202b;--ink-soft: #46586a;--line: #c9d3cd;--brass: #a87518;--teal: #17595a;--panel: #10202b;--panel-ink: #edf1ee;--panel-soft: #9fb2bd;--up: #b8412f;--down: #2d7a55;--font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body: "Instrument Sans", "Segoe UI", system-ui, sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #0d1a21;--paper-2: #14242d;--ink: #e6edea;--ink-soft: #9db0ba;--line: #26383f;--brass: #dba847;--teal: #6cc0b9;--panel: #e6edea;--panel-ink: #0d1a21;--panel-soft: #46586a;--up: #ef8a78;--down: #6fcf9f}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:1.0625rem/1.6 var(--font-body)}a{color:var(--teal);text-underline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--brass);outline-offset:2px}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:10}.site-head{border-bottom:1px solid var(--line)}.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;padding-bottom:16px;flex-wrap:wrap}.logo{font-family:var(--font-display);font-weight:800;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:10px}.logo svg{width:26px;height:26px;color:var(--brass)}.site-head nav{display:flex;flex-wrap:wrap;gap:4px 20px}.site-head nav a{white-space:nowrap}@media(max-width:520px){.site-head .wrap{gap:8px}.site-head nav{gap:2px 14px;width:100%}.site-head nav a{font-size:.92rem;padding:6px 0}}.site-head nav a{color:var(--ink);text-decoration:none;font-weight:500;padding:4px 0;border-bottom:2px solid transparent}.site-head nav a:hover,.site-head nav a[aria-current=page]{border-bottom-color:var(--brass)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.08;margin:0}h1{font-size:clamp(2.4rem,6vw,4.4rem);font-weight:800;font-stretch:85%;font-variation-settings:"wdth" 85}h2{font-size:clamp(1.6rem,3.2vw,2.2rem);font-weight:700}h3{font-size:1.15rem;font-weight:700}.lede{font-size:1.2rem;color:var(--ink-soft);max-width:34rem;margin:18px 0 0}.num{font-variant-numeric:tabular-nums}.muted{color:var(--ink-soft)}.small{font-size:.875rem}.sample-banner{background:var(--brass);color:#fff;text-align:center;padding:8px 16px;font-weight:600;font-size:.9rem}.hero{display:grid;gap:40px;grid-template-columns:1fr;padding:56px 0 64px;align-items:center}@media(min-width:900px){.hero{grid-template-columns:1.1fr .9fr;gap:56px;padding:80px 0 88px}}.hero-copy .actions{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;padding:12px 20px;border-radius:6px;text-decoration:none;border:2px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;font:inherit;font-weight:600}.btn.primary{background:var(--ink);color:var(--paper)}.btn:hover{border-color:var(--brass)}.panel{background:var(--panel);color:var(--panel-ink);border-radius:10px;padding:28px}.panel label{display:block;font-size:.9rem;color:var(--panel-soft);margin-bottom:6px}.panel input[type=text],.panel input[type=number]{width:100%;font:inherit;font-size:1.25rem;padding:8px 0;background:transparent;color:var(--panel-ink);border:0;border-bottom:2px solid var(--panel-soft)}.panel input[type=range]{width:100%;accent-color:var(--brass);margin:8px 0 4px}.panel .row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:22px}.panel .rate-line{display:flex;justify-content:space-between;align-items:baseline}.panel .rate-val{font-family:var(--font-display);font-size:1.6rem;font-weight:700}.pay{margin-top:26px;border-top:1px solid var(--panel-soft);padding-top:20px}.pay .amount{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,3.6rem);font-weight:800;line-height:1;letter-spacing:-.03em}.pay .delta{margin-top:10px;color:var(--panel-soft);font-size:.95rem}.pay .delta strong{color:var(--panel-ink)}section.block{padding:56px 0;border-top:1px solid var(--line)}.block-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:28px}.band{display:grid;grid-template-columns:1fr}@media(min-width:800px){.band{grid-template-columns:repeat(3,1fr)}.band .read+.read{border-left:1px solid var(--line);padding-left:32px}.band .read{padding-right:32px}}.read{padding:20px 0;border-top:1px solid var(--line)}@media(min-width:800px){.read{border-top:0;padding:4px 0}}.read .name{color:var(--ink-soft);font-size:.95rem}.read .value{font-family:var(--font-display);font-weight:800;font-size:2.8rem;letter-spacing:-.03em;line-height:1.1;margin:4px 0}.read .value span{font-size:1.4rem;font-weight:600;margin-left:2px}.read .meta{font-size:.875rem;color:var(--ink-soft)}.chg.up{color:var(--up)}.chg.down{color:var(--down)}.spark{width:100%;height:64px;margin-top:12px;display:block}.spark path{fill:none;stroke:var(--teal);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.spark circle{fill:var(--brass)}.rows{border-top:2px solid var(--ink)}.rows .item{display:grid;grid-template-columns:1fr;gap:4px 24px;padding:20px 0;border-bottom:1px solid var(--line);align-items:baseline}@media(min-width:760px){.rows .item{grid-template-columns:17rem 1fr auto}}.rows .item h3 a{color:var(--ink);text-decoration:none}.rows .item h3 a:hover{color:var(--teal);text-decoration:underline}.rows .item{position:relative;transition:background .15s}.rows .item:hover,.rows .item:focus-within{background:var(--paper-2)}.rows .item h3 a:after{content:"";position:absolute;inset:0}.rows .item h3 a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}.rows .item .meta{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.rows .item .open{pointer-events:none;display:inline-block;background:var(--teal);color:var(--paper);font-weight:700;font-size:.95rem;line-height:1.3;padding:9px 16px;border-radius:999px;box-shadow:0 1px #00000026;transition:transform .15s,box-shadow .15s}.rows .item:hover .open,.rows .item:focus-within .open{transform:translate(3px);box-shadow:0 3px 10px #00000040}.tag{justify-self:start;font-size:.85rem;padding:2px 10px;border:1px solid var(--line);color:var(--ink-soft);white-space:normal;border-radius:14px}.tag.live{border-color:var(--teal);color:var(--teal)}.cols{display:grid;gap:32px;grid-template-columns:1fr}@media(min-width:800px){.cols{grid-template-columns:1fr 1fr 1fr}}.cols p{margin:8px 0 0;color:var(--ink-soft)}.form-grid{display:grid;gap:20px 24px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));padding:24px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--line)}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.92rem;color:var(--ink-soft)}.form-grid input,.form-grid select{font:inherit;font-size:1.1rem;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper-2);color:var(--ink)}.results{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:32px}.result{border-top:4px solid var(--brass);padding-top:14px}.result.stretch{border-top-color:var(--teal)}.result .big{font-family:var(--font-display);font-size:3rem;font-weight:800;letter-spacing:-.03em;line-height:1.1}.result table{width:100%;border-collapse:collapse;margin-top:12px}.result td{padding:6px 0;border-bottom:1px solid var(--line)}.result td:last-child{text-align:right;font-variant-numeric:tabular-nums}.result tr.total td{font-weight:700;border-bottom:2px solid var(--ink)}.chart{position:relative;margin-top:8px}.chart svg{width:100%;height:auto;display:block;touch-action:pan-y}.chart .grid{stroke:var(--line);stroke-width:1}.chart .line{fill:none;stroke:var(--teal);stroke-width:2.5;stroke-linejoin:round}.chart .dot{fill:var(--brass);stroke:var(--paper);stroke-width:2}.chart .readout{position:absolute;top:0;left:0;font-size:.9rem;background:var(--ink);color:var(--paper);padding:4px 10px;pointer-events:none;opacity:0;white-space:normal;border-radius:14px}.chart-block{padding:28px 0;border-top:1px solid var(--line)}.chart-block .top{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}.empty{border:2px dashed var(--line);border-radius:10px;padding:32px}.site-foot{margin-top:24px;border-top:2px solid var(--ink);padding:28px 0 48px;font-size:.875rem;color:var(--ink-soft)}.site-foot p{margin:6px 0;max-width:60rem}.site-foot strong{color:var(--ink)}@media(prefers-reduced-motion:no-preference){.hero-copy h1{animation:rise .7s ease-out both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}.howupdate{display:grid;gap:20px 32px;grid-template-columns:1fr;margin-top:28px;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper-2)}@media(min-width:800px){.howupdate{grid-template-columns:1fr 1fr}}.howupdate h3{font-size:1.05rem;margin-bottom:6px}.howupdate p{margin:0;color:var(--ink-soft);font-size:.95rem}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}.dash{margin-top:28px}.dash .headline{background:var(--panel);color:var(--panel-ink);border-radius:14px;padding:22px 24px}.dash .headline .small{color:var(--panel-soft)}.dash .headline .big{font-family:var(--font-display);font-size:clamp(2.2rem,6vw,3.4rem);font-weight:800;letter-spacing:-.03em;line-height:1.1}.dash .headline p{margin:6px 0 0;color:var(--panel-soft)}.dash .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:12px}.dash .kpi{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--paper-2)}.dash .kpi .k{font-size:.85rem;color:var(--ink-soft)}.dash .kpi .v{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.dash .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px;margin-top:16px}.dash .viz{margin:0;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--paper-2);min-width:0}.dash .viz.table,.dash .viz.lines{grid-column:1 / -1}.dash figcaption{font-weight:600;margin-bottom:10px}.dash svg{width:100%;height:auto;display:block}.dash .donut .dwrap{display:grid;grid-template-columns:minmax(140px,220px) 1fr;gap:16px;align-items:center}@media(max-width:520px){.dash .donut .dwrap{grid-template-columns:1fr}.dash .donut svg{max-width:240px;margin:0 auto}}.dash .dl{font-size:12px;fill:var(--ink-soft)}.dash .dv{font-size:19px;font-weight:700;fill:var(--ink);font-family:var(--font-display)}.dash .grid-line,.dash line.grid{stroke:var(--line);stroke-width:1}.dash .ax{font-size:11px;fill:var(--ink-soft)}.dash .legend{list-style:none;margin:0;padding:0;font-size:.95rem}.dash .legend li{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--line)}.dash .legend .ln{flex:1}.dash .legend .lv{font-variant-numeric:tabular-nums;font-weight:600}.dash .legend .lp{width:3rem;text-align:right;color:var(--ink-soft);font-variant-numeric:tabular-nums}.dash .legend.inline{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px}.dash .legend.inline li{border:0}.dash .sw{width:12px;height:12px;border-radius:3px;flex:none;display:inline-block}.dash .scroll{max-height:420px;overflow:auto;border-radius:8px}.dash table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.dash th{position:sticky;top:0;background:var(--paper-2);text-align:left;font-size:.85rem;color:var(--ink-soft);padding:8px 6px;border-bottom:2px solid var(--ink)}.dash td{padding:7px 6px;border-bottom:1px solid var(--line)}.dash .r{text-align:right}.dash .detail{max-width:640px;margin-top:16px}.dash .detail table td:last-child{text-align:right}.dash .detail tr.total td{font-weight:700;border-bottom:2px solid var(--ink)}@media print{.site-head,.form-grid,.toolbar,.skip{display:none!important}.dash .scroll{max-height:none}}.dailyidx{margin:20px 0 0;padding:18px 20px;border:1px solid var(--line);border-left:4px solid var(--accent, #a87518);border-radius:10px;display:grid;gap:2px;max-width:34rem}.dailyidx .name{font-weight:600}.dailyidx .value{font-size:2.4rem;font-weight:700;line-height:1.1}.dailyidx .value span{font-size:1.2rem}.dailyidx .spark{width:100%;height:48px;margin-top:8px;fill:none;stroke:currentColor;stroke-width:2}
