:root{--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(60, 38, 20, .08);--shadow-md: 0 8px 28px rgba(60, 38, 20, .12);--tx: .18s cubic-bezier(.4, 0, .2, 1);--font-body: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif: "Newsreader", "Fraunces", Georgia, "Times New Roman", serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-family:var(--font-body);font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=light]{color-scheme:light;--bg: #f7f2e9;--bg-alt: #ede5d4;--bg-elevated: #fefcf7;--panel: #fefcf7;--panel-2: #f3ecdc;--border: rgba(60, 38, 20, .1);--border-strong: rgba(60, 38, 20, .2);--rule: #2a1a0e;--text: #22150c;--text-strong: #11080a;--muted: #5a4530;--muted-2: #8a7560;--accent: #6b4423;--accent-2: #3d2410;--accent-soft: #e9dec8;--accent-bg: rgba(107, 68, 35, .1);--gold: #b08a45;--positive: #4a7c54;--positive-bg: #dfe6da;--negative: #b8543d;--negative-bg: #f0dccf;--warning: #b08a45;--warning-bg: rgba(176, 138, 69, .12);--grid: rgba(60, 38, 20, .1);--hero-grad: none}[data-theme=dark]{color-scheme:dark;--bg: #161210;--bg-alt: #1f1a15;--bg-elevated: #221d18;--panel: #221d18;--panel-2: #2a231d;--border: rgba(247, 242, 233, .08);--border-strong: rgba(247, 242, 233, .18);--rule: #f7f2e9;--text: #f7f2e9;--text-strong: #ffffff;--muted: #c4b39a;--muted-2: #8a7560;--accent: #c79866;--accent-2: #e3b884;--accent-soft: #3a2d1e;--accent-bg: rgba(199, 152, 102, .14);--gold: #d6ad6b;--positive: #7eaf86;--positive-bg: #1f2920;--negative: #d68768;--negative-bg: #33231b;--warning: #d6ad6b;--warning-bg: rgba(214, 173, 107, .14);--grid: rgba(247, 242, 233, .08);--hero-grad: none}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:var(--bg);color:var(--text);transition:background var(--tx),color var(--tx)}body{background:var(--bg);font-family:var(--font-body)}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--tx)}a:hover{border-bottom-color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.row-tight{display:flex;gap:6px;align-items:center}.muted{color:var(--muted)}.muted-2{color:var(--muted-2)}.small{font-size:12.5px}.tabular{font-variant-numeric:tabular-nums}.serif{font-family:var(--font-serif);font-weight:500;letter-spacing:-.015em}.mono{font-family:var(--font-mono)}.overline{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.overline-mute{font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px 24px;transition:background var(--tx),border-color var(--tx)}.panel-flush{padding:0;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:flex-end;padding:16px 24px 12px;border-bottom:2px solid var(--rule);font-family:var(--font-serif);font-size:22px;font-weight:500;letter-spacing:-.02em;color:var(--text)}.panel-head .overline{display:block;margin-bottom:4px}.panel-body{padding:22px 24px}.panel-tight{padding:14px}.btn{border:1px solid var(--border);background:var(--panel);color:var(--text);padding:8px 16px;border-radius:var(--radius-md);font-family:var(--font-body);font-size:13.5px;font-weight:500;transition:border-color var(--tx),background var(--tx),transform var(--tx)}.btn:hover{border-color:var(--border-strong);background:var(--panel-2)}.btn:active{transform:translateY(1px)}.btn-primary{border-color:var(--accent-2);background:var(--accent-2);color:var(--bg-elevated)}.btn-primary:hover{background:var(--accent);border-color:var(--accent)}.btn-ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn-ghost:hover{background:var(--panel-2);color:var(--text);border-color:var(--border)}.btn-danger{border-color:var(--negative);color:var(--negative);background:transparent}.btn-danger:hover{background:var(--negative-bg)}.btn-sm{padding:5px 12px;font-size:12.5px;border-radius:var(--radius-sm)}.btn:disabled{opacity:.55;cursor:not-allowed}.input{background:var(--panel);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:var(--radius-md);min-width:140px;font-family:var(--font-body);transition:border-color var(--tx),box-shadow var(--tx)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.input-sm{padding:5px 10px;font-size:12.5px;min-width:80px}textarea.input{font-family:var(--font-mono);font-size:13px;line-height:1.5}label.field{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.tabs{display:flex;gap:0;flex-wrap:wrap;background:transparent;padding:0;border-radius:0;border:none;width:fit-content}.tab{padding:8px 16px 10px;border-radius:0;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.01em;transition:color var(--tx),border-color var(--tx)}.tab:hover{color:var(--text)}.tab[data-active=true]{color:var(--text);font-weight:600;border-bottom-color:var(--accent)}.range-tabs{display:flex;gap:14px;font-family:var(--font-mono);font-size:12px;color:var(--muted-2)}.range-tabs button{padding:0 0 3px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted-2);font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.04em}.range-tabs button[data-active=true]{color:var(--text);font-weight:700;border-bottom-color:var(--accent)}.table{width:100%;border-collapse:collapse;font-size:13.5px;font-family:var(--font-body)}.table th,.table td{border-bottom:1px solid var(--border);padding:12px 14px;text-align:left}.table th{font-weight:600;color:var(--muted-2);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;background:transparent}.table tbody tr:hover{background:var(--panel-2)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table .symbol{font-family:var(--font-serif);font-size:15px;font-weight:500;letter-spacing:-.01em;color:var(--text-strong)}.table .value-serif{font-family:var(--font-serif);font-size:15px;font-weight:500;letter-spacing:-.01em}.banner{display:flex;gap:10px;padding:12px 16px;background:var(--accent-bg);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md);font-size:13px;color:var(--text)}.banner-warn{background:var(--warning-bg);border-left-color:var(--warning)}.banner-error{background:var(--negative-bg);border-left-color:var(--negative)}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:3px;font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;background:transparent;border:1px solid var(--border);color:var(--muted)}.pill-pos{background:var(--positive-bg);color:var(--positive);border-color:transparent}.pill-neg{background:var(--negative-bg);color:var(--negative);border-color:transparent}.pill-accent{background:var(--accent-bg);color:var(--accent);border-color:transparent}.delta-pos{color:var(--positive)}.delta-neg{color:var(--negative)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--panel);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden}.kpi{display:flex;flex-direction:column;gap:8px;padding:18px 22px;border-right:1px solid var(--border);background:transparent;transition:background var(--tx)}.kpi:last-child{border-right:none}.kpi-label{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted-2)}.kpi-value{font-family:var(--font-serif);font-size:30px;font-weight:400;color:var(--text-strong);font-variant-numeric:tabular-nums;letter-spacing:-.025em;line-height:1.05}.kpi-value.delta-pos{color:var(--positive)}.kpi-value.delta-neg{color:var(--negative)}.kpi-sub{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 44px;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:10;gap:16px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:28px;height:28px;border-radius:6px;background:var(--accent-2);display:grid;place-items:center;color:var(--bg-elevated);font-family:var(--font-serif);font-weight:600;font-style:italic;font-size:16px}.brand-name{font-family:var(--font-serif);font-size:19px;font-weight:500;letter-spacing:-.015em;color:var(--text-strong)}.brand-name em{font-style:italic;color:var(--gold)}.shell{display:grid;grid-template-columns:260px 1fr;gap:28px;padding:28px 44px 64px;max-width:1480px;margin:0 auto}@media(max-width:920px){.shell{grid-template-columns:1fr;padding:20px 22px 48px;gap:20px}.topbar{padding:12px 22px}}.sidebar{position:sticky;top:78px;align-self:start}.portfolio-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;text-align:left;transition:background var(--tx),border-color var(--tx)}.portfolio-row:hover{background:var(--panel-2)}.portfolio-row[data-active=true]{background:var(--accent-bg);border-color:transparent;border-left:2px solid var(--accent);padding-left:12px;border-radius:0}.portfolio-row strong{font-family:var(--font-serif);color:var(--text-strong);font-size:15px;font-weight:500;letter-spacing:-.01em}.masthead{padding:32px 44px 24px;border-bottom:1px solid var(--border);max-width:1480px;margin:0 auto;width:100%}.masthead-top{display:flex;align-items:center;gap:16px;margin-bottom:14px}.masthead-top .rule-line{height:1px;flex:0 0 36px;background:var(--border-strong)}.masthead-issue{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.masthead-date{font-size:11.5px;color:var(--muted-2);font-family:var(--font-mono)}.masthead h1{font-family:var(--font-serif);font-size:44px;font-weight:400;margin:0;letter-spacing:-.025em;line-height:1.05;color:var(--text-strong)}.masthead h1 em{font-style:italic;color:var(--accent)}.masthead-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:flex-end}.masthead-blurb{font-family:var(--font-serif);font-size:14px;line-height:1.65;color:var(--muted);margin:0;max-width:380px}@media(max-width:920px){.masthead{padding:22px 22px 18px}.masthead h1{font-size:30px}.masthead-grid{grid-template-columns:1fr;gap:16px}}.section-head{padding-bottom:10px;border-bottom:2px solid var(--rule);margin-bottom:18px;display:flex;justify-content:space-between;align-items:flex-end}.section-head h2{font-family:var(--font-serif);font-size:26px;font-weight:500;margin:4px 0 0;letter-spacing:-.02em;color:var(--text-strong)}.icon-btn{width:36px;height:36px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--panel);display:grid;place-items:center;color:var(--text);transition:background var(--tx),border-color var(--tx)}.icon-btn:hover{border-color:var(--border-strong);background:var(--panel-2);color:var(--text-strong)}.divider{height:1px;background:var(--border);margin:6px 0}.rule-bar{height:2px;background:var(--rule);margin:8px 0 14px}.dot{width:8px;height:8px;border-radius:2px;display:inline-block}.heatmap-cell{padding:8px 10px;text-align:center;font-variant-numeric:tabular-nums;font-size:12.5px;border-radius:2px;font-family:var(--font-serif)}.alloc-grid{display:grid;grid-template-columns:300px 1fr;gap:28px}@media(max-width:820px){.alloc-grid{grid-template-columns:1fr}}.section-title{display:flex;align-items:center;gap:10px;margin:4px 0 0;font-family:var(--font-serif);font-size:18px;font-weight:500;color:var(--text-strong);letter-spacing:-.015em}.section-title .pill{font-size:10px}.hero-number{font-family:var(--font-serif);font-size:56px;font-weight:400;letter-spacing:-.035em;line-height:1;color:var(--text-strong);font-variant-numeric:tabular-nums}.hero-number .ccy{color:var(--muted-2)}.hero-number .cents{color:var(--muted-2);font-style:italic}.recharts-cartesian-axis-tick-value{fill:var(--muted)!important;font-family:var(--font-mono)!important;font-size:11px!important}.recharts-default-tooltip{background:var(--panel)!important;border-color:var(--border-strong)!important;border-radius:var(--radius-md)!important;font-family:var(--font-body)!important}.recharts-cartesian-grid line{stroke:var(--grid)!important}
