/* Shared measured grid: cards follow their content; charts have bounded heights. */
.analytics .ai-insights{color:#c7d5e4;font:12px/1.6 ConceptChinese,Arial,sans-serif;min-width:0}
.ai-insights *{box-sizing:border-box}.ai-insights .ai-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0 18px;margin-bottom:18px;border-bottom:1px solid #2a3c50}.ai-section-head small{font:10px/1.6 Arial,sans-serif;color:#6f92a6;letter-spacing:1.2px}.ai-section-head h2{font-size:18px;line-height:1.3;margin:5px 0 0;color:#e2edf4;font-weight:600}.ai-section-head p{font-size:11px;color:#8aa7ba;text-align:right;margin:0}
.ai-insights .ai-card{min-width:0;padding:20px;border:1px solid #2a3c50;border-radius:4px;background:#101b29;overflow:hidden}.ai-insights .ai-card>header{height:auto;display:block;border:0;padding:0;margin:0 0 16px}.ai-card h3{margin:0;color:#cee2eb;font-size:14px;font-weight:600;letter-spacing:.2px}.ai-card header p{margin:5px 0 0;font-size:11px;line-height:1.6;color:#7e9bad}.ai-insights .ai-grid-two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px;align-items:start;margin:0 0 14px}.ai-insights .ai-grid-two>.ai-card{height:auto}.ai-insights>.ai-card{margin-top:14px}
.ai-insights .ai-stats,.ai-insights .ai-stress-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}.ai-insights .ai-stat{padding:15px 17px;min-width:0;background:#0e1926;border:1px solid #28414e;border-radius:4px;display:flex;flex-direction:column;justify-content:center;gap:7px}.ai-stat>span{font-size:12px;color:#9fb6c5}.ai-stat>strong{font:600 20px/1.3 ConceptChinese,Arial,sans-serif;font-variant-numeric:tabular-nums;color:#d9e7ee;overflow-wrap:anywhere}.ai-stat>small{font-size:10px;line-height:1.6;color:#7d9bae}.ai-insights .ai-positive,.ai-insights .ai-positive>strong{color:#7ce8b5}.ai-insights .ai-negative,.ai-insights .ai-negative>strong{color:#e3739d}.ai-insights .ai-muted{color:#8fa9b9}
.ai-insights .ai-scenario{border:1px solid #2a3c50;border-radius:4px;background:#10212d;padding:15px 17px;text-align:left;display:flex;flex-direction:column;gap:8px;min-width:0;color:#adc6d6}.ai-scenario>span{font-size:12px}.ai-scenario>strong{font:600 20px/1.3 ConceptChinese,Arial,sans-serif}.ai-scenario>small{font-size:10px;color:#80a0b4}.ai-insights .ai-scenario.selected{border-color:#66c5a3;background:#15332f;box-shadow:inset 3px 0 #7ce8b5}.ai-scenario:hover{border-color:#7ce8b5}.ai-insights button:focus-visible,.ai-insights [tabindex]:focus-visible{outline:2px solid #7ce8b5;outline-offset:2px}
.ai-insights .ai-plot{position:relative;min-width:0}.ai-plot svg{display:block;width:100%;height:220px;overflow:visible}.ai-grid line{stroke:#2a3c50;stroke-width:1;vector-effect:non-scaling-stroke}.ai-grid text{font:11px ConceptChinese,Arial,sans-serif;fill:#88a7b9}.ai-plot output{display:block;font:11px/1.6 ConceptChinese,Arial,sans-serif;color:#adc5d4;text-align:right;min-height:19px;margin-top:3px}.ai-plot .ai-scrubber{display:block;width:100%;height:12px;margin:5px 0;accent-color:#7ce8b5;cursor:ew-resize;opacity:.5}.ai-plot:focus-within .ai-scrubber,.ai-plot:hover .ai-scrubber{opacity:1}
.ai-insights .ai-equation{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #2a3c50;margin:12px 0 0;padding-top:12px;font-size:12px;color:#88a7b9}.ai-equation b{font:600 16px Arial,sans-serif}.ai-insights .ai-foot{font-size:11px;line-height:1.8;color:#89a5b6;margin:14px 0 0}.ai-insights .ai-empty{padding:18px;color:#8eaaba}.ai-contribution{padding:12px 0;border-bottom:1px solid #233b49;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px}.ai-contribution:first-of-type{padding-top:0}.ai-contribution:last-of-type{border-bottom:0}.ai-contribution span{overflow-wrap:anywhere;font-size:13px}.ai-contribution small{display:block;font-size:10px;color:#7e9bad;margin-top:5px}.ai-contribution strong{font:600 17px Arial,sans-serif;white-space:nowrap;align-self:center}.ai-contribution strong small{font-family:ConceptChinese,Arial,sans-serif;display:inline;font-size:10px;font-weight:normal}.ai-contribution .ai-bar{grid-column:1/-1}.ai-insights i{display:inline-block}.ai-contribution span>i,.ai-risk-label>i{width:7px;height:7px;border-radius:50%;margin-right:8px}.ai-insights .ai-bar{display:block;min-width:0;width:100%;height:6px;background:#1d3341;border-radius:3px;overflow:hidden}.ai-bar>i{display:block;height:100%;min-width:0;border-radius:3px}
.ai-insights .ai-table-scroll{max-width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#35586a transparent}.ai-insights .ai-table{width:100%;border-collapse:collapse;min-width:420px;font-size:12px}.ai-table th,.ai-table td{padding:12px 10px;border-bottom:1px solid #24384b;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.ai-table th:first-child,.ai-table td:first-child{text-align:left}.ai-table th{font-size:11px;font-weight:400;color:#8caabd}.ai-table tbody th{max-width:220px;white-space:normal;overflow-wrap:anywhere;color:#bed3e0}.ai-table thead th{font-size:10px}.ai-table tr:last-child>*{border-bottom:0}.ai-tag{font-size:10px;line-height:1.5;display:inline-block;padding:2px 7px;background:#17382f;color:#92d7be;border-radius:4px}.ai-insights .ai-months{margin-top:14px}.ai-months .ai-table{min-width:850px;table-layout:fixed;border-collapse:separate;border-spacing:4px}.ai-months .ai-table td{font:11px/1.6 Arial,sans-serif;border-radius:4px;border:0;text-align:center;padding:13px 4px;color:#d9eee8}.ai-months .ai-table th{padding:6px;text-align:center}.ai-months sup{font-size:15px;line-height:0}.ai-months .ai-month-empty{color:#506d80!important;background:#12212d80}.ai-return-insights{margin-top:20px}
.ai-insights .ai-risk-row{padding:14px 0;border-bottom:1px solid #24384b}.ai-risk-row:last-child{border:0}.ai-risk-label{overflow-wrap:anywhere;font-size:13px;margin-bottom:9px}.ai-risk-lines>div{display:grid;grid-template-columns:30px minmax(20px,1fr) 78px;gap:10px;align-items:center;margin-top:8px}.ai-risk-lines small{color:#7f9eb2;font-size:10px}.ai-risk-lines b{font:12px Arial,sans-serif;text-align:right;font-variant-numeric:tabular-nums}.ai-member-key{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#8fabbd;margin-top:14px;overflow-wrap:anywhere}.ai-insights .ai-scatter{display:block;width:100%;height:310px}.ai-dot{cursor:pointer}.ai-dot:hover circle,.ai-dot:focus circle{stroke:#eff8ff;stroke-width:3}.ai-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ai-detail-grid .ai-stat{padding:12px}.ai-detail-grid .ai-stat strong{font-size:18px}.ai-insights .ai-map-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.ai-map-legend{display:flex;gap:18px;flex-wrap:wrap;color:#7ca8e0;font-size:11px}.ai-map-legend>span:first-child{color:#7ce8b5}.ai-map-legend>span:nth-child(2){color:#b19aef}.ai-candidates summary{cursor:pointer;color:#91cdbd;padding:8px 0}.ai-table button{background:transparent;border:0;padding:0;text-align:left;font-size:12px;color:inherit;white-space:normal;overflow-wrap:anywhere}.ai-selected-row{background:#17382f70}
.analytics>.ai-global-periods{padding:10px 18px;margin:0;border-bottom:1px solid #24384b}.ai-insights .ai-map-detail{height:auto!important}
@media(max-width:1100px){.ai-insights .ai-grid-two,.ai-insights .ai-map-grid{grid-template-columns:minmax(0,1fr)}.ai-insights .ai-grid-two>.ai-card{height:auto}.ai-insights .ai-section-head h2{font-size:18px}}
@media(max-width:700px){.ai-insights .ai-card{padding:14px;border-radius:4px}.ai-insights .ai-stats,.ai-insights .ai-stress-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ai-insights .ai-stat,.ai-insights .ai-scenario{padding:12px}.ai-stat>strong,.ai-scenario>strong{font-size:18px}.ai-scenario>small{font-size:9px;overflow-wrap:anywhere}.ai-insights .ai-section-head{align-items:start;gap:8px}.ai-section-head p{font-size:9px}.ai-section-head small{font-size:8px;letter-spacing:1px}.ai-section-head h2{font-size:17px}.ai-plot svg{height:190px}.ai-insights .ai-scatter{height:260px}.ai-grid text{font-size:10px}.ai-contribution{gap:8px}.ai-contribution strong{font-size:15px}.ai-contribution span{font-size:12px}.ai-insights .ai-table{font-size:11px}.ai-insights .ai-table th,.ai-insights .ai-table td{padding:10px 8px}.ai-detail-grid .ai-stat strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.ai-insights *{animation:none!important;transition:none!important}}

.ai-insights .ai-stress-side{display:grid;gap:14px;align-content:start;min-width:0}.ai-insights .ai-stress-grid{align-items:start}.ai-insights .ai-underwater{grid-column:1/-1}.ai-underwater .ai-plot svg{height:170px}.ai-insights .ai-stress-side .ai-card{height:auto}

.ai-insights .ai-table-hint{display:none}.ai-insights .ai-table-overflow>.ai-table-hint{display:block;margin-top:9px;font-size:10px;line-height:1.5;color:#8caabd}.ai-insights .ai-table-scroll:focus-visible{outline:1px solid #7ce8b5;outline-offset:3px}

/* Pair the replay with attribution, then waterline with the matrix.
   A nested two-card sidebar previously reserved its combined height on the left. */
@media(min-width:1101px){
 #stress .ai-stress-side{display:contents}
 #stress .ai-stress-grid>.ai-replay{grid-column:1;grid-row:1}
 #stress .ai-stress-side>.ai-card:first-child{grid-column:2;grid-row:1}
 #stress .ai-underwater{grid-column:1;grid-row:2}
 #stress .ai-stress-side>.ai-card:last-child{grid-column:2;grid-row:2}
 #stress .ai-replay .ai-plot svg{height:var(--replay-height,220px)}
}
@media(min-width:1101px){
 #stress .ai-stress-grid{align-items:stretch}
 #stress .ai-stress-side>.ai-card{display:flex;flex-direction:column}
 #stress .ai-stress-side>.ai-card:first-child>.ai-equation{margin-top:auto}
 #stress .ai-stress-side>.ai-card:last-child>.ai-table-wrap{margin-block:auto}
}

/* Compact stress grid: matching row edges and readable, restrained type. */
#stress.ai-insights .ai-section-head{padding-bottom:12px;margin-bottom:12px}
#stress.ai-insights .ai-section-head h2{font-size:18px}
#stress.ai-insights .ai-section-head small{font-size:9px;letter-spacing:1.4px}
#stress.ai-insights .ai-stress-toolbar{gap:10px;margin-bottom:12px}
#stress.ai-insights .ai-scenario,#stress.ai-insights .ai-stat{padding:11px 14px;gap:6px}
#stress.ai-insights .ai-scenario>strong,#stress.ai-insights .ai-stat>strong{font-size:20px}
#stress.ai-insights .ai-card{padding:14px 16px}
#stress.ai-insights .ai-card>header{margin-bottom:10px}
#stress.ai-insights .ai-card h3{font-size:13px}
#stress.ai-insights .ai-card header p{font-size:10px;margin-top:4px}
#stress.ai-insights .ai-contribution{padding:9px 0;gap:7px 12px}
#stress.ai-insights .ai-contribution>div>span{font-size:12px}
#stress.ai-insights .ai-contribution strong{font-size:15px}
#stress.ai-insights .ai-contribution small{margin-top:3px}
#stress.ai-insights .ai-equation{padding-top:9px;font-size:11px}
#stress.ai-insights .ai-equation b{font-size:14px}
#stress.ai-insights .ai-underwater .ai-plot svg{height:145px}
#stress.ai-insights .ai-underwater .ai-foot{margin-top:9px;font-size:10px}
#stress.ai-insights .ai-table th,#stress.ai-insights .ai-table td{padding:9px 8px}
#stress.ai-insights .ai-grid-two{gap:12px;margin-bottom:12px}
@media(min-width:1101px){
 #stress .ai-stress-grid>.ai-card,
 #stress .ai-stress-side>.ai-card{height:100%!important;align-self:stretch}
}
@media(max-width:1100px){#stress.ai-insights .ai-replay .ai-plot svg{height:175px}}
@media(max-width:700px){#stress.ai-insights .ai-card{padding:12px}#stress.ai-insights .ai-section-head h2{font-size:17px}}
.live-update-banner .position-usage-basis{display:block;margin-top:5px;font:10px/1.6 ConceptChinese,Arial,sans-serif;color:#88a8ba}
#stress.ai-insights .ai-contribution{padding-block:6px}

@media(min-width:1101px){
 #risk.ai-insights .ai-grid-two{align-items:stretch}
 #risk.ai-insights .ai-grid-two>.ai-card{height:100%;align-self:stretch}
 #opportunity.ai-insights .ai-map-grid{align-items:stretch}
 #opportunity.ai-insights .ai-map-grid>.ai-card{height:100%!important;align-self:stretch}
}
#risk.ai-insights .ai-section-head h2,#opportunity.ai-insights .ai-section-head h2{font-size:18px}
#risk.ai-insights .ai-card,#opportunity.ai-insights .ai-card{padding:15px 16px}
#risk.ai-insights .ai-stat>strong,#opportunity.ai-insights .ai-stat>strong{font-size:20px}
#risk.ai-insights .ai-risk-row{padding:10px 0}
.ai-insights g.ai-dot:focus-visible{outline:none}
.ai-insights g.ai-dot:focus-visible circle{stroke:#7ce8b5;stroke-width:3}
#opportunity g.ai-dot:focus,#opportunity g.ai-dot:focus-visible{outline:none!important}
#opportunity g.ai-dot:focus-visible circle{stroke:#7ce8b5;stroke-width:3}

/* Match the cockpit's restrained mint, blue-grey type and flat terminal panels. */
.analytics .ai-insights{font-family:inherit;font-size:12px;color:var(--text,#dce5ef)}
.ai-insights .ai-section-head{padding:0 0 12px;margin-bottom:12px;gap:12px;border-color:var(--line,#24384b)}
.ai-insights .ai-section-head h2,#stress.ai-insights .ai-section-head h2{font-family:inherit;font-weight:600;font-size:17px;line-height:1.4;color:var(--text,#dce5ef);margin:3px 0 0}
.ai-insights .ai-section-head small{font-size:9px;letter-spacing:1.4px;color:var(--muted,#8d9fb3)}
.ai-insights .ai-section-head p{font-size:10px;color:var(--muted,#8d9fb3)}
.ai-insights .ai-card{padding:16px;background:#0e1b27;border:1px solid var(--line,#24384b);border-radius:4px;box-shadow:none}
.ai-insights .ai-card>header{margin-bottom:12px}.ai-insights .ai-card h3{font-size:13px;letter-spacing:0;color:var(--text,#dce5ef)}
.ai-insights .ai-card header p,.ai-insights .ai-foot{font-size:10px;color:var(--muted,#8d9fb3)}
.ai-insights .ai-stat,.ai-insights .ai-scenario,#stress.ai-insights .ai-stat,#stress.ai-insights .ai-scenario{border-radius:4px;border-color:var(--line,#24384b);background:#101f2b;padding:12px 14px;gap:5px}
.ai-insights .ai-stat>span,.ai-insights .ai-scenario>span{font-size:11px;color:#a7b8c9}
.ai-insights .ai-stat>strong,.ai-insights .ai-scenario>strong{font-family:inherit;font-size:22px;font-weight:600;line-height:1.3;font-variant-numeric:tabular-nums}
.ai-insights .ai-scenario.selected{background:#15332f;border-color:#70e9bc80;box-shadow:inset 2px 0 var(--cyan,#70e9bc)}
.ai-insights .ai-positive,.ai-insights .ai-positive>strong{color:var(--cyan,#70e9bc)}
.ai-insights .ai-negative,.ai-insights .ai-negative>strong{color:#e3739d}
.ai-insights .ai-table{font-size:11px}.ai-insights .ai-table th{color:var(--muted,#8d9fb3)}
.ai-insights .ai-table td,.ai-insights .ai-table th{border-color:var(--line,#24384b);padding:10px 8px}
.ai-insights .ai-contribution strong{font-size:16px}.ai-insights .ai-bar{height:4px;border-radius:2px;background:#213545}
.ai-insights .ai-map-detail .ai-stat{background:transparent;border:0;padding:6px 0}
.ai-insights .ai-tag{border-radius:3px;font-size:9px;color:#70e9bc;background:#17382f}
.recent-trading .recent-trading-symbols{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 12px}
.recent-trading .recent-trading-symbol{padding:8px 14px;border:1px solid var(--line,#24384b);border-radius:4px;background:#101f2b;color:var(--text,#dce5ef);font-size:15px;font-weight:600}
.recent-trading .detail-note{font-size:11px;line-height:1.7;margin:7px 0;color:var(--muted,#8d9fb3)}
@media(min-width:1101px){.ai-insights .ai-grid-two{align-items:stretch}.ai-insights .ai-grid-two>.ai-card{height:auto}.ai-insights .ai-map-detail{display:flex;flex-direction:column;justify-content:center}}
@media(max-width:700px){.ai-insights .ai-card{padding:12px}.ai-insights .ai-section-head h2,#stress.ai-insights .ai-section-head h2{font-size:16px}.ai-insights .ai-stat>strong,.ai-insights .ai-scenario>strong{font-size:20px}.ai-insights .ai-section-head{align-items:flex-start}.ai-insights .ai-section-head p{max-width:45%;font-size:9px}.recent-trading .recent-trading-symbol{font-size:14px;padding:7px 12px}}

/* Shared with the cockpit: flat panels, restrained headings and one number style. */
.analytics .ai-insights .ai-section-head{padding-bottom:12px;margin-bottom:12px;border-color:#2a3c50}
.analytics .ai-insights .ai-card{border-radius:4px;background:#101b29}
.analytics .ai-insights .ai-card header p,.analytics .ai-insights .ai-foot{color:#8198ae}
.analytics .ai-insights .ai-section-head small{font-size:9px;letter-spacing:1.2px}
.analytics .ai-insights .ai-stat>strong,.analytics .ai-insights .ai-scenario>strong{font-variant-numeric:tabular-nums}
.composer-exposure-note{margin:0 0 7px;color:#8198ae;font:11px/1.6 ConceptChinese,Arial,sans-serif}
.portfolio-risk-budget{margin:8px 0;color:#91aabd;font:11px/1.65 ConceptChinese,Arial,sans-serif}
.portfolio-risk-budget strong{font-weight:500;color:#c7d5e4}
