:root{--ink:#18252d;--muted:#66747d;--faint:#8b979e;--line:#dfe5e7;--paper:#fff;--canvas:#f5f7f7;--teal:#176d68;--teal2:#e8f3f1;--blue:#356a91;--gold:#a16b2a;--red:#a34343;--mono:'DM Mono',monospace;--sans:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font:13px/1.45 var(--sans)}button,select,input{font:inherit}button{cursor:pointer}.layout{min-height:100vh}.rail{position:fixed;inset:0 auto 0 0;width:224px;background:#fff;border-right:1px solid var(--line);padding:22px 16px 15px;display:flex;flex-direction:column;z-index:3}.wordmark{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:700 12px var(--display);letter-spacing:1.35px;margin:0 5px 37px}.wordmark small{font:500 10px var(--mono);letter-spacing:1.3px;color:var(--teal);margin-left:5px}.mark{width:28px;height:28px;border:1px solid #bdcbcd;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:2px}.mark i{display:block;width:3px;border-radius:2px;background:var(--teal)}.mark i:nth-child(1){height:8px}.mark i:nth-child(2){height:14px}.mark i:nth-child(3){height:10px}.rail-caption,.section-label,.kicker,.metric-label{font:500 9px var(--mono);letter-spacing:1px;color:#718087}.rail-caption{padding:0 8px;margin-bottom:10px}.nav{display:grid;gap:3px}.nav-link{display:flex;gap:12px;align-items:center;padding:9px 9px;border-radius:5px;text-decoration:none;color:#53636b;font-size:11px}.nav-link span{font:10px var(--mono);color:#9aa5a9}.nav-link.active{background:#edf4f3;color:#174e4a;font-weight:600}.nav-link.active span{color:var(--teal)}.rail-divider{height:1px;background:var(--line);margin:23px 3px 19px}.select-label{font-size:10px;color:var(--muted);margin:0 8px 6px}.asset-select{background:#fff;color:var(--ink);border:1px solid #cfd9dc;border-radius:5px;padding:9px 8px;font-size:11px;width:100%;outline:none}.asset-select:focus,.top-button:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #4d9b95;outline-offset:2px}.data-source-note{margin:18px 5px 0;display:flex;align-items:center;gap:8px;font-size:10px}.data-source-note b{font-weight:600;color:#34464d;display:block}.data-source-note small{font-size:9px;color:var(--faint);display:block;margin-top:2px}.source-live,.dataset-badge i,.feed-label i{width:7px;height:7px;border-radius:50%;background:#23886c;display:inline-block}.source-live.error{background:#b34c4c}.rail-bottom{margin-top:auto}.privacy-note{font:9px/1.6 var(--mono);color:#89969b;padding:10px 8px 13px}.login-button{display:flex;align-items:center;gap:8px;width:100%;border:1px solid var(--line);background:#fff;border-radius:5px;padding:8px;color:#45555d;font-size:10px}.user-glyph{width:20px;height:20px;border:1px solid #d5dddf;border-radius:50%;display:grid;place-items:center;color:var(--teal)}.login-button small{margin-left:auto;font-size:8px;color:#8c979b}.workspace{margin-left:224px;padding:0 35px 20px;max-width:1700px}.topbar{height:54px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.crumb{font-size:10px;color:#75838a}.crumb span{padding:0 7px;color:#afb9bc}.crumb b{font-weight:600;color:#394a52}.topbar-right{display:flex;align-items:center;gap:14px}.dataset-badge{font:8px var(--mono);letter-spacing:.55px;color:#61726e;display:flex;align-items:center;gap:5px}.dataset-badge i{width:6px;height:6px}.top-button,.outline-button,.small-action{border:1px solid #d6dfe0;background:#fff;border-radius:5px;color:#47565e;padding:6px 9px;font-size:10px}.top-button{display:flex;align-items:center;gap:5px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;padding:23px 0 16px}.kicker{font-size:8px;letter-spacing:1.2px;color:var(--teal)}.kicker span{padding:0 5px;color:#aab6b7}h1{font:650 24px/1.2 var(--display);letter-spacing:-.75px;margin:7px 0 5px}.intro{margin:0;color:#68777d;font-size:11px;max-width:660px}.page-actions{display:flex;gap:7px}.outline-button,.dark-button{padding:8px 11px;font-size:10px}.dark-button{border:1px solid #1e3739;background:#203b3e;border-radius:5px;color:white}.dark-button:hover{background:#2d5555}.notice{display:flex;align-items:center;gap:9px;border:1px solid #d6e4e2;background:#eef5f4;border-radius:5px;padding:8px 10px;color:#435c5b;font-size:9px;line-height:1.45}.notice-icon{width:15px;height:15px;border:1px solid #9bbfba;border-radius:50%;display:grid;place-items:center;font:10px var(--mono);color:var(--teal);flex:none}.notice b{font-weight:700}.notice button{margin-left:auto;border:0;background:none;color:#748985;font-size:16px;line-height:1}.controls-row{display:flex;align-items:center;gap:12px;padding:14px 0 10px}.control-label{font:8px var(--mono);letter-spacing:.8px;color:#748189}.segmented{border:1px solid #d8e0e1;border-radius:5px;padding:2px;display:flex;background:white;gap:1px}.segmented button{border:0;background:transparent;color:#69777d;border-radius:3px;padding:4px 8px;font:9px var(--mono)}.segmented button.chosen{background:#e6f1ef;color:#185954}.sample-meta,.asof{font:9px var(--mono);color:#7c898e}.asof{margin-left:auto}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.metric,.card{background:var(--paper);border:1px solid var(--line);border-radius:6px}.metric{padding:12px 13px;min-height:82px}.metric-label{font-size:8px;letter-spacing:.65px;display:flex;align-items:center;gap:5px}.tip{width:12px;height:12px;display:inline-grid;place-items:center;border:1px solid #c6d0d2;border-radius:50%;font:8px var(--mono);color:#7b8c90;cursor:help}.metric strong{display:block;font:600 21px var(--display);letter-spacing:-.4px;margin:5px 0 0}.metric-sub{font-size:9px;color:#7d898f}.analysis-grid{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(460px,1fr);gap:10px;margin-top:10px}.card{padding:14px 15px}.chart-card,.model-card{min-height:353px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-label{font-size:8px;letter-spacing:.9px;color:#718087}h2{font:650 14px var(--display);letter-spacing:-.25px;margin:4px 0 0}.chart-legend{display:grid;gap:5px;font-size:8px;color:#68767b}.chart-legend span{display:flex;align-items:center;gap:6px}.legend-price{width:10px;height:2px;background:var(--teal)}.legend-par{width:10px;border-top:1px dashed #9ba8ac}.chart-statline{display:flex;align-items:center;gap:10px;margin-top:15px}.chart-statline strong{font:600 12px var(--display)}.chart-statline>span{font:9px var(--mono);color:#89959a}.chart-statline .feed-label{margin-left:auto;color:#718078;display:flex;align-items:center;gap:5px}.feed-label i{width:5px;height:5px}.chart-box{height:200px;margin:3px -2px 0}.chart-box svg{width:100%;height:100%;overflow:visible}.gridline{stroke:#e6ebec;stroke-width:1}.zero-line{stroke:#88989d;stroke-width:1;stroke-dasharray:4 4}.price-line{fill:none;stroke:#176d68;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.price-area{fill:url(#chartFade)}.chart-axis{fill:#8a969b;font:9px var(--mono)}.chart-foot{display:flex;justify-content:space-between;border-top:1px solid #edf0f1;padding-top:8px;color:#829095;font:8px var(--mono)}.small-action{font-size:9px;padding:5px 8px}.equation{border:1px solid #e2e8e9;background:#f8faf9;border-radius:4px;padding:8px 10px;margin:11px 0 5px;font:13px var(--mono);color:#2d5555}.equation sub{font-size:8px}.model-note{margin:0 0 8px;color:#76848a;font-size:9px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font:9px var(--mono);white-space:nowrap}th{text-align:right;color:#718087;font-size:8px;font-weight:500;border-bottom:1px solid #dfe6e7;padding:6px 5px}th:first-child,td:first-child{text-align:left}td{text-align:right;border-bottom:1px solid #edf0f1;padding:7px 5px;color:#31434b}td:first-child{font-family:var(--sans);font-weight:600}.empty-cell{text-align:center!important;color:#8a969b;padding:18px 4px}.fit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:9px 0 7px}.fit-grid div{display:flex;flex-direction:column;gap:3px}.fit-grid span{font-size:8px;color:#829095}.fit-grid b{font:10px var(--mono);color:#34484e}.diagnostic{font-size:9px;color:#596d70;background:#edf4f3;border-left:2px solid #5c9993;padding:6px 8px;min-height:29px}.footnote{font-size:8px;color:#929da1;margin-top:6px}.stress-card{margin-top:10px}.stress-title{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #e8eded;padding-bottom:11px}.stress-title p{font-size:9px;color:#728087;margin:5px 0 0;max-width:690px}.stress-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.6fr);gap:22px;padding-top:12px}.stress-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}.input-row label{display:block;font-size:9px;color:#53646b}.input-row output{display:block;font:10px var(--mono);color:var(--teal);margin:3px 0 6px}.input-row input{width:100%;accent-color:#1c766d;height:4px}.range-ends{display:flex;justify-content:space-between;font:8px var(--mono);color:#9aa4a7;margin-top:2px}.scenario-output{border-left:1px solid #e3e9ea;padding-left:17px}.scenario-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.scenario-kpis div{display:flex;flex-direction:column;gap:4px}.scenario-kpis span{font:7px var(--mono);letter-spacing:.4px;color:#718087}.scenario-kpis b{font:600 14px var(--display)}.scenario-chart{height:105px;margin-top:3px}.scenario-chart svg{height:100%;width:100%}.forecast-line{fill:none;stroke:#176d68;stroke-width:1.8}.forecast-band{fill:#dcebe8;opacity:.85}.shock-line{stroke:#9eb0b2;stroke-dasharray:3 3}.scenario-caption{color:#829095;font-size:8px}.lower-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10px;margin-top:10px}.data-card,.limits-card{min-height:190px}.upload-button{border:1px solid #d4dfe0;background:white;border-radius:4px;padding:5px 8px;font-size:9px;color:#41545b;cursor:pointer}.data-table{display:grid;grid-template-columns:1fr 1fr;column-gap:22px;margin-top:10px}.data-table div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #edf0f1;padding:5px 0}.data-table span{font-size:8px;color:#7d8a8f}.data-table b{font-size:8px;color:#3e5058;font-weight:500;text-align:right}.csv-help{font-size:8px;color:#829095;margin:8px 0 0}.csv-help code{font:8px var(--mono);background:#f0f3f3;padding:2px 4px}.limits-card ul{padding-left:15px;margin:9px 0;color:#617179;font-size:9px}.limits-card li{margin:4px 0}.limits-warning{border-left:2px solid #c28b4b;background:#faf5ed;color:#78592e;padding:6px 8px;font-size:8px;line-height:1.45}.issuer-links{display:flex;gap:13px;margin-top:8px}.issuer-links a{font-size:8px;color:#326f69;text-decoration:none}.literature{margin-top:10px}.literature-note{font:8px var(--mono);color:#839095}.paper-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.paper{position:relative;text-decoration:none;border:1px solid #e0e6e7;border-radius:4px;padding:9px 9px 11px;color:var(--ink);min-height:103px;transition:border-color .15s,transform .15s,box-shadow .15s}.paper:hover{border-color:#90b9b4;transform:translateY(-2px);box-shadow:0 5px 14px #294d4b0d}.paper>span{font:7px var(--mono);letter-spacing:.2px;color:#66827e}.paper b{display:block;font:600 9px/1.35 var(--display);margin:6px 10px 4px 0}.paper small{display:block;color:#78868b;font-size:8px;line-height:1.35}.paper i{position:absolute;right:7px;top:7px;color:#8a9b9c;font-style:normal;font-size:9px}.literature-foot{border-top:1px solid #edf0f1;margin-top:10px;padding-top:7px;color:#879297;font-size:8px}footer{display:flex;justify-content:space-between;gap:10px;padding:15px 1px 0;color:#859196;font:8px var(--mono)}footer b{font-weight:400;color:#5c7076}.toast{position:fixed;bottom:20px;right:20px;z-index:5;padding:10px 14px;background:#213b3e;color:white;border-radius:5px;font-size:10px;opacity:0;transform:translateY(6px);transition:.2s;pointer-events:none;box-shadow:0 5px 20px #1c333322}.toast.show{opacity:1;transform:none}.error-state{color:#9c4242!important}.loading{color:#728087!important}
@media(max-width:1100px){.workspace{padding:0 20px 20px}.rail{width:200px}.workspace{margin-left:200px}.analysis-grid{grid-template-columns:1fr}.chart-card,.model-card{min-height:unset}.chart-box{height:230px}.stress-layout{grid-template-columns:1fr}.scenario-output{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.paper-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.rail{position:static;width:auto;padding:10px 14px;border-right:0;border-bottom:1px solid var(--line)}.wordmark{margin:0;height:27px}.rail-caption,.nav,.rail-divider,.select-label,.asset-select,.data-source-note,.rail-bottom{display:none}.workspace{margin:0;padding:0 12px 18px}.topbar{height:44px}.dataset-badge{display:none}.page-head{display:block;padding:18px 0 12px}h1{font-size:20px}.page-actions{margin-top:10px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.metric{min-height:78px;padding:10px}.metric strong{font-size:18px}.controls-row{gap:7px;flex-wrap:wrap}.sample-meta{flex:1}.asof{width:100%;margin:0}.chart-box{height:190px}.chart-foot{font-size:7px;gap:8px}.fit-grid{grid-template-columns:repeat(2,1fr)}.stress-title{gap:10px}.stress-title .dark-button{flex:none}.stress-inputs{grid-template-columns:1fr 1fr}.scenario-kpis{grid-template-columns:1fr 1fr}.scenario-kpis div:last-child{grid-column:1/-1}.lower-grid{grid-template-columns:1fr}.data-table{column-gap:12px}.paper-grid{grid-template-columns:1fr 1fr}.literature-note{display:none}footer{flex-wrap:wrap}footer span:nth-child(2){order:3;width:100%}}

/* Research-console pass: more legible type, open canvas, restrained references. */
body{font-size:14px;background:#f2f5f5}.rail{background:#fbfcfc}.workspace{max-width:none;padding-left:42px;padding-right:42px}.page-head{padding-top:28px;padding-bottom:20px}h1{font-size:30px}.intro{font-size:13px;max-width:820px}h2{font-size:17px}.section-label,.metric-label{font-size:9px}.metric{padding:15px 16px;min-height:92px}.metric strong{font-size:24px}.metric-sub{font-size:10px}.card{padding:18px 19px}.chart-box{height:240px}.equation{font:16px/1.6 'Cambria Math','STIX Two Math','Times New Roman',serif;letter-spacing:.15px;padding:11px 13px;background:#fbfcfb}.equation sub{font-size:11px}.model-note,.intro,.notice{line-height:1.6}.model-note{font-size:10px}.model-actions{display:flex;align-items:center;gap:7px}.model-actions select{background:white;border:1px solid #d6dfe0;border-radius:5px;color:#47565e;padding:5px 8px;font-size:10px}.table-wrap table,.order-wrap table{font-size:10px}.table-wrap th,.order-wrap th{font-size:9px}.table-wrap td,.order-wrap td{padding:8px 6px}.order-wrap{margin-top:8px;max-height:170px;overflow:auto;border-top:1px solid #e8eded;padding-top:4px}.order-wrap .selected-order{background:#edf4f3;font-weight:600}.order-wrap .selected-order td:first-child{color:#176d68}.fit-grid{padding:11px 0}.fit-grid b{font-size:11px}.diagnostic{font-size:10px;padding:8px 10px}.footnote{font-size:9px;line-height:1.5}.research-note{font-size:11px;line-height:1.65;color:#52656c;margin:12px 0 6px}.apa-references{font-size:10px;line-height:1.65;color:#53636b;padding-left:21px;columns:2;column-gap:34px}.apa-references li{padding:2px 0 6px;break-inside:avoid}.apa-references a{color:#316e69;text-decoration:underline;text-decoration-color:#b5ceca;text-underline-offset:2px}.apa-references a:hover{color:#174e4a}.literature-foot{margin-top:12px;color:#738187;font:9px var(--mono)}.paper-grid{display:none}.stress-title p{font-size:10px}.input-row label{font-size:10px}.scenario-caption{font-size:9px}.data-table span,.data-table b,.csv-help,.limits-card ul,.limits-warning{font-size:9px}.card-head{margin-bottom:2px}@media(max-width:1100px){.workspace{padding-left:22px;padding-right:22px}.apa-references{columns:1}}@media(max-width:700px){body{font-size:13px}.workspace{padding:0 12px 18px}.page-head{padding:18px 0 12px}h1{font-size:23px}.intro{font-size:11px}.card{padding:13px}.chart-box{height:190px}.apa-references{font-size:9px}.model-actions{flex-wrap:wrap;justify-content:flex-end}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.model-page-grid{grid-template-columns:minmax(380px,.9fr) minmax(0,1.4fr)}.field-grid,.hank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.field-grid label,.hank-grid label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#5e6c71}.field-grid input,.field-grid select,.hank-grid input{width:100%;border:1px solid #d8e0e1;border-radius:4px;background:white;padding:7px;color:#31434b;font:10px var(--mono)}.file-select{display:inline-flex;margin:8px 8px 6px 0}.irf-box{height:300px}.hank-card{margin-top:12px}.hank-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.hank-results{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#f5f8f8;padding:12px}.hank-results div{display:flex;flex-direction:column;gap:4px}.hank-results span{font:8px var(--mono);color:#78878c}.hank-results b{font:600 13px var(--display)}.long-forecast{min-width:0}.forecast-box{height:220px}.forecast-box svg{width:100%;height:100%}.long-forecast select{border:1px solid #d6dfe0;background:#fff;border-radius:4px;padding:5px 8px;font-size:10px}.forecast-band{fill:#dcebe8;opacity:.78}.forecast-line{fill:none;stroke:#527c9b;stroke-width:1.8}.shock-line{stroke:#96a6a9;stroke-dasharray:4 4}.variable-map td{white-space:normal;vertical-align:top;min-width:130px}.literature-list{margin-top:12px}.literature-list h2{margin-bottom:4px}.apa-references{font-size:11px;line-height:1.7;columns:1}.apa-references li{padding:3px 0 8px}.page-actions button{font-size:11px;padding:10px 14px}.notice,.intro{font-size:13px}.metric strong{font-size:26px}.chart-axis{font-size:10px}.workspace{padding-left:48px;padding-right:48px}@media(max-width:1100px){.model-page-grid{grid-template-columns:1fr}.hank-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.workspace{padding-left:12px;padding-right:12px}.hank-results{grid-template-columns:repeat(2,1fr)}.field-grid{grid-template-columns:1fr}}

/* Accessible, refined larger-type layout. */
:root{--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--sans:Inter,"Segoe UI",Arial,sans-serif;--display:Inter,"Segoe UI",Arial,sans-serif}
body{font-size:18px;line-height:1.6}
.rail-caption,.section-label,.kicker,.metric-label{font-size:12px;letter-spacing:.08em}
.nav-link{font-size:15px;padding:12px 10px}.nav-link span{font-size:12px}
.topbar{height:64px}.crumb{font-size:14px}.dataset-badge{font-size:11px}
.page-head{padding-top:32px;padding-bottom:24px}h1{font-size:clamp(36px,3.2vw,48px);line-height:1.12;letter-spacing:-.03em}h2{font-size:25px;line-height:1.25}.intro,.notice,.stress-title p,.research-note{font-size:17px;line-height:1.65}
.metric{padding:18px 19px;min-height:108px}.metric-label{font-size:12px}.metric strong{font-size:32px}.metric-sub{font-size:13px}
.card{padding:24px}.equation{font-size:21px;padding:14px 16px}.model-note{font-size:14px;line-height:1.65}
.table-wrap table,.order-wrap table{font-size:14px}.table-wrap th,.order-wrap th{font-size:13px;padding:11px 8px}.table-wrap td,.order-wrap td{font-size:15px;padding:12px 9px}
.fit-grid span,.fit-grid b{font-size:13px}.diagnostic{font-size:14px;line-height:1.55;padding:11px 13px}.footnote{font-size:13px;line-height:1.6}
.input-row label{font-size:14px}.input-row output{font-size:14px}.range-ends,.scenario-caption{font-size:12px}.scenario-kpis span{font-size:11px}.scenario-kpis b{font-size:19px}
.data-table span,.data-table b,.csv-help,.limits-card ul,.limits-warning{font-size:13px;line-height:1.6}.upload-button,.outline-button,.dark-button,.small-action,.top-button{font-size:14px;padding:10px 14px}
.paper-table-caption{font-size:15px;line-height:1.6;color:#53636b;margin:10px 0 8px}.paper-table-caption strong{color:#18252d}.paper-table-caption span{display:block;color:#718087;font-size:13px}.table-mark{font:600 12px var(--mono);letter-spacing:.06em;color:#58716f;border:1px solid #dce6e4;border-radius:999px;padding:8px 12px;white-space:nowrap}
.field-grid label,.hank-grid label{font-size:14px;gap:7px}.field-grid input,.field-grid select,.hank-grid input,.long-forecast select,.model-actions select{font-size:14px;padding:10px 12px}.hank-results span{font-size:12px}.hank-results b{font-size:18px}.model-diagnostic{margin-top:12px}
@media(max-width:700px){body{font-size:16px}.topbar{height:54px}.workspace{padding:0 16px 24px}.page-head{padding:22px 0 16px}h1{font-size:clamp(30px,8vw,38px)}h2{font-size:22px}.intro,.notice,.stress-title p,.research-note{font-size:15px}.card{padding:18px}.metric{padding:13px;min-height:92px}.metric strong{font-size:25px}.metric-label{font-size:11px}.table-wrap table,.order-wrap table{font-size:13px}.table-wrap th,.order-wrap th{font-size:12px}.table-wrap td,.order-wrap td{font-size:13px;padding:10px 7px}.footnote,.model-note{font-size:12px}.table-mark{font-size:10px;padding:7px 9px}.paper-table-caption{font-size:13px}.paper-table-caption span{font-size:12px}.field-grid label,.hank-grid label{font-size:13px}.hank-results span{font-size:11px}.hank-results b{font-size:16px}}
