.portfolio-chart-plot{min-width:0}
.portfolio-period-controls{display:flex;justify-content:flex-end;margin:0 0 6px;padding:0;border:0;background:none}
.portfolio-period-controls[hidden]{display:none}
.portfolio-period-buttons{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.portfolio-period-buttons button{box-sizing:border-box;min-height:26px;padding:3px 8px;border:1px solid #395c6d;border-radius:5px;background:#102b38;color:#b8d3df;font-size:11px;line-height:18px;cursor:pointer}
.portfolio-period-buttons button.active{background:#1b5747;border-color:#7ce8b5;color:#a4f4d1}
.portfolio-period-buttons button:focus-visible{outline:2px solid #7ce8b5;outline-offset:2px}
@media(max-width:600px){.portfolio-period-buttons{gap:4px}.portfolio-period-buttons button{padding:3px 7px;font-size:10px}}
.live-analytics .live-plot svg{width:100%;height:auto}.live-analytics .live-subtitle,.live-analytics .analytic-note{white-space:pre-line}

#portfolio-range-empty{min-height:175px;display:flex;align-items:center;justify-content:center;line-height:1.8;color:#8aaabd;font-size:12px}#portfolio-range-empty[hidden]{display:none}


#stress .stress-contribution-card{display:flex;flex-direction:column}
#stress .stress-contribution-list{display:flex;flex-direction:column;flex:1;min-height:0;gap:10px;padding-top:10px}
#stress .stress-contribution-list .loss-row{flex:1;min-height:100px;padding:20px 0;align-items:center;box-sizing:border-box;font-size:14px}
#stress .stress-contribution-list .loss-row>span{font-size:14px;line-height:1.7}
#stress .stress-contribution-list .loss-row small{font-size:11px;margin-top:7px}
#stress .stress-contribution-list .loss-row>b{font-size:16px}
#stress .stress-contribution-list .loss-track{height:18px}
#stress .stress-contribution-list .loss-row:last-child{border-bottom:0}
@media(max-width:700px){#stress .stress-contribution-list .loss-row>span{font-size:12px}#stress .stress-contribution-list .loss-row>b{font-size:14px}}

html.customer-experience .analytics .portfolio-chart-plot #chart{height:340px!important}
@media(max-width:600px){html.customer-experience .analytics .portfolio-chart-plot #chart{height:280px!important}}

.analytics [data-value-sign="negative"]{color:#ff6275!important}
.analytics [data-value-sign="positive"]{color:#7ce8b5!important}
.analytics [data-value-sign="zero"],.analytics [data-value-sign="missing"]{color:#91a7bd!important}
.analytics-window-note{font-size:12px;line-height:1.8;color:#8fabbd;margin:0 0 12px}
.analytics-pending>.analytics-window-note{padding:12px;border:1px solid #395c6d;border-radius:6px;color:#c9d8e3;background:#10212d}
.analytics-pending .analytic-kpis strong{font-size:16px}
.stress-contribution-list .loss-row>b{white-space:normal;min-width:100px}
.analytics .analytic-kpis strong[data-value-sign="missing"]{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.stress-contribution-list .loss-row{grid-template-columns:minmax(0,1fr) minmax(20px,.8fr) minmax(80px,110px)}
.stress-contribution-list .loss-row>span{min-width:0;overflow-wrap:anywhere}
.stress-contribution-list .loss-row>b{min-width:0;font-size:13px}
.analytics .analytic-kpis strong[data-value-sign="missing"],.stress-contribution-list .loss-row>b{font-family:ConceptChinese,Arial,sans-serif}

.chart-layout aside .portfolio-today-summary{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0 0;padding-top:10px;border-top:1px solid #294352;color:#8fabbd;font:12px/1.8 ConceptChinese,Arial,sans-serif}
.chart-layout aside .portfolio-today-summary[hidden]{display:none}
.portfolio-today-summary b{font:inherit;font-weight:600}
@media(max-width:600px){.chart-layout aside .portfolio-today-summary{font-size:11px;gap:4px 12px}}

/* Compact range summary and one separate Today return. */
html.customer-experience #tab-returns .chart-layout{align-items:start}
html.customer-experience #tab-returns aside.portfolio-return-summary{align-self:start;display:flex;flex-direction:column;min-width:0;min-height:0;padding:20px;border:1px solid #294352;border-radius:12px;background:#0e202c}
html.customer-experience #tab-returns aside.portfolio-return-summary>small{margin:0;color:#91aabd;font-size:12px;line-height:1.5}
html.customer-experience #tab-returns aside.portfolio-return-summary>strong{display:block;margin:5px 0 19px;font-size:30px;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
html.customer-experience #tab-returns aside.portfolio-return-summary>#drawdown{font-size:26px;margin-bottom:18px}
html.customer-experience #tab-returns .portfolio-period-note{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;border:0;color:#8fabbd;font:11px/1.6 ConceptChinese,Arial,sans-serif}
html.customer-experience #tab-returns .portfolio-period-note[hidden]{display:none}
html.customer-experience #tab-returns aside .portfolio-today-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0 0;padding:11px 12px;border:1px solid #2b4c5a;border-radius:8px;background:#112b36;color:#b7ccda;font:12px/1.5 ConceptChinese,Arial,sans-serif}
html.customer-experience #tab-returns aside .portfolio-today-summary[hidden]{display:none}
html.customer-experience #tab-returns .portfolio-today-summary>b{font-size:18px;font-weight:600;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){
 html.customer-experience #tab-returns aside.portfolio-return-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px;padding:16px}
 html.customer-experience #tab-returns aside.portfolio-return-summary>small:first-child{grid-area:1/1}
 html.customer-experience #tab-returns aside.portfolio-return-summary>#annual{grid-area:2/1;margin:0 0 10px;font-size:26px}
 html.customer-experience #tab-returns aside.portfolio-return-summary>small:nth-of-type(2){grid-area:1/2}
 html.customer-experience #tab-returns aside.portfolio-return-summary>#drawdown{grid-area:2/2;margin:0 0 10px;font-size:26px}
 html.customer-experience #tab-returns .portfolio-period-note{grid-column:1/-1}
 html.customer-experience #tab-returns aside .portfolio-today-summary{grid-column:1/-1;margin-top:9px}
}

/* Historical analytics use the current member list, without a synthetic cash row. */
#stress .analytic-kpis>div[hidden]{display:none!important}
#stress .stress-toolbar{align-items:stretch;flex-wrap:wrap;gap:14px}
#stress .scenario-buttons{flex:1 1 560px;min-width:0}
#stress .scenario-buttons button{display:flex;flex-direction:column;gap:7px;min-width:0;text-align:left;padding:14px}
#stress .scenario-buttons .scenario-return{display:block;font-size:21px;line-height:1.3;font-variant-numeric:tabular-nums}
#stress .scenario-buttons .scenario-dates{font:11px/1.5 ConceptChinese,Arial,sans-serif;overflow-wrap:anywhere}
#stress .analytic-kpis{flex:1 1 270px;min-width:0}
#stress .analytics-capital-note{margin:0 0 14px;color:#91aabd;font:12px/1.7 ConceptChinese,Arial,sans-serif}
#stress .stress-contribution-list .loss-row>b{white-space:nowrap;font-size:14px}
#stress .stress-contribution-list .loss-row{grid-template-columns:minmax(0,1fr) minmax(20px,.7fr) minmax(110px,auto);gap:14px}
@media(max-width:700px){#stress .scenario-buttons{flex-basis:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}#stress .scenario-buttons button{padding:10px 8px}#stress .scenario-buttons .scenario-return{font-size:18px}#stress .scenario-buttons .scenario-dates{font-size:10px}#stress .stress-contribution-list .loss-row{grid-template-columns:minmax(0,1fr) auto}#stress .stress-contribution-list .loss-track{grid-column:1/-1;grid-row:2}}

@media(max-width:700px){#stress .stress-layout .svg-scroll>svg{min-width:0!important;width:100%;height:auto}}
@media(max-width:700px){#stress .svg-scroll:after{display:none}#stress .scenario-buttons .scenario-dates{overflow-wrap:normal;word-break:normal}#stress .scenario-buttons .scenario-dates span{display:block}}

/* Visible KPIs fill their available columns after unavailable amounts are hidden. */
#stress .stress-toolbar{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:12px}
#stress .scenario-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:12px}
#stress .analytic-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));width:100%;gap:12px}
#stress .stress-toolbar:has(.analytic-kpis>div:not([hidden]):nth-child(2)){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
#stress .analytic-stack{align-content:start;grid-auto-rows:max-content}
#stress .stress-contribution-list{flex:0 0 auto;gap:0;padding-top:4px}
#stress .stress-contribution-list .loss-row{flex:0 0 auto;min-height:72px;padding:12px 0;margin:0}
@media(max-width:1000px){#stress .stress-toolbar{grid-template-columns:minmax(0,1fr)}#stress .stress-toolbar:has(.analytic-kpis>div:not([hidden]):nth-child(2)){grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){#stress .scenario-buttons{gap:6px}#stress .analytic-kpis{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}

#stress .stress-balanced-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;gap:12px}
#stress .stress-balanced-layout>.v260-stress-hero{grid-column:1;grid-row:1}
#stress .stress-balanced-layout>.analytic-stack{display:contents}
#stress .stress-balanced-layout .stress-contribution-card{grid-column:2;grid-row:1}
#stress .stress-balanced-layout .stress-density-card{grid-column:1;grid-row:2}
#stress .stress-balanced-layout .stress-matrix-card{grid-column:2;grid-row:2}
#stress .stress-density-card>.v260-divider{margin-top:0;padding-top:0;border-top:0}
#stress .stress-density-card>svg{display:block;width:100%;height:auto}
#stress .stress-balanced-layout>.v260-stress-hero>.svg-scroll{flex:0 0 auto}
@media(max-width:1000px){
 #stress .stress-balanced-layout{grid-template-columns:minmax(0,1fr)}
 #stress .stress-balanced-layout>.v260-stress-hero,
 #stress .stress-balanced-layout .stress-contribution-card,
 #stress .stress-balanced-layout .stress-density-card,
 #stress .stress-balanced-layout .stress-matrix-card{grid-column:1;grid-row:auto}
 #stress .stress-balanced-layout>.v260-stress-hero{order:0}
 #stress .stress-balanced-layout .stress-contribution-card{order:1}
 #stress .stress-balanced-layout .stress-density-card{order:2}
 #stress .stress-balanced-layout .stress-matrix-card{order:3}
}
@media(min-width:1001px){
 #stress .stress-balanced-layout>.analytic-stack{display:grid;grid-column:2;grid-row:1;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;align-content:stretch}
 #stress .stress-balanced-layout .stress-contribution-card{grid-column:1;grid-row:1}
 #stress .stress-balanced-layout .stress-matrix-card{grid-column:1;grid-row:2}
 #stress .stress-balanced-layout .stress-density-card{grid-column:1/-1;grid-row:2}
 #stress .stress-density-card>svg{max-height:230px}
}
