/* Only the center/right work area changes. The existing main sidebar is untouched. */
.iw-workspace { width:100%; min-width:0; min-height:0; display:flex; flex-direction:column; }
.iw-header { display:flex; align-items:center; gap:20px; padding:4px 0 20px; flex-shrink:0; }
.iw-title { flex:1; min-width:0; }
.iw-title h1 { margin:0 0 8px; font-size:25px; font-weight:600; }
.iw-title h1>span { font-size:11px; font-weight:400; color:var(--muted); background:var(--soft); border-radius:6px; padding:4px 8px; vertical-align:middle; margin-left:8px; }
.iw-title p { font-size:12px; color:var(--muted); margin:0; line-height:1.7; }
.iw-search { display:flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:10px; background:white; height:43px; width:35%; max-width:440px; padding:0 12px; color:var(--muted); }
.iw-search:focus-within { outline:2px solid var(--soft); border-color:var(--accent); }
.iw-search input[type=search] { flex:1; width:100%; border:0; border-radius:0; background:transparent; outline:none; padding:0; font-size:12px; }
.iw-search input::-webkit-search-cancel-button { display:none; }
.iw-search button { font-size:20px; padding:0 4px; }
.iw-search kbd { flex-shrink:0; background:var(--surface-subtle); border-radius:5px; padding:4px 5px; color:var(--muted); font:9px inherit; white-space:nowrap; }
.iw-add { box-shadow:none; height:43px; }
.iw-board { display:flex; flex-direction:column; flex:1; min-height:0; background:white; border:1px solid var(--line); border-radius:14px; padding:18px; }
.iw-selectors { display:grid; grid-template-columns:minmax(170px,24%) minmax(0,1fr); gap:22px; flex-shrink:0; }
.iw-recent { border-right:1px solid var(--line); padding-right:20px; min-width:0; }
.iw-selector-title { display:flex; align-items:center; justify-content:space-between; gap:8px; height:25px; margin-bottom:9px; }
.iw-company-selector>.iw-selector-title { box-sizing:border-box; padding-inline:12px; }
.iw-selector-title h2 { margin:0; font-size:12px; font-weight:600; white-space:nowrap; }
.iw-selector-title h2>span { margin-left:6px; color:var(--muted); font-size:10px; font-weight:400; }
.iw-selector-title>span { font-size:10px; color:var(--muted); }
.iw-recent-items,.iw-all { display:flex; align-content:flex-start; align-items:flex-start; gap:7px; flex-wrap:wrap; }
.iw-recent-items { height:66px; overflow:hidden; }
.iw-recent-items>p { font-size:11px; color:var(--muted); margin:9px 0; }
.iw-all { height:66px; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--surface-selected) transparent; padding:1px 8px 1px 1px; }
.iw-company-selector { grid-column:1/-1; width:100%; min-width:0; position:relative; z-index:3; }
.iw-all { display:flex; flex-wrap:wrap; align-content:flex-start; align-items:flex-start; gap:5px 8px; height:66px; max-height:66px; overflow:hidden; box-sizing:border-box; padding:1px 12px; }
.iw-all.is-filtered { height:66px; max-height:66px; overflow:auto; }
.iw-more-button { flex-shrink:0; border:0; border-radius:5px; background:transparent; color:var(--muted); font-size:10px; padding:4px 7px; }
.iw-more-button:hover,.iw-more-button[aria-expanded="true"] { background:var(--surface-subtle); color:var(--text); }
.iw-more-panel { position:absolute; z-index:5; top:calc(100% + 3px); right:0; width:min(100%,540px); max-height:min(40vh,260px); overflow:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:5px 10px; padding:8px; border:1px solid var(--line); border-radius:10px; background:white; box-shadow:0 8px 24px var(--shadow-color); }
.iw-more-panel .iw-option { width:100%; }
.iw-company-selector #iw-all:not(.is-filtered) { height:66px; max-height:66px; }
.iw-option { border:1px solid var(--line); background:var(--surface-subtle); border-radius:7px; padding:6px 9px; display:flex; align-items:center; gap:5px; min-height:28px; min-width:0; max-width:100%; font-size:11px; cursor:grab; }
.iw-option>span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.iw-option small { font-size:9px; color:var(--muted); }
.iw-option b { font-size:9px; padding:1px 4px; color:var(--accent); background:var(--soft); border-radius:3px; }
.iw-option i { font-style:normal; font-size:10px; color:var(--muted); }
.iw-option:hover,.iw-option.is-candidate { border-color:var(--line); background:var(--surface-subtle); }
.iw-option.is-in-card { color:var(--ink); }
.iw-option.is-dragging { opacity:.45; cursor:grabbing; }
.iw-option mark { background:var(--surface-subtle); color:var(--muted); border-radius:2px; }
.iw-target-switch { display:flex; align-items:center; gap:5px; font-size:10px; color:var(--muted); }
.iw-target-switch button { border-radius:5px; padding:4px 7px; border:1px solid var(--line); color:var(--muted); white-space:nowrap; }
.iw-target-switch button.is-current { background:var(--soft); border-color:var(--line); color:var(--accent); }
.iw-target-switch .iw-swap { margin-left:5px; }
.iw-no-result { color:var(--muted); font-size:12px; padding:10px 0; }
.iw-board-caption { display:flex; align-items:center; gap:12px; color:var(--muted); font-size:10px; padding:13px 0; flex-shrink:0; }
#iw-status { margin-left:auto; }
.iw-menu { position:relative; }
.iw-menu summary { cursor:pointer; list-style:none; font-size:17px; line-height:1; padding:0 5px; }
.iw-menu>div { position:absolute; top:22px; right:0; z-index:4; width:140px; padding:8px; background:white; border:1px solid var(--line); border-radius:10px; box-shadow:0 5px 20px var(--shadow-color); }
.iw-menu button { display:block; width:100%; font-size:11px; text-align:left; padding:8px; border-radius:6px; }
.iw-menu button:hover { background:var(--soft); }
.iw-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:minmax(0,1fr); align-items:stretch; gap:16px; flex:1; min-height:0; }
.iw-card { display:flex; flex-direction:column; height:100%; min-height:0; min-width:0; position:relative; border:1px solid var(--line); background:white; border-radius:12px; cursor:pointer; overflow:hidden; transform-origin:center; }
.iw-card.is-target { border-color:var(--line); }
.iw-card:focus-visible { outline:3px solid var(--focus); outline-offset:2px; }
.iw-card-header { padding:18px 20px 15px; border-bottom:1px solid var(--line); background:var(--surface-subtle); flex-shrink:0; }
.iw-card-location { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:10px; color:var(--muted); margin-bottom:14px; }
.iw-target-badge { font-size:9px; color:var(--muted); }
.is-target .iw-target-badge { color:var(--muted); }
.iw-card-heading { display:flex; align-items:flex-start; gap:12px; justify-content:space-between; }
.iw-card-heading>div { min-width:0; }
.iw-card-heading h2 { font-size:23px; font-weight:600; line-height:1.35; margin:0 0 8px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.iw-card-heading p { min-height:18px; line-height:15px; font-size:11px; color:var(--muted); margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.iw-card-heading p>span { margin-left:5px; background:var(--surface-subtle); padding:2px 5px; border-radius:4px; font-size:10px; }
.iw-favorite { width:31px; height:31px; display:inline-flex; justify-content:center; align-items:center; gap:7px; border-radius:7px; color:var(--muted); flex-shrink:0; }
.iw-favorite svg { width:21px; height:21px; }
.iw-favorite:hover { background:var(--surface-subtle); }
.iw-favorite.is-favorite { color:var(--muted); }
.iw-card-main { padding:18px 20px; flex:1; min-height:0; display:flex; flex-direction:column; justify-content:space-between; gap:16px; }
.iw-facts { display:grid; grid-template-columns:1fr 1fr; gap:38px 22px; margin:0; }
.iw-fact { min-width:0; }
.iw-fact dt { color:var(--muted); font-size:10px; margin-bottom:6px; }
.iw-fact dd { margin:0; font-size:14px; font-weight:500; line-height:1.45; color:var(--ink); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.iw-fact small { display:block; font-size:9px; color:var(--muted); margin-top:3px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.iw-card h3 { margin:0 0 9px; font-size:11px; font-weight:500; color:var(--muted); }
.is-missing,.iw-fact dd.is-missing { color:var(--muted); font-weight:400; }
.iw-allocation { --chart-1:#5a91be; --chart-2:#76a8b7; --chart-3:#bda17b; --chart-4:#83a48d; --chart-5:#8b7db6; --chart-6:#cf8176; --chart-7:#718596; --chart-8:#c2a34e; border-top:1px solid var(--line); padding-top:15px; }
.iw-allocation-bar { display:flex; height:8px; border-radius:4px; overflow:hidden; background:var(--surface-subtle); }
.iw-allocation-bar>span { flex-shrink:0; background:var(--segment); }
.iw-allocation-legend { display:flex; flex-wrap:wrap; gap:7px 12px; margin-top:8px; font-size:10px; color:var(--muted); }
.iw-allocation-legend i { width:5px; height:5px; border-radius:50%; display:inline-block; margin-right:4px; }
.iw-allocation-legend b { font-weight:500; color:var(--muted); }
.iw-data-note { color:#ad9375; font-size:9px; }
.iw-missing-line { font-size:12px; color:var(--muted); padding:5px 0; }
.iw-allocation-text { font-size:12px; line-height:1.6; margin:0; color:var(--muted); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.iw-investment { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.iw-investment section { min-width:0; }
.iw-investment p { margin:0; line-height:1.7; font-size:12px; color:var(--muted); white-space:pre-wrap; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.iw-investment p.is-missing { color:var(--muted); }
.iw-card-footer { display:flex; align-items:center; justify-content:flex-end; gap:14px; border-top:1px solid var(--line); padding:14px 20px; flex-shrink:0; font-size:11px; }
.iw-dividend-summary { display:grid; grid-template-columns:max-content minmax(0,1fr); grid-template-rows:15px 13px; align-content:center; align-items:baseline; column-gap:8px; flex:1 1 auto; min-width:0; height:32px; min-height:32px; max-height:32px; box-sizing:border-box; overflow:hidden; color:var(--muted); }
.iw-dividend-summary small { grid-column:1 / -1; min-width:0; overflow:hidden; font-size:9px; line-height:13px; text-overflow:ellipsis; white-space:nowrap; }
.iw-open-link { color:var(--muted); }
.iw-edit-link { color:var(--muted); }
.iw-card-actions { display:flex; align-items:center; gap:14px; flex-shrink:0; }
.iw-card-empty { flex:1; display:flex; flex-direction:column; justify-content:center; padding:40px; color:var(--muted); }
.iw-card-empty h2 { font-size:18px; font-weight:400; }
.iw-card-empty p { font-size:12px; line-height:1.9; }
.iw-drop-hint { display:none; position:absolute; inset:0; background:var(--surface-subtle); border:2px dashed var(--line); border-radius:11px; align-items:center; justify-content:center; flex-direction:column; gap:10px; font-size:22px; color:var(--muted); pointer-events:none; }
.iw-drop-hint small { font-size:12px; }
.iw-card.is-drop-target .iw-drop-hint { display:flex; }
/* Full reader only: the external workbench styles above and below are unchanged. */
.modal.iw-reader { width:min(1180px,95vw); height:auto; max-height:87dvh; display:flex; flex-direction:column; overflow:hidden; padding:22px 25px; border-radius:14px; }
.iw-reader .modal-head { flex-shrink:0; margin-bottom:10px; }
.iw-reader .modal-head h3 { font-size:18px; }
.iw-reader #modal-form { display:flex; flex-direction:column; flex:1; min-height:0; }
.ir-reader-toolbar { display:flex; align-items:center; justify-content:space-between; padding:0 0 12px; border-bottom:1px solid var(--line); flex-shrink:0; }
.ir-reader-toolbar>div { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.ir-reader-toolbar span { font-size:11px; color:var(--muted); }
.ir-reader-toolbar small { font-size:10px; color:var(--muted); }
.ir-reader-toolbar .iw-favorite { width:auto; padding:5px 8px; font-size:11px; }
.iw-reader-body { flex:1; overflow:auto; min-height:0; padding:18px 8px 14px 0; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:var(--surface-selected) transparent; }
.ir-columns { display:grid; grid-template-columns:minmax(0,3fr) minmax(0,2fr); gap:24px; align-items:start; }
.ir-depth,.ir-call { min-width:0; }
.ir-call { border-left:1px solid var(--line); padding-left:22px; }
.iw-reader .ir-section { margin:0 0 22px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.iw-reader h3 { margin:0 0 10px; font-size:14px; font-weight:600; color:var(--ink); }
.iw-reader .iw-full-text { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.85; color:var(--muted); margin:0; }
.ir-source { display:flex; flex-wrap:wrap; gap:5px 12px; font-size:10px; line-height:1.7; color:var(--muted); margin-top:11px; }
.ir-source span:last-child { flex-basis:100%; white-space:pre-wrap; overflow-wrap:anywhere; }
.ir-call-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
.ir-call-heading h3 { margin:0; }
.ir-call-heading span { font-size:10px; color:var(--muted); }
.iw-reader .ir-script { padding:13px 14px; margin:0 0 12px; border:1px solid var(--line); border-radius:10px; background:var(--surface-subtle); }
.iw-reader .ir-short { background:var(--surface-subtle); border-color:var(--line); }
.ir-script-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:10px; }
.ir-script-head h3 { margin:0; font-size:12px; }
.ir-script-head button { font-size:10px; color:var(--muted); border:1px solid var(--line); border-radius:5px; padding:4px 7px; white-space:nowrap; background:white; }
.iw-reader .ir-script .iw-full-text { font-size:12px; line-height:1.8; }
.iw-reader .ir-faq { background:white; }
.iw-reader .ir-official { border-top:1px solid var(--line); padding-top:16px; margin-top:18px; }
.ir-source-text { font-size:11px; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--muted); margin:0 0 10px; }
.ir-website { display:inline-block; margin:0 0 12px; font-size:11px; }
.iw-reader-attachment { display:flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:8px; padding:10px; margin-bottom:7px; font-size:11px; }
.iw-reader-attachment .icon { width:16px; height:16px; color:var(--muted); }
.iw-reader-attachment>span { flex:1; min-width:0; overflow-wrap:anywhere; }
.iw-reader-attachment>a { flex-shrink:0; }
.ir-products,.ir-notes { font-size:11px; color:var(--muted); margin-top:16px; }
.ir-products summary,.ir-notes summary { cursor:pointer; padding:8px 0; }
.ir-notes .iw-full-text { padding:8px 0; }
.iw-reader-product { display:flex; align-items:center; justify-content:space-between; padding:10px 0; width:100%; text-align:left; font-size:11px; border-bottom:1px solid var(--line); }
.iw-reader-footer { display:flex; align-items:center; gap:9px; border-top:1px solid var(--line); padding-top:13px; flex-shrink:0; }
.iw-reader-more { margin-left:auto; font-size:11px; color:var(--muted); }
.iw-reader-more summary { cursor:pointer; }
.ir-empty { border:1px dashed var(--line); background:var(--surface-subtle); padding:18px; border-radius:10px; }
.ir-empty h3 { font-size:13px; }
.ir-empty p,.ir-quiet { font-size:12px; line-height:1.8; color:var(--muted); margin:0; }
.modal.ir-editor { width:min(960px,95vw); height:88dvh; display:flex; flex-direction:column; overflow:hidden; }
.ir-editor .modal-head { flex-shrink:0; margin-bottom:14px; }
.ir-editor #modal-form { flex:1; min-height:0; display:flex; flex-direction:column; }
.ir-editor-body { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; padding:0 10px 10px 0; scrollbar-width:thin; }
.ir-editor .modal-footer { flex-shrink:0; margin-top:12px; }
.ir-editor fieldset { border:1px solid var(--line); border-radius:10px; padding:16px; margin:14px 0; }
.ir-editor legend { color:var(--muted); font-size:12px; padding:0 7px; }
.ir-editor-field { display:flex; flex-direction:column; gap:6px; margin-bottom:13px; min-width:0; }
.ir-editor-field>span { font-size:12px; color:var(--muted); }
.ir-editor-field>small,.ir-editor-note { font-size:11px; line-height:1.8; color:var(--muted); }
.ir-editor-field textarea { min-height:0; width:100%; resize:vertical; line-height:1.75; font-size:12px; }
.ir-editor-meta { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ir-editor #modal-error:not(.hidden) { flex-shrink:0; max-height:75px; overflow:auto; margin:5px 0; }
@media(max-width:760px) {
 .iw-reader .ir-columns { grid-template-columns:1fr; gap:15px; }
 .iw-reader .ir-call { padding:15px 0 0; border-left:0; border-top:1px solid var(--line); }
 .iw-reader-footer { flex-wrap:wrap; gap:5px; }
 .iw-reader .modal-head h3 { font-size:15px; }
}
@media(max-height:950px) and (min-width:1000px) {
 .iw-header { padding-bottom:14px; }
 .iw-title h1 { font-size:23px; margin-bottom:5px; }
 .iw-board { padding:14px; }
 .iw-board-caption { padding:10px 0; }
 .iw-card-header { padding:13px 17px 12px; }
 .iw-card-location { margin-bottom:10px; }
 .iw-card-heading h2 { font-size:21px; margin-bottom:6px; }
 .iw-card-main { padding:14px 17px; gap:10px; }
 .iw-card-main>dl,.iw-card-main>.iw-allocation,.iw-card-main>.iw-investment { flex-shrink:0; }
 .iw-facts { gap:34px 18px; }
 .iw-fact dd { font-size:13px; }
 .iw-allocation { padding-top:11px; }
 .iw-card-footer { padding:11px 17px; }
}
@media(max-width:1190px) {
 .iw-header { gap:12px; }
 .iw-title h1>span { display:none; }
 .iw-title p { font-size:10px; }
 .iw-search { width:37%; }
 .iw-search kbd { display:none; }
 .iw-selectors { grid-template-columns:170px minmax(0,1fr); gap:14px; }
 .iw-target-switch>span { display:none; }
 .iw-card-location { font-size:9px; }
 .iw-card-location .iw-target-badge { display:none; }
}
@media(max-width:999px) {
 .iw-header { flex-wrap:wrap; }
 .iw-title { flex-basis:100%; }
 .iw-search { flex:1; width:auto; }
 .iw-selectors { grid-template-columns:1fr; }
 .iw-recent { border-right:0; border-bottom:1px solid var(--line); padding:0 0 9px; }
 .iw-recent-items { height:32px; }
 .iw-board-caption>span:first-child { display:none; }
 .iw-cards { grid-template-columns:1fr; }
 .iw-card-main { min-height:340px; }
 .iw-board { flex:none; }
 .iw-title h1 { font-size:22px; }
}
@media(prefers-reduced-motion:reduce) { .iw-card { scroll-behavior:auto; } }

@media(max-height:790px) and (min-width:1000px) {
 .iw-header { padding:0 0 12px; }
 .iw-title h1 { font-size:22px; }
 .iw-title p { font-size:10px; }
 .iw-board { padding:12px; }
 .iw-selectors { gap:16px; }
 .iw-selector-title { height:22px; margin-bottom:6px; }
 .iw-recent-items,.iw-all { height:58px; gap:5px; }
 .iw-option { padding:5px 8px; min-height:25px; }
 .iw-board-caption { padding:9px 0; }
 .iw-card-header { padding:12px 16px; }
 .iw-card-location { margin-bottom:8px; }
 .iw-card-heading h2 { font-size:20px; margin-bottom:5px; }
 .iw-card-main { padding:12px 16px; gap:9px; }
 .iw-facts { gap:31px 18px; }
 .iw-fact dt { margin-bottom:4px; }
 .iw-card h3 { margin-bottom:6px; }
 .iw-allocation { padding-top:9px; }
 .iw-allocation-legend { margin-top:6px; font-size:9px; }
 .iw-investment p { font-size:11px; line-height:1.6; }
 .iw-card-footer { padding:10px 16px; }
}

.iw-option small.iw-match { max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
/* Focused product comparison layer; first-level insurer cards keep their existing layout. */
.modal.iw-compare{position:relative;width:min(1100px,96vw);height:min(90vh,880px);max-height:94vh;display:flex;flex-direction:column;padding:0;background:#fff;border:1px solid #e5ebf1;border-radius:24px;box-shadow:0 24px 70px rgba(21,43,66,.2);overflow:hidden}
.iw-compare .modal-head{position:absolute;z-index:3;top:8px;right:14px;display:grid;width:32px;height:32px;place-items:center;margin:0;border:0;padding:0}
.iw-compare .modal-head .close-x{display:grid;width:32px;height:32px;place-items:center;margin:0;border:0;border-radius:50%;padding:0;background:transparent;font-size:22px;line-height:1}
.iw-compare .modal-head .close-x:hover{background:#f2f6f8}
.iw-compare .modal-head h3{display:none}
.iw-compare #modal-form{flex:1;min-height:0;max-height:none;display:flex;flex-direction:column;overflow:hidden;padding:42px 28px 24px}
.iw-compare-selectors{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;gap:10px;margin:0 0 8px}
.iw-compare-selectors>section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;border:1px solid #e5ebf1;border-radius:14px;background:#fff}
.iw-compare-selectors select{min-width:0;width:100%;height:34px;border:1px solid #dce5ec;border-radius:9px;padding:0 9px;background:#fff;color:#172b3d}
.iw-compare-selectors>[data-action="iw-compare-swap"]{width:36px;height:36px;border:1px solid #d7e5ef;border-radius:50%;color:#286d9d;background:#f7fbfe;font-size:20px}
#iw-compare-cards{display:grid;flex:1;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}
.iw-compare-card{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border:1px solid #e1e8ee;border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(28,54,76,.045)}
.iw-compare-card>header{position:relative;min-height:104px;padding:14px 20px 11px;background:linear-gradient(145deg,#fff9f8,#fbf4f4 58%,#f8fbfd);border-bottom:1px solid #edf0f3}
.iw-compare-card-b>header{background:linear-gradient(145deg,#f5fbfa,#f4f9fc 65%,#f6fafc)}
.iw-compare-card>header>small{color:#53687a;font-size:12px}
.iw-compare-demo-badge{position:absolute;top:16px;right:18px;border-radius:20px;padding:4px 9px;background:#f1f3f5;color:#627283;font-size:10px;font-weight:500}
.iw-compare-card>header>div{margin-top:7px}
.iw-compare-card h2{margin:0;color:#172b3d;font-size:22px;line-height:1.22}
.iw-compare-meta,.iw-compare-position{display:block;margin:5px 0 0;color:#748494;font-size:11px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}
.iw-compare-meta{white-space:nowrap}
.iw-compare-card-body{display:flex;flex:1;min-height:0;flex-direction:column;overflow-y:auto;padding:12px 20px 10px}
.iw-compare-demo{margin:0 0 7px;color:#895f35;font-size:10px}
.iw-compare-card h4{margin:0 0 8px;color:#344b60;font-size:16px;font-weight:650}
.iw-compare-functions{display:flex;flex:0 0 auto;min-height:0;flex-direction:column;margin:0 0 4px}
.iw-compare-functions>div{display:flex;flex:0 0 auto;flex-direction:column}
.iw-compare-function{display:flex;flex:0 0 auto;padding:6px 0;border-bottom:1px solid #edf0f3}
.iw-compare-function-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#f3f7fa;color:#367da5}
.iw-compare-function-icon .icon{width:18px;height:18px}
.iw-compare-function>div>header{display:flex;align-items:center;gap:8px;min-height:24px}
.iw-compare-function strong{color:#263c50;font-size:14px;font-weight:650}
.iw-compare-function small{border-radius:12px;padding:2px 7px;background:#eef6f1;color:#47725b;font-size:10px}
.iw-compare-function small.is-unverified{background:#fbf6e9;color:#8a7040}
.iw-compare-function p,.iw-compare-functions-empty{margin:4px 0 0;color:#728292;font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.iw-compare-functions-empty{display:grid;flex:1;min-height:100px;place-items:center;color:#8a98a5}
.iw-compare-returns{flex:0 0 auto;margin:14px 0}
.iw-compare-returns h4 small{margin-left:6px;color:#7b8d9c;font-weight:400}
.iw-compare-demo-note,.iw-compare-demo-rates{color:#895f35!important;font-size:10px!important}
.iw-compare-demo-note{margin:0 0 6px}
.iw-compare-demo-rates{line-height:1.45}
.iw-compare-rates{line-height:1.45;color:#5f7180!important;font-size:10px!important;overflow-wrap:anywhere}
.iw-compare-returns>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.iw-compare-returns article{display:grid;gap:4px;min-width:0;padding:10px;border-radius:11px;background:#f4f8fb}
.iw-compare-returns article small{color:#718396;font-size:10px}
.iw-compare-returns article b{color:#20394e;font-size:16px}
.iw-compare-returns>p{margin:0;color:#748493;font-size:12px}
.iw-compare-card footer{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:42px;margin-top:auto;padding-top:10px;border-top:1px solid #edf0f3}
.iw-compare-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.iw-benefit-materials a{color:#286d9d;text-decoration:none}
.iw-benefit-materials a:hover{text-decoration:underline}
.iw-product-function-row{display:grid;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
.iw-product-function-title{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px}
.iw-product-function-status{padding-bottom:10px;color:var(--muted);font-size:11px;white-space:nowrap}
.iw-product-function-row textarea{min-height:54px}
.iw-returns-edit-list{display:grid;gap:8px;padding:10px 0}
.iw-returns-edit-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.iw-returns-edit-row .field{margin:0}
.iw-returns-edit-row.has-rates{row-gap:8px}
.iw-synthetic-demo-flag{margin-top:8px;color:#895f35}
.iw-compare-card footer>span{color:#8794a0;font-size:11px}
.iw-compare-empty{padding:24px;color:#778797}
@media(max-width:800px){.modal.iw-compare{width:min(640px,96vw);height:90vh}.iw-compare #modal-form{overflow-y:auto;padding:42px 20px 20px}.iw-compare-selectors{grid-template-columns:1fr}.iw-compare-selectors>[data-action="iw-compare-swap"]{justify-self:center;transform:rotate(90deg)}#iw-compare-cards{flex:none;grid-template-columns:1fr}.iw-compare-card{min-height:420px}}

.iw-header { position:relative; justify-content:center; gap:18px; padding:4px 48px 14px; }
.iw-selectors { grid-template-columns:minmax(0,1fr); }
.iw-search-wrap { position:relative; width:min(90%,1120px); max-width:1120px; }
.iw-search { width:100%; max-width:none; height:40px; padding:0; border:0; border-radius:0; background:transparent; }
.iw-search:focus-within { outline:none; border-color:var(--accent); }
.iw-search kbd { display:none; }
.iw-search-results { display:none; position:absolute; z-index:10; top:calc(100% + 8px); left:0; right:0; max-height:300px; overflow:auto; padding:6px 0; background:white; border-radius:10px; box-shadow:0 10px 32px var(--shadow-color); }
.iw-search-results.is-open { display:block; }
.iw-search-results button,.iw-search-results a { display:flex; width:100%; justify-content:space-between; align-items:center; gap:14px; padding:10px 12px; text-align:left; color:var(--ink); text-decoration:none; }
.iw-search-results button:hover,.iw-search-results a:hover { background:var(--surface-subtle); }
.iw-search-results b { font-size:12px; font-weight:500; }
.iw-search-results small,.iw-search-results p { color:var(--muted); font-size:10px; }
.iw-search-results p { padding:4px 12px; }
.iw-add { width:36px; height:36px; padding:0; }
.iw-header .iw-add { position:absolute; right:0; top:5px; }
.iw-board { padding:0; border:0; border-radius:0; background:transparent; }
.iw-selectors { grid-template-columns:minmax(145px,21%) minmax(0,1fr); gap:16px; }
.iw-recent { border:0; padding-right:0; }
.iw-selector-title { margin-bottom:5px; }
.iw-selector-title>span,.iw-target-switch>span { display:none; }
.iw-all { padding:1px 12px; }
.iw-option { border:0; border-radius:5px; background:transparent; padding:5px 7px; }
.iw-option:hover,.iw-option.is-candidate { background:var(--surface-subtle); }
.iw-target-switch { gap:2px; }
.iw-target-switch button { border:0; background:transparent; }
.iw-target-switch button.is-current { background:var(--surface-subtle); }
.iw-cards { margin-top:9px; }
.iw-card-header { border:0; background:transparent; }
.iw-allocation,.iw-card-footer { border:0; }

.workspace-shell .iw-search { border:0; border-radius:0; background:transparent; box-shadow:none; }
.workspace-shell .iw-search:focus-within { outline:none; border:0; box-shadow:none; }
.workspace-shell .iw-search input[type=search] { width:100%; height:40px; border:1px solid var(--line); border-radius:24px; background:white; padding:0 20px; box-shadow:none; }
.workspace-shell .iw-search input[type=search]:focus { outline:2px solid var(--soft); border-color:var(--accent); }
.insurer-workbench-page .iw-board { background:transparent; }
.insurer-workbench-page .iw-card { background:transparent; }
.insurer-workbench-page .iw-card.is-target { border-color:var(--line); box-shadow:var(--shadow-soft); }
.insurer-workbench-page .iw-card-header { box-shadow:none; }
.insurer-workbench-page .center { padding-bottom:20px; }
.insurer-workbench-page .iw-cards { min-height:0; }
.insurer-workbench-page .taskbar { display:none; }
.workspace-shell .iw-card-header { background:var(--surface-subtle); border-bottom:1px solid var(--line); }
.workspace-shell .iw-allocation { border-top:1px solid var(--line); padding-top:12px; }
.workspace-shell .iw-card-footer { border-top:1px solid var(--line); background:var(--surface-subtle); justify-content:space-between; gap:10px; }
.workspace-shell .iw-dividend-summary { color:var(--muted); }
.workspace-shell .iw-dividend-summary span { font-size:11px; }
.workspace-shell .iw-dividend-summary strong { color:var(--ink); font-size:14px; font-weight:600; white-space:nowrap; }
.workspace-shell .iw-dividend-summary small { font-size:9px; }
@media (max-width:760px) {
 .workspace-shell .iw-dividend-summary small { max-width:220px; }
}

/* Keep both insurer cards on the same visual rows when one company's copy is longer. */
.workspace-shell .iw-card-main { display:flex; flex-direction:column; justify-content:space-between; gap:10px; overflow:hidden; }
.workspace-shell .iw-facts { flex:0 0 102px; height:102px; min-height:0; gap:10px 22px; overflow:hidden; }
.workspace-shell .iw-allocation { flex:0 0 78px; height:78px; min-height:0; overflow:hidden; }
.workspace-shell .iw-allocation-content { min-width:0; }
.workspace-shell .iw-allocation-legend { flex-wrap:wrap; max-height:30px; min-height:0; overflow:hidden; white-space:normal; gap:5px 10px; }
.workspace-shell .iw-allocation-legend>span { flex:0 0 auto; max-width:100%; white-space:nowrap; }
.workspace-shell .iw-investment { flex:0 0 128px; height:128px; min-height:0; align-content:start; }
.workspace-shell .iw-investment p { -webkit-line-clamp:5; }
@media(max-height:790px) and (min-width:1000px) {
 .workspace-shell .iw-card-main { gap:4px; }
 .workspace-shell .iw-investment { flex-basis:112px; height:112px; }
 .workspace-shell .iw-investment p { -webkit-line-clamp:4; }
}
.iw-sales-detail { display:grid; gap:16px; }
.iw-sales-meta { margin:0; color:var(--muted); line-height:1.6; }
.iw-sales-functions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
.iw-sales-function { padding:12px 0; border-bottom:1px solid var(--line); }
.iw-sales-function strong { font-size:14px; }
.iw-sales-function p { margin:5px 0 0; color:var(--muted); line-height:1.6; }
.iw-sales-pdfs { display:flex; flex-wrap:wrap; align-items:center; gap:10px; border-top:1px solid var(--line); padding-top:14px; }
.iw-sales-pdfs strong { flex-basis:100%; font-size:14px; }
.iw-sales-pdfs a { padding:10px 12px; border:1px solid var(--line); border-radius:12px; color:var(--ink); text-decoration:none; }
.iw-sales-actions { display:flex; gap:10px; padding-top:4px; }
@media(max-width:760px) { .iw-sales-functions { grid-template-columns:1fr; } }
