/* Compact research workspace: inputs first, comparable results below. */
:root{--bg:#fff;--ink:#213449;--muted:#526579;--line:#dce3eb;--primary:#2864a3;--teal:#2864a3;--radius:5px}
body{background:#fff;font-size:14px}main,#derivatives{max-width:1320px;padding:26px 32px;margin:auto}.topbar{height:64px;padding:0 max(24px,calc((100vw - 1256px)/2));border-bottom:1px solid var(--line);gap:24px}.brand{white-space:nowrap}.brand>span:last-child,.brand .divider{display:none}.d-module-nav{gap:0;height:100%;align-items:center}.d-module-nav button{border:0;border-radius:0;background:white;min-height:64px;padding:12px 20px;color:#526579}.d-module-nav button[aria-pressed=true]{color:#2864a3;background:#f5f8fc;box-shadow:inset 0 -3px #2864a3}.page-heading{margin-bottom:20px}.page-heading .eyebrow{display:none}h1{font-size:27px;font-weight:650;letter-spacing:-.4px}.subtitle{margin-top:7px}h2{font-size:19px}h3{font-size:16px}button,input,select,details,.panel,.d-leg{border-radius:4px}.primary{background:#2864a3}.primary:hover{background:#1e5087}.secondary{color:#285f98;border-color:#bdcddd;background:#fff}.quiet{color:#285f98}button{font-size:13px;min-height:38px}input,select{min-height:38px;font-size:13px;padding:8px 10px;border-color:#becbd8}label{font-size:12px;font-weight:550}.small-note{line-height:1.6}.panel{box-shadow:none;padding:20px;border:1px solid var(--line)}.tag{border-radius:3px;background:#eff4f9;color:#47617a;font-size:11px}.warning,.error-box{overflow-wrap:anywhere}.table-scroll{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}th,td{padding:11px 13px;border-bottom:1px solid #e1e7ee;text-align:right;vertical-align:middle}thead th{background:#f3f6fa;color:#344c65;font-weight:600}th:first-child,td:first-child{text-align:left}tbody th{font-weight:500}tbody tr:hover{background:#f8fafc}table small{display:block;color:var(--muted);font-size:11px;font-weight:400;margin-top:4px}caption{text-align:left;font-size:17px;font-weight:600;padding:2px 0 16px;color:var(--ink)}
.scenario-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin-bottom:22px;padding:14px 16px;border:1px solid var(--line);background:#f8fafc}.scenario-toolbar label{min-width:180px;flex:1;gap:6px}.scenario-toolbar input,.scenario-toolbar select{background:white}.scenario-toolbar>details{width:100%;order:3}.scenario-toolbar>details>summary{font-size:12px;color:#285f98;padding:6px 0;cursor:pointer}.scenario-toolbar>p{width:100%;order:2;margin:0;font-size:11px}.scenario-toolbar>.quiet{font-size:11px;min-height:38px}.scenario-toolbar>details table{background:white}.workflow-nav{position:static;padding:0;border:0;border-bottom:1px solid #c6d2df;border-radius:0;box-shadow:none;gap:0;display:flex;overflow-x:auto}.workflow-nav button{min-height:49px;padding:12px 21px;border-radius:0;font-size:14px;white-space:nowrap}.workflow-nav button small,.nav-step{display:none}.workflow-nav button[aria-selected=true]{background:#edf3fa;color:#245c98;box-shadow:inset 0 -3px #2864a3}.global-status{margin:14px 0 24px}.view-heading{margin:0 0 16px}.view-heading h2{font-size:20px}.view-heading p{font-size:13px}.calculation-panel{padding:16px 20px;margin-bottom:18px;background:#fafbfd}.calculation-main{grid-template-columns:230px 230px auto;gap:20px}.calculation-main .primary{justify-self:end;min-width:230px;min-height:40px}.calculation-options{margin-top:12px;padding-top:4px}.calculation-options summary{min-height:34px}.workspace{display:block}.composition,.allocation-panel{padding:20px;margin-bottom:22px}.section-heading h2{font-size:18px}.universe-help{margin-bottom:12px}.composition .asset-row.compact-asset{display:grid;grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) minmax(140px,1fr) minmax(100px,.8fr) minmax(110px,1fr) 40px;gap:10px 16px;padding:14px 0;align-items:center}.compact-asset .asset-identity{display:flex;gap:12px;align-items:center;min-width:0}.compact-asset .asset-badge{border-radius:4px;display:grid;place-items:center;width:28px;height:28px;font-size:12px;flex-shrink:0}.compact-asset .asset-identity strong{font-size:13px}.compact-asset .asset-name{display:block;max-width:360px;font-size:11px;margin-top:4px;line-height:1.4;color:var(--muted)}.compact-asset .asset-summary-mode{display:none}.compact-asset label{min-width:0;gap:5px;font-size:11px}.compact-asset select,.compact-asset input{min-width:0;width:100%;font-size:12px;min-height:36px}.compact-asset>label:nth-child(4){grid-column:4}.compact-asset>.asset-model{grid-column:5;font-size:11px;line-height:1.6;margin:0;color:#42617f}.compact-asset>.remove{grid-column:6;padding:0;min-width:38px;min-height:38px}.compact-asset>.asset-options{grid-column:1/-1;margin-top:-5px}.compact-asset>.asset-options>summary{min-height:24px;font-size:11px;color:#526b85}.compact-asset .asset-extra{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;background:#f6f8fb}.composition-actions{margin-top:16px}.composition-actions>button{width:auto;min-width:180px}.disclosure{border-radius:4px}.disclosure>summary{min-height:42px}.profile-settings{grid-template-columns:repeat(3,1fr)}.profile-setting{border-radius:4px;background:#f8fafc}.profile-setting label{margin-top:10px}.allocation-panel .profiles{display:block}.profile-comparison{min-width:620px}.profile-comparison th:first-child{width:30%}.profile-comparison td,.profile-comparison thead th:not(:first-child){width:23.33%}.profile-comparison tr:last-child td{padding-top:16px}.profile-comparison button{white-space:nowrap;font-size:12px}.quality-strip{display:flex;flex-wrap:wrap;gap:9px 25px;padding:12px 0 16px;font-size:11px;color:var(--muted)}.quality-strip strong{font-weight:550;color:var(--ink);margin-left:6px}.result-tabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid #cbd7e3;margin-bottom:22px}.result-tabs button{background:white;color:#526b83;border-radius:4px 4px 0 0;border:1px solid transparent;border-bottom:0;white-space:nowrap;padding:11px 18px;min-height:43px;font-weight:500}.result-tabs button[aria-selected=true]{background:#edf3fa;color:#215d9b;border-color:#d6e0ec;box-shadow:inset 0 -2px #2864a3}.result-pane{min-width:0}.result-pane>h3{margin:14px 0 12px}.result-pane>p{font-size:13px;line-height:1.65;margin:10px 0}.result-pane>svg{width:100%;max-height:410px;display:block;margin:20px 0}.result-pane>svg text{font:11px system-ui;fill:#526579}.notice-line{border-left:3px solid #c4d3e2;padding:6px 12px}.empty-section{min-height:180px;border-radius:4px;background:#fbfcfe}.allocation-frontier{border-bottom:0;margin-bottom:0;padding-bottom:0}.plot-grid{stroke:#e1e7ef}.frontier-path,.frontier-soft{stroke:#2864a3}.legend .line{background:#2864a3}.chart-tooltip{border-radius:5px}.summary-cards article{border-radius:4px;padding:16px 18px}.summary-cards strong{font-size:25px}.readiness,.class-group,.allocation-point,.purchase-card{border-radius:4px}.stock-panel,.client-export-panel,.frontier-panel{padding:20px}.class-securities{grid-template-columns:repeat(auto-fit,minmax(min(350px,100%),1fr))}.history-metrics strong{font-size:22px}.warning{font-size:12px;line-height:1.7}
#derivatives{max-width:1320px;padding:26px 32px}#derivatives .panel{padding:20px;margin-bottom:20px}#derivatives h2{font-size:18px;margin-bottom:14px}#derivatives .d-leg{border-radius:4px;background:white;padding:18px;margin:16px 0;border-color:#d2ddea}.d-fields{gap:14px 18px;grid-template-columns:repeat(4,minmax(0,1fr))}.d-fields input,.d-fields select{min-height:38px;font-size:13px}.d-fields label{font-size:12px;min-width:0}.d-risk-amount{font-size:13px;color:#225f98}.risk-budget-strip{background:#f8fafc}.risk-budget-strip .d-fields{margin-bottom:8px}.board-disclosure>summary{font-size:14px;font-weight:600;cursor:pointer}.board-disclosure>section.panel{border:0;padding:18px 0 0!important;margin:0!important}.derivative-workspace .result-tabs{margin-top:24px}.board-disclosure .d-fields{grid-template-columns:repeat(4,minmax(0,1fr))}#d-manual{margin:0 0 12px}#d-results .panel{border-radius:4px}#da-chart svg,#d-board{border-radius:4px}.d-scroll td,.d-scroll th{padding:10px 12px;font-size:12px}.d-scroll{border:1px solid #e0e6ed;border-radius:4px}.matrix-panel{margin:24px 0}.matrix-panel h3{margin:20px 0 12px}.heatmap{min-width:690px}.heatmap th{white-space:nowrap;font-size:12px}.heatmap td{font-size:12px}.heatmap .gain{background:#e7f4ef;color:#185d47}.heatmap .loss{background:#fbece9;color:#8e3526}.heatmap tr:hover td{box-shadow:inset 0 1px #ced9e4,inset 0 -1px #ced9e4}#d-budget-summary{margin:18px 0}.result-pane[hidden],[hidden]{display:none!important}:focus-visible{outline:2px solid #2864a3;outline-offset:3px}footer{margin-top:30px}
@media(max-width:1000px){.composition .asset-row.compact-asset{grid-template-columns:minmax(170px,1.5fr) 1fr 1fr 1fr 38px;gap:10px}.compact-asset>.asset-model{grid-column:1;grid-row:2}.compact-asset>.remove{grid-column:5;grid-row:1}.compact-asset>.asset-options{grid-column:2/-1;grid-row:2}.d-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.scenario-toolbar label{min-width:160px}.calculation-main{grid-template-columns:1fr 1fr auto}.calculation-main .primary{min-width:0}}
@media(max-width:700px){main,#derivatives{padding:20px 16px}.topbar{padding:0 16px;gap:14px;flex-wrap:nowrap;height:60px}.brand strong{font-size:16px}.brand img{width:26px;height:26px}.d-module-nav{margin:0;order:0;width:auto}.d-module-nav button{min-height:60px;padding:10px 12px;font-size:12px}.local-label{display:none}.workflow-nav{display:flex}.workflow-nav button{padding:12px 14px;font-size:12px}.page-heading h1{font-size:23px}.scenario-toolbar{padding:12px;gap:8px}.scenario-toolbar label{min-width:100%;font-size:12px}.scenario-toolbar button{flex:1;min-width:100px}.scenario-toolbar details{max-width:100%}.calculation-main{grid-template-columns:1fr 1fr;gap:14px}.calculation-main .primary{grid-column:1/-1;width:100%}.panel,.composition,.allocation-panel,.stock-panel,.client-export-panel,.frontier-panel,#derivatives .panel{padding:16px}.composition .asset-row.compact-asset{grid-template-columns:1fr 1fr 38px;gap:10px}.compact-asset .asset-identity{grid-column:1/3}.compact-asset>.remove{grid-column:3;grid-row:1}.compact-asset>label:nth-child(2){grid-column:1;grid-row:2}.compact-asset>label:nth-child(3){grid-column:2/4;grid-row:2}.compact-asset>label:nth-child(4){grid-column:1;grid-row:3}.compact-asset>.asset-model{grid-column:2/4;grid-row:3}.compact-asset>.asset-options{grid-column:1/-1;grid-row:4}.compact-asset .asset-extra{grid-template-columns:1fr 1fr;padding:12px}.profile-settings{grid-template-columns:1fr}.d-fields,.board-disclosure .d-fields{grid-template-columns:1fr 1fr}.result-tabs button{padding:11px 14px;font-size:12px}.quality-strip{gap:7px 14px}.quality-strip>span{display:block}.quality-strip strong{margin-left:3px}.view-heading h2{font-size:19px}.summary-cards{gap:10px}.summary-cards article{padding:14px}.profile-comparison{font-size:12px;min-width:580px}input,select,.compact-asset input,.compact-asset select,.d-fields input,.d-fields select{font-size:16px}.d-scroll{max-width:100%}.d-leg .section-heading{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.d-chart-legend label{flex-direction:row;align-items:center;gap:6px}.d-chart-legend input{min-height:0}.scenario-management>button{margin:8px 10px 0 0}

.table-scroll-hint{display:none}@media(max-width:700px){.table-scroll-hint{display:block;margin:12px 0}.profile-comparison caption{font-size:15px}.profile-comparison th:first-child{position:sticky;left:0;background:#f8fafc;z-index:1}.profile-comparison thead th:first-child{background:#edf3fa}}

.scenario-shelf{margin:0 0 18px;border:1px solid var(--line);background:#fafbfd}.scenario-shelf>summary{display:flex;align-items:center;gap:12px;padding:11px 15px;font-size:13px;font-weight:600;cursor:pointer}.scenario-shelf>summary:before{content:"+";color:#2864a3}.scenario-shelf[open]>summary:before{content:"−"}.scenario-shelf>summary>span{font-size:11px;color:var(--muted);font-weight:400;margin-left:auto}.scenario-shelf>.scenario-toolbar{border:0;border-top:1px solid var(--line);margin:0;background:white}@media(max-width:700px){.scenario-shelf>summary{flex-wrap:wrap;gap:8px}.scenario-shelf>summary>span{margin-left:0;font-size:10px}}
