/* NestMint Workplace — canonical presentation stylesheet (v149.559)
   One Workplace CSS source for shared shell, Employee, and Retiree presentation.
   Consumer-direct NestMint remains in app.css. */

/* Shared Workplace design system and Overview components */

.nm-wp-demo-switch { position: fixed; right: 16px; bottom: 16px; z-index: 9000; display: flex; align-items: center; gap: 8px; background: var(--color-surface, #fff); border: 1px solid var(--color-border, #d8dee6); border-radius: 999px; padding: 6px 10px; box-shadow: 0 6px 20px rgba(15, 33, 55, .18); }
.nm-wp-demo-label { font-size: 11px; font-weight: 600; color: var(--color-text-muted, #667); padding-right: 2px; }
.nm-wp-demo-switch button { border: 1px solid transparent; background: transparent; border-radius: 999px; padding: 4px 12px; font-size: 12px; font-weight: 600; cursor: pointer; color: var(--color-text, #223); }
.nm-wp-demo-switch button.active { background: var(--nm-tenant-accent, var(--color-primary)); color: #fff; }


.nm-wp-tenant-name { font-size: 15px; font-weight: 800; letter-spacing: .06em; color: var(--nm-tenant-accent, var(--color-primary)); }
.nm-wp-product { font-size: 13px; font-weight: 600; color: var(--color-text, #223); border-left: 1px solid var(--color-border, #d8dee6); padding-left: 8px; }
.nm-wp-powered { font-size: 11px; color: var(--color-text-muted, #667); }
body.nm-workplace .nm-ws-modes { display: none; } 


body[data-wp-shell="employee"] #workspace-kpis-growth, body[data-wp-shell="employee"] #workspace-growth-hint, body[data-wp-shell="employee"] #workspace-kpis-retirement, body[data-wp-shell="employee"] #workspace-kpi-hint, body[data-wp-shell="employee"] .nm-dash-middle { display: none; }
.nm-wpo { display: flex; flex-direction: column; gap: 18px; }
.nm-wpo-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 18px; align-items: start; }
.nm-wpo-main, .nm-wpo-side { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.nm-wpo-snapshot header, .nm-wpo-strategies header { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.nm-wpo-chips { list-style: none; margin: 12px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 10px; }
.nm-wpo-chips li { background: var(--color-surface-2, #f6f8fa); border: 1px solid var(--color-border, #e3e8ee); border-radius: 10px; padding: 10px; display: flex; flex-direction: column; gap: 2px; }
.nm-wpo-chips strong { font-size: 16px; }
.nm-wpo-chips small, .nm-wpo-figures small { color: var(--color-text-muted, #667); font-size: 11px; }
.nm-wpo-figures { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin-top: 10px; }
.nm-wpo-figures strong { font-size: 20px; display: block; }
#wpo-strategies { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
/* Workplace owns the panel padding on the surfaces it renders. Previously the
 * winning declaration was `#view-workspace .nm-panel` in app.css (consumer
 * sheet) at 18px, while workplace.css carried an inert `14px 16px` that lost
 * on specificity -- a cross-product ownership leak. Same value, declared by
 * the product that owns the surface, so the sheet says what the user sees. */
body.nm-workplace #view-workspace .nm-panel { padding: 18px; }

#wpo-strategies li { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--color-border, #e3e8ee); border-radius: 10px; }
#wpo-strategies li span { flex: 1; font-size: 13px; }
#wpo-strategies li b { font-variant-numeric: tabular-nums; }
#wpo-strategies li em { font-style: normal; font-weight: 700; color: var(--nm-tenant-accent, var(--color-primary)); min-width: 44px; text-align: right; }
.nm-wpo-track-row { display: flex; align-items: center; gap: 14px; margin: 8px 0; }
.nm-wpo-ring { width: 120px; flex: none; }
.nm-wpo-track-num strong { font-size: 26px; display: block; }
.nm-wpo-track-num em { font-style: normal; font-size: 11px; font-weight: 700; letter-spacing: .05em; color: var(--color-success, #1a7f4e); }
.nm-wpo-track-facts { margin: 8px 0 10px; }
.nm-wpo-track-facts div { display: flex; justify-content: space-between; gap: 10px; padding: 5px 0; border-bottom: 1px dashed var(--color-border, #e3e8ee); }
.nm-wpo-track-facts dt { color: var(--color-text-muted, #667); font-size: 12px; }
.nm-wpo-track-facts dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.nm-wpo-goal strong { font-size: 24px; display: block; margin: 2px 0 6px; }
.nm-wpo-goal-sub { margin: 6px 0 0; color: var(--color-text-muted, #667); font-size: 12px; }
@media (max-width: 900px) { .nm-wpo-grid { grid-template-columns: 1fr; } }


[data-nm-wp-retired="1"] { display: none ; }



.nm-wpo { gap: 14px; }
.nm-wpo-grid, .nm-wpo-main, .nm-wpo-side { gap: 14px; }
.nm-wpo-main .nm-panel h2, .nm-wpo-side .nm-panel h2 { margin-bottom: 10px; }
.nm-wpo-chips { margin-top: 8px; gap: 8px; }
.nm-wpo-chips li { padding: 8px; }
.nm-wpo-figures { margin-top: 6px; gap: 10px; }
.nm-wpo-strategies ul { gap: 5px; }
.nm-wpo-benefits p { margin: 4px 0; font-size: 12px; }
.nm-wpo-track-facts { margin: 6px 0 8px; }
.nm-wpo-goal strong { margin: 2px 0 4px; }


body[data-wp-shell="retiree"] #workspace-kpis-retirement, body[data-wp-shell="retiree"] #workspace-kpis-growth, body[data-wp-shell="retiree"] #workspace-kpi-hint, body[data-wp-shell="retiree"] #workspace-growth-hint, body[data-wp-shell="retiree"] .nm-dash-middle { display: none; }
.nm-wpr { display: flex; flex-direction: column; gap: 16px; }

/* The two overview shells declare display on .nm-wpo/.nm-wpr, which outranks
 * the UA stylesheet's [hidden]{display:none}. Without an authoritative
 * override, whichever shell is NOT current stays laid out and both mount at
 * once. The visibility contract belongs here, next to those declarations, and
 * must NOT be gated on a data-wp-shell VALUE: an overview is hidden whenever
 * its own renderer says so, regardless of which shell is current. The
 * attribute-presence selector only raises specificity so this reliably
 * outranks the shell-scoped display declarations further down the file. */
body.nm-workplace[data-wp-shell] #wp-emp-overview[hidden],
body.nm-workplace[data-wp-shell] #wp-ret-overview[hidden] { display: none; }
.nm-wpr-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.nm-wrt-tabs { display: flex; gap: 2px; background: var(--color-surface-2, #f2f5f8); border: 1px solid var(--color-border, #e3e8ee); border-radius: 10px; padding: 3px; overflow-x: auto; }
.nm-wrt-tab { padding: 7px 14px; border-radius: 8px; font-size: 13px; font-weight: 600; color: var(--color-text-muted, #556); text-decoration: none; white-space: nowrap; }
.nm-wrt-tab.active { background: var(--color-surface, #fff); color: var(--nm-tenant-accent, var(--color-primary)); box-shadow: 0 1px 3px rgba(15,33,55,.12); }
.nm-wpr-content { display: flex; flex-direction: column; gap: 16px; }


.nm-wpr-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.nm-wpr-kpis strong { font-size: 24px; display: block; margin: 4px 0 2px; }
.nm-wpr-kpis small { color: var(--color-text-muted, #667); font-size: 11px; }
.nm-wpr-pos-row { display: flex; align-items: center; gap: 12px; }
.nm-wpr-ring { width: 84px; height: 84px; flex: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: conic-gradient(var(--nm-tenant-accent, #1a7f4e) calc(var(--wpr-pos, 0) * 1%), var(--color-surface-2, #eef1f5) 0); }
.nm-wpr-ring::before { content: ''; position: absolute; width: 62px; height: 62px; border-radius: 50%; background: var(--color-surface, #fff); }
.nm-wpr-ring { position: relative; }
.nm-wpr-ring strong { position: relative; font-size: 17px; margin: 0; }
.nm-wpr-ring.is-empty { background: var(--color-surface-2, #eef1f5); }
.nm-wpr-pos-row em { font-style: normal; font-size: 12px; color: var(--color-text-muted, #667); }
.nm-wpr-chart-head { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#wpr-chart { width: 100%; height: 200px; margin-top: 8px; }
.nm-wpr-chart-legend { list-style: none; display: flex; gap: 14px; margin: 0; padding: 0; font-size: 11px; color: var(--color-text-muted, #667); }
.nm-wpr-chart-legend .is-median { color: var(--nm-tenant-accent, #1a7f4e); font-weight: 700; }
.nm-wpr-row2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; align-items: start; }
.nm-wpr-donut-wrap { display: flex; align-items: center; gap: 16px; margin: 10px 0; }
.nm-wpr-donut { width: 110px; height: 110px; border-radius: 50%; flex: none; position: relative; }
.nm-wpr-donut::before { content: ''; position: absolute; inset: 26px; border-radius: 50%; background: var(--color-surface, #fff); }
.nm-wpr-donut.is-empty { background: var(--color-surface-2, #eef1f5); }
.nm-wpr-legend { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 5px; font-size: 12px; flex: 1; }
.nm-wpr-legend li { display: flex; align-items: center; gap: 7px; }
.nm-wpr-legend i { width: 9px; height: 9px; border-radius: 3px; flex: none; }
.nm-wpr-legend span { flex: 1; }
.nm-wpr-legend b { font-variant-numeric: tabular-nums; }
.nm-wpr-legend em { font-style: normal; color: var(--color-text-muted, #667); min-width: 34px; text-align: right; }
.nm-wpr-donut-total { display: flex; justify-content: space-between; border-top: 1px solid var(--color-border, #e3e8ee); padding-top: 8px; font-size: 13px; }


.nm-wpr-row3 { display: grid; grid-template-columns: 1.2fr 1fr; gap: 16px; align-items: start; }
@media (max-width: 900px) { .nm-wpr-row3 { grid-template-columns: 1fr; } }
.nm-wpo-snapshot-h { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.nm-wpr-strat-list { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.nm-wpr-strat-list li { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--color-border, #e3e8ee); border-radius: 10px; }
.nm-wpr-strat-list li span { flex: 1; font-size: 13px; }
.nm-wpr-strat-list li b { font-variant-numeric: tabular-nums; }
.nm-wpr-strat-list li em { font-style: normal; font-weight: 700; min-width: 84px; text-align: right; font-size: 12px; }
.nm-wpr-strat-list li em.is-up { color: var(--color-success, #1a7f4e); }
.nm-wpr-strat-list li em.is-down { color: var(--color-danger, #c0392b); }
.nm-wpr-strat-list li em.is-current { color: var(--color-text-muted, #667); }
.nm-wpr-next-list { list-style: none; margin: 10px 0 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.nm-wpr-next-list a { display: flex; flex-direction: column; gap: 2px; padding: 9px 10px; border: 1px solid var(--color-border, #e3e8ee); border-radius: 10px; text-decoration: none; color: inherit; }
.nm-wpr-next-list a:hover { border-color: var(--nm-tenant-accent, var(--color-primary)); }
.nm-wpr-next-list strong { font-size: 13px; }
.nm-wpr-next-list small { color: var(--color-text-muted, #667); font-size: 11.5px; }



.nm-dash-user { flex-wrap: wrap; }
.nm-dash-user .nm-wp-user-role {
  display: block;
  flex-basis: 100%;
  order: 5;
  font-style: normal;
  font-size: 11px;
  line-height: 1.1;
  color: var(--color-text-muted, #6b7686);
  text-align: left;
  padding-left: calc(28px + var(--space-2, 8px)); 
}
body.nm-workplace .nm-dash-user { padding-top: 4px; padding-bottom: 4px; }


  font-size: 10px;
  color: var(--color-text-muted, #6b7686);
  opacity: .8;
  margin-left: var(--space-2, 8px);
  letter-spacing: .02em;
}





body.nm-workplace { --wp-navy:#062b4d; --wp-navy-2:#0a3a61; --wp-green:#0c8a49; --wp-bg:#f6f8fa; --wp-line:#dfe5eb; --wp-muted:#64748b; background:var(--wp-bg); }
body.nm-workplace .app-header { display:none; }
/* v149.560-r5.25 — consumer sidebar moved to body-level #nm-app-sidebar
   (consumer app-shell). Core REMOVES it at boot (retireConsumerSidebar);
   this is the CSS belt for the window before cleanup runs. */
body.nm-workplace #nm-app-sidebar { display:none; }
body.nm-workplace #main-content { padding-top:0; }
body.nm-workplace .view.active:not(#view-workspace):not(#view-welcome) { margin-left:220px; padding-top:64px; min-height:100vh; background:var(--wp-bg); }
body.nm-workplace .view.active:not(#view-workspace):not(#view-welcome) > .calc-container,
body.nm-workplace .view.active:not(#view-workspace):not(#view-welcome) > .container,
body.nm-workplace .view.active:not(#view-workspace):not(#view-welcome) > .dashboard-container { max-width:none; width:auto; margin:0; padding:22px 28px 34px; }
.nm-wp-global-sidebar { position:fixed; left:0; top:0; bottom:0; z-index:1200; width:220px; min-height:100vh; overflow-y:auto; border-radius:0; box-shadow:none; }
.nm-wp-global-sidebar[hidden], .nm-wp-global-topbar[hidden] { display:none; }
.nm-wp-global-topbar { position:fixed; z-index:1190; left:220px; right:0; top:0; height:64px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 28px; background:#fff; border-bottom:1px solid var(--wp-line); }
.nm-wp-global-brand { display:flex; align-items:center; gap:16px; min-width:0; }
.nm-wp-global-brand strong { color:#1745b8; font-size:20px; letter-spacing:.04em; }
.nm-wp-global-brand span { border-left:1px solid var(--wp-line); padding-left:16px; color:#102a43; font-size:14px; font-weight:700; }
.nm-wp-global-actions { display:flex; align-items:center; gap:16px; font-size:12px; }
.nm-wp-global-actions a { color:#183b56; text-decoration:none; font-weight:600; }
body.nm-workplace .nm-dash-sidebar { background:linear-gradient(180deg,#032846 0%,#062f53 55%,#052a4c 100%); }
body.nm-workplace .nm-dash-brand { color:#fff; }
body.nm-workplace .nm-dash-brand svg { color:#17b963; }
body.nm-workplace .nm-nav-section-label { color:#19b75f; letter-spacing:.08em; font-size:10px; }
body.nm-workplace .nm-dash-nav a, body.nm-workplace .nm-howto-sidelink { border-radius:7px; color:#f6fbff; font-size:13px; }
body.nm-workplace .nm-dash-nav a.active, body.nm-workplace .nm-dash-nav a:hover, body.nm-workplace .nm-howto-sidelink:hover { background:linear-gradient(90deg,#0d7b48,#0a6347); color:#fff; }
body.nm-workplace .nm-dash-help { border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04); border-radius:10px; }
body.nm-workplace .nm-dash-help strong, body.nm-workplace .nm-dash-help p, body.nm-workplace .nm-dash-help a { color:#fff; }


body.nm-workplace .calc-container, body.nm-workplace .dashboard-container, body.nm-workplace .wizard-shell { background:transparent; }
body.nm-workplace .calc-header, body.nm-workplace .dash-header, body.nm-workplace .nm-planner-header, body.nm-workplace .wz-step-head { border:none; background:transparent; box-shadow:none; }
body.nm-workplace .page-title, body.nm-workplace .dash-header h1, body.nm-workplace .wz-step-head h1, body.nm-workplace .nm-legacy-hero h2 { color:#102a43; letter-spacing:-.025em; }
body.nm-workplace .input-card, body.nm-workplace .sim-card, body.nm-workplace .dashboard-card, body.nm-workplace .planning-tool-card,
body.nm-workplace .wz-card, body.nm-workplace .wz8-sidecard, body.nm-workplace .nm-panel, body.nm-workplace .post-strategy-section,
body.nm-workplace .nm-legacy-context, body.nm-workplace .nm-legacy-main, body.nm-workplace .nm-report-card { background:#fff; border:1px solid var(--wp-line); border-radius:11px; box-shadow:0 1px 3px rgba(15,42,65,.04); }
body.nm-workplace .input-card-title, body.nm-workplace .planning-tool-label, body.nm-workplace .wz-card h2 { color:#102a43; }
body.nm-workplace .btn-primary, body.nm-workplace .wz-btn-primary { background:var(--wp-green); border-color:var(--wp-green); }
body.nm-workplace .btn-primary:hover, body.nm-workplace .wz-btn-primary:hover { background:#08763e; border-color:#08763e; }
body.nm-workplace input:focus, body.nm-workplace select:focus, body.nm-workplace textarea:focus { border-color:var(--wp-green); box-shadow:0 0 0 3px rgba(12,138,73,.10); }
body.nm-workplace table { border-color:var(--wp-line); }
body.nm-workplace th { background:#f4f7f9; color:#31475b; }
body.nm-workplace tbody tr:hover { background:#f7fbf8; }


body.nm-workplace #view-pre-retirement .calc-layout { gap:16px; }
body.nm-workplace #view-pre-retirement .calc-inputs, body.nm-workplace #view-pre-retirement .calc-results { gap:14px; }
body.nm-workplace #view-pre-retirement .se-hero-card, body.nm-workplace #view-pre-retirement .chart-card,
body.nm-workplace #view-pre-retirement .planning-tools-section, body.nm-workplace #view-pre-retirement .saved-scenarios-section { border-radius:11px; border-color:var(--wp-line); box-shadow:0 1px 3px rgba(15,42,65,.04); }
body.nm-workplace #view-pre-simulator .sim-card { padding:18px; }


body.nm-workplace #view-planner-wizard .wizard-container { max-width:1280px; margin:0 auto; padding:20px 26px 40px; }
body.nm-workplace #view-planner-wizard .wz-progress { background:#fff; border:1px solid var(--wp-line); border-radius:11px; }
body.nm-workplace #view-planner-wizard .wz-card { box-shadow:none; }
body.nm-workplace #view-post-retirement .form-section, body.nm-workplace #view-post-retirement details.form-section { border:1px solid var(--wp-line); border-radius:11px; background:#fff; }


body.nm-workplace #view-dashboard .dashboard-shell { background:transparent; }
body.nm-workplace #view-dashboard .tab-bar, body.nm-workplace #view-dashboard .dashboard-tabs { background:#fff; border:1px solid var(--wp-line); border-radius:10px; padding:4px; }
body.nm-workplace #view-dashboard .tab-btn.active, body.nm-workplace #view-dashboard [role="tab"].active { color:var(--wp-green); border-color:var(--wp-green); }
body.nm-workplace #dash-strategies-view .strategy-card, body.nm-workplace #dash-strategies-view .comparison-card { border-radius:11px; border-color:var(--wp-line); }
body.nm-workplace #dash-charts-view .chart-card { border:1px solid var(--wp-line); border-radius:11px; background:#fff; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-card, body.nm-workplace #dash-spreadsheet-view .table-card { border:1px solid var(--wp-line); border-radius:11px; background:#fff; }
body.nm-workplace #dash-deepdive-view .planning-tool-card { margin-bottom:10px; overflow:hidden; }
body.nm-workplace #dash-deepdive-view .planning-tool-toggle { min-height:54px; padding:12px 16px; background:#fff; }
body.nm-workplace #dash-deepdive-view .planning-tool-body { border-top:1px solid var(--wp-line); background:#fbfcfd; padding:16px; }
body.nm-workplace #dash-legacy-view .nm-legacy-hero { border:1px solid var(--wp-line); border-radius:11px; background:linear-gradient(120deg,#fff 0%,#f1faf5 100%); }
body.nm-workplace #dash-legacy-view .nm-legacy-layout { gap:14px; }


.nm-wp-page { max-width:1320px; margin:0 auto; padding:20px 28px 26px; }
.nm-wp-page-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:14px; }
.nm-wp-page-head h1 { margin:2px 0 4px; color:#102a43; font-size:27px; letter-spacing:-.025em; }
.nm-wp-page-head p { margin:0; color:var(--wp-muted); font-size:13px; }
.nm-wp-eyebrow { color:var(--wp-green); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.nm-al-info { display:flex; align-items:center; gap:12px; padding:10px 14px; border:1px solid #cfdcf1; border-radius:9px; background:#f8fbff; margin-bottom:12px; }
.nm-al-info>span { width:24px; height:24px; border-radius:50%; display:grid; place-items:center; color:#165ec9; border:2px solid #165ec9; font-weight:800; }
.nm-al-info p { margin:0; font-size:12px; line-height:1.4; }
.nm-al-summary-row { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:12px; }
.nm-al-summary-row article { background:#fff; border:1px solid var(--wp-line); border-radius:10px; padding:12px 16px; }
.nm-al-summary-row small { display:block; color:var(--wp-muted); font-size:11px; }
.nm-al-summary-row strong { display:block; color:var(--wp-green); font-size:21px; margin-top:3px; }
.nm-al-summary-row .is-liability strong, .is-liability { color:#d22f3f; }
.nm-al-input-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.nm-al-input-card { padding:14px 16px; }
.nm-al-input-card h2 { margin:0 0 2px; font-size:17px; color:#102a43; }
.nm-al-card-note { margin:0 0 6px; color:var(--wp-muted); font-size:10.5px; }
.nm-al-row { display:grid; grid-template-columns:1fr 150px; align-items:center; gap:10px; padding:6px 0; border-bottom:1px solid #edf0f3; }
.nm-al-row label { font-size:12px; font-weight:600; color:#223b53; }
.nm-money-input { display:flex; align-items:center; border:1px solid #d6dde5; border-radius:7px; background:#fff; overflow:hidden; }
.nm-money-input b { padding-left:9px; font-size:12px; }
.nm-money-input input { width:100%; border:0; box-shadow:none; padding:7px 8px; text-align:right; font-size:12px; }
.nm-al-bottom-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:12px; }
.nm-al-bottom-row article { padding:12px 16px; }
.nm-al-bottom-row h3 { margin:0 0 4px; font-size:14px; }
.nm-al-bottom-row p { margin:0; font-size:11px; color:var(--wp-muted); line-height:1.45; }
.nm-al-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; padding-top:12px; }
.nm-al-actions .btn { min-width:min(190px,100%); max-width:100%; }
.nm-al-networth { padding:14px 18px; margin-bottom:12px; }
.nm-al-overview-head { flex-wrap:wrap; gap:14px; }
.nm-al-overview-head > div { flex:1 1 260px; min-width:0; }
.nm-al-overview-head > .btn { max-width:100%; white-space:normal; }
.nm-al-networth h2 { margin:0 0 10px; font-size:15px; }
.nm-al-networth-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:14px 0; }
.nm-al-networth-grid>div { padding:0 22px; border-right:1px solid var(--wp-line); }
.nm-al-networth-grid>div:last-child { border-right:0; }
.nm-al-networth-grid small { color:var(--wp-muted); font-size:10px; display:block; }
.nm-al-networth-grid strong { color:#102a43; font-size:22px; }
.nm-al-networth-grid>div:first-child strong { color:var(--wp-green); }
.nm-al-networth>p { margin:9px 0 0; padding-top:7px; border-top:1px solid var(--wp-line); color:var(--wp-muted); font-size:10px; }
.nm-al-overview-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:12px; }
.nm-al-breakdown { padding:13px 15px; min-width:0; container-type:inline-size; }
.nm-al-breakdown>header { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; align-items:center; }
.nm-al-breakdown h2 { margin:0; font-size:16px; }
.nm-al-breakdown header>strong { color:var(--wp-green); font-size:19px; }
.nm-al-breakdown-body { display:grid; grid-template-columns:150px minmax(0,1fr); gap:14px; align-items:center; margin-top:8px; }
.nm-al-donut { width:150px; height:150px; margin:auto; border-radius:50%; position:relative; }
.nm-al-donut::after { content:''; position:absolute; inset:40px; background:#fff; border-radius:50%; }
.nm-al-thead,.nm-al-data-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(82px,max-content) 52px; gap:8px; align-items:center; }
.nm-al-thead { color:var(--wp-muted); font-size:9.5px; font-weight:700; padding:5px 0; border-bottom:1px solid var(--wp-line); }
.nm-al-data-row { padding:6px 0; border-bottom:1px solid #edf0f3; font-size:10.5px; }
.nm-al-data-row b,.nm-al-data-row em { text-align:right; font-style:normal; font-variant-numeric:tabular-nums; }
.nm-al-overview-lower { display:grid; grid-template-columns:1.6fr .9fr .9fr; gap:12px; margin-top:12px; }
.nm-al-history,.nm-al-top { padding:12px 14px; min-height:185px; }
.nm-al-history header { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:10px; }
.nm-al-history h2,.nm-al-top h2 { margin:0 0 6px; font-size:15px; }
.nm-al-history header small { color:var(--wp-muted); font-size:9.5px; }
#al-history-chart { width:100%; height:120px; }
.nm-al-top-row { display:flex; justify-content:space-between; gap:12px; padding:7px 0; border-bottom:1px solid #edf0f3; font-size:10.5px; }
.nm-al-top-row b { font-variant-numeric:tabular-nums; }
.nm-al-note { margin-top:12px; border:1px solid #d7e3ef; background:#f8fbfd; border-radius:9px; padding:9px 12px; color:#40566b; font-size:10px; }

@media (max-width: 980px) {
  body.nm-workplace .view.active:not(#view-workspace):not(#view-welcome) { margin-left:0; padding-top:64px; }
  .nm-wp-global-sidebar { display:none; }
  .nm-wp-global-topbar { left:0; }
  .nm-al-input-grid,.nm-al-overview-grid,.nm-al-overview-lower { grid-template-columns:1fr; }
  .nm-al-summary-row { grid-template-columns:1fr; }
  .nm-al-breakdown-body { grid-template-columns:150px minmax(0,1fr); }
}
@container (max-width: 490px) {
  .nm-al-breakdown-body { grid-template-columns:minmax(0,1fr); }
}


body.nm-workplace {
  --wp-ink:#102a43;
  --wp-ink-2:#193b59;
  --wp-muted:#65758b;
  --wp-green:#0b8a49;
  --wp-green-dark:#08753e;
  --wp-green-soft:#eef9f3;
  --wp-blue:#175bc5;
  --wp-bg:#f7f9fb;
  --wp-card:#ffffff;
  --wp-line:#e1e7ed;
  --wp-line-strong:#d3dce5;
  --wp-danger:#d63a43;
  --wp-warning:#d69512;
  --wp-shadow:0 1px 3px rgba(15,42,65,.045);
  --wp-radius:10px;
  color:var(--wp-ink);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.nm-workplace * { box-sizing:border-box; }
body.nm-workplace .view.active:not(#view-welcome):not(#view-workspace) {
  background:var(--wp-bg);
}
body.nm-workplace .view.active:not(#view-welcome):not(#view-workspace) > .calc-container,
body.nm-workplace .view.active:not(#view-welcome):not(#view-workspace) > .container,
body.nm-workplace .view.active:not(#view-welcome):not(#view-workspace) > .dashboard-container,
body.nm-workplace .view.active:not(#view-welcome):not(#view-workspace) > .wz-shell {
  max-width:1500px;
  margin:0 auto;
}


body.nm-workplace .calc-header,
body.nm-workplace .dash-header,
body.nm-workplace .nm-planner-header,
body.nm-workplace .wz-step-head,
body.nm-workplace .nm-report-header,
body.nm-workplace .budget-header {
  padding:0 0 14px;
  margin:0 0 14px;
  border:0;
  background:transparent;
  box-shadow:none;
}
body.nm-workplace .page-title,
body.nm-workplace .dash-header h1,
body.nm-workplace .nm-planner-header h1,
body.nm-workplace .wz-step-head h1,
body.nm-workplace .nm-report-header h1,
body.nm-workplace .budget-header h1 {
  margin:0;
  color:var(--wp-ink);
  font-size:26px;
  line-height:1.15;
  font-weight:760;
  letter-spacing:-.032em;
}
body.nm-workplace .page-subtitle,
body.nm-workplace .dash-header p,
body.nm-workplace .wz-step-head p,
body.nm-workplace .nm-report-header p,
body.nm-workplace .budget-header p {
  margin:5px 0 0;
  color:var(--wp-muted);
  font-size:12.5px;
  line-height:1.5;
}
body.nm-workplace h2 { color:var(--wp-ink); letter-spacing:-.015em; }
body.nm-workplace h3 { color:var(--wp-ink-2); }


body.nm-workplace :is(.input-card,.sim-card,.dashboard-card,.chart-card,.spreadsheet-card,.table-card,.planning-tool-card,.post-strategy-section,.strategy-card,.comparison-card,.wz-card,.wz8-sidecard,.nm-panel,.nm-legacy-context,.nm-legacy-main,.nm-report-card,.form-section,.budget-card,.dd-card,.dd-rail-card,.dd-strip-card,.roth-ex-kpi,.st-scenario-card,.ov-panel) {
  border:1px solid var(--wp-line);
  border-radius:var(--wp-radius);
  background:var(--wp-card);
  box-shadow:var(--wp-shadow);
}
body.nm-workplace :is(.input-card,.sim-card,.dashboard-card,.chart-card,.post-strategy-section,.wz-card,.nm-panel,.nm-report-card) {
  padding:16px;
}
body.nm-workplace :is(.input-card-title,.chart-title,.planning-tool-label,.wz-card h2,.nm-panel h2,.post-strategy-section h2) {
  color:var(--wp-ink);
  font-weight:740;
}
body.nm-workplace :is(.field-hint,.chart-note,.form-hint,.wz-hint,.planning-tool-desc,.nm-muted) {
  color:var(--wp-muted);
}


body.nm-workplace :is(input[type="text"],input[type="number"],input[type="email"],input[type="date"],select,textarea,.form-select) {
  min-height:38px;
  border:1px solid #d6dee7;
  border-radius:7px;
  background:#fff;
  color:var(--wp-ink);
  box-shadow:none;
}
body.nm-workplace :is(input,select,textarea):focus {
  border-color:var(--wp-green);
  box-shadow:0 0 0 3px rgba(11,138,73,.10);
  outline:0;
}
body.nm-workplace :is(.btn,.wz-btn,.wz-btn-primary,.wz-btn-secondary) {
  min-height:36px;
  border-radius:7px;
  box-shadow:none;
  font-weight:700;
}
body.nm-workplace :is(.btn-primary,.btn-accent,.wz-btn-primary) {
  background:var(--wp-green);
  border-color:var(--wp-green);
  color:#fff;
}
body.nm-workplace :is(.btn-primary,.btn-accent,.wz-btn-primary):hover { background:var(--wp-green-dark); }
body.nm-workplace :is(.btn-secondary,.btn-ghost,.wz-btn-secondary) {
  background:#fff;
  border:1px solid var(--wp-line-strong);
  color:var(--wp-ink-2);
}
body.nm-workplace input[type="range"] { accent-color:var(--wp-green); }


body.nm-workplace :is(.kpi-row,.dash-kpis,.wz2-summary,.wz6-summary,.wz7-summary) {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:0;
  overflow:hidden;
  border:1px solid var(--wp-line);
  border-radius:var(--wp-radius);
  background:#fff;
  box-shadow:var(--wp-shadow);
}
body.nm-workplace :is(.kpi-card,.wz2-summary-item,.wz6-summary-item,.wz7-summary-item) {
  min-width:0;
  padding:14px 16px;
  border:0;
  border-right:1px solid var(--wp-line);
  border-radius:0;
  background:#fff;
  box-shadow:none;
}
body.nm-workplace :is(.kpi-card,.wz2-summary-item,.wz6-summary-item,.wz7-summary-item):last-child { border-right:0; }
body.nm-workplace .kpi-label,
body.nm-workplace :is(.wz2-summary-label,.wz6-summary-label,.wz7-summary-label) {
  color:var(--wp-muted);
  font-size:10px;
  font-weight:700;
  line-height:1.3;
  text-transform:none;
  letter-spacing:0;
}
body.nm-workplace .kpi-value,
body.nm-workplace :is(.wz2-summary-value,.wz6-summary-value,.wz7-summary-value) {
  margin-top:4px;
  color:var(--wp-green);
  font-size:22px;
  line-height:1.05;
  font-weight:760;
  letter-spacing:-.025em;
}
body.nm-workplace .kpi-delta,
body.nm-workplace :is(.wz2-summary-sub,.wz6-summary-sub,.wz7-summary-sub) { color:var(--wp-muted); font-size:9.5px; }


body.nm-workplace :is(.spreadsheet-card,.table-card) { padding:0; overflow:hidden; }
body.nm-workplace :is(.spreadsheet-header,.table-card-header) {
  padding:13px 16px;
  border-bottom:1px solid var(--wp-line);
  background:#fff;
}
body.nm-workplace table { border-collapse:separate; border-spacing:0; width:100%; }
body.nm-workplace th {
  padding:9px 10px;
  background:#f5f7f9;
  border-color:var(--wp-line);
  color:#53657a;
  font-size:9.5px;
  font-weight:750;
  text-transform:none;
  letter-spacing:0;
}
body.nm-workplace td {
  padding:9px 10px;
  border-color:#edf0f3;
  color:#263b50;
  font-size:10.5px;
}
body.nm-workplace tbody tr:nth-child(even) td { background:#fbfcfd; }
body.nm-workplace tbody tr:hover td { background:#f3faf6; }


body.nm-workplace #view-pre-retirement .calc-container { padding:22px 28px 32px; }
body.nm-workplace #view-pre-retirement .calc-layout {
  display:grid;
  grid-template-columns:minmax(300px,360px) minmax(0,1fr);
  gap:14px;
  align-items:start;
}
body.nm-workplace #view-pre-retirement .calc-inputs,
body.nm-workplace #view-pre-retirement .calc-results { gap:12px; }
body.nm-workplace #view-pre-retirement .calc-inputs .input-card { padding:14px 15px; }
body.nm-workplace #view-pre-retirement .form-field { margin-bottom:10px; }
body.nm-workplace #view-pre-retirement .form-field label { color:#334b62; font-size:10.5px; font-weight:700; }
body.nm-workplace #view-pre-retirement .prex-savings-block { border:0; padding:0; background:transparent; }
body.nm-workplace #view-pre-retirement .prex-savings-grand-total {
  margin-top:8px; padding:10px 12px; border:1px solid #d9ebe1;
  border-radius:8px; background:var(--wp-green-soft);
}
body.nm-workplace #view-pre-retirement .se-hero-grid {
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0;
  border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:#fff; overflow:hidden;
}
body.nm-workplace #view-pre-retirement .se-hero-card {
  border:0; border-right:1px solid var(--wp-line); border-radius:0; box-shadow:none; background:#fff; padding:14px;
}
body.nm-workplace #view-pre-retirement .se-hero-card:last-child { border-right:0; }
body.nm-workplace #view-pre-retirement .se-hero-label { color:var(--wp-muted); font-size:9.5px; }
body.nm-workplace #view-pre-retirement .se-hero-value { color:var(--wp-ink); font-size:20px; }
body.nm-workplace #view-pre-retirement .view-toggle {
  display:inline-flex; padding:3px; gap:2px; border:1px solid var(--wp-line); border-radius:8px; background:#fff;
}
body.nm-workplace #view-pre-retirement .view-toggle-btn { border:0; border-radius:6px; background:transparent; color:var(--wp-muted); }
body.nm-workplace #view-pre-retirement .view-toggle-btn.active { background:var(--wp-green-soft); color:var(--wp-green); }
body.nm-workplace #view-pre-retirement .chart-grid { gap:12px; }
body.nm-workplace #view-pre-retirement .chart-card { min-height:280px; }
body.nm-workplace #view-pre-retirement .planning-tools-section {
  padding:16px; border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:#fff; box-shadow:var(--wp-shadow);
}
body.nm-workplace #view-pre-retirement .planning-tools-grid { gap:8px; }
body.nm-workplace #view-pre-retirement .planning-tool-card { padding:12px 14px; box-shadow:none; }
body.nm-workplace #view-pre-retirement .pre-scenarios-card { border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:#fff; box-shadow:var(--wp-shadow); }


body.nm-workplace #view-pre-simulator .calc-container { padding:22px 28px 32px; }
body.nm-workplace #view-pre-simulator .sim-starting-balance {
  border:1px solid #d7e5dd; border-radius:var(--wp-radius); background:var(--wp-green-soft); color:var(--wp-ink);
}
body.nm-workplace #view-pre-simulator .sim-grid {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;
}
body.nm-workplace #view-pre-simulator .sim-card { padding:16px; min-height:0; }
body.nm-workplace #view-pre-simulator .sim-card-header { gap:10px; margin-bottom:12px; }
body.nm-workplace #view-pre-simulator .sim-card-icon { background:var(--wp-green-soft); color:var(--wp-green); border-radius:8px; }
body.nm-workplace #view-pre-simulator .sim-answer { color:var(--wp-green); font-weight:760; }


body.nm-workplace #view-planner-wizard { --wz-green:var(--wp-green); }
body.nm-workplace #view-planner-wizard .wz-shell {
  display:block; width:auto; max-width:1500px; min-height:0; padding:22px 28px 32px; background:transparent;
}

body.nm-workplace #view-planner-wizard .wz-side {
  position:relative; inset:auto; width:100%; min-height:0; margin:0 0 14px; padding:14px 16px;
  border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:#fff; box-shadow:var(--wp-shadow); color:var(--wp-ink);
}
body.nm-workplace #view-planner-wizard .wz-side-head { display:flex; align-items:center; gap:14px; margin:0 0 10px; }
body.nm-workplace #view-planner-wizard .wz-kicker { color:var(--wp-green); font-size:10px; }
body.nm-workplace #view-planner-wizard .wz-tagline { margin:0; color:var(--wp-muted); font-size:11px; }
body.nm-workplace #view-planner-wizard .wz-changeplan,
body.nm-workplace #view-planner-wizard .wz-dashboard-btn,
body.nm-workplace #view-planner-wizard .wz-howto-link { display:none; }
body.nm-workplace #view-planner-wizard .wz-progress { padding:0; margin:0 0 10px; border:0; border-radius:0; box-shadow:none; }
body.nm-workplace #view-planner-wizard .wz-progress-label,
body.nm-workplace #view-planner-wizard .wz-progress-count { color:var(--wp-muted); font-size:9.5px; }
body.nm-workplace #view-planner-wizard .wz-progress-bar { height:4px; background:#e8edf1; }
body.nm-workplace #view-planner-wizard .wz-progress-fill { background:var(--wp-green); }
body.nm-workplace #view-planner-wizard .wz-side-nav {
  display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:6px; margin:0;
}
body.nm-workplace #view-planner-wizard .wz-side-step {
  min-height:38px; padding:7px 8px; border:1px solid var(--wp-line); border-radius:7px; background:#fff; color:#506276; font-size:9.5px; line-height:1.2; justify-content:flex-start;
}
body.nm-workplace #view-planner-wizard .wz-side-step.active { border-color:#a8d7ba; background:var(--wp-green-soft); color:var(--wp-green); }
body.nm-workplace #view-planner-wizard .wz-step-dot { width:20px; height:20px; min-width:20px; background:#edf2f5; color:#617286; font-size:9px; }
body.nm-workplace #view-planner-wizard .wz-side-step.active .wz-step-dot { background:var(--wp-green); color:#fff; }
body.nm-workplace #view-planner-wizard .wz-side-divider,
body.nm-workplace #view-planner-wizard .wz-side-link,
body.nm-workplace #view-planner-wizard .wz-help { display:none; }
body.nm-workplace #view-planner-wizard .wz-main { margin:0; padding:0; width:100%; max-width:none; }
body.nm-workplace #view-planner-wizard .wz-step { padding:0; }
body.nm-workplace #view-planner-wizard .wz-step-head { display:block; }
body.nm-workplace #view-planner-wizard .wz-step-head h1 { font-size:25px; }
body.nm-workplace #view-planner-wizard :is(.wz1-layout,.wz2-layout,.wz3-layout,.wz4-layout,.wz5-layout,.wz6-layout,.wz7-layout,.wz8-layout) { gap:12px; }
body.nm-workplace #view-planner-wizard .wz-card { padding:16px; }
body.nm-workplace #view-planner-wizard :is(.wz1-card-head,.wz2-card-head,.wz3-card-head,.wz4-card-head,.wz5-card-head,.wz6-card-head,.wz7-card-head) { padding-bottom:10px; margin-bottom:10px; border-bottom:1px solid #edf0f3; }
body.nm-workplace #view-planner-wizard .wz-footer {
  position:static; margin:14px 0 0; padding:12px 0 0; border-top:1px solid var(--wp-line); background:transparent; box-shadow:none;
}
body.nm-workplace #view-planner-wizard .wz8-actions { margin:14px 0 0; padding:12px 0 0; background:transparent; }


body.nm-workplace #view-post-retirement .calc-container { padding:22px 28px 32px; }
body.nm-workplace #view-post-retirement .calc-layout { gap:12px; }
body.nm-workplace #view-post-retirement details.form-section { margin-bottom:10px; overflow:hidden; padding:0; }
body.nm-workplace #view-post-retirement .form-section-header {
  padding:12px 15px; background:#fff; color:var(--wp-ink); font-size:12px; font-weight:740; border:0;
}
body.nm-workplace #view-post-retirement .form-section[open] .form-section-header { border-bottom:1px solid var(--wp-line); background:#fbfcfd; }
body.nm-workplace #view-post-retirement .form-section > :not(summary) { padding-left:15px; padding-right:15px; }


body.nm-workplace #view-dashboard .dashboard-container { padding:22px 28px 32px; }
body.nm-workplace #view-dashboard .dashboard-shell { max-width:none; }
body.nm-workplace #view-dashboard .dash-header { align-items:flex-end; }
body.nm-workplace #view-dashboard .dash-actions { gap:8px; }
body.nm-workplace #view-dashboard :is(.dashboard-tabs,.tab-bar,.view-toggle) {
  display:flex; width:100%; min-height:42px; margin:0 0 14px; padding:3px;
  border:1px solid var(--wp-line); border-radius:8px; background:#fff; box-shadow:none; overflow-x:auto;
}
body.nm-workplace #view-dashboard :is(.tab-btn,.view-toggle-btn,[role="tab"]) {
  min-height:34px; padding:7px 12px; border:0; border-radius:6px; background:transparent; color:#64758a; font-size:10.5px; font-weight:700;
}
body.nm-workplace #view-dashboard :is(.tab-btn.active,.view-toggle-btn.active,[role="tab"].active) { background:var(--wp-green-soft); color:var(--wp-green); }
body.nm-workplace #view-dashboard .dash-kpis { margin-bottom:12px; }
body.nm-workplace #view-dashboard .chart-grid { gap:12px; }
body.nm-workplace #view-dashboard .chart-card { padding:14px 16px; }
body.nm-workplace #view-dashboard .chart-title { margin-bottom:3px; font-size:12.5px; }


body.nm-workplace #dash-overview-view .ov-panel { padding:15px; }
body.nm-workplace #dash-overview-view :is(.ov-grid,.overview-grid) { gap:12px; }


body.nm-workplace #dash-strategies-view { color:var(--wp-ink); }
body.nm-workplace #dash-strategies-view .post-strategy-section { margin-bottom:12px; padding:15px; }
body.nm-workplace #dash-strategies-view :is(.strategy-card,.comparison-card,.st-scenario-card) { box-shadow:none; }
body.nm-workplace #dash-strategies-view :is(.strategy-card,.st-scenario-card) { padding:13px; }
body.nm-workplace #dash-strategies-view .strategy-card.is-current,
body.nm-workplace #dash-strategies-view .st-scenario-card.is-current { border-color:#9fd2b2; background:#f8fdf9; }
body.nm-workplace #dash-strategies-view :is(.strategy-name,.st-card-title) { color:var(--wp-ink); font-weight:750; }
body.nm-workplace #dash-strategies-view :is(.strategy-value,.strategy-delta-positive) { color:var(--wp-green); }
body.nm-workplace #dash-strategies-view .strategy-delta-negative { color:var(--wp-danger); }
body.nm-workplace #dash-strategies-view .strategy-comparison-bars { background:#f6f8fa; border-radius:7px; }


body.nm-workplace #dash-deepdive-view .nm-deepdive-hero,
body.nm-workplace #dash-deepdive-view .deepdive-hero {
  padding:18px; margin-bottom:12px; border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:linear-gradient(115deg,#fff 0%,#f0faf4 100%); box-shadow:var(--wp-shadow);
}
body.nm-workplace #dash-deepdive-view .dd-grid { gap:10px; }
body.nm-workplace #dash-deepdive-view .dd-card { padding:14px; }
body.nm-workplace #dash-deepdive-view .dd-icon,
body.nm-workplace #dash-deepdive-view .planning-tool-icon { background:var(--wp-green-soft); color:var(--wp-green); border-radius:8px; }
body.nm-workplace #dash-deepdive-view .planning-tool-card { margin-bottom:8px; overflow:hidden; }
body.nm-workplace #dash-deepdive-view .planning-tool-toggle {
  min-height:52px; padding:11px 14px; border:0; background:#fff; color:var(--wp-ink);
}
body.nm-workplace #dash-deepdive-view .planning-tool-body {
  padding:14px; border-top:1px solid var(--wp-line); background:#fbfcfd;
}

body.nm-workplace #dash-deepdive-view .planning-tool-body [style*="background"] { box-shadow:none; }
body.nm-workplace #dash-deepdive-view :is(.roth-ex-kpi,.dd-rail-card,.dd-strip-card,.st-scenario-card) { padding:12px; }
body.nm-workplace #dash-deepdive-view .roth-ex-kpi-value { color:var(--wp-green); font-size:19px; }
body.nm-workplace #dash-deepdive-view .roth-ex-kpi-label { color:var(--wp-muted); font-size:9.5px; }


body.nm-workplace #dash-legacy-view .nm-legacy-hero {
  padding:18px; margin-bottom:12px; border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:linear-gradient(115deg,#fff 0%,#f0faf4 100%); box-shadow:var(--wp-shadow);
}
body.nm-workplace #dash-legacy-view .nm-legacy-hero h2 { font-size:25px; }
body.nm-workplace #dash-legacy-view .nm-legacy-layout { gap:12px; }
body.nm-workplace #dash-legacy-view .nm-legacy-context,
body.nm-workplace #dash-legacy-view .nm-legacy-main { padding:15px; }
body.nm-workplace #dash-legacy-view #legacy-section-nav {
  display:flex; gap:5px; flex-wrap:wrap; padding:3px; border:1px solid var(--wp-line); border-radius:8px; background:#fff;
}
body.nm-workplace #dash-legacy-view #legacy-section-nav button { border:0; border-radius:6px; background:transparent; color:var(--wp-muted); }
body.nm-workplace #dash-legacy-view #legacy-section-nav button.active { background:var(--wp-green-soft); color:var(--wp-green); }


body.nm-workplace #view-budget .calc-container,
body.nm-workplace #view-reports .container { padding:22px 28px 32px; }
body.nm-workplace #view-budget .budget-layout { gap:12px; }
body.nm-workplace #view-budget details.form-section { margin-bottom:10px; overflow:hidden; }
body.nm-workplace #view-budget .form-section-header { padding:12px 14px; background:#fff; color:var(--wp-ink); border-bottom:1px solid transparent; }
body.nm-workplace #view-budget details[open] .form-section-header { background:#fbfcfd; border-bottom-color:var(--wp-line); }
body.nm-workplace #view-budget .budget-row { border-color:#edf0f3; }
body.nm-workplace #view-budget .budget-total-row { background:var(--wp-green-soft); border-radius:7px; }
body.nm-workplace #view-reports .nm-report-card { margin-bottom:10px; }


body.nm-workplace #view-profile .profile-container { padding:22px 28px 32px; max-width:1500px; }
body.nm-workplace #view-profile :is(.profile-card,.settings-card,.account-card) { border:1px solid var(--wp-line); border-radius:var(--wp-radius); background:#fff; box-shadow:var(--wp-shadow); }


@media (max-width:1180px) {
  body.nm-workplace #view-planner-wizard .wz-side-nav { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body.nm-workplace #view-pre-retirement .calc-layout { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  body.nm-workplace #view-planner-wizard .wz-side-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.nm-workplace #view-pre-simulator .sim-grid { grid-template-columns:1fr; }
  body.nm-workplace :is(.kpi-row,.dash-kpis,.wz2-summary,.wz6-summary,.wz7-summary) { grid-template-columns:1fr 1fr; }
}


body.nm-workplace #dash-charts-view {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
body.nm-workplace #dash-charts-view:not(.active) { display:none; }
body.nm-workplace #dash-charts-view .chart-card { margin:0; min-width:0; }
body.nm-workplace #dash-charts-view .chart-large { grid-column:1 / -1; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-card { margin:0; }
@media (max-width:900px){ body.nm-workplace #dash-charts-view { grid-template-columns:1fr; } body.nm-workplace #dash-charts-view .chart-large{grid-column:auto;} }


body.nm-workplace .nm-wp-brand-suffix {
  display: block; font-size: 10px; letter-spacing: .3em;
  text-transform: uppercase; color: var(--wp-green); font-weight: 700;
}



body.nm-workplace .nm-reports-shell { gap: 14px; }
body.nm-workplace .nm-report-group { border-top: 1px solid var(--wp-line); padding-top: 14px; margin-top: 4px; }
body.nm-workplace .nm-report-note {
  color: var(--wp-muted); font-size: 12px; line-height: 1.45;
  border-left: 3px solid var(--wp-line-strong); padding: 8px 10px;
  background: var(--wp-green-soft); border-radius: 6px;
}
body.nm-workplace #dash-scenario-summary,
body.nm-workplace #dash-final-year-assumptions,
body.nm-workplace .assumptions-disclosure {
  border: 1px solid var(--wp-line); border-radius: var(--wp-radius);
  background: var(--wp-card); padding: 6px 10px;
}
body.nm-workplace .assumptions-disclosure summary,
body.nm-workplace #dash-scenario-summary-label {
  font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
  color: var(--wp-muted); font-weight: 700; cursor: pointer;
}
body.nm-workplace .dd-asm-foot { color: var(--wp-muted); font-size: 12px; border-top: 1px solid var(--wp-line); padding-top: 6px; margin-top: 6px; }
body.nm-workplace .dash-charts { gap: 14px; }
body.nm-workplace .dash-container { padding: 0; }
body.nm-workplace .nm-dash-shell { min-height: 0; } 
body.nm-workplace .nm-kpi-context { color: var(--wp-muted); font-size: 12px; } 



body.nm-workplace #dash-charts-view { gap: 14px; }
body.nm-workplace #dash-charts-view .chart-card {
  border-radius: var(--wp-radius);
  box-shadow: var(--wp-shadow);
  padding: 16px 18px 14px;
  transition: box-shadow .15s ease, transform .15s ease;
}
body.nm-workplace #dash-charts-view .chart-card:hover {
  box-shadow: 0 6px 18px rgba(16, 42, 67, .10);
  transform: translateY(-1px);
}
body.nm-workplace #dash-charts-view .chart-title {
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--wp-muted);
  font-weight: 700;
  margin: 0 0 2px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--wp-green);
  display: inline-block;
}
body.nm-workplace #dash-charts-view .chart-subtitle {
  color: var(--wp-muted);
  font-size: 12px;
  margin: 6px 0 0;
}
body.nm-workplace #dash-charts-view .chart-note {
  color: var(--wp-muted);
  font-size: 12px;
  line-height: 1.45;
  border-left: 3px solid var(--wp-line-strong);
  padding-left: 10px;
  margin-top: 10px;
}
body.nm-workplace #dash-charts-view .chart-wrapper {
  margin-top: 10px;
  border-top: 1px solid var(--wp-line);
  padding-top: 10px;
}
body.nm-workplace #dash-charts-view .chart-card.chart-large {
  border-top: 3px solid var(--wp-navy);
}
body.nm-workplace #dash-charts-view .chart-card.chart-large .chart-title {
  color: var(--wp-navy);
  border-bottom-color: var(--wp-navy);
}
body.nm-workplace #dash-charts-view .chart-wrapper canvas,
body.nm-workplace #dash-charts-view .chart-wrapper svg {
  display: block;
  max-width: 100%;
}
body.nm-workplace #dash-charts-view .dash-networth-note,
body.nm-workplace #dash-charts-view .dash-rmd-note {
  background: var(--wp-green-soft);
  border-left-color: var(--wp-green);
  border-radius: 6px;
  padding: 8px 10px;
}





body.nm-workplace .btn-secondary { background:#fff; border:1px solid var(--wp-line); color:#102a43; font-weight:600; }
body.nm-workplace .btn-secondary:hover { background:#f0f4f8; border-color:#c7d2dc; color:#062b4d; }


body.nm-workplace #dash-spreadsheet-view .ss-controls { padding:12px 16px; border-bottom:1px solid var(--wp-line); background:#fff; border-radius:var(--wp-radius) var(--wp-radius) 0 0; gap:10px; }
body.nm-workplace #dash-spreadsheet-view .ss-years { color:var(--wp-muted); font-size:12px; font-weight:600; }
body.nm-workplace #dash-spreadsheet-view .ss-years select { border:1px solid var(--wp-line); border-radius:7px; padding:5px 8px; font-size:12px; color:#102a43; background:#fff; }
body.nm-workplace #dash-spreadsheet-view .ss-scroll-hint,
body.nm-workplace #dash-spreadsheet-view .ss-foot-note { color:var(--wp-muted); font-size:11px; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-toolbar { padding:16px 16px 6px; }
body.nm-workplace #dash-spreadsheet-view .chart-title { color:#102a43; letter-spacing:-.02em; font-size:18px; }
body.nm-workplace #dash-spreadsheet-view .ss-subtitle { color:var(--wp-muted); font-size:12px; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-scroll { border-top:1px solid var(--wp-line); }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table { font-size:12px; border-collapse:separate; border-spacing:0; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table thead { position:sticky; top:0; z-index:5; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table .ss-group-row th { background:var(--wp-navy); color:#eaf3fb; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; padding:7px 10px; border-bottom:0; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table thead tr:not(.ss-group-row) th { background:#f0f4f8; color:#102a43; font-weight:700; font-size:11px; padding:8px 10px; border-bottom:1px solid var(--wp-line); white-space:nowrap; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table tbody td { padding:7px 10px; border-bottom:1px solid #edf1f5; color:#1f3346; font-variant-numeric:tabular-nums; white-space:nowrap; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table tbody tr:nth-child(even) td { background:#fafbfc; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table tbody tr:hover td { background:#f2f7f4; }
body.nm-workplace #dash-spreadsheet-view .spreadsheet-table tbody td:first-child { font-weight:700; color:#062b4d; }


body.nm-workplace #view-reports .nm-reports-header { margin-bottom:18px; }
body.nm-workplace #view-reports .nm-reports-header h1 { color:#102a43; letter-spacing:-.025em; }
body.nm-workplace #view-reports .nm-eyebrow { color:var(--wp-green); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
body.nm-workplace #view-reports .nm-report-group-heading { color:var(--wp-green); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; margin:20px 0 10px; }
body.nm-workplace #view-reports .nm-report-grid { gap:14px; }
body.nm-workplace #view-reports .nm-report-card { padding:16px 18px; transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease; }
body.nm-workplace #view-reports .nm-report-card:hover { transform:translateY(-1px); box-shadow:0 4px 14px rgba(15,42,65,.10); border-color:#c9dccf; }
body.nm-workplace #view-reports .nm-report-featured { border-left:4px solid var(--wp-green); background:linear-gradient(180deg,#ffffff 0%,#f7fbf8 100%); }
body.nm-workplace #view-reports .nm-report-icon { width:38px; height:38px; border-radius:9px; background:rgba(12,138,73,.10); color:var(--wp-green); display:flex; align-items:center; justify-content:center; }
body.nm-workplace #view-reports .nm-report-tag { display:inline-block; padding:2px 8px; border-radius:999px; background:#f0f4f8; color:var(--wp-muted); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
body.nm-workplace #view-reports .nm-report-status { color:var(--wp-muted); font-size:12px; }
body.nm-workplace #view-reports .nm-report-card h3 { color:#102a43; font-size:15px; letter-spacing:-.01em; }
body.nm-workplace #view-reports .nm-report-card p { color:#41566b; font-size:12.5px; }


body.nm-workplace #view-profile .profile-dash-title,
body.nm-workplace #view-profile .section-title { color:#102a43; letter-spacing:-.025em; }
body.nm-workplace #view-profile .profile-dash-desc { color:var(--wp-muted); }
body.nm-workplace #view-profile .profile-card { padding:0; overflow:hidden; }
body.nm-workplace #view-profile .profile-card-header { padding:14px 18px; border-bottom:1px solid var(--wp-line); background:#fff; }
body.nm-workplace #view-profile .profile-card-header h3 { margin:0; color:#102a43; font-size:15px; letter-spacing:-.01em; }
body.nm-workplace #view-profile .profile-card-meta { color:var(--wp-muted); font-size:12px; }
body.nm-workplace #view-profile .profile-form,
body.nm-workplace #view-profile .profile-dashboard { padding:16px 18px; }
body.nm-workplace #view-profile .profile-avatar { background:linear-gradient(135deg,var(--wp-navy) 0%,var(--wp-navy-2) 100%); color:#fff; box-shadow:0 0 0 2px rgba(12,138,73,.25); }
body.nm-workplace #view-profile .profile-field label { color:var(--wp-muted); font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
body.nm-workplace #view-profile .profile-field input,
body.nm-workplace #view-profile .profile-field select { border:1px solid var(--wp-line); border-radius:7px; padding:8px 10px; font-size:13px; color:#102a43; background:#fff; }
body.nm-workplace #view-profile .profile-row { gap:14px; }
body.nm-workplace #view-profile .profile-member-since { color:var(--wp-muted); font-size:12px; }
body.nm-workplace #view-profile .profile-save-status { color:var(--wp-green); font-weight:700; font-size:12px; }
body.nm-workplace #view-profile .profile-actions { padding:12px 18px; border-top:1px solid var(--wp-line); background:#fafbfc; }



body.nm-workplace #view-workspace .nm-dash-shell{padding-top:64px}
body.nm-workplace #view-workspace .nm-dash-main{padding:20px 24px 24px;max-width:none;background:#f7f9fb}
.nm-wp-overview-intro{display:grid;grid-template-columns:1fr 1.35fr;gap:28px;align-items:center;margin:0 0 14px}
.nm-wp-overview-intro h1{font-size:31px;line-height:1.1;margin:0 0 10px;color:#0e2946;letter-spacing:-.03em}
.nm-wp-overview-intro p{margin:0;color:#183b56;line-height:1.55;font-size:15px}
.nm-wp-hero-image{height:112px;border-radius:10px;padding:24px 26px;display:flex;align-items:center;color:#fff;background:linear-gradient(100deg,#17384c,#102c3d 48%,#b66f34);position:relative;overflow:hidden}
.nm-wp-hero-image:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 25%,rgba(255,206,130,.45),transparent 25%),linear-gradient(135deg,transparent 20%,rgba(12,82,69,.5) 70%)}
.nm-wp-hero-image strong{position:relative;z-index:1;font-size:18px;line-height:1.35}
.nm-wpo-grid{grid-template-columns:minmax(0,2.35fr) minmax(300px,.95fr);gap:14px}.nm-wpo-main,.nm-wpo-side{gap:12px}
body.nm-workplace .nm-wp-overview-page .nm-panel{padding:14px 16px;border-radius:9px;box-shadow:0 1px 3px rgba(15,42,65,.03)}
.nm-wpo-snapshot header,.nm-wpo-saved header,.nm-wpo-goal header,.nm-wpo-strategies header{display:flex;align-items:center;justify-content:space-between}.nm-wpo-snapshot h2,.nm-wpo-projected h2,.nm-wpo-actions h2,.nm-wpo-saved h2,.nm-wpo-side h2,.nm-wpr h2{font-size:14px;margin:0;color:#102a43}
.nm-wpo-chips{grid-template-columns:repeat(6,1fr);gap:0;margin:12px 0 8px}.nm-wpo-chips li{border:0;border-right:1px solid #e2e8ef;border-radius:0;background:#fff;align-items:center;text-align:center;padding:4px 8px}.nm-wpo-chips li:last-child{border-right:0}.nm-wpo-chips i{color:#0c8a49;margin-bottom:4px}.nm-wpo-chips strong{font-size:18px;color:#0e2946}.nm-wpo-all-inputs{font-size:11px;font-weight:700;color:var(--wp-green-text,#04783c);text-decoration:none}
.nm-wpo-projected-body{display:grid;grid-template-columns:190px 1fr;gap:18px;margin-top:10px}.nm-wpo-figures{display:flex;flex-direction:column;gap:10px;margin:0}.nm-wpo-figures strong{font-size:25px;color:#0c8a49}.nm-wpo-figures b{font-size:14px;color:#102a43}.nm-wpo-figures em{display:block;font-style:normal;font-size:10px;color:#64748b}.nm-wpo-chart-wrap{min-width:0}.nm-wpo-chart-wrap svg{width:100%;height:190px;background:repeating-linear-gradient(to bottom,transparent,transparent 43px,#edf1f4 44px)}.nm-wpo-chart-legend{display:flex;justify-content:center;gap:28px;font-size:10px}.nm-wpo-chart-legend span:before{content:'';display:inline-block;width:16px;border-top:2px solid #0c8a49;margin-right:5px;vertical-align:middle}.nm-wpo-chart-legend span+span:before{border-color:#2865e8;border-top-style:dashed}
.nm-wpo-mini-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #e3e8ee;border-radius:8px;margin-top:8px}.nm-wpo-mini-metrics>div{padding:9px 12px;border-right:1px solid #e3e8ee}.nm-wpo-mini-metrics>div:last-child{border-right:0}.nm-wpo-mini-metrics span,.nm-wpo-mini-metrics b{display:block;font-size:12px;font-weight:700}.nm-wpo-mini-metrics b{color:var(--wp-green-text,#04783c);font-size:15px}.nm-wpo-mini-metrics small{font-size:9px;color:#64748b}
.nm-wpo-action-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:9px}.nm-wpo-action-grid a{border:1px solid #e1e7ed;border-radius:7px;padding:10px;text-decoration:none;color:#102a43;display:flex;flex-direction:column}.nm-wpo-action-grid b{font-size:11px}.nm-wpo-action-grid small{font-size:9px;color:#64748b;margin-top:3px}
.nm-wpo-saved-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.nm-wpo-saved-grid>*{border:1px dashed #cad5df;border-radius:7px;padding:10px;font-size:10px;color:#64748b}
.nm-wpo-track-row{display:grid;grid-template-columns:1fr 110px;position:relative}.nm-wpo-track-row>div:first-child{align-self:center}.nm-wpo-track-row>div:first-child em{display:block;font-style:normal;color:var(--wp-green-text,#04783c);font-weight:800;font-size:14px}.nm-wpo-track-row>div:first-child small{font-size:10px;color:#64748b}.nm-wpo-track-num{position:absolute;right:22px;top:38px;text-align:center}.nm-wpo-track-num strong{font-size:23px}.nm-wpo-track-num small{font-size:9px}.nm-wpo-track .btn,.nm-wpo-goal .btn{width:100%;justify-content:center}
.nm-wpo-goal p,.nm-wpo-strategies p{font-size:10px;color:#64748b}.nm-wpo-goal-scale{display:flex;justify-content:space-between;align-items:center}.nm-wpo-goal-scale strong{font-size:14px;color:var(--wp-green-text,#04783c)}.nm-wpo-goal-bar{height:4px;background:#d7dee5;border-radius:4px;position:relative;margin:8px 0 12px}.nm-wpo-goal-bar span{position:absolute;top:-5px;width:14px;height:14px;border-radius:50%;background:#0c8a49;transform:translateX(-50%)}.nm-wpo-goal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.nm-wpo-goal-stats div{text-align:center}.nm-wpo-goal-stats small{font-size:8px;display:block;color:#64748b}.nm-wpo-goal-stats b{font-size:12px;color:var(--wp-green-text,#04783c)}
#wpo-strategies li{border:0;border-bottom:1px solid #edf0f3;border-radius:0;padding:7px 0}.nm-wpo-strategies .nm-view-link{font-size:10px}
.nm-wpr-status{color:var(--wp-green-text,#04783c);font-weight:700}.nm-wp-retiree-intro small{display:block;margin-top:8px;color:#64748b}.nm-wpr-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(310px,.92fr);gap:14px}.nm-wpr-main,.nm-wpr-side{display:flex;flex-direction:column;gap:12px}.nm-wpr-kpis{grid-template-columns:repeat(3,1fr);gap:12px}.nm-wpr-kpis article{text-align:center}.nm-wpr-kpis strong{font-size:27px;color:#0c8a49}.nm-wpr-chart-card svg{width:100%;height:200px;background:repeating-linear-gradient(to bottom,transparent,transparent 47px,#edf1f4 48px)}.nm-wpr-row2{grid-template-columns:1.2fr .85fr .85fr;gap:12px}.nm-wpr-row2 article{min-height:200px}.nm-wpr-donut{width:90px;height:90px}.nm-wpr-donut::before{inset:23px}.nm-wpr-current{border:1px solid #73c695;border-radius:8px;padding:10px;margin-top:8px;display:flex;flex-direction:column}.nm-wpr-current small{color:var(--wp-green-text,#04783c);font-weight:700}.nm-wpr-current strong{font-size:18px}.nm-wpr-current span{font-size:9px;color:#64748b}.nm-wpr-current div{display:flex;justify-content:space-between;margin-top:8px;color:var(--wp-green-text,#04783c)}.nm-wpr-strat-list li{padding:7px 0;border:0;border-bottom:1px solid #edf0f3;border-radius:0}.nm-wpr-next-list a{border:0;border-bottom:1px solid #edf0f3;border-radius:0;padding:9px 0}.nm-wpr-privacy{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;border:1px solid #87a9bd;border-radius:8px;background:#fff;padding:11px 15px;margin-top:12px;font-size:10px}.nm-wpr-privacy a{color:var(--wp-green-text,#04783c);text-decoration:none;font-weight:700}
.nm-wp-global-user{display:flex;align-items:center;gap:8px}.nm-wp-global-user i{width:32px;height:32px;border-radius:50%;background:#0b3458;color:#fff;display:grid;place-items:center;font-style:normal;font-size:11px}.nm-wp-global-user span{display:flex;flex-direction:column}.nm-wp-global-user b{font-size:11px}.nm-wp-global-user small{font-size:9px;color:#64748b}.nm-wp-global-user em{font-style:normal}.nm-wp-global-brand strong:before{content:'▦ ';color:#1745b8}
@media(max-width:1050px){.nm-wpo-grid,.nm-wpr-layout{grid-template-columns:1fr}.nm-wpo-chips{grid-template-columns:repeat(3,1fr)}.nm-wpo-action-grid{grid-template-columns:repeat(2,1fr)}}



body.nm-workplace #view-pre-retirement > .calc-container > .view-toggle-bar,
body.nm-workplace #view-pre-retirement .calc-container > .view-toggle-bar,
body.nm-workplace #view-dashboard .dashboard-container > .view-toggle-bar,
body.nm-workplace #view-dashboard .dash-container > .view-toggle-bar,
body.nm-workplace #view-post-retirement .nm-planner-section-nav {
  display:none;
}


body.nm-workplace .nm-wp-global-topbar nav,
body.nm-workplace .nm-wp-global-topbar .header-nav,
body.nm-workplace .nm-wp-global-topbar .view-toggle-bar {
  display:none;
}


body.nm-workplace #view-post-retirement .nm-planner-back {
  display:none;
}


body.nm-workplace #view-pre-retirement .calc-header,
body.nm-workplace #view-post-retirement .calc-header,
body.nm-workplace #view-dashboard .dash-header {
  margin-bottom:16px;
}



body.nm-workplace .nm-wp-brand-suffix{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#26c36a;margin-top:1px;}
body.nm-workplace .nm-wp-sidebar-footer{margin-top:auto;padding:18px 16px 14px;border-top:1px solid rgba(255,255,255,.12);display:grid;gap:8px;color:#fff;}
body.nm-workplace .nm-wp-sidebar-tenant{font-size:23px;font-weight:800;font-style:italic;letter-spacing:-.04em;color:#fff;min-height:28px;display:flex;align-items:center;}
body.nm-workplace .nm-wp-sidebar-tenant img{max-width:104px;max-height:34px;object-fit:contain;filter:brightness(0) invert(1);}
body.nm-workplace .nm-wp-sidebar-powered{font-size:11px;color:rgba(255,255,255,.78);}
body.nm-workplace .nm-wp-sidebar-copy{font-size:9px;color:rgba(255,255,255,.58);}
body.nm-workplace .nm-wp-global-brand{display:flex;align-items:center;gap:18px;min-width:340px;}
body.nm-workplace .nm-wp-global-tenant-logo{font-size:21px;font-weight:800;font-style:italic;color:#143f94;letter-spacing:-.04em;padding-right:18px;border-right:1px solid #dbe3ea;display:flex;align-items:center;min-width:74px;}
body.nm-workplace .nm-wp-global-tenant-logo img{max-width:88px;max-height:30px;object-fit:contain;}
body.nm-workplace .nm-wp-global-product{font-size:15px;font-weight:700;color:#102a43;}
body.nm-workplace .nm-wp-global-actions{position:relative;}
body.nm-workplace .nm-wp-global-bell{width:34px;height:34px;border:0;background:transparent;color:#15385f;font-size:22px;cursor:pointer;border-radius:50%;}
body.nm-workplace .nm-wp-global-bell:hover{background:#f1f5f8;}
body.nm-workplace .nm-wp-notifications{position:absolute;right:130px;top:48px;width:230px;padding:14px;background:#fff;border:1px solid #dbe3ea;border-radius:10px;box-shadow:0 12px 30px rgba(15,42,65,.16);z-index:30;}
body.nm-workplace .nm-wp-notifications strong,body.nm-workplace .nm-wp-notifications span{display:block;color:#102a43;}
body.nm-workplace .nm-wp-notifications span{margin-top:8px;font-size:12px;color:#63788d;}
body.nm-workplace #view-input-guide{padding:88px 32px 36px 250px;background:#f5f7f9;min-height:100vh;}
body.nm-workplace .nm-wp-input-guide{max-width:1120px;margin:0 auto;}
body.nm-workplace .nm-wp-ig-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px;}
body.nm-workplace .nm-wp-ig-header h1{font-size:30px;margin:4px 0 6px;color:#102a43;}
body.nm-workplace .nm-wp-ig-header p{max-width:680px;color:#60758a;margin:0;}
body.nm-workplace .nm-eyebrow{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--wp-green-text,#04783c);}
body.nm-workplace .nm-wp-ig-progress{background:#fff;border:1px solid #dfe6ec;border-radius:11px;padding:16px 18px;margin-bottom:14px;}
body.nm-workplace .nm-wp-ig-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
body.nm-workplace .nm-wp-ig-progress span{font-size:11px;color:#60758a;}
body.nm-workplace .nm-wp-ig-progress b{color:#102a43;}
body.nm-workplace .nm-wp-ig-track{height:6px;background:#edf1f4;border-radius:9px;overflow:hidden;}
body.nm-workplace .nm-wp-ig-track span{display:block;height:100%;background:#0c8a49;border-radius:9px;transition:width .2s ease;}
body.nm-workplace .nm-wp-ig-fields{background:#fff;border:1px solid #dfe6ec;border-radius:11px;overflow:hidden;}
body.nm-workplace .nm-wp-ig-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,420px);gap:28px;align-items:center;padding:17px 20px;border-bottom:1px solid #edf1f4;}
body.nm-workplace .nm-wp-ig-row:last-child{border-bottom:0;}
body.nm-workplace .nm-wp-ig-row strong{display:block;color:#102a43;font-size:14px;}
body.nm-workplace .nm-wp-ig-row small:not([hidden]){display:block;margin-top:4px;color:var(--wp-muted,#61738e);font-size:11px;}
/* r5.16 item 5: sole owner of input-guide field metrics. Height was previously
   declared by three unconditional generations (42px here, 40px later, 39px in
   the employee block) whose winner depended purely on source order; the 39px
   winner combined with an 11px font cropped the native number-spinner arrows.
   44px with a 13px font clears both arrows at their intrinsic size. */
body.nm-workplace .nm-wp-ig-field input,body.nm-workplace .nm-wp-ig-field select{width:100%;height:44px;font-size:13px;border:1px solid #ccd7e0;border-radius:7px;padding:0 12px;background:#fff;box-sizing:border-box;}
body.nm-workplace .nm-wp-ig-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;background:#fff;border:1px solid #dfe6ec;border-radius:11px;padding:14px 18px;}
body.nm-workplace .nm-wp-ig-footer p{margin:0;color:var(--wp-muted,#61738e);font-size:11px;}
@media(max-width:900px){body.nm-workplace #view-input-guide{padding:80px 16px 28px}.nm-wp-ig-row{grid-template-columns:1fr}.nm-wp-ig-header{flex-direction:column}.nm-wp-ig-footer p{display:none}}



body.nm-workplace .nm-wp-brand-suffix{display:block;margin-left:38px;margin-top:-4px;font-size:10px;line-height:1;letter-spacing:.22em;text-transform:uppercase;color:#39d071;}
body.nm-workplace .nm-wp-global-bell{position:relative;display:inline-grid;place-items:center;font-size:0;}
body.nm-workplace .nm-wp-global-bell .nm-ui-icon{width:20px;height:20px;display:inline-flex;}
body.nm-workplace .nm-wp-bell-badge{position:absolute;right:0;top:0;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#0c8a49;color:#fff;font-size:9px;font-weight:800;line-height:16px;text-align:center;box-shadow:0 0 0 2px #fff;}
body.nm-workplace .nm-wp-hero-image{height:116px;align-items:center;background-position:center;background-size:cover;background-repeat:no-repeat;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-hero{background-image:linear-gradient(90deg,rgba(4,24,42,.67),rgba(4,24,42,.08) 58%,rgba(4,24,42,.30)),url('img/wp-hero-retiree.jpg');}
body.nm-workplace .nm-wp-hero-image:after{display:none;}
body.nm-workplace .nm-wp-hero-cta{position:absolute;right:16px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border:1px solid rgba(255,255,255,.28);border-radius:6px;background:#123b6c;color:#fff;text-decoration:none;font-size:12px;font-weight:700;box-shadow:0 3px 10px rgba(0,0,0,.18);}
body.nm-workplace .nm-wp-hero-cta:hover{background:#0b2e58;transform:translateY(-1px);}
body.nm-workplace #site-footer{display:none;}
body.nm-workplace .nm-wpr-meta{margin:10px 0 0;color:#64788e;font-size:12px;}
body.nm-workplace .nm-wpr-plan-tools{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin:-2px 0 12px;color:var(--wp-muted,#61738e);font-size:12px;}
body.nm-workplace .nm-wpr-plan-tools .btn{display:inline-flex;align-items:center;gap:7px;}
body.nm-workplace .nm-wp-sidebar-copy{display:none;}
body.nm-workplace .nm-wp-disclosures-link{width:max-content;padding:0;border:0;background:transparent;color:rgba(255,255,255,.72);font-size:10px;text-decoration:underline;cursor:pointer;}
body.nm-workplace .nm-wp-disclosures-modal{position:fixed;inset:0;z-index:32000;/* r5.76 fix: was 9999, which sat UNDER the sales popup (workplace-popup CSS :5, z 30000) -- latent since r5.64, flagged in the r5.65 field note (~:5688) and the deploy dev post-r5.75 note. Legal content is user-invoked and may open OVER the ack overlay (31000), so it takes the top of the workplace stack: popup 30000 < ack 31000 < disclosures 32000. */display:grid;place-items:center;padding:24px;background:rgba(6,24,42,.56);}
body.nm-workplace .nm-wp-disclosures-card{position:relative;width:min(620px,100%);padding:28px;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.25);color:#17324d;}
body.nm-workplace .nm-wp-disclosures-card h2{margin:0 0 12px;font-size:22px;}
body.nm-workplace .nm-wp-disclosures-card p{margin:0;color:#5d7185;line-height:1.65;font-size:13px;}
body.nm-workplace .nm-wp-disclosures-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#60758a;font-size:26px;cursor:pointer;}



body.nm-workplace #view-workspace{padding:64px 0 0 220px;background:var(--wp-bg);min-height:100vh;}
body.nm-workplace #view-workspace .nm-dash-shell{display:block;max-width:none;width:100%;min-height:calc(100vh - 64px);margin:0;border:0;border-radius:0;box-shadow:none;background:var(--wp-bg);overflow:visible;}
body.nm-workplace #view-workspace .nm-dash-sidebar{display:none;}
body.nm-workplace #view-workspace .nm-dash-main{padding:22px 28px 34px;max-width:var(--wp-content-max);margin:0 auto;}
body.nm-workplace #view-workspace .nm-dash-head{display:none;}
/* v149.562 — retire the consumer overview bottom band (Spending & Withdrawals
 * by Age, Taxes by Age, Recent Plans) in workplace mode, both personas. Each
 * persona already reaches richer dedicated destinations from the workplace
 * sidebar, and this band's empty-state copy plus its "View all plans" link
 * point at consumer products that do not exist in the workplace nav.
 *
 * SPECIFICITY IS LOAD-BEARING — do not "simplify" this selector. app.css has
 *   #view-workspace.nm-ws-stage-growth:not(.nm-ws-stated) .nm-dash-bottom
 *   { display: contents }            -> [1,3,0]
 * The neighbouring .nm-dash-head shape (body.nm-workplace #view-workspace X)
 * is only [1,2,1] and would LOSE. The [data-wp-shell] qualifier buys the third
 * class -> [1,3,1]. Drop it and the band silently comes back.
 *
 * That is precisely how the previous attempt failed: the per-persona
 *   body[data-wp-shell="…"] .nm-ws-charts-col { display: none }
 * entries were [0,2,1] against app.css's #view-workspace .nm-ws-charts-col
 * [1,1,0], so they looked like they retired the charts column and never did.
 * Those entries are removed rather than repaired — .nm-ws-charts-col is this
 * band's only chart container (one occurrence in index.html) and is retired
 * with its parent, so a separate rule would be redundant.
 *
 * Consumer is untouched: the body.nm-workplace scope keeps this off
 * nestmint.ai. Verified in Chromium in both shells; guarded by
 * tests/v149.542-design-audit.spec.js B2/B3. */
body.nm-workplace[data-wp-shell] #view-workspace .nm-dash-bottom{display:none;}
body.nm-workplace .nm-wp-global-sidebar{background:var(--wp-navy);border-right:0;}
body.nm-workplace .nm-wp-global-topbar{box-shadow:none;}
body.nm-workplace .view.active:not(#view-welcome){border:0;border-radius:0;box-shadow:none;}
body.nm-workplace .view.active:not(#view-welcome) > :is(.calc-container,.container,.dashboard-container,.wz-shell,.nm-wp-page){border:0;border-radius:0;box-shadow:none;}

body.nm-workplace #view-input-guide{padding:86px 28px 34px 248px;}
body.nm-workplace .nm-wp-input-guide{max-width:1040px;}
body.nm-workplace .nm-wp-ig-header{margin-bottom:14px;}
body.nm-workplace .nm-wp-ig-header h1{font-size:28px;letter-spacing:-.035em;}
body.nm-workplace .nm-wp-ig-header p{font-size:13px;}
body.nm-workplace .nm-wp-ig-progress{padding:14px 16px 12px;}
body.nm-workplace .nm-wp-ig-progress-head{display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:start;margin-bottom:10px;}
body.nm-workplace .nm-wp-ig-progress-head>div{display:flex;flex-direction:column;gap:2px;}
body.nm-workplace .nm-wp-ig-progress-head b{font-size:15px;}
body.nm-workplace .nm-wp-ig-progress-head small{color:var(--wp-muted);font-size:11px;}
body.nm-workplace .nm-wp-ig-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:12px;}
body.nm-workplace .nm-wp-ig-step{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 8px;border:0;border-radius:7px;background:transparent;color:var(--wp-muted,#61738e);text-align:left;cursor:pointer;}
body.nm-workplace .nm-wp-ig-step:hover{background:#f3f7f5;color:var(--wp-ink);}
body.nm-workplace .nm-wp-ig-step i{width:20px;height:20px;flex:0 0 20px;border:1px solid #cdd7df;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:9px;font-weight:800;}
body.nm-workplace .nm-wp-ig-step span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;}
body.nm-workplace .nm-wp-ig-step.active{background:var(--wp-green-soft);color:var(--wp-green-text,#04783c);} /* r5.33 — --wp-green (#0b8a49/#0a9b4f) is a fill token, only ~3.3–4.1:1 as text on the soft green; --wp-green-text is the text-grade token r5.32 introduced for exactly this */
body.nm-workplace .nm-wp-ig-step.active i,body.nm-workplace .nm-wp-ig-step.complete i{border-color:var(--wp-green);background:var(--wp-green);color:#fff;}
body.nm-workplace .nm-wp-ig-fields{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:10px;}
body.nm-workplace .nm-wp-ig-row{display:flex;flex-direction:column;align-items:stretch;gap:9px;padding:15px 17px;min-height:112px;border-bottom:1px solid #edf1f4;}
body.nm-workplace .nm-wp-ig-row:nth-child(odd){border-right:1px solid #edf1f4;}
body.nm-workplace .nm-wp-ig-row strong{font-size:13px;}
body.nm-workplace .nm-wp-ig-row small{min-height:26px;line-height:1.35;}
body.nm-workplace .nm-wp-ig-footer{padding:12px 16px;}
body.nm-workplace .nm-wp-ig-footer p{font-size:10px;}
@media(max-width:980px){body.nm-workplace #view-workspace{padding-left:0;}body.nm-workplace #view-input-guide{padding-left:18px;}.nm-wp-ig-steps{grid-template-columns:1fr 1fr}.nm-wp-ig-fields{grid-template-columns:1fr}.nm-wp-ig-row:nth-child(odd){border-right:0}}



body.nm-workplace .nm-wp-overview-intro{
  display:grid;
  grid-template-columns:minmax(260px,.82fr) minmax(360px,1.18fr);
  gap:24px;
  align-items:stretch;
  min-width:0;
}
body.nm-workplace .nm-wp-overview-intro>div{min-width:0;}
body.nm-workplace .nm-wp-overview-intro>div:first-child{align-self:center;}
body.nm-workplace .nm-wp-overview-intro p{max-width:46ch;min-width:0;}
body.nm-workplace .nm-wp-hero-image{position:relative;min-width:0;width:100%;overflow:hidden;}
body.nm-workplace .nm-wpo-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px);min-width:0;}
body.nm-workplace .nm-wpo-main,body.nm-workplace .nm-wpo-side,body.nm-workplace .nm-panel{min-width:0;}
body.nm-workplace .nm-wpo-mini-metrics{grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;}
body.nm-workplace .nm-wpo-mini-metrics>div{min-width:0;overflow:hidden;}
body.nm-workplace .nm-wpo-mini-metrics span,body.nm-workplace .nm-wpo-mini-metrics b,body.nm-workplace .nm-wpo-mini-metrics small{overflow-wrap:anywhere;}
body.nm-workplace .nm-wpo-track-facts dd{min-width:0;overflow-wrap:anywhere;text-align:right;}
body.nm-workplace .nm-wp-global-topbar{min-width:0;overflow:visible;}
body.nm-workplace .nm-wp-global-brand{min-width:0;flex:1 1 auto;overflow:hidden;}
body.nm-workplace .nm-wp-global-tenant-logo{flex:0 0 auto;}
body.nm-workplace .nm-wp-global-product{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.nm-workplace .nm-wp-global-actions{display:flex;flex:0 0 auto;align-items:center;gap:12px;white-space:nowrap;}
body.nm-workplace .nm-wp-global-privacy{display:inline-flex;}
body.nm-workplace .nm-wp-global-bell,body.nm-workplace .nm-wp-global-actions>a[aria-label="Help"],body.nm-workplace .nm-wp-global-user{display:inline-flex;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-brand-suffix{display:block;margin:2px 0 0 38px;color:#39d071;font-size:10px;line-height:1;letter-spacing:.22em;text-transform:uppercase;}
@media(max-width:1280px){
  body.nm-workplace .nm-wp-overview-intro{grid-template-columns:minmax(230px,.72fr) minmax(320px,1.28fr);gap:18px;}
  body.nm-workplace .nm-wpo-grid{grid-template-columns:minmax(0,1fr) minmax(270px,310px);}
  body.nm-workplace .nm-wpo-mini-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace .nm-wpo-mini-metrics>div:nth-child(2){border-right:0;}
  body.nm-workplace .nm-wpo-mini-metrics>div:nth-child(-n+2){border-bottom:1px solid #e3e8ee;}
  body.nm-workplace .nm-wp-global-actions{gap:9px;}
  body.nm-workplace .nm-wp-global-privacy{font-size:11px;}
}
@media(max-width:1050px){
  body.nm-workplace .nm-wp-overview-intro{grid-template-columns:1fr;}
  body.nm-workplace .nm-wp-hero-image{min-height:126px;}
  body.nm-workplace .nm-wpo-grid{grid-template-columns:1fr;}
}
@media(max-width:900px){
  body.nm-workplace .nm-wp-global-privacy{display:none;}
  body.nm-workplace .nm-wp-global-user span{display:none;}
}


body.nm-workplace{
  --wp-sidebar-w:188px;
  --wp-header-h:66px;
  /* 8/7 — shared horizontal geometry: the topbar inner rail and the
     overview content column consume the SAME vars so their edges can
     never drift apart. Per-shell values below; medias override the
     vars, never the consumers. */
  --wp-content-max:1600px;
  --wp-content-pad-l:24px;
  --wp-content-pad-r:24px;
}
/* r5.16 item 1: pad-l matched to the retiree shell (28px). The 37px value made
   the employee overview start 9px further right than retiree with no reason for
   the two shells to differ; both render the same content column. */
body.nm-workplace[data-wp-shell="employee"]{--wp-content-pad-l:37px;--wp-content-pad-r:61px;}
body.nm-workplace[data-wp-shell="retiree"]{--wp-content-pad-l:28px;--wp-content-pad-r:60px;}
body.nm-workplace .nm-wp-topbar-inner{height:100%;width:100%;max-width:var(--wp-content-max);margin:0 auto;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--wp-content-pad-r) 0 var(--wp-content-pad-l);}
/* 8/7 — topbar user menu (Profile & Settings / Sign Out). The chip keeps its
   existing per-shell skin; only the wrapper and popover are new. */
body.nm-workplace .nm-wp-user-wrap{position:relative;display:inline-flex;}
body.nm-workplace .nm-wp-user-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:1300;min-width:186px;display:flex;flex-direction:column;padding:6px;border:1px solid #dfe6ee;border-radius:8px;background:#fff;box-shadow:0 10px 26px rgba(15,35,60,.14);}
body.nm-workplace .nm-wp-user-menu[hidden]{display:none;}
body.nm-workplace .nm-wp-user-menu>a,body.nm-workplace .nm-wp-user-menu>button{display:block;width:100%;box-sizing:border-box;margin:0;padding:9px 12px;border:0;border-radius:6px;background:transparent;color:#16345c;font:700 10.5px Inter,sans-serif;text-align:left;text-decoration:none;cursor:pointer;}
body.nm-workplace .nm-wp-user-menu>a:hover,body.nm-workplace .nm-wp-user-menu>button:hover{background:#f2f6f9;}
body.nm-workplace .nm-wp-user-menu-signout{color:#b42318;}
/* 8/7 Jahn — workplace accounts are employer-sponsored: the account modal
   must never show consumer-direct subscription status or payment plans. */
body.nm-workplace #acct-sub-section,
body.nm-workplace #acct-upgrade-section{display:none;}
/* r5.9 — the popup is retired on workplace: its account functions are
   adopted into the profile page's Account & privacy section. The quick-link
   that opened the popup is redundant there, and the adopted sections get
   card framing consistent with the workplace profile page. */
body.nm-workplace #profile-account-btn{display:none;}
body.nm-workplace .profile-quick-links .account-section,
body.nm-workplace .profile-quick-links #acct-session-section,
body.nm-workplace .profile-quick-links #acct-danger-section{display:block;width:100%;box-sizing:border-box;margin:14px 0 0;padding:16px 18px;border:1px solid #e2e8ee;border-radius:8px;background:#fff;text-align:left;}
body.nm-workplace .profile-quick-links #acct-danger-section{border-color:#ecc8c3;}
/* r5.10 (Jahn 8/7) — Savings Projection + Smart Planning Tools charts were
   stretching across the full content column. Cap card width (centered) and
   canvas height on the workplace employee shell; consumer untouched. */
body.nm-workplace[data-wp-shell="employee"] #pre-charts-view .chart-card{max-width:1040px;margin-left:auto;margin-right:auto;}
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .chart-wrapper{height:300px;max-height:300px;}
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement canvas{max-height:320px;}
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .tool-card,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .tool-section{max-width:1040px;margin-left:auto;margin-right:auto;}
/* r5.10 — guide save status states */
body.nm-workplace #wp-ig-save-status[data-wp-save-state="saving"]{color:#8a6d1a;}
body.nm-workplace #wp-ig-save-status[data-wp-save-state="saved"]{color:var(--wp-green-text,#04783c);}
body.nm-workplace #wp-ig-save-status[data-wp-save-state="unauth"]{color:#8a4b1a;}
/* r5.11 — belt for the persona-aware benefits-card owner: the employer-match
   claim never renders on the retiree shell regardless of section state. */
body.nm-workplace[data-wp-shell="retiree"] #wpo-benefits{display:none;}
/* r5.12 — SE Review & Confirm (the RP wizard step-8 pattern, SE flavor).
   The mode applier owns #pre-review-view's hidden attr; review mode hides
   the long-form layout entirely. */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="review"] #view-pre-retirement .calc-layout{display:none;}
body.nm-workplace[data-wp-shell="employee"] #pre-review-view{max-width:1160px;margin:0 auto;}
body.nm-workplace #pre-review-view .nm-rv-ready{display:flex;align-items:center;gap:12px;padding:9px 14px;border:1px solid #cfe6d6;border-radius:10px;background:#f2faf5;margin:4px 0 12px;}
body.nm-workplace #pre-review-view .nm-rv-ready-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#0c8a49;color:#fff;font-weight:700;flex:none;}
body.nm-workplace #pre-review-view .nm-rv-ready strong{display:block;font-size:13.5px;color:#14314e;}
/* r5.32 (QA ISSUE-008): warn state — the banner used a green success
   checkmark over "needs attention" copy. The renderer stamps
   data-rv-state; amber styling follows it. */
body.nm-workplace #pre-review-view .nm-rv-ready[data-rv-state="warn"]{border-color:#f2ddb0;background:#fdf8ec;}
body.nm-workplace #pre-review-view .nm-rv-ready[data-rv-state="warn"] .nm-rv-ready-icon{background:#b45309;}
/* r5.32 (QA ISSUE-002): inline field error for the derived Retirement-age
   control in the Input Guide. */
body.nm-workplace .nm-wp-ig-field-err:not([hidden]){display:block;margin-top:5px;color:#b42318;font-size:12px;font-weight:700;}
body.nm-workplace #wp-input-guide [data-wp-derived="retire-age"][aria-invalid="true"]{border-color:#b42318;}

body.nm-workplace #pre-review-view .nm-rv-ready p{margin:1px 0 0;font-size:12px;color:#51606f;}
body.nm-workplace #pre-review-view .nm-rv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:10px;}
/* r5.14: guaranteed 3×2 on desktop; base auto-fill stays mobile-safe. */
@media (min-width: 1280px){
  body.nm-workplace #pre-review-view .nm-rv-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
body.nm-workplace #pre-review-view .nm-rv-card{border:1px solid #e2e8ee;border-radius:10px;background:#fff;padding:9px 13px;box-shadow:0 5px 18px rgba(20,49,78,.04);}
body.nm-workplace #pre-review-view .nm-rv-card header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
body.nm-workplace #pre-review-view .nm-rv-card h2{font-size:13.5px;margin:0;color:#14314e;}
body.nm-workplace #pre-review-view .nm-rv-edit{font-size:12.5px;font-weight:600;color:#0c7a43;text-decoration:none;}
body.nm-workplace #pre-review-view .nm-rv-card dl{margin:0;}
body.nm-workplace #pre-review-view .nm-rv-card dl div{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border-bottom:1px dashed #edf1f5;}
body.nm-workplace #pre-review-view .nm-rv-card dl div:last-child{border-bottom:0;}
body.nm-workplace #pre-review-view .nm-rv-card dt{font-size:12.5px;color:#51606f;}
body.nm-workplace #pre-review-view .nm-rv-card dd{margin:0;font-size:12.5px;font-weight:700;color:#14314e;text-align:right;}
body.nm-workplace #pre-review-view .nm-rv-actions{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap;}
body.nm-workplace #pre-review-view #wp-rv-save-status{margin:0 auto 0 4px;font-size:12.5px;color:#51606f;}
body.nm-workplace #pre-review-view #wp-rv-save-status[data-wp-save-state="saving"]{color:#8a6d1a;}
body.nm-workplace #pre-review-view #wp-rv-save-status[data-wp-save-state="saved"]{color:var(--wp-green-text,#04783c);}
body.nm-workplace #pre-review-view #wp-rv-save-status[data-wp-save-state="unauth"]{color:#8a4b1a;}
/* r5.17 item 6b: the Review & Confirm name+Save group, composed into the
   action row by _nmWpRenderEmployeeReview. Sits between the save-status
   (which carries the margin-left:auto that pushes this group and Run to the
   right) and the Run button. Input height matches the .btn min-height of
   38px set at app.css:7125 so the field and the buttons share a baseline. */
body.nm-workplace #pre-review-view .nm-rv-save-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
body.nm-workplace #pre-review-view .nm-rv-save-state{display:flex;align-items:center;gap:8px;}
body.nm-workplace #pre-review-view .nm-rv-save-input{width:190px;height:38px;font-size:13px;border:1px solid #ccd7e0;border-radius:7px;padding:0 12px;background:#fff;box-sizing:border-box;color:#14314e;}
body.nm-workplace #pre-review-view .nm-rv-save-input::placeholder{color:var(--wp-muted,#64748b);} /* r5.33 — was #8fa0b2, 2.68:1; missed by the r5.32 sweep */
body.nm-workplace #pre-review-view .nm-rv-save-input:focus{outline:2px solid #0c8a49;outline-offset:1px;border-color:var(--wp-green-text,#04783c);}
/* r5.21: the scenario-save OUTCOME, owned solely by _nmWpRvSaveMsg. Kept
   distinct from #wp-rv-save-status, which reports the AUTOSAVE state and has
   its own owner in _nmWpIgSaveStatus — two facts, two elements. Hidden until
   there is an outcome to report, so it takes no space on arrival. */
body.nm-workplace #pre-review-view .nm-rv-save-msg{margin:0;font-size:12.5px;line-height:1.35;color:#51606f;}
body.nm-workplace #pre-review-view .nm-rv-save-msg[hidden]{display:none;}
body.nm-workplace #pre-review-view .nm-rv-save-msg[data-wp-rv-save-state="saving"]{color:#51606f;}
body.nm-workplace #pre-review-view .nm-rv-save-msg[data-wp-rv-save-state="ok"]{color:#0c6b3c;font-weight:600;}
body.nm-workplace #pre-review-view .nm-rv-save-msg[data-wp-rv-save-state="error"]{color:#a3231d;font-weight:600;}
body.nm-workplace .nm-wp-global-sidebar{width:var(--wp-sidebar-w);}
body.nm-workplace .nm-wp-global-topbar{left:var(--wp-sidebar-w);height:var(--wp-header-h);padding:0;}
body.nm-workplace .view.active{margin-left:var(--wp-sidebar-w);padding-top:var(--wp-header-h);}
body.nm-workplace #view-workspace .nm-dash-main{max-width:none;width:100%;padding:18px 24px 28px;margin:0;overflow:visible;}
body.nm-workplace .nm-panel{border:1px solid #e2e8ee;border-radius:8px;box-shadow:none;background:#fff;}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-brand{display:block;padding:18px 16px 14px;line-height:1;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-brand-suffix{display:block;margin:5px 0 0 32px;color:#39d071;font-size:9px;font-weight:800;letter-spacing:.22em;}
body.nm-workplace .nm-wp-global-topbar .nm-wp-global-actions{display:flex;align-items:center;gap:14px;white-space:nowrap;}
body.nm-workplace .nm-wp-global-topbar .nm-wp-global-product{min-width:0;display:flex;align-items:center;gap:18px;}


body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wpo-grid{display:contents;}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-main{grid-area:main;display:flex;flex-direction:column;gap:14px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-side{grid-area:side;display:flex;flex-direction:column;gap:14px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-hero-image{height:116px;min-width:0;border-radius:8px;overflow:hidden;background-size:cover;background-position:center;padding:18px;box-sizing:border-box;}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-hero-image strong{font-size:16px;line-height:1.28;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-snapshot{padding:14px 16px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:10px 0 6px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips li{min-width:0;padding:0 10px;border-right:1px solid #e5eaef;text-align:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips li:last-child{border-right:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips strong{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected{padding:15px 16px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected-body{display:grid;grid-template-columns:205px minmax(0,1fr);gap:18px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures{min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures strong{font-size:24px;line-height:1.15;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures b{font-size:14px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-wrap{min-width:0;overflow:hidden;}
body.nm-workplace[data-wp-shell="employee"] #wpo-chart{height:205px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:10px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics>div{min-width:0;padding:10px 12px;border-right:1px solid #e5eaef;overflow:hidden;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics>div:last-child{border-right:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics span{font-size:11px;line-height:1.25;overflow-wrap:normal;word-break:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics b{font-size:16px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics small{font-size:9px;line-height:1.3;word-break:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid a{min-width:0;padding:12px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track{padding:16px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-row{position:relative;min-height:112px;display:grid;grid-template-columns:1fr 132px;align-items:center;gap:8px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-ring{width:132px;height:82px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-num{right:19px;top:47px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-num strong{font-size:25px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-facts dd{font-size:13px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal,
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies{padding:15px 16px;}


body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview{display:block;}
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{
  display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.45fr);gap:24px;align-items:center;margin:0 0 12px;min-width:0;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-hero-image{height:114px;min-width:0;overflow:hidden;border-radius:8px;background-size:cover;background-position:center;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-plan-tools{margin:0 0 10px;min-height:34px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px;min-width:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-main,
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side{min-width:0;gap:14px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis article{min-width:0;padding:16px 12px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis strong{font-size:25px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-card{padding:15px;overflow:hidden;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-card svg{height:205px;min-width:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2{display:grid;grid-template-columns:1.25fr .82fr .82fr;gap:12px;min-width:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 article{min-width:0;padding:15px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat,
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next{padding:15px;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy{margin-top:14px;}


@media(max-width:1220px){
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{grid-template-columns:minmax(0,1fr) 290px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{grid-template-columns:minmax(220px,.72fr) minmax(360px,1.28fr);gap:16px;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips strong{font-size:15px;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{grid-template-columns:minmax(0,1fr) 310px;}
}
@media(max-width:1080px){
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{grid-template-columns:1fr;grid-template-areas:"intro" "side" "main" "privacy" "legal";}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies{grid-column:1/-1;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:820px){
  body.nm-workplace .nm-wp-global-topbar{left:0;}
  body.nm-workplace .view.active{margin-left:0;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected-body{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-side,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2{grid-template-columns:1fr;}
}


body.nm-workplace{
  --wp-sidebar-w:clamp(186px,12.9vw,205px);
  --wp-header-h:68px;
  --wp-navy:#042b4a;
  --wp-navy-deep:#03243f;
  --wp-green:#0a9b4f;
  --wp-green-bright:#35c765;
  --wp-ink:#0a2450;
  --wp-muted:#61738e;
  /* r5.32 (QA ISSUE-004): accessible green for SMALL text — the brand
     greens sit at 3.4-4.4:1 on white, fine for large type and graphics
     (3:1) but failing AA body text (4.5:1). One token, ~55 consumers. */
  --wp-green-text:#04783c;
  --wp-line:#dfe6ed;
  --wp-soft:#f7fafc;
  background:#fff;
  color:var(--wp-ink);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  overflow-x:hidden;
}
body.nm-workplace .nm-wp-global-sidebar{
  position:fixed;inset:0 auto 0 0;width:var(--wp-sidebar-w);
  min-height:100vh;box-sizing:border-box;padding:0 14px 14px;
  display:flex;flex-direction:column;background:linear-gradient(180deg,#042e50 0%,#03233e 100%);
  border:0;border-radius:0;box-shadow:none;overflow-y:auto;overflow-x:hidden;
  scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent;z-index:1200;
}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-brand{
  height:72px;min-height:72px;margin:0;padding:9px 4px 7px;
  display:flex;align-items:center;justify-content:flex-start;background:transparent;
}
body.nm-workplace .nm-wp-sidebar-lockup{display:block;width:min(160px,100%);height:auto;object-fit:contain;}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-nav{display:flex;flex-direction:column;gap:2px;min-height:0;}
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;}
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section-label{
  display:block;margin:12px 6px 5px;color:#39d06e;font-size:9.5px;
  line-height:1.2;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-nav>a,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>a,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>button{
  min-height:38px;box-sizing:border-box;margin:0;padding:8px 9px;
  display:flex;align-items:center;gap:10px;border:0;border-radius:6px;
  background:transparent;color:#fff;text-align:left;text-decoration:none;
  font:600 12.5px/1.25 Inter,"Segoe UI",Arial,sans-serif;white-space:normal;cursor:pointer;
}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-nav>a:hover,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>a:hover,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>button:hover{background:rgba(255,255,255,.07);}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-nav>a.active,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>a.active,
body.nm-workplace .nm-wp-global-sidebar .nm-nav-section>button.active{
  color:#fff;background:linear-gradient(90deg,#0b9f50,#0f9c4e);box-shadow:none;
}
body.nm-workplace .nm-wp-global-sidebar .nm-ui-icon{width:18px;height:18px;min-width:18px;color:#eef5fb;opacity:.95;}
body.nm-workplace .nm-wp-global-sidebar .active .nm-ui-icon{color:#fff;}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help{
  margin:14px 0 0;padding:14px 14px 13px;min-height:130px;box-sizing:border-box;
  border:1px solid rgba(255,255,255,.18);border-radius:6px;background:rgba(255,255,255,.055);color:#fff;
}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help strong{margin:0 0 8px;color:#fff;font-size:11px;line-height:1.45;}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help p{margin:0 0 11px;color:#e5eef7;font-size:9.5px;line-height:1.55;}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help a,
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help .nm-dash-help-button{
  display:flex;align-items:center;justify-content:center;height:30px;border:0;border-radius:4px;
  background:#164f7b;color:#fff;font-size:10px;font-weight:800;text-decoration:none;
}
body.nm-workplace .nm-wp-global-sidebar .nm-dash-help>span{display:none;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-footer{
  margin-top:auto;padding:15px 4px 0;display:flex;flex-direction:column;align-items:center;gap:9px;color:#fff;
}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-tenant img{display:block;width:88px;height:auto;filter:none;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-powered{font-size:10px;color:#fff;opacity:.95;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-powered:before{content:"♧";color:#36d06f;margin-right:4px;}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-disclosures-link{display:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-global-sidebar .nm-wp-sidebar-powered{font-size:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-global-sidebar .nm-wp-sidebar-powered:before{content:"© 2025 NestMint, Inc.";font-size:9px;color:#fff;margin:0;opacity:.85;}

body.nm-workplace .nm-wp-global-topbar{
  position:fixed;left:var(--wp-sidebar-w);right:0;top:0;height:var(--wp-header-h);
  box-sizing:border-box;padding:0 30px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;
  background:#fff;border:0;border-bottom:1px solid #e8edf2;box-shadow:none;z-index:1190;overflow:visible;
}
body.nm-workplace .nm-wp-global-brand{display:flex;align-items:center;min-width:0;height:100%;gap:18px;overflow:hidden;}
body.nm-workplace .nm-wp-global-tenant-logo{display:flex;align-items:center;flex:0 0 auto;font-size:23px;font-style:italic;font-weight:900;color:#1239bf;}
body.nm-workplace .nm-wp-global-tenant-logo img{display:block;width:92px;height:auto;max-height:46px;object-fit:contain;}
body.nm-workplace .nm-wp-global-divider{display:block;width:1px;height:34px;background:#dfe4ea;flex:0 0 auto;}
body.nm-workplace .nm-wp-global-product{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#071c44;font-size:15px;font-weight:800;}
body.nm-workplace .nm-wp-global-actions{display:flex;align-items:center;gap:12px;height:100%;white-space:nowrap;}
body.nm-workplace .nm-wp-global-privacy{display:flex;align-items:center;gap:8px;color:#15305b;text-decoration:none;font-size:11px;font-weight:600;}
body.nm-workplace .nm-wp-global-privacy .nm-ui-icon{width:16px;height:16px;color:#0aa056;}
body.nm-workplace .nm-wp-global-privacy em{font-style:normal;color:#0b244b;font-size:12px;margin-left:3px;}
body.nm-workplace .nm-wp-global-separator{display:block;width:1px;height:30px;background:#e2e7ec;}
body.nm-workplace .nm-wp-global-help,
body.nm-workplace .nm-wp-global-bell{position:relative;width:34px;height:34px;display:grid;place-items:center;box-sizing:border-box;border:0;background:#fff;color:#0a2c60;text-decoration:none;font-size:18px;line-height:1;}
body.nm-workplace .nm-wp-global-help{border:1.5px solid #31558d;border-radius:50%;font-size:15px;font-weight:700;}
body.nm-workplace .nm-wp-global-bell .nm-ui-icon{width:20px;height:20px;color:#173b6d;}
body.nm-workplace .nm-wp-bell-badge{position:absolute;right:-1px;top:-2px;min-width:17px;height:17px;padding:0 4px;box-sizing:border-box;border:2px solid #fff;border-radius:10px;background:#07964d;color:#fff;font-size:8px;font-weight:900;line-height:13px;text-align:center;}
body.nm-workplace .nm-wp-global-user{display:grid;grid-template-columns:34px auto 12px;align-items:center;column-gap:9px;color:#071e48;text-decoration:none;}
body.nm-workplace .nm-wp-global-user>i{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#072b58;color:#fff;font-style:normal;font-size:10px;font-weight:800;}
body.nm-workplace .nm-wp-global-user>span{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;}
body.nm-workplace .nm-wp-global-user b{font-size:11px;color:#071e48;}
body.nm-workplace .nm-wp-global-user small{font-size:9px;color:#64758d;}
body.nm-workplace .nm-wp-global-user em{font-style:normal;color:#071e48;font-size:12px;}

body.nm-workplace .view.active{margin-left:var(--wp-sidebar-w);padding-top:var(--wp-header-h);min-height:100vh;box-sizing:border-box;background:#fff;}
body.nm-workplace #view-workspace{padding-left:0;}
body.nm-workplace #view-workspace .nm-dash-shell{display:block;max-width:none;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none;background:#fff;overflow:visible;}
body.nm-workplace #view-workspace .nm-dash-sidebar{display:none;}
body.nm-workplace #view-workspace .nm-dash-main{width:100%;max-width:none;margin:0;padding:20px 24px 24px;box-sizing:border-box;background:#fff;overflow:visible;}
body.nm-workplace [data-nm-wp-retired]{display:none;}
/* r5.16 item 1: sole owner of the overview page box. max-width and margin were
   each declared by three unconditional generations earlier in this file; the
   winner was decided by source order alone. margin is now 0 rather than
   "0 auto": auto side margins centred the employee overview inside its content
   column (~170px of left drift at 1920px) while retiree escaped the same rule
   only because its own 1172px cap happens to equal its column. Both overviews
   now start at the content pad. The 1320px cap is retained so panel sizing is
   unchanged. */
body.nm-workplace .nm-wp-overview-page{box-sizing:border-box;max-width:1320px;margin:0;color:#0a2450;}
body.nm-workplace .nm-panel{box-sizing:border-box;margin:0;border:1px solid #e2e8ee;border-radius:7px;background:#fff;box-shadow:none;overflow:hidden;}
body.nm-workplace .nm-panel h2{margin:0;color:#091f47;font-size:13px;line-height:1.3;font-weight:800;}
body.nm-workplace .nm-wp-info{display:inline-grid;place-items:center;width:11px;height:11px;border:1px solid #91a0b5;border-radius:50%;color:var(--wp-muted,#61738e);font:700 7px/1 Arial;vertical-align:2px;}
body.nm-workplace .nm-view-link{margin:0;color:var(--wp-green-text,#04783c);font-size:10px;font-weight:800;text-decoration:none;}
body.nm-workplace .btn.btn-ghost{box-shadow:none;}


body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{
  /* Sole owner of the employee overview canvas. Width/centering was previously
     declared in a separate later section, and the rail width and gaps were
     spread over three unconditional generations whose winner depended purely on
     source order. Responsive rail widths live in the @media blocks below. */
  /* r5.16 item 1: width cap + auto-centering removed. #wp-ret-overview is a
     plain block that fills the content column, so on viewports wider than
     1440px + pads the employee canvas centered itself and drifted ~81px right
     of retiree. The two overviews now share one geometry contract: fill the
     column, start at the left pad. */
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 384px;
  /* r5.19 audit: r5.18 added the privacy banner and legal footer as direct
     children of this grid but never named rows for them, so auto-placement
     dropped the legal footer into the RAIL column at rail width. The grid
     owns placement of its own children; both now span the full width. */
  grid-template-areas:"intro rail" "main rail" "privacy privacy" "legal legal";
  /* r5.24 (Jahn 8/12, live screenshot): the Savings Snapshot sat ~100px below
     the hero with a dead band between them. Cause: the rail spans rows 1-2,
     and with ALL-AUTO rows a spanning item's height is distributed across
     every spanned auto track (CSS Grid intrinsic sizing) — so whenever the
     rail outgrows intro+main, the excess inflates row 1, the INTRO row, and
     pushes "main" (the snapshot and everything under it) down. Making the
     main row flexible excludes the spanning rail from row 1's intrinsic
     sizing: row 1 now hugs the intro, the rail's excess falls into row 2.
     One declaration, no spacing constants. The winning single-column block
     (max-width:1160) resets this to `none` — its areas name FIVE rows. */
  grid-template-rows:auto 1fr auto auto;
  column-gap:20px;
  row-gap:14px;
  align-items:start;
}
/* Greeting must wrap. white-space:nowrap made its min-content width
   unshrinkable, which is what starved the hero column. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-overview-intro h1{
  /* white-space must stay normal: nowrap made the greeting's min-content width
     unshrinkable, which is what starved the hero column. */
  margin:0 0 10px;
  color:#0a2450;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:800;
  white-space:normal;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-overview-intro p{
  margin:0;
  max-width:36ch;
  color:#1c3d67;
  font-size:14px;
  line-height:1.55;
}
/* Employee hero layout contract.
   The copy and the CTA are laid out in normal flow inside this element, which
   is also the element that clips (overflow:hidden). Two consequences are
   structural rather than tuned: the copy's inline start edge IS the padding
   edge, so it can never be clipped at the left; and the CTA occupies its own
   row, so it can never overlap the copy at any viewport width. Earlier
   generations pinned the copy at left:22px/top:43px and floated the CTA over
   it absolutely, which collided with the second line between 1161-1280px. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-employee-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,45,.72),rgba(3,24,45,.14) 62%,rgba(3,24,45,.35));}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-employee-hero strong{position:relative;z-index:1;color:#fff;font-size:15px;line-height:1.25;font-weight:800;max-width:100%;min-width:0;overflow-wrap:anywhere;}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-employee-hero .nm-wp-hero-cta{position:relative;right:auto;bottom:auto;align-self:flex-end;flex:0 0 auto;margin-top:auto;max-width:100%;}
body.nm-workplace .nm-wp-hero-cta{position:absolute;z-index:2;right:16px;bottom:13px;height:34px;padding:0 16px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.32);border-radius:5px;background:#073568;color:#fff;text-decoration:none;font-size:11px;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.22);}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wpo-grid{display:contents;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-main{grid-area:main;display:grid;grid-template-columns:1fr;gap:12px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-side{grid-area:rail;display:grid;grid-template-columns:1fr;gap:12px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-snapshot{min-height:154px;padding:14px 18px 10px;}
body.nm-workplace .nm-wpo-snapshot header,
body.nm-workplace .nm-wpo-goal header,
body.nm-workplace .nm-wpo-strategies header,
body.nm-workplace .nm-wpo-saved header{display:flex;align-items:center;justify-content:space-between;gap:12px;}
/* r5.48 (user 8/22 iPad review, defect 1b): Employee Savings Snapshot chip
   strip alignment. Previous rule used flex + auto-flow, so a cell whose
   label wrapped to two lines (e.g. "Match captured") pushed its <strong>
   down while the neighbor's <strong> stayed higher. This is a REAL
   rewrite: each <li> is now a 3-row grid — icon / value / label — so
   all six cells share the same three Y coordinates regardless of label
   wrap. `min-content` on the value row ensures a wrapped label pushes
   only its own row 3, never row 2. Digits are tabular so "$26,651" and
   "18.0%" don't drift laterally. */
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin:12px 0 9px;padding:0;list-style:none;align-items:stretch;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips li{min-width:0;padding:8px 11px;display:grid;grid-template-rows:20px minmax(22px,auto) 1fr;justify-items:center;align-content:start;row-gap:6px;border-right:1px solid #e4e9ee;text-align:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips li:last-child{border-right:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips i{grid-row:1;width:20px;height:20px;margin:0;color:#079d50;display:grid;place-items:center;} /* r5.48 defect 1b */
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips strong{grid-row:2;display:block;max-width:100%;color:#071d46;font-size:16px;line-height:1.15;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;margin:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips small{grid-row:3;display:block;margin:0;color:#324f76;font-size:9px;line-height:1.25;align-self:start;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-all-inputs{color:var(--wp-green-text,#04783c);font-size:10px;font-weight:800;text-decoration:none;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected{min-height:356px;padding:16px 18px 10px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected-body{display:grid;grid-template-columns:222px minmax(0,1fr);gap:18px;margin-top:18px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures{display:flex;flex-direction:column;gap:15px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures>div{min-width:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures small{display:block;color:#17355f;font-size:10px;line-height:1.35;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures strong{display:block;margin-top:3px;color:#06954a;font-size:24px;line-height:1.1;font-weight:800;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures em{display:block;margin-top:3px;color:#17355f;font-size:9px;font-style:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-figures b{display:block;margin-top:3px;color:#071d46;font-size:13px;line-height:1.2;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-wrap{min-width:0;position:relative;overflow:visible;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-legend{height:20px;display:flex;justify-content:center;gap:70px;color:#17355f;font-size:9px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-legend span:before{content:"";display:inline-block;width:13px;height:2px;margin-right:6px;vertical-align:3px;background:#07984c;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-legend span+span:before{background:#2c55ee;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chart-stage{position:relative;height:218px;padding:0 8px 24px 42px;box-sizing:border-box;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] #wpo-chart{display:block;width:100%;height:188px;overflow:visible;}
body.nm-workplace .nm-wpo-gridlines line,
body.nm-workplace .nm-wpr-gridlines line{stroke:#e8edf1;stroke-width:1;}
body.nm-workplace .nm-wpo-yaxis,
body.nm-workplace .nm-wpr-yaxis{position:absolute;left:0;top:0;bottom:28px;display:flex;flex-direction:column;justify-content:space-between;color:#304e74;font-size:8px;}
body.nm-workplace .nm-wpo-xaxis,
body.nm-workplace .nm-wpr-xaxis{position:absolute;left:42px;right:8px;bottom:3px;display:flex;justify-content:space-between;color:#304e74;font-size:8px;}
body.nm-workplace .nm-wpo-chart-callout{position:absolute;right:4px;top:60px;width:116px;padding:11px 12px;box-sizing:border-box;border:1px solid #e5ebef;border-radius:6px;background:rgba(255,255,255,.96);box-shadow:0 4px 16px rgba(25,56,88,.08);}
body.nm-workplace .nm-wpo-chart-callout strong{display:block;margin-bottom:6px;color:#10284e;font-size:10px;}
body.nm-workplace .nm-wpo-chart-callout small{display:block;color:#395675;font-size:8px;}
body.nm-workplace .nm-wpo-chart-callout b{display:block;margin:1px 0 5px;color:var(--wp-green-text,#04783c);font-size:9px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:1px 0 0 184px;border:1px solid #e2e8ee;border-radius:7px;overflow:hidden;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics>div{min-height:64px;padding:10px 13px;box-sizing:border-box;border-right:1px solid #e2e8ee;overflow:hidden;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics>div:last-child{border-right:0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics span{display:block;color:#09224b;font-size:9px;line-height:1.2;font-weight:800;word-break:normal;overflow-wrap:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics b{display:block;margin-top:3px;color:var(--wp-green-text,#04783c);font-size:13px;line-height:1.1;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics small{display:block;margin-top:2px;color:#4f6380;font-size:8px;line-height:1.2;word-break:normal;overflow-wrap:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-actions{min-height:116px;padding:14px 16px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid a{position:relative;min-width:0;min-height:65px;padding:9px 20px 8px 42px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;border:1px solid #e2e8ee;border-radius:6px;background:#fff;color:#09224b;text-decoration:none;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid i{position:absolute;left:12px;top:14px;width:20px;height:20px;color:#079c4f;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid b{font-size:9px;line-height:1.2;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid small{margin-top:4px;color:#536981;font-size:8px;line-height:1.2;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid em{position:absolute;right:8px;bottom:6px;color:var(--wp-green-text,#04783c);font-size:12px;font-style:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved{min-height:82px;padding:11px 16px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:9px;margin-top:8px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid>a{position:relative;min-height:37px;padding:7px 24px 6px 10px;box-sizing:border-box;border:1px solid #dfe5eb;border-radius:5px;color:#0a2450;text-decoration:none;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid>a.active{border-color:var(--wp-green-text,#04783c);background:#f7fffa;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid b{display:block;font-size:9px;line-height:1.15;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid small{display:block;margin-top:2px;color:#5b708a;font-size:7.5px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid em{position:absolute;right:8px;top:10px;color:var(--wp-green-text,#04783c);font-style:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved-grid .create{display:grid;place-items:center;padding:0;border-style:dashed;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track{min-height:292px;padding:17px 18px 14px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-row{position:relative;display:grid;grid-template-columns:1fr 144px;align-items:center;gap:8px;min-height:105px;margin-top:5px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-row>div:first-child{align-self:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-row em{display:block;color:var(--wp-green-text,#04783c);font-size:13px;font-weight:800;font-style:normal;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-row small{display:block;margin-top:8px;max-width:140px;color:#29496e;font-size:9px;line-height:1.45;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-ring{width:144px;height:88px;overflow:visible;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-num{position:absolute;right:33px;top:54px;width:85px;text-align:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-num strong{display:block;color:#0a2450;font-size:25px;line-height:1;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-num small{margin:3px 0 0;max-width:none;font-size:8px;text-align:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-facts{margin:4px 0 10px;padding:7px 0 5px;border-top:1px solid #e3e8ed;border-bottom:1px solid #e3e8ed;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-facts>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:5px 0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-facts dt{color:#17355f;font-size:9px;line-height:1.25;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track-facts dd{margin:0;color:#071d46;font-size:11px;font-weight:800;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-track>.btn{width:100%;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #2cb36b;border-radius:4px;background:#fff;color:var(--wp-green-text,#04783c);font-size:10px;font-weight:800;text-decoration:none;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal{min-height:242px;padding:17px 18px 14px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal header>a{color:#102d58;font-size:9px;text-decoration:underline;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal p{margin:7px 0 12px;color:#29496e;font-size:9px;line-height:1.35;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal label{display:block;margin-bottom:8px;color:#1a3962;font-size:9px;font-weight:700;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-scale{display:flex;align-items:center;justify-content:space-between;margin:0;color:#17355f;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-scale small{font-size:8px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-scale strong{color:var(--wp-green-text,#04783c);font-size:12px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-bar{position:relative;height:3px;margin:10px 0 13px;background:#cfd9e0;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-bar span{position:absolute;top:50%;width:13px;height:13px;transform:translate(-50%,-50%);border-radius:50%;background:#07994c;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:11px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-stats small{display:block;color:#4f6480;font-size:7.5px;line-height:1.25;text-align:center;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal-stats b{display:block;margin-top:3px;color:var(--wp-green-text,#04783c);font-size:11px;text-align:center;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal>.btn{width:100%;height:31px;display:flex;align-items:center;justify-content:center;border:1px solid #2cb36b;border-radius:4px;background:#fff;color:var(--wp-green-text,#04783c);font-size:9px;font-weight:800;text-decoration:none;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies{min-height:326px;padding:17px 18px 14px;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies>p{margin:8px 0 12px;color:#29496e;font-size:9px;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies{margin:0;padding:0;list-style:none;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies li{display:grid;grid-template-columns:minmax(0,1fr) auto 44px 32px;align-items:center;gap:8px;min-height:36px;border-bottom:1px solid #eef1f4;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies span{min-width:0;color:#16365f;font-size:8.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies b{color:#071d46;font-size:9px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies i{display:block;width:42px;height:4px;border-radius:3px;background:#07994c;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies em{color:var(--wp-green-text,#04783c);font-size:9px;font-style:normal;font-weight:800;text-align:right;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies em.is-warning{color:#e2a300;}
body.nm-workplace[data-wp-shell="employee"] #wpo-strategies li:last-child i{background:#e2a300;}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies>.nm-view-link:last-child{display:block;margin-top:12px;}


body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview{display:block;width:100%;max-width:1172px;}
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{display:grid;grid-template-columns:minmax(330px,410px) minmax(0,1fr);align-items:center;gap:20px;height:104px;margin:0 0 10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-intro h1{margin:0 0 7px;color:#0a2450;font-size:27px;line-height:1.1;letter-spacing:-.035em;font-weight:800;white-space:normal;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-status{margin:0;color:var(--wp-green-text,#04783c);font-size:12px;font-weight:700;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-status.is-empty{color:#5a6f88;font-weight:600;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-status span{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:8px;border-radius:50%;background:#079b4e;color:#fff;font-size:11px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-meta{margin:9px 0 0;color:#4b6282;font-size:9px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-hero{position:relative;height:104px;padding:0;border-radius:7px;overflow:hidden;background:url("img/wp-hero-retiree.jpg") center/cover no-repeat;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,45,.72),rgba(3,24,45,.08) 62%,rgba(3,24,45,.26));}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-hero strong{position:absolute;z-index:1;left:20px;top:34px;color:#fff;font-size:15px;line-height:1.28;font-weight:800;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localbar{min-height:34px;box-sizing:border-box;margin:0 0 10px;padding:0 2px;display:flex;align-items:center;justify-content:flex-end;gap:12px;border:0;background:transparent;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localtabs{display:flex;align-items:stretch;height:100%;gap:13px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localtabs button{position:relative;height:100%;padding:0 5px;border:0;background:transparent;color:#3d5980;font-size:9px;font-weight:600;cursor:pointer;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localtabs button.active{color:var(--wp-green-text,#04783c);font-weight:800;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localtabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#07994d;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-plan-tools{display:flex;align-items:center;gap:12px;margin:0;min-height:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-plan-tools>span{color:#4b6282;font-size:9px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-plan-tools>a{height:30px;padding:0 11px;display:flex;align-items:center;gap:7px;border:1px solid #d8e0e8;border-radius:6px;background:#fff;color:#18365e;font-size:9px;font-weight:800;text-decoration:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-plan-tools .nm-ui-icon{width:14px;height:14px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{display:grid;grid-template-columns:minmax(0,1fr) 398px;gap:14px;align-items:start;min-width:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-main,
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side{display:grid;grid-template-columns:1fr;gap:12px;min-width:0;}
/* r5.48 (user 8/22 iPad review, defect 1a): Retiree KPI row alignment.
   The previous rules used flex + a hard-coded `margin-top:31px` on the
   plain-value <strong> to fake a shared baseline with the middle card's
   donut ring. That drifted at every iPad breakpoint. This is a REAL
   rewrite (not a patch): each card is a 3-row grid — h2 / value / small —
   so the three cards' value rows share both their top and bottom Y even
   though card 2 renders a ring instead of a plain number. The ring is
   sized to the value row and its <strong> centers inside it, sharing the
   card's value-row rather than living above/below it. `tabular-nums`
   locks digit widths so "$19,054,505" and "$26,651" don't pull their
   siblings around. */
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis article{min-height:158px;padding:14px 14px;display:grid;grid-template-rows:auto minmax(84px,1fr) auto;justify-items:center;text-align:center;row-gap:6px;height:auto;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis h2{grid-row:1;font-size:11px;margin:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis>article>strong{grid-row:2;align-self:center;justify-self:center;margin:0;color:#07994d;font-size:27px;line-height:1;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis>article>small{grid-row:3;margin:0;color:#3a5579;font-size:9px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-pos-row{grid-row:2;display:flex;align-items:center;justify-content:center;gap:13px;margin:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-ring{position:relative;width:83px;height:83px;border-radius:50%;background:conic-gradient(#07994d calc(var(--wpr-pos,0)*1%),#e7edf2 0);display:grid;place-items:center;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-ring:after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-ring strong{position:relative;z-index:1;color:#09234c;font-size:24px;font-variant-numeric:tabular-nums;} /* r5.48 defect 1a */
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-pos-row em{color:var(--wp-green-text,#04783c);font-size:10px;font-style:normal;font-weight:700;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-card{height:220px;padding:14px 14px 8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-head{display:flex;align-items:center;justify-content:space-between;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-legend{display:flex;gap:18px;margin:0;padding:0;list-style:none;color:#55708e;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-legend li:before{content:"";display:inline-block;width:14px;height:1px;margin-right:5px;vertical-align:3px;border-top:1px dashed #7dc69e;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-legend li.is-median:before{border-top:2px solid #07994d;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-stage{position:relative;height:168px;margin-top:7px;padding:0 7px 20px 36px;box-sizing:border-box;}
body.nm-workplace[data-wp-shell="retiree"] #wpr-chart{display:block;width:100%;height:145px;overflow:visible;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-yaxis{bottom:22px;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-xaxis{left:36px;right:7px;bottom:0;font-size:7.5px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-card>.nm-kpi-context{display:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2{display:grid;grid-template-columns:1.28fr .9fr .9fr;gap:12px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 article{height:220px;padding:14px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-donut-wrap{display:grid;grid-template-columns:102px minmax(0,1fr);align-items:center;gap:14px;margin-top:13px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-donut{position:relative;width:96px;height:96px;border-radius:50%;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-donut:after{content:"";position:absolute;inset:25px;border-radius:50%;background:#fff;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend{margin:0;padding:0;list-style:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend li{display:grid;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:19px;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend i{width:7px;height:7px;border-radius:50%;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend span{min-width:0;color:#244264;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend b{display:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-legend em{color:#5a708c;font-style:normal;font-weight:700;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-donut-total{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-top:11px;border-top:1px solid #e4e9ed;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-donut-total b{color:var(--wp-green-text,#04783c);font-size:12px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 article>strong{display:block;margin-top:9px;color:var(--wp-green-text,#04783c);font-size:19px;line-height:1.1;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 article>small{display:block;margin-top:4px;color:#4f6681;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 .nm-wpo-track-facts{margin:12px 0 0;padding:0;border:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 .nm-wpo-track-facts>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px 0;border-top:1px solid #e4e9ed;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 dt{color:#29486d;font-size:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 dd{margin:0;color:var(--wp-green-text,#04783c);font-size:11px;font-weight:800;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat{height:382px;padding:14px 14px 10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat>header{display:flex;align-items:center;justify-content:space-between;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current{position:relative;margin-top:12px;padding:11px 12px 10px;border:1px solid #36b76e;border-radius:7px;background:#fbfffc;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current-check{position:absolute;right:9px;top:9px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#07994d;color:#fff;font-size:10px;font-style:normal;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>small{display:block;color:var(--wp-green-text,#04783c);font-size:9px;font-weight:800;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>strong{display:block;margin-top:3px;color:#0b2450;font-size:15px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>span{display:block;margin-top:5px;color:#5a708b;font-size:7.5px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>em{position:absolute;right:13px;top:37px;color:var(--wp-muted,#61738e);font-size:7px;font-style:normal;text-align:right;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>em b{display:block;margin-top:2px;color:var(--wp-green-text,#04783c);font-size:10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current>div{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:9px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current label{color:#61758f;font-size:7px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-current label b{display:block;margin-top:3px;color:var(--wp-green-text,#04783c);font-size:10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-alt-title{margin:11px 0 4px;color:#102a54;font-size:8px;font-weight:800;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-alt-title small{margin-left:5px;color:var(--wp-muted,#61738e);font-size:7px;font-weight:500;}
body.nm-workplace[data-wp-shell="retiree"] #wpr-strat-lens:empty{display:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list{margin:0;padding:0;list-style:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li{display:grid;grid-template-columns:20px minmax(0,1fr) auto auto 38px;align-items:center;gap:6px;min-height:37px;border-bottom:1px solid #edf1f3;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li>i{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#09a052;color:#fff;font-size:8px;font-style:normal;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li>i.s2{background:#8d32e6;}body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li>i.s3{background:#ff8b12;}body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li>i.s4{background:#6d7c91;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list span{min-width:0;color:#17355f;font-size:8px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list b{color:#0a2450;font-size:8px;white-space:nowrap;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list em{font-size:8px;font-style:normal;font-weight:800;white-space:nowrap;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list em.is-up{color:var(--wp-green-text,#04783c);}body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list em.is-down{color:#ee3f35;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list u{display:block;width:34px;height:4px;border-radius:3px;background:#07994d;text-decoration:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat-list li:not(:first-child) u{background:#ef3f36;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat>.nm-view-link:last-child{display:block;margin-top:8px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next{height:240px;padding:14px 14px 10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list{margin:7px 0 0;padding:0;list-style:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list li{border-bottom:1px solid #edf1f3;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list a{min-height:42px;display:grid;grid-template-columns:20px minmax(0,1fr) 12px;align-items:center;gap:8px;color:#102a54;text-decoration:none;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list a>i{width:18px;height:18px;display:grid;place-items:center;border:1.5px solid #0aa052;border-radius:50%;color:#0aa052;font-size:9px;font-style:normal;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list a>span{min-width:0;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list strong{display:block;font-size:8px;line-height:1.25;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list small{display:block;margin-top:2px;color:#63768e;font-size:7px;line-height:1.25;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next-list a>em{color:#36638c;font-size:15px;font-style:normal;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next>.nm-view-link{display:block;margin-top:8px;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy{height:62px;box-sizing:border-box;margin-top:14px;padding:10px 16px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #2d6386;border-radius:6px;background:#fff;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy>i{width:24px;height:24px;color:#07994d;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy>div{display:flex;flex-direction:column;gap:3px;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy strong{color:#102a54;font-size:8px;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy span{color:#526981;font-size:7.5px;}
body.nm-workplace[data-wp-shell] .nm-wpr-privacy>a{color:var(--wp-green-text,#04783c);font-size:8px;font-weight:800;text-decoration:none;}
body.nm-workplace[data-wp-shell] .nm-wpr-legal{height:30px;display:flex;align-items:center;justify-content:center;position:relative;color:#7a8ca1;font-size:7px;}
body.nm-workplace[data-wp-shell] .nm-wpr-legal nav{position:absolute;right:0;display:flex;gap:28px;}
body.nm-workplace[data-wp-shell] .nm-wpr-legal a{color:var(--wp-muted,#61738e);text-decoration:none;}
body.nm-workplace[data-wp-shell="retiree"][data-wpr-filter="income"] .nm-wpr-kpis article:not(:nth-child(3)),
body.nm-workplace[data-wp-shell="retiree"][data-wpr-filter="income"] .nm-wpr-chart-card,
body.nm-workplace[data-wp-shell="retiree"][data-wpr-filter="income"] .nm-wpr-row2 article:not(:first-child),
body.nm-workplace[data-wp-shell="retiree"][data-wpr-filter="income"] .nm-wpr-side,
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview[data-wpr-filter="income"] .nm-wpr-kpis article:not(:nth-child(3)),
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview[data-wpr-filter="income"] .nm-wpr-chart-card,
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview[data-wpr-filter="income"] .nm-wpr-row2 article:not(:first-child),
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview[data-wpr-filter="income"] .nm-wpr-side{opacity:.28;}


@media(max-width:1320px){
  body.nm-workplace,body.nm-workplace[data-wp-shell="employee"],body.nm-workplace[data-wp-shell="retiree"]{--wp-content-pad-l:20px;--wp-content-pad-r:20px;}
  body.nm-workplace .nm-wp-global-topbar{gap:16px;}
  body.nm-workplace .nm-wp-global-actions{gap:8px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{grid-template-columns:minmax(0,1fr) 330px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{grid-template-columns:330px minmax(0,1fr);}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips strong{font-size:14px;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected-body{grid-template-columns:195px minmax(0,1fr);}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{grid-template-columns:minmax(0,1fr) 360px;}
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{grid-template-columns:400px minmax(0,1fr);}
}
@media(max-width:1160px){
  body.nm-workplace .nm-wp-global-privacy span{display:none;}
  /* Single column below 1160px: areas stack, so there is no rail column to
     reserve. Prior to the hero-cluster consolidation a later unconditional
     generation silently reinstated a second 384px column here, confining the
     stacked content to 374px of a 778px canvas and leaving ~384px of dead
     space. Approved 2026-08-04. */
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{grid-template-columns:1fr;grid-template-areas:"intro" "rail" "main" "privacy" "legal";grid-template-rows:none;/* r5.24: 5 single-column rows — the 4-track base list must not leak in */}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-side{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-strategies{grid-column:1/-1;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-layout{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side{grid-template-columns:1fr 1fr;}
}
@media(max-width:900px){
  body.nm-workplace{--wp-sidebar-w:0px;}
  body.nm-workplace .nm-wp-global-sidebar{display:none;}
  body.nm-workplace,body.nm-workplace[data-wp-shell="employee"],body.nm-workplace[data-wp-shell="retiree"]{--wp-content-pad-l:16px;--wp-content-pad-r:16px;}
  body.nm-workplace .nm-wp-global-topbar{left:0;}
  body.nm-workplace .nm-wp-global-user>span,body.nm-workplace .nm-wp-global-divider{display:none;}
  body.nm-workplace #view-workspace .nm-dash-main{padding:16px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{grid-template-columns:1fr;height:auto;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-chips li:nth-child(3){border-right:0;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected-body{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-mini-metrics{margin-left:0;grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="employee"] .nm-wpo-side,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2{grid-template-columns:1fr;}
  body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-localtabs{overflow-x:auto;}
}

body.nm-workplace{--wp-header-h:68px;}
body.nm-workplace .nm-wp-global-brand>span{border-left:0;padding-left:0;}
body.nm-workplace .nm-wp-global-divider{width:1px;height:34px;background:#dfe4ea;}
body.nm-workplace .view.active{padding-top:var(--wp-header-h);}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-main{grid-area:main;display:grid;grid-template-columns:1fr;gap:12px;min-width:0;}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-side{grid-area:rail;display:grid;grid-template-columns:1fr;gap:12px;min-width:0;}
/* r5.19 audit: explicit placement for the two full-width rows. margin-top is
   zeroed because the section's row-gap already separates them here -- the
   14px margin is for the retiree overview, which is a plain block. */
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wpr-privacy{grid-area:privacy;margin-top:0;}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wpr-legal{grid-area:legal;}

body.nm-workplace .view.active:not(#view-welcome){padding-top:68px;}
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-main{padding:8px var(--wp-content-pad-r) 24px var(--wp-content-pad-l);}
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-main{padding:16px var(--wp-content-pad-r) 22px var(--wp-content-pad-l);}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-tenant img{filter:brightness(0) invert(1);}

body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview>.nm-wp-overview-intro{margin-bottom:10px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-main,
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-side{gap:14px;}
/* r5.48: switched to min-height so the 3-row grid at line 1627 controls
   vertical rhythm across all three cards. Fixed heights broke alignment
   as soon as content taller than 165px landed in card 2 (the ring). */
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-kpis article{min-height:165px;height:auto;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-chart-card{height:226px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-row2 article{height:226px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-strat{height:390px;}
body.nm-workplace[data-wp-shell="retiree"] .nm-wpr-next{height:241px;}


body.nm-workplace{
  --wp-sidebar-w:clamp(186px,calc(14.5vw - 19px),211px);
}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-tenant img{
  filter:none;background:transparent;width:104px;
}
body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-lockup{
  background:transparent;
}

/* Column sizing and height are owned by the single intro contract above.
   This generation re-declared grid-template-columns:416px minmax(0,1fr) and
   won purely on source order, which pinned the greeting column at a fixed
   416px and collapsed the hero column to 0px whenever the content area was
   narrower than 416px + gap (every viewport at or below 1160px). Only the
   properties unique to this block remain. */
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{
  /* Sole owner of the intro row. The greeting column is capped, not fixed, and
     the hero column carries a 300px floor: an earlier generation pinned the
     first column at a fixed 416px, which starved the hero column to 0-10px wide
     at every viewport narrower than 416px + gap and clipped the hero copy.
     Width-specific column ratios live in the @media blocks below. */
  grid-area:intro;
  display:grid;
  grid-template-columns:minmax(0,390px) minmax(300px,1fr);
  gap:24px;
  /* r5.16 item 1: start-aligned. The employee greeting column is two lines
     while the hero beside it is 116px tall, so center alignment pushed the
     greeting ~30px down the row. Retiree looks top-aligned only because its
     three-line column happens to fill the row. The 82px floor was propping up
     that same centering and is no longer needed. */
  align-items:start;
  margin:0;
  min-width:0;
  overflow:visible;
}
/* Below 1161px the 368px right rail leaves too little room for a two-column
   intro, so the greeting and the hero stack and the hero takes full width.
   Previously the intro stayed two-up down to 900px and the hero collapsed to
   0-10px wide, clipping its copy entirely. */
@media (max-width:1160px){
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{
    grid-template-columns:minmax(0,1fr);gap:12px;
  }
}

body.nm-workplace[data-wp-shell="employee"] .nm-wp-employee-hero{
  /* Sole owner of the hero box. Copy and CTA are laid out in normal flow inside
     the element that clips, so two guarantees are structural rather than tuned:
     the copy's inline start edge IS the padding edge and can never be clipped
     at the left, and the CTA occupies its own row so it can never overlap the
     copy at any width. Earlier generations pinned the copy at left:22px/top:43px
     and floated the CTA over it absolutely, colliding at 1161-1280px.
     The gradient wash is applied by the :after overlay below, not by a
     background-image here -- a background-image longhand in an earlier section
     was already dead, reset by this shorthand. */
  position:relative;
  min-height:106px;
  min-width:0;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:stretch;
  gap:10px;
  padding:14px 18px;
  border-radius:7px;
  overflow:hidden;
  background:url("img/wp-hero-employee.jpg") center/cover no-repeat;
  align-self:start;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-snapshot{
  min-height:176px;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-projected{
  min-height:361px;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-ontrack{
  min-height:304px;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-goal{
  min-height:248px;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wpo-saved header>a{
  color:#17365e;font-size:9px;text-decoration:underline;
}

@media (max-height:860px) and (min-width:901px){
  body.nm-workplace .nm-wp-global-sidebar{display:block;padding-bottom:16px;}
  body.nm-workplace .nm-wp-global-sidebar .nm-dash-nav{display:flex;}
  body.nm-workplace .nm-wp-global-sidebar .nm-dash-help{margin-top:14px;}
  body.nm-workplace .nm-wp-global-sidebar .nm-wp-sidebar-footer{margin-top:16px;}
}

@media (min-width:1321px){
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{
    grid-template-columns:minmax(0,1fr) 384px;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{
    grid-template-columns:minmax(0,416px) minmax(300px,1fr);
  }
}
@media (max-width:1320px) and (min-width:1161px){
  body.nm-workplace[data-wp-shell="employee"]{--wp-content-pad-l:37px;--wp-content-pad-r:24px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview{grid-template-columns:minmax(0,1fr) 330px;}
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview>.nm-wp-overview-intro{grid-template-columns:minmax(0,330px) minmax(300px,1fr);}
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-employee-hero{min-height:112px;}
}

body.nm-workplace{scrollbar-width:none;}
body.nm-workplace::-webkit-scrollbar{width:0;height:0;}
body.nm-workplace .nm-wp-global-brand{gap:14px;}
body.nm-workplace .nm-wp-global-tenant-logo{
  padding-right:0;border-right:0;min-width:0;width:auto;
}
body.nm-workplace .nm-wp-global-tenant-logo img{
  width:72px;max-width:none;max-height:34px;
}
html:has(body.nm-workplace){scrollbar-width:none;}
html:has(body.nm-workplace)::-webkit-scrollbar{width:0;height:0;}


body.nm-workplace .nm-dash-sidebar .nm-nav-section[hidden],
body.nm-workplace .nm-dash-sidebar .nm-nav-section > a[hidden],
body.nm-workplace .nm-dash-sidebar .nm-dash-nav > a[hidden],
body.nm-workplace .nm-dash-sidebar .nm-nav-section > button[hidden] {
  display:none;
}
body.nm-workplace .nm-dash-sidebar .nm-nav-stage-retirement > .nm-howto-sidelink {
  display:none;
}


/* Retiree persona presentation */
/* NestMint Workplace Retiree — complete presentation redesign foundation
   Scoped to Workplace Retiree only. Consumer-direct NestMint is untouched. */

body.nm-workplace[data-wp-shell="retiree"] {
  --wp-v200-navy: #062b55;
  --wp-v200-navy-2: #073866;
  --wp-v200-green: #0c934d;
  --wp-v200-green-dark: #08743d;
  --wp-v200-ink: #09244f;
  --wp-v200-muted: #64748b;
  --wp-v200-border: #dfe7ef;
  --wp-v200-bg: #f4f7fa;
  --wp-v200-card: #ffffff;
  --wp-v200-sidebar: 188px;
  --wp-v200-topbar: 68px;
  background: var(--wp-v200-bg) ;
  color: var(--wp-v200-ink) ;
  font-family: Inter, Arial, sans-serif ;
}

body.nm-workplace[data-wp-shell="retiree"] .app-header,
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-sidebar,
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-head,
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-wpr-localtabs,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .dash-header,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard > .dash-container > .view-toggle-bar,
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .calc-header,
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .nm-planner-section-nav,
body.nm-workplace[data-wp-shell="retiree"] #view-budget .calc-header,
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-reports-header,
body.nm-workplace[data-wp-shell="retiree"] #view-profile > .section-container > .section-title,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side {
  display: none ;
}

body.nm-workplace[data-wp-shell="retiree"] .view.active:not(#view-welcome) {
  display: block ;
  box-sizing: border-box ;
  width: 100% ;
  min-height: 100vh ;
  padding: var(--wp-v200-topbar) 0 0 var(--wp-v200-sidebar) ;
  background: var(--wp-v200-bg) ;
}

/* ───────────────────────── Sidebar ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sidebar {
  position: fixed ;
  inset: 0 auto 0 0 ;
  z-index: 1500 ;
  width: var(--wp-v200-sidebar) ;
  height: 100vh ;
  box-sizing: border-box ;
  display: flex ;
  flex-direction: column ;
  overflow-y: auto ;
  padding: 15px 11px 14px ;
  background: linear-gradient(180deg, #062d59 0%, #05284f 68%, #042448 100%) ;
  color: #fff ;
  box-shadow: 8px 0 28px rgba(5, 36, 72, .08) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-brand {
  display: flex ;
  align-items: center ;
  min-height: 56px ;
  padding: 0 7px 7px ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-brand img {
  display: block ;
  width: 144px ;
  height: auto ;
  max-height: 48px ;
  object-fit: contain ;
  object-position: left center ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav {
  display: flex ;
  flex-direction: column ;
  gap: 2px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-label {
  margin: 12px 7px 6px ;
  color: #75db54 ;
  font-size: 9px ;
  line-height: 1.2 ;
  font-weight: 800 ;
  letter-spacing: .07em ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-row {
  display: flex ;
  align-items: center ;
  gap: 10px ;
  min-height: 38px ;
  padding: 8px 9px ;
  border: 1px solid transparent ;
  border-radius: 7px ;
  color: rgba(255,255,255,.94) ;
  font-size: 11px ;
  font-weight: 600 ;
  line-height: 1.2 ;
  text-decoration: none ;
  transition: background .16s ease, border-color .16s ease, transform .16s ease ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-row:hover {
  background: rgba(255,255,255,.09) ;
  border-color: rgba(255,255,255,.08) ;
  transform: translateX(1px) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-row.active {
  background: linear-gradient(135deg, #11a554, #0b8d48) ;
  border-color: rgba(255,255,255,.12) ;
  color: #fff ;
  box-shadow: 0 6px 16px rgba(0, 125, 63, .26) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-row .nm-ui-icon {
  width: 18px ;
  height: 18px ;
  flex: 0 0 18px ;
  color: currentColor ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-support {
  margin-top: auto ;
  padding: 13px 13px 12px ;
  border: 1px solid rgba(255,255,255,.17) ;
  border-radius: 8px ;
  background: rgba(255,255,255,.055) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-support strong {
  display: block ;
  margin-bottom: 5px ;
  color: #fff ;
  font-size: 10px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-support p {
  margin: 0 0 10px ;
  color: rgba(255,255,255,.78) ;
  font-size: 8.8px ;
  line-height: 1.55 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-support-btn {
  width: 100% ;
  height: 30px ;
  border: 0 ;
  border-radius: 5px ;
  background: rgba(43, 111, 168, .52) ;
  color: #fff ;
  font: inherit ;
  font-size: 10px ;
  font-weight: 700 ;
  cursor: pointer ;
}
/* v149.560 (Jahn 8/5): version chip — small, muted, in the sidebar footer */
body.nm-workplace .nm-wp-v200-side-footer .nm-wp-version,
body.nm-workplace .nm-wp-e200-side-footer .nm-wp-version {
  display: block; font-size: 10px; opacity: .6; margin: 2px 0 4px;
}

body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-side-footer {
  display: flex ;
  flex-direction: column ;
  align-items: center ;
  gap: 14px ;
  padding: 18px 5px 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-employer img {
  display: block ;
  width: 94px ;
  max-height: 40px ;
  object-fit: contain ;
  filter: brightness(0) invert(1) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-side-footer small {
  color: rgba(255,255,255,.64) ;
  font-size: 7.5px ;
}

/* ───────────────────────── Top bar ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbar {
  position: fixed ;
  top: 0 ;
  right: 0 ;
  left: var(--wp-v200-sidebar) ;
  z-index: 1490 ;
  height: var(--wp-v200-topbar) ;
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  padding: 0 27px ;
  box-sizing: border-box ;
  border-bottom: 1px solid #dfe5eb ;
  background: rgba(255,255,255,.97) ;
  backdrop-filter: blur(10px) ;
  color: var(--wp-v200-ink) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbrand,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-top-actions {
  display: flex ;
  align-items: center ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbrand { gap: 17px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-tenant {
  display: flex ;
  align-items: center ;
  min-width: 78px ;
  height: 34px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-tenant img {
  max-width: 82px ;
  max-height: 34px ;
  object-fit: contain ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-top-divider,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sep {
  display: block ;
  width: 1px ;
  height: 30px ;
  background: #e0e6ec ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbrand strong {
  font-size: 12px ;
  font-weight: 700 ;
  color: #102852 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-top-actions { gap: 14px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-privacy {
  display: flex ;
  align-items: center ;
  gap: 8px ;
  color: #14335f ;
  font-size: 9.5px ;
  font-weight: 600 ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-privacy .nm-ui-icon {
  width: 17px ;
  height: 17px ;
  color: var(--wp-v200-green) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-privacy b { font-size: 12px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-iconbtn {
  position: relative ;
  display: grid ;
  place-items: center ;
  width: 30px ;
  height: 30px ;
  padding: 0 ;
  border: 0 ;
  background: transparent ;
  color: #102b5a ;
  font: 600 15px/1 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-iconbtn .nm-ui-icon { width: 18px ; height: 18px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-bell i {
  position: absolute ;
  top: -1px ;
  right: 0 ;
  min-width: 13px ;
  height: 13px ;
  display: grid ;
  place-items: center ;
  border-radius: 99px ;
  background: #07853f ;
  color: #fff ;
  font: 700 7px/1 Inter, sans-serif ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user {
  display: flex ;
  align-items: center ;
  gap: 10px ;
  min-width: 164px ;
  color: #102952 ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user > i {
  display: grid ;
  place-items: center ;
  width: 34px ;
  height: 34px ;
  border-radius: 50% ;
  background: #082d59 ;
  color: #fff ;
  font: 700 10px/1 Inter, sans-serif ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user > span { display: flex ; flex-direction: column ; gap: 2px ; flex: 1 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user b { font-size: 10px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user small { color: #61718a ; font-size: 8.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user em { font-style: normal ; font-size: 11px ; }

/* ───────────────────────── Shared page frame ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-shell,
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-main {
  display: block ;
  width: 100% ;
  max-width: none ;
  min-height: 0 ;
  margin: 0 ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-main {
  padding: 10px 28px 26px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-shell,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-main,
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .calc-container,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .dash-container,
body.nm-workplace[data-wp-shell="retiree"] #view-budget .calc-container,
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-reports-shell,
body.nm-workplace[data-wp-shell="retiree"] #view-profile .section-container {
  display: block ;
  width: auto ;
  max-width: 1510px ;
  min-width: 0 ;
  margin: 0 auto ;
  padding: 22px 28px 34px ;
  box-sizing: border-box ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-shell { min-height: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-main { padding-top: 22px ; }

body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagehead {
  display: flex ;
  align-items: flex-end ;
  justify-content: space-between ;
  gap: 24px ;
  margin: 0 0 16px ;
  padding: 20px 22px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 12px ;
  background: linear-gradient(135deg, #fff 0%, #fbfdff 100%) ;
  box-shadow: 0 8px 24px rgba(21, 51, 84, .045) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagecopy > span {
  display: block ;
  margin-bottom: 6px ;
  color: var(--wp-v200-green) ;
  font-size: 9px ;
  font-weight: 800 ;
  letter-spacing: .09em ;
  text-transform: uppercase ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagecopy h1 {
  margin: 0 ;
  color: var(--wp-v200-ink) ;
  font-family: Inter, sans-serif ;
  font-size: 26px ;
  line-height: 1.12 ;
  letter-spacing: -.035em ;
  font-weight: 750 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagecopy p {
  margin: 7px 0 0 ;
  color: var(--wp-v200-muted) ;
  font-size: 11px ;
  line-height: 1.5 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pageactions {
  display: flex ;
  align-items: center ;
  justify-content: flex-end ;
  gap: 8px ;
  flex-wrap: wrap ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pageactions .btn {
  min-height: 35px ;
  padding: 8px 14px ;
  border-radius: 7px ;
  font-size: 10px ;
  font-weight: 700 ;
  box-shadow: none ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pageactions .btn-primary {
  background: var(--wp-v200-green) ;
  border-color: var(--wp-v200-green) ;
  color: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pageactions .btn-secondary {
  background: #fff ;
  border: 1px solid #cdd8e3 ;
  color: #12335d ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-export { position: relative ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-export-menu {
  position: absolute ;
  top: calc(100% + 5px) ;
  right: 0 ;
  z-index: 50 ;
  min-width: 150px ;
  padding: 5px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 8px ;
  background: #fff ;
  box-shadow: 0 12px 28px rgba(15, 35, 60, .14) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-export-menu button {
  display: block ;
  width: 100% ;
  padding: 8px 9px ;
  border: 0 ;
  border-radius: 5px ;
  background: transparent ;
  color: #17375f ;
  text-align: left ;
  font: 600 10px/1.3 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-export-menu button:hover { background: #f1f6fa ; }

body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-plan-context,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump {
  display: flex ;
  align-items: center ;
  gap: 13px ;
  min-height: 43px ;
  margin: 0 0 14px ;
  padding: 9px 13px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 9px ;
  background: #fff ;
  color: var(--wp-v200-muted) ;
  font-size: 10px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-plan-context span:first-child {
  display: flex ;
  align-items: center ;
  gap: 7px ;
  padding-right: 13px ;
  border-right: 1px solid var(--wp-v200-border) ;
  color: #16365f ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-plan-context .nm-ui-icon { width: 16px ; height: 16px ; color: var(--wp-v200-green) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump label { color: #15355e ; font-weight: 700 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump select {
  min-width: 190px ;
  height: 31px ;
  padding: 0 28px 0 9px ;
  border: 1px solid #cfd9e3 ;
  border-radius: 6px ;
  background: #fff ;
  color: #17375f ;
  font: 600 10px/1 Inter, sans-serif ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump span { margin-left: auto ; }

/* ───────────────────────── Guided Input ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .nm-wp-v200-wizard-tray {
  margin: 0 0 16px ;
  padding: 12px 14px 10px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 16px rgba(26, 55, 86, .035) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-progress {
  display: grid ;
  grid-template-columns: auto auto 1fr ;
  align-items: center ;
  gap: 10px ;
  margin: 0 0 10px ;
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-progress-label {
  color: #15375e ;
  font-size: 10px ;
  font-weight: 750 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-progress-count {
  color: var(--wp-v200-green) ;
  font-size: 9px ;
  font-weight: 750 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-progress-bar {
  height: 5px ;
  border-radius: 10px ;
  background: #e9eef3 ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-progress-fill { height: 100% ; background: var(--wp-v200-green) ; }
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-nav {
  display: grid ;
  grid-template-columns: repeat(8, minmax(85px, 1fr)) ;
  gap: 5px ;
  overflow-x: auto ;
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-step {
  display: flex ;
  align-items: center ;
  justify-content: flex-start ;
  gap: 6px ;
  min-height: 34px ;
  padding: 6px 7px ;
  border: 1px solid #e0e7ee ;
  border-radius: 6px ;
  background: #f9fbfc ;
  color: #4e627b ;
  font: 600 8.5px/1.2 Inter, sans-serif ;
  text-align: left ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-step.active {
  border-color: #91d2ad ;
  background: #edf9f2 ;
  color: #08743d ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-step-dot {
  display: grid ;
  place-items: center ;
  width: 19px ;
  height: 19px ;
  flex: 0 0 19px ;
  border-radius: 50% ;
  background: #e5ebf1 ;
  color: #49627e ;
  font-size: 8px ;
  font-weight: 800 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-step.active .wz-step-dot,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-step.complete .wz-step-dot {
  background: var(--wp-v200-green) ;
  color: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-step {
  width: 100% ;
  max-width: none ;
  margin: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-step-head {
  margin: 0 0 13px ;
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-step-head h1 {
  color: var(--wp-v200-ink) ;
  font-family: Inter, sans-serif ;
  font-size: 19px ;
  letter-spacing: -.02em ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-step-head p { color: var(--wp-v200-muted) ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-card,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard [class*="wz-summary"],
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard [class*="wz-context"] {
  border-color: var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 16px rgba(20, 48, 80, .035) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard input,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard select,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard textarea {
  border-color: #ccd8e4 ;
  border-radius: 6px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-btn-primary { background: var(--wp-v200-green) ; border-color: var(--wp-v200-green) ; }

/* ───────────────────────── Assumptions editor ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .post-form-layout { display: block ; }
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .post-form-layout > div:first-child {
  display: grid ;
  grid-template-columns: minmax(0,1fr) 180px ;
  gap: 12px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .form-section {
  margin: 0 0 12px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(20, 48, 80, .025) ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .form-section-header {
  min-height: 44px ;
  padding: 12px 15px ;
  background: #fbfcfd ;
  color: #15365f ;
  font-size: 11px ;
  font-weight: 750 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .form-grid { gap: 12px ; padding: 14px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .form-field label { color: #264663 ; font-size: 9.5px ; }
/* r5.18 item 3 (Jahn 8/10): number-spinner arrows were clipped in the retiree
 * input form. The height here was 34px — BELOW both the workplace control
 * baseline (38px, :388) and the app's own control height (44px). It was not
 * even the binding value: line-height 22.5 + 16px padding + 2px border already
 * pushed the box to 40.5px, leaving a 22.5px content box. Chrome sizes
 * ::-webkit-inner-spin-button to the CONTENT box, and two stacked arrow glyphs
 * need ~26px, so the pair rendered clipped top and bottom on Windows.
 * Raised to the 44px the design system already specifies for controls, which
 * yields a 26px content box. Fixing the height that owns the box — not
 * restyling the spinner, and not hiding it. */
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement input,
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement select,
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement textarea {
  min-height: 44px ;
  border: 1px solid #cad6e2 ;
  border-radius: 6px ;
  background: #fff ;
  color: #17375e ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement #run-simulation-btn {
  background: var(--wp-v200-green) ;
  border-color: var(--wp-v200-green) ;
  box-shadow: none ;
}

/* ───────────────────────── Dashboard result pages ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .dash-container { overflow: visible ; padding-top: 12px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pagehead {
  align-items: center ;
  margin: 0 0 8px ;
  padding: 2px 0 10px ;
  border: 0 ;
  border-bottom: 1px solid var(--wp-v200-border) ;
  border-radius: 0 ;
  background: transparent ;
  box-shadow: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pagecopy > span { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pagecopy h1 { font-size: 22px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pagecopy p { margin-top: 4px ; font-size: 10px ; line-height: 1.4 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pageactions .btn { min-height: 32px ; padding: 6px 11px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools {
  display: flex ; align-items: center ; gap: 10px ; min-height: 38px ; margin: 0 0 10px ; padding: 5px 8px ;
  border: 1px solid var(--wp-v200-border) ; border-radius: 8px ; background: #f8fbfd ; box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #dash-scenario-summary {
  position: relative ; flex: 0 0 auto ; min-width: 150px ; margin: 0 ; padding: 0 8px ; border: 0 ; background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #dash-scenario-summary > summary {
  min-height: 28px ; padding: 0 ; font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #dash-scenario-inputs {
  position: absolute ; z-index: 40 ; width: min(720px, calc(100vw - var(--wp-sidebar-w, 220px) - 64px)) ; margin-top: 4px ;
  box-shadow: 0 12px 28px rgba(15,35,60,.12) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #overlay-chip-strip {
  flex: 1 1 auto ; min-width: 0 ; margin: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-plan-context { display: none ; }
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-pagehead {
    align-items: flex-start ;
    gap: 10px ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools {
    flex-wrap: wrap ;
    align-items: flex-start ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #dash-scenario-inputs {
    width: min(720px, calc(100vw - 32px)) ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-wp-v200-dashboard-tools #overlay-chip-strip {
    flex-basis: 100% ;
  }
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #dash-kpis,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #dash-final-year-assumptions,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #dash-quick-access-panel,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #post-insights-panel,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #ov-back-deepdive {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #dash-scenario-summary {
  margin: 0 0 13px ;
  padding: 0 12px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 8px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard #dash-scenario-summary > summary {
  min-height: 38px ;
  display: flex ;
  align-items: center ;
  color: #264865 ;
  font-size: 9.5px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .switchable-view { padding: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .chart-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .planning-tool-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .spreadsheet-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-deep-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .nm-legacy-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .ov-panel {
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 17px rgba(21, 49, 79, .03) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .chart-title,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard h2,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard h3 {
  color: #12335d ;
  font-family: Inter, sans-serif ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .chart-note,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .ss-subtitle { color: var(--wp-v200-muted) ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard [hidden] { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view .dd-banner {
  min-height: 0 ; margin: 0 0 10px ; padding: 10px 14px ; border-radius: 8px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view .dd-banner strong { font-size: 10.5px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view .dd-banner span { font-size: 9px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view .dd-grid { margin-top: 0 ; }


/* Strategy Planner: one hierarchy, no stacked consumer headings */
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .post-strategy-section > .planning-section-header {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .post-strategy-section { margin: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] #tool-post-compare {
  padding: 17px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .cmp-r-s9 {
  margin: 0 0 12px ;
  padding: 9px 11px ;
  border: 1px solid #efd49c ;
  border-radius: 7px ;
  background: #fff9ed ;
  color: #775313 ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .cnr-assume-hd,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .cnr-customize {
  border-color: var(--wp-v200-border) ;
  border-radius: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .cnr-prerun-run,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .cmp-refresh-btn {
  background: var(--wp-v200-green) ;
  border-color: var(--wp-v200-green) ;
}

/* Deep Dive: retain tools, remove duplicate page intro/action row */
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="deepdive"] .dd-landing-head,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="deepdive"] .deep-dive-header,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="deepdive"] .dd-header-actions {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="deepdive"] .deep-dive-card,
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="deepdive"] details.planning-tool-card {
  border-color: var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
}

/* Legacy: the shared consumer hero is suppressed by the Workplace adapter;
   the compact Workplace page header owns title and actions. */
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="legacy"] .nm-legacy-workspace { margin-top: 0 ; }

/* Spreadsheet */
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] #dash-spreadsheet-view {
  width: 100% ; max-width: 100% ; min-width: 0 ; margin: 0 ; padding: 0 ; box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] #dash-scenario-summary { margin-bottom: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] #dash-spreadsheet-card {
  width: 100% ; max-width: 100% ; min-width: 0 ; padding: 10px ; overflow: hidden ; box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] .ss-controls {
  position: static ;
  min-height: 30px ;
  margin: 0 0 6px ;
  padding: 0 2px ;
  border: 0 ;
  border-radius: 0 ;
  background: transparent ;
  backdrop-filter: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] .spreadsheet-toolbar { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] .spreadsheet-scroll {
  width: 100% ; max-width: 100% ; min-width: 0 ; border: 1px solid #dfe7ef ; border-radius: 8px ; overflow: auto ; box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] .spreadsheet-table thead th {
  background: #f3f7fa ;
  color: #244662 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="spreadsheet"] .spreadsheet-table tbody tr:hover td { background: #f5fbf7 ; }

/* ───────────────────────── Budget ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-budget #budget-view-toggle-bar {
  display: inline-flex ;
  width: auto ;
  margin: 0 0 14px ;
  padding: 3px ;
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 8px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-budget #budget-view-toggle-bar .view-toggle-btn {
  min-height: 31px ;
  padding: 6px 11px ;
  border: 0 ;
  border-radius: 6px ;
  background: transparent ;
  color: #567089 ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-budget #budget-view-toggle-bar .view-toggle-btn.active {
  background: #eaf7ef ;
  color: #08743d ;
  box-shadow: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-budget .kpi-card,
body.nm-workplace[data-wp-shell="retiree"] #view-budget .form-section,
body.nm-workplace[data-wp-shell="retiree"] #view-budget .budget-card {
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(20, 48, 80, .025) ;
}

/* ───────────────────────── Reports ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-status,
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-card,
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-note {
  border-color: var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(20, 48, 80, .025) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-status {
  margin-bottom: 18px ;
  padding: 13px 15px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-group { margin-top: 22px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-group-heading h2 { color: #12355e ; font-family: Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-card { padding: 16px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-report-card .btn-primary { background: var(--wp-v200-green) ; border-color: var(--wp-v200-green) ; }

/* ───────────────────────── Settings ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-card,
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-dashboard,
body.nm-workplace[data-wp-shell="retiree"] #view-profile .settings-card {
  border: 1px solid var(--wp-v200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(20, 48, 80, .025) ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-card { margin-top: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-actions .btn-primary { background: var(--wp-v200-green) ; border-color: var(--wp-v200-green) ; }

/* ───────────────────────── Modal ───────────────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal {
  position: fixed ;
  inset: 0 ;
  z-index: 3000 ;
  display: grid ;
  place-items: center ;
  padding: 20px ;
  background: rgba(4, 24, 47, .48) ;
  backdrop-filter: blur(4px) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-card {
  position: relative ;
  width: min(420px, 100%) ;
  padding: 27px ;
  border-radius: 13px ;
  background: #fff ;
  box-shadow: 0 22px 70px rgba(4, 24, 47, .25) ;
  text-align: center ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-close {
  position: absolute ;
  top: 10px ;
  right: 12px ;
  border: 0 ;
  background: transparent ;
  color: #61758b ;
  font-size: 22px ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-icon {
  display: grid ;
  place-items: center ;
  width: 48px ;
  height: 48px ;
  margin: 0 auto 13px ;
  border-radius: 50% ;
  background: #eaf7ef ;
  color: var(--wp-v200-green) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-icon .nm-ui-icon { width: 23px ; height: 23px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-card h2 { margin: 0 0 8px ; color: #12335d ; font: 750 20px/1.2 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-card p { margin: 0 0 18px ; color: #64758a ; font-size: 12px ; line-height: 1.55 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-modal-card .btn-primary { background: var(--wp-v200-green) ; border-color: var(--wp-v200-green) ; }

/* Overview mock remains the approved visual foundation; remove only duplicate local navigation. */
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-localtabs[hidden] { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-layout { margin-top: 12px ; }

/* Responsive */
@media (max-width: 1080px) {
  body.nm-workplace[data-wp-shell="retiree"] { --wp-v200-sidebar: 172px; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagehead { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pageactions { justify-content: flex-start ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-privacy span { display: none ; }
  body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .post-form-layout > div:first-child { grid-template-columns: 1fr ; }
}
@media (max-width: 760px) {
  body.nm-workplace[data-wp-shell="retiree"] { --wp-v200-sidebar: 0px; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sidebar { display: none ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbar { left: 0 ; padding: 0 12px ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-tenant,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-top-divider,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sep,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user > span,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user em { display: none ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user { min-width: auto ; }
  body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-main,
  body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .calc-container,
  body.nm-workplace[data-wp-shell="retiree"] #view-dashboard .dash-container,
  body.nm-workplace[data-wp-shell="retiree"] #view-budget .calc-container,
  body.nm-workplace[data-wp-shell="retiree"] #view-reports .nm-reports-shell,
  body.nm-workplace[data-wp-shell="retiree"] #view-profile .section-container { padding: 14px ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagecopy h1 { font-size: 22px ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-section-jump span { margin-left: 0 ; }
}

/* Canonical Workplace shell navigation and utility furniture. */
body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-shell {
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview {
  margin: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #scratchpad-fab,
body.nm-workplace[data-wp-shell="retiree"] #scratchpad-panel,
body.nm-workplace[data-wp-shell="retiree"] #nm-wp-demo-switch {
  display: none ;
}

/* The legacy Workplace frame used margin-left for its cloned sidebar. The
   dedicated Retiree shell uses padding-left on the active view, so neutralize
   that inherited offset to prevent a double gutter. */
body.nm-workplace[data-wp-shell="retiree"] .view.active:not(#view-welcome) {
  margin-left: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-divider,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-side-link {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-shell {
  width: 100% ;
  max-width: none ;
  margin: 0 ;
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz-main {
  width: auto ;
  max-width: 1510px ;
  margin: 0 auto ;
  padding: 22px 28px 34px ;
}

/* Remove remaining consumer-era duplicate titles and action rows. The single
   Workplace page header now owns page identity and top-level actions. */
body.nm-workplace[data-wp-shell="retiree"] #view-post-retirement .nm-wp-v200-native-assumption-actions,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view > .post-strategy-section > .planning-section-header,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-edit-inputs,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view > .post-strategy-section > .planning-section-header,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view .dd-actions,
body.nm-workplace[data-wp-shell="retiree"] #dash-legacy-view .nm-legacy-hero {
  display: none ;
}

/* Charts: the legacy Workplace layer made the tab itself a two-column grid,
   while the chart collection already owns its own grid. Use one grid only. */
body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view.active {
  display: block ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view .dash-charts {
  display: grid ;
  grid-template-columns: repeat(3, minmax(0, 1fr)) ;
  gap: 14px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view .chart-card.chart-large {
  grid-column: 1 / -1 ;
}

/* Spreadsheet header actions proxy the canonical controls. Keep only the
   useful Years filter and horizontal-scroll guidance in the content strip. */
body.nm-workplace[data-wp-shell="retiree"] #dash-spreadsheet-view .ss-controls #ss-expand-btn,
body.nm-workplace[data-wp-shell="retiree"] #dash-spreadsheet-view .ss-controls #ss-export-btn {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-spreadsheet-view .ss-controls {
  justify-content: flex-end ;
  min-height: 30px ;
  margin: 0 0 6px ;
  padding: 0 2px ;
  border: 0 ;
  border-radius: 0 ;
  background: transparent ;
}

@media (max-width: 1180px) {
  body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view .dash-charts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) ;
  }
}
@media (max-width: 760px) {
  body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view .dash-charts {
    grid-template-columns: 1fr ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #dash-charts-view .chart-card.chart-large {
    grid-column: auto ;
  }
}

/* Retiree Workplace page interiors. Presentation-only; engine-owned controls and results stay intact. */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-menubtn {
  display: none ;
  width: 36px ;
  height: 36px ;
  place-items: center ;
  padding: 0 ;
  border: 1px solid #d8e2eb ;
  border-radius: 8px ;
  background: #fff ;
  color: var(--wp-v200-ink) ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-menubtn .nm-ui-icon { width: 19px ; height: 19px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-nav-row { font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-support p { font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-pagecopy p { max-width: 760px ; }

/* ───────────────── Strategy Planner ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view.nm-wp-strategy-page.active {
  display: block ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-guide {
  display: block ; margin: 0 0 10px ; padding: 9px 12px ; border: 1px solid #dbe5ee ; border-radius: 8px ; background: #f6faf8 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-guide-copy p { margin: 0 ; color: #526b80 ; font-size: 9.5px ; line-height: 1.45 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-guide-copy strong { color: #14365f ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-main > header > span,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-sectionhead > span {
  display: block ; margin-bottom: 5px ; color: var(--wp-v200-green) ; font-size: 9px ; font-weight: 800 ; letter-spacing: .09em ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .nm-wp-v200-pagehead {
  margin-bottom: 14px ;
  padding-top: 6px ;
  padding-bottom: 14px ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .nm-wp-v200-pagecopy h1 {
  font-size: 29px ;
  line-height: 1.08 ;
  letter-spacing: -.035em ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .nm-wp-v200-pagecopy p {
  margin-top: 6px ;
  font-size: 11.5px ;
  color: #445d77 ;
}
body.nm-workplace[data-wp-shell="retiree"] #view-dashboard[data-wp-v200-dash*="strateg"] .nm-wp-v200-dashboard-tools {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view #tool-post-compare {
  padding: 0 ;
  border: 0 ;
  border-radius: 0 ;
  box-shadow: none ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view[data-wp-strategy-state="prerun"] #post-compare-results {
  margin: 0 ;
  padding: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-landing {
  display: flex ;
  flex-direction: column ;
  gap: 10px ;
  color: #102f58 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context {
  display: flex ;
  align-items: center ;
  flex-wrap: wrap ;
  gap: 10px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-pill,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-add {
  min-height: 38px ;
  display: inline-flex ;
  align-items: center ;
  gap: 8px ;
  padding: 0 15px ;
  border: 1px solid #d8e2eb ;
  border-radius: 9px ;
  background: #fff ;
  color: #17365c ;
  font-size: 10.5px ;
  line-height: 1 ;
  font-weight: 750 ;
  text-decoration: none ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-pill.is-current {
  border-color: #71c691 ;
  color: #17365c ;
  box-shadow: inset 0 -2px 0 #25a25c ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-pill.is-current > span { color: #1aa35a ; font-size: 12px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-pill.is-overlay > span { color: var(--wp-muted,#64748b) ; font-size: 16px ; } /* r5.33 — was #6687ad, 3.73:1; missed by the r5.32 sweep */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-add {
  border-style: dashed ;
  color: #49627d ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-add:hover {
  border-color: #78bd94 ;
  background: #f4fbf7 ;
  color: #087b42 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-explain {
  display: grid ;
  grid-template-columns: 24px minmax(0,1fr) ;
  gap: 9px ;
  align-items: start ;
  padding: 9px 12px ;
  border: 1px solid #b9d5f6 ;
  border-radius: 8px ;
  background: #f8fbff ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-explain-icon {
  width: 22px ;
  height: 22px ;
  display: grid ;
  place-items: center ;
  border-radius: 50% ;
  background: #2b7fdc ;
  color: #fff ;
  font: 800 13px/1 Georgia,serif ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-explain strong {
  display: block ;
  margin: 0 0 3px ;
  color: #15365e ;
  font-size: 11px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-explain p {
  margin: 0 ;
  color: #526b82 ;
  font-size: 10px ;
  line-height: 1.5 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-explain p b { color: #223e61 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-prerun-grid {
  display: grid ;
  grid-template-columns: minmax(0, .95fr) minmax(390px, 1.05fr) ;
  gap: 10px ;
  align-items: stretch ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-assumptions-card,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-run-card {
  min-width: 0 ;
  border: 1px solid #dbe5ee ;
  border-radius: 9px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(19,48,80,.045) ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-hd {
  min-height: 44px ;
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 12px ;
  padding: 8px 12px ;
  border: 0 ;
  border-bottom: 1px solid #e4ebf1 ;
  border-radius: 0 ;
  background: #fff ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-hd h4 {
  margin: 0 ;
  color: #17365e ;
  font-size: 12px ;
  line-height: 1.25 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-hd-sub {
  display: block ;
  margin-top: 3px ;
  color:var(--wp-muted,#61738e) ;
  font-size: 9px ;
  font-weight: 500 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-edit-inputs {
  min-height: 28px ;
  padding: 0 ;
  border: 0 ;
  background: transparent ;
  color:var(--wp-green-text,#04783c) ;
  font-size: 9.5px ;
  font-weight: 750 ;
  box-shadow: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-prerun-assumes {
  margin: 0 ;
  padding: 9px 12px 8px ;
  border: 0 ;
  border-radius: 0 ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view #cnr-prerun-assumes-vals {
  display: grid ;
  grid-template-columns: repeat(2, minmax(0,1fr)) ;
  gap: 0 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card {
  min-height: 44px ;
  display: grid ;
  grid-template-columns: 30px minmax(0,1fr) ;
  gap: 8px ;
  align-items: center ;
  padding: 5px 8px ;
  border-bottom: 1px solid #e8edf2 ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card:nth-child(odd) { border-right: 1px solid #e8edf2 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card:nth-last-child(-n+2) { border-bottom: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-ico {
  width: 26px ;
  height: 26px ;
  display: grid ;
  place-items: center ;
  border-radius: 7px ;
  background: #f2f7ff ;
  color: #2f6acb ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-txt b {
  display: block ;
  color: #17365e ;
  font-size: 11.5px ;
  line-height: 1.15 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-txt small {
  display: block ;
  margin-top: 2px ;
  color:var(--wp-muted,#61738e) ;
  font-size: 8.5px ;
  line-height: 1.2 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-customize {
  min-height: 100% ;
  margin: 0 ;
  padding: 10px 14px ;
  border: 0 ;
  border-radius: 0 ;
  background: #fff ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-customize-title {
  margin: 0 ;
  color: #17365e ;
  font-size: 12px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-customize-sub {
  margin: 3px 0 8px ;
  color:var(--wp-muted,#61738e) ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-customize-head {
  display: grid ;
  grid-template-columns: minmax(0,1fr) auto ;
  gap: 12px ;
  align-items: center ;
  margin: 0 0 8px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-customize-copy { min-width: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-customize-head .cnr-customize-sub { margin: 3px 0 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-learnmore {
  display: inline-flex ;
  align-items: center ;
  gap: 4px ;
  color: #1469c7 ;
  font-size: 9px ;
  line-height: 1.2 ;
  font-weight: 750 ;
  text-decoration: none ;
  white-space: nowrap ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-learnmore:hover,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-learnmore:focus-visible {
  color: #0b519d ;
  text-decoration: underline ;
  text-underline-offset: 2px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-cust-grid { display: block ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-rank-box {
  padding: 0 ;
  border: 0 ;
  border-radius: 0 ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-rank-label {
  display: block ;
  margin-bottom: 6px ;
  color: #294761 ;
  font-size: 9px ;
  font-weight: 700 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-rank-select {
  width: 100% ;
  min-height: 36px ;
  padding: 0 10px ;
  border: 1px solid #cdd9e4 ;
  border-radius: 6px ;
  background: #fff ;
  color: #1e3d60 ;
  font-size: 9.5px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-engine-info {
  margin-top: 8px ;
  padding: 0 ;
  border: 0 ;
  border-radius: 0 ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-engine-list > b {
  display: block ;
  margin-bottom: 6px ;
  color: #1e3d60 ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-engine-list ul {
  display: grid ;
  gap: 5px ;
  margin: 0 ;
  padding: 0 ;
  list-style: none ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-engine-list li {
  position: relative ;
  padding-left: 18px ;
  color: #526b82 ;
  font-size: 9px ;
  line-height: 1.35 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-engine-list li:before {
  content: '✓' ;
  position: absolute ;
  left: 0 ;
  top: 0 ;
  width: 12px ;
  height: 12px ;
  display: grid ;
  place-items: center ;
  border: 1px solid #50b57a ;
  border-radius: 50% ;
  color: #179452 ;
  font-size: 7px ;
  font-weight: 800 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-empty.nm-wp-strategy-run-cta {
  /* The consumer empty-state hero (#tool-post-compare .cnr-customize .cnr-empty)
     reserves min-height 240px/220px and is display:grid. With the hero icon,
     title, and sub hidden in the retiree landing, the button became the only
     in-flow grid child and stretched to fill that reserved box. Release the
     reserved height and stop the stretch at the source; the button then sizes
     itself and needs no cap. */
  min-height: 0 ;
  align-content: start ;
  align-items: start ;
  gap: 0 ;
  margin: 8px 0 0 ;
  padding: 0 ;
  border: 0 ;
  border-radius: 0 ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-run-cta .cnr-empty-ico,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-run-cta .cnr-empty-title,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-run-cta .cnr-empty-sub {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-prerun-run {
  width: 100% ;
  min-height: 38px ;
  padding: 8px 16px ;
  border-color:var(--wp-green-text,#04783c) ;
  border-radius: 6px ;
  background: linear-gradient(180deg,#22a45c,#14934d) ;
  box-shadow: none ;
  font-size: 10.5px ;
  font-weight: 800 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approaches > header {
  display: flex ;
  align-items: baseline ;
  flex-wrap: wrap ;
  gap: 4px 10px ;
  margin: 0 0 6px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approaches > header h2 {
  margin: 0 ;
  color: #17365e ;
  font-size: 12px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approaches > header p {
  margin: 0 ;
  color:var(--wp-muted,#61738e) ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid {
  display: grid ;
  grid-template-columns: repeat(5,minmax(0,1fr)) ;
  gap: 8px ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid article {
  min-height: 84px ;
  display: flex ;
  flex-direction: column ;
  align-items: center ;
  justify-content: flex-start ;
  padding: 8px 10px 8px ;
  border: 1px solid #dfe7ee ;
  border-radius: 8px ;
  background: #fff ;
  text-align: center ;
  box-sizing: border-box ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-icon {
  width: 28px ;
  height: 28px ;
  display: grid ;
  place-items: center ;
  margin-bottom: 5px ;
  border-radius: 50% ;
  background: #eaf7ef ;
  color: #149752 ;
  font-size: 16px ;
  font-weight: 700 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid .is-roth .nm-wp-strategy-approach-icon { background:#f1eafe ; color:#8248d5 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid .is-bracket .nm-wp-strategy-approach-icon { background:#eaf3ff ; color:#2b78da ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid .is-medicare .nm-wp-strategy-approach-icon { background:#fff0e3 ; color:#ef8b2f ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid .is-moderate .nm-wp-strategy-approach-icon { background:#e8f7f7 ; color:#17878d ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid strong {
  color: #17365e ;
  font-size: 10.5px ;
  line-height: 1.2 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid p {
  margin: 3px 0 0 ;
  color: #61768a ;
  font-size: 9px ;
  line-height: 1.35 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-landing > .cmp-r-s9 {
  margin: 0 ;
  padding: 9px 12px ;
  border: 0 ;
  border-radius: 7px ;
  background: #f5f7fa ;
  color: #61758a ;
  font-size: 8.5px ;
  line-height: 1.35 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-landing > .cmp-r-s9 strong {
  color: #526b82 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view[data-wp-strategy-state="prerun"] .cnr-saved {
  margin-top: 10px ;
  border: 0 ;
  color: #557087 ;
  font-size: 9px ;
}

@media (max-width: 1180px) {
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-prerun-grid { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid { grid-template-columns: repeat(3,minmax(0,1fr)) ; }
}
@media (max-width: 760px) {
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-customize-head { grid-template-columns: 1fr ; gap: 5px ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .nm-wp-strategy-learnmore { justify-self: start ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context { gap: 7px ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-pill,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-context-add { min-height: 34px ; padding: 0 11px ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view #cnr-prerun-assumes-vals { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card:nth-child(odd) { border-right: 0 ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card:nth-last-child(-n+2) { border-bottom: 1px solid #e8edf2 ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cnr-assume-card:last-child { border-bottom: 0 ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-approach-grid { grid-template-columns: 1fr ; }
}

body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-shead {
  display: flex ;
  align-items: flex-start ;
  justify-content: space-between ;
  gap: 20px ;
  padding: 0 0 17px ;
  border-bottom: 1px solid #e1e8ef ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-shead-title { font-size: 20px ; color: #102f58 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-shead-sub { margin-top: 4px ; font-size: 11px ; color: #5f7286 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-shead-ctx { margin-top: 8px ; font-size: 9px ; color:var(--wp-muted,#61738e) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-resultnav {
  position: sticky ;
  top: calc(var(--wp-v200-topbar) + 8px) ;
  z-index: 24 ;
  display: flex ;
  flex-wrap: wrap ;
  gap: 7px ;
  margin: 14px 0 ;
  padding: 8px ;
  border: 1px solid #dfe7ee ;
  border-radius: 9px ;
  background: rgba(255,255,255,.96) ;
  backdrop-filter: blur(10px) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-resultnav button {
  min-height: 31px ;
  padding: 6px 11px ;
  border: 1px solid transparent ;
  border-radius: 6px ;
  background: #f4f7f9 ;
  color: #31516d ;
  font: 700 9.5px/1 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-resultnav button:hover { border-color: #b7d8c4 ; background: #edf8f1 ; color: #08743d ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-s9 { font-size: 10px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-chipstrip { padding: 12px ; border-radius: 9px ; background: #f7fafc ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-cardrow {
  display: grid ;
  grid-template-columns: repeat(auto-fit, minmax(245px, 1fr)) ;
  gap: 14px ;
  align-items: stretch ;
  margin-top: 16px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card {
  min-width: 0 ;
  padding: 0 ;
  border: 1px solid #dbe4ec ;
  border-top: 4px solid var(--cmp-r-accent, #6b8298) ;
  border-radius: 11px ;
  background: #fff ;
  box-shadow: 0 7px 22px rgba(15, 43, 73, .05) ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card.is-rec {
  border-color: #8fc7a6 ;
  border-top-color: var(--wp-v200-green) ;
  box-shadow: 0 11px 30px rgba(9, 131, 68, .12) ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card.is-current { border-top-color: #173f70 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-hd { min-height: 55px ; padding: 14px ; background: #f8fafc ; border-bottom: 1px solid #e5ebf0 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-name { font-size: 13px ; color: #13365f ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-desc { min-height: 55px ; padding: 12px 14px 0 ; color: #61758a ; font-size: 9.5px ; line-height: 1.48 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-face { display: grid ; grid-template-columns: 1fr 1fr ; gap: 8px ; padding: 12px 14px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-metric { min-height: 76px ; padding: 10px ; border: 1px solid #e3e9ef ; border-radius: 8px ; background: #fbfcfd ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-metric-k { font-size: 8.5px ; color:var(--wp-muted,#61738e) ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-metric-v { margin-top: 5px ; color: #102f58 ; font-size: 15px ; line-height: 1.15 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-metric-d { margin-top: 5px ; font-size: 8.5px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-actions { padding: 12px 14px 14px ; border-top: 1px solid #eef2f5 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-viewbtn,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-card-apply { min-height: 34px ; border-radius: 6px ; font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-cardmore { margin: 0 14px 14px ; padding: 13px ; border: 1px solid #dfe7ee ; border-radius: 8px ; background: #f8fafc ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-s103,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-scen,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-taxnotes {
  margin-top: 16px ;
  border: 1px solid #dbe4ec ;
  border-radius: 10px ;
  background: #fff ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-s104,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-s120,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-taxnotes > summary { padding: 14px 16px ; color: #15365f ; font-size: 11px ; font-weight: 750 ; background: #f8fafc ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-3up { display: grid ; grid-template-columns: repeat(2, minmax(0, 1fr)) ; gap: 14px ; margin-top: 16px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-scen { grid-column: 1 / -1 ; margin-top: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-chwrapL,
body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-chwrapR { padding: 16px ; border: 1px solid #dbe4ec ; border-radius: 10px ; background: #fff ; }

/* ───────────────── Deep Dive detail pages ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .nm-wp-dd-contextbar {
  display: grid ;
  grid-template-columns: auto 1fr auto ;
  align-items: center ;
  gap: 16px ;
  margin: 0 0 12px ;
  padding: 10px 12px ;
  border: 1px solid #dce5ed ;
  border-radius: 9px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-homebtn {
  display: inline-flex ;
  align-items: center ;
  gap: 7px ;
  min-height: 32px ;
  padding: 6px 10px ;
  border: 1px solid #d9e3eb ;
  border-radius: 6px ;
  background: #f7f9fb ;
  color: #244762 ;
  font: 700 9.5px/1 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-homebtn .nm-ui-icon { width: 14px ; height: 14px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-current { display: flex ; flex-direction: column ; gap: 2px ; min-width: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-current small { color:var(--wp-muted,#61738e) ; font-size: 8.5px ; text-transform: uppercase ; letter-spacing: .07em ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-current strong { color: #12355e ; font-size: 11px ; overflow: hidden ; white-space: nowrap ; text-overflow: ellipsis ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-pager { display: flex ; gap: 6px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-pager button { display: grid ; place-items: center ; width: 31px ; height: 31px ; padding: 0 ; border: 1px solid #d8e2ea ; border-radius: 6px ; background: #fff ; color: #173d65 ; cursor: pointer ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-pager button:disabled { opacity: .35 ; cursor: default ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-pager .nm-ui-icon { width: 15px ; height: 15px ; }
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus details.planning-tool-card.dd-active {
  display: block ;
  margin: 0 ;
  border: 1px solid #dbe5ed ;
  border-radius: 12px ;
  background: #fff ;
  box-shadow: 0 8px 25px rgba(19, 48, 80, .05) ;
  overflow: hidden ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus details.planning-tool-card.dd-active > summary {
  display: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus details.planning-tool-card.dd-active > .planning-tool-body {
  display: block ;
  padding: 20px ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-body > p:first-child,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-desc {
  margin: 0 0 17px ;
  padding: 13px 15px ;
  border-left: 3px solid var(--wp-v200-green) ;
  border-radius: 0 7px 7px 0 ;
  background: #f4faf6 ;
  color: #4f687c ;
  font-size: 10.5px ;
  line-height: 1.55 ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-body .form-section,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-body .chart-card,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-body .result-card,
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view.dd-focus .planning-tool-body .analysis-card {
  border: 1px solid #dfe7ee ;
  border-radius: 9px ;
  box-shadow: none ;
}
body.nm-workplace[data-wp-shell="retiree"] #dash-deepdive-view #dd-back { display: none ; }

/* ───────────────── Reports ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-report-source { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-retiree-report-hub { display: block ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar {
  display: flex ;
  align-items: center ;
  gap: 12px ;
  margin-bottom: 14px ;
  padding: 13px 15px ;
  border: 1px solid #cfe3d7 ;
  border-radius: 9px ;
  background: #f1faf5 ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar > .nm-ui-icon { width: 22px ; height: 22px ; color: var(--wp-v200-green) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar > div { display: flex ; flex-direction: column ; gap: 3px ; flex: 1 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar strong { color: #15365f ; font-size: 10.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar span { color: #62778a ; font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-statusbar a { color: #08743d ; font-size: 9.5px ; font-weight: 750 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-layout { display: grid ; grid-template-columns: minmax(0, 1fr) 280px ; gap: 16px ; align-items: start ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-main,
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside { border: 1px solid #dce5ed ; border-radius: 11px ; background: #fff ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-main { padding: 20px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-main > header h2 { margin: 0 0 7px ; color: #12355e ; font: 750 18px/1.25 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-main > header p { margin: 0 ; color: #62768a ; font-size: 10.5px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid { display: grid ; grid-template-columns: repeat(2, minmax(0, 1fr)) ; gap: 12px ; margin-top: 17px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid article { display: grid ; grid-template-columns: 42px 1fr ; grid-template-rows: 1fr auto ; gap: 12px ; min-height: 190px ; padding: 16px ; border: 1px solid #dfe7ee ; border-radius: 9px ; background: #fbfcfd ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid article:last-child { grid-column: 1 / -1 ; min-height: 150px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid article > i { display: grid ; place-items: center ; width: 42px ; height: 42px ; border-radius: 9px ; background: #eaf7ef ; color: #08743d ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid article > i .nm-ui-icon { width: 21px ; height: 21px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid small { color:var(--wp-muted,#61738e) ; font-size: 8px ; font-weight: 800 ; letter-spacing: .08em ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid h3 { margin: 4px 0 6px ; color: #14365f ; font-size: 12px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid p { margin: 0 ; color: #62768a ; font-size: 9.5px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid .btn { grid-column: 1 / -1 ; align-self: end ; justify-self: start ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside { position: sticky ; top: calc(var(--wp-v200-topbar) + 12px) ; padding: 18px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside h3 { margin: 0 0 13px ; color: #12355e ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside ol { display: flex ; flex-direction: column ; gap: 13px ; margin: 0 0 17px ; padding: 0 ; list-style: none ; counter-reset: report-steps ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside li { position: relative ; padding-left: 32px ; counter-increment: report-steps ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside li::before { content: counter(report-steps) ; position: absolute ; left: 0 ; top: 0 ; display: grid ; place-items: center ; width: 22px ; height: 22px ; border-radius: 50% ; background: #eaf7ef ; color: #08743d ; font: 800 9px/1 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside li b { display: block ; margin-bottom: 3px ; color: #23445f ; font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside li span { display: block ; color:var(--wp-muted,#61738e) ; font-size: 8.8px ; line-height: 1.45 ; }

/* ───────────────── Settings ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-tabs {
  position: sticky ;
  top: calc(var(--wp-v200-topbar) + 8px) ;
  z-index: 25 ;
  display: inline-flex ;
  gap: 4px ;
  margin: 0 0 14px ;
  padding: 4px ;
  border: 1px solid #dce5ed ;
  border-radius: 9px ;
  background: rgba(255,255,255,.96) ;
  backdrop-filter: blur(10px) ;
}
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-tabs button { min-height: 32px ; padding: 6px 12px ; border: 0 ; border-radius: 6px ; background: transparent ; color: #5a7085 ; font: 700 9.5px/1 Inter, sans-serif ; cursor: pointer ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-tabs button.active { background: #eaf7ef ; color: #08743d ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile [data-wp-settings-section] { scroll-margin-top: calc(var(--wp-v200-topbar) + 62px) ; margin-bottom: 14px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-sectionhead { margin: -2px -2px 16px ; padding: 2px 2px 14px ; border-bottom: 1px solid #e5ebf0 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-sectionhead h2 { margin: 0 0 5px ; color: #12355e ; font: 750 16px/1.2 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-sectionhead p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 9.5px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-card,
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-dashboard,
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-quick-links { padding: 20px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-header { padding: 0 0 16px ; border-bottom: 1px solid #e5ebf0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-dashboard { margin-top: 0 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-quick-links { display: block ; border: 1px solid var(--wp-v200-border) ; border-radius: 10px ; background: #fff ; }
body.nm-workplace[data-wp-shell="retiree"] #view-profile .profile-quick-links > .btn { margin-right: 8px ; }

/* ───────────────── How to Use ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-v555 .nm-howto-dialog { width: min(960px, calc(100vw - 36px)) ; max-height: calc(100vh - 36px) ; padding: 0 ; border-radius: 14px ; overflow: auto ; background: #f5f8fa ; }
/* r5.16 item 2: release the inherited -34px horizontal bleed. The base rule
   (app.css .nm-howto-topbar) uses margin:0 -34px to bleed the bar across the
   consumer dialog's 34px side padding. The v555 dialog above sets padding:0,
   so that compensator had nothing to cancel and made the topbar 68px wider
   than its dialog: the kicker's first character was clipped off the left edge,
   the close button rendered outside the card's right edge, and the 34px
   overflow produced the modal's horizontal scrollbar. Measured before/after at
   1600x1000: topbar 1028px -> 960px, dialog scrollWidth-clientWidth 34 -> 0. */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-v555 .nm-howto-topbar { position: sticky ; top: 0 ; z-index: 4 ; margin: 0 0 8px ; padding: 13px 18px ; border-bottom: 1px solid #dfe7ee ; background: rgba(255,255,255,.98) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-hero { display: flex ; gap: 14px ; align-items: flex-start ; padding: 22px 24px 16px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-hero > span { display: grid ; place-items: center ; width: 46px ; height: 46px ; flex: 0 0 46px ; border-radius: 11px ; background: #e8f7ee ; color: #08743d ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-hero .nm-ui-icon { width: 24px ; height: 24px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-hero h1 { margin: 0 0 6px ; color: #102f58 ; font: 760 22px/1.2 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-hero p { margin: 0 ; color: #617589 ; font-size: 11px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid { display: grid ; grid-template-columns: repeat(2, minmax(0, 1fr)) ; gap: 11px ; padding: 0 24px 22px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid > a { display: grid ; grid-template-columns: 30px 1fr auto ; gap: 12px ; align-items: start ; min-height: 112px ; padding: 15px ; border: 1px solid #dce5ed ; border-radius: 10px ; background: #fff ; color: inherit ; text-decoration: none ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid > a:hover { border-color: #9bc9ad ; box-shadow: 0 7px 19px rgba(13, 97, 54, .07) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid i { display: grid ; place-items: center ; width: 27px ; height: 27px ; border-radius: 50% ; background: #eaf7ef ; color: #08743d ; font: 800 10px/1 Inter, sans-serif ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid span { display: flex ; flex-direction: column ; gap: 5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid b { color: #14365f ; font-size: 11px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid small { color: #62768a ; font-size: 9.5px ; line-height: 1.45 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid em { align-self: end ; color: #08743d ; font: 750 9px/1 Inter, sans-serif ; white-space: nowrap ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid > a:last-child { grid-column: 1 / -1 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-foot { display: flex ; align-items: center ; justify-content: space-between ; gap: 20px ; padding: 16px 24px ; border-top: 1px solid #dfe7ee ; background: #fff ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-foot > div { display: flex ; flex-direction: column ; gap: 3px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-foot strong { color: #15365f ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-foot span { color:var(--wp-muted,#61738e) ; font-size: 9px ; }

/* ───────────────── Create New Plan ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-shell { display: block ; width: auto ; max-width: 1050px ; min-width: 0 ; margin: 0 auto ; padding: 22px 28px 34px ; box-sizing: border-box ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-rp-back,
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-head { display: none ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-card { max-width: none ; margin: 0 ; padding: 22px ; border: 1px solid #dce5ed ; border-radius: 12px ; background: #fff ; box-shadow: 0 8px 24px rgba(19,48,80,.045) ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-new-plan-intro { display: flex ; align-items: flex-start ; gap: 12px ; margin-bottom: 18px ; padding: 14px ; border: 1px solid #d7e8de ; border-radius: 9px ; background: #f3faf6 ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-new-plan-intro > span { color: #08743d ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-new-plan-intro .nm-ui-icon { width: 20px ; height: 20px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-new-plan-intro strong { display: block ; margin-bottom: 4px ; color: #15365f ; font-size: 10.5px ; }
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-new-plan-intro p { margin: 0 ; color: #617589 ; font-size: 9.5px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-method { display: grid ; grid-template-columns: repeat(2, minmax(0,1fr)) ; gap: 12px ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-method legend,
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan #new-plan-method-help { grid-column: 1 / -1 ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-option { min-height: 105px ; padding: 16px ; border: 1px solid #dbe4ec ; border-radius: 9px ; background: #fbfcfd ; }
body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-option:has(input:checked) { border-color: #78b992 ; background: #f0faf4 ; box-shadow: 0 0 0 2px rgba(12,147,77,.08) ; }

/* ───────────────── Mobile drawer and responsive page interiors ───────────────── */
body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v555-drawer-backdrop { display: none ; }
@media (max-width: 1080px) {
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-strategy-guide { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-layout { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-aside { position: static ; }
}
@media (max-width: 760px) {
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-menubtn { display: grid ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-topbrand { gap: 10px ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sidebar {
    display: flex ;
    width: min(286px, 86vw) ;
    transform: translateX(-105%) ;
    transition: transform .22s ease ;
    box-shadow: 16px 0 45px rgba(3,24,48,.25) ;
  }
  body.nm-workplace[data-wp-shell="retiree"].nm-wp-drawer-open .nm-wp-v200-sidebar { transform: translateX(0) ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v555-drawer-backdrop {
    position: fixed ;
    inset: 0 ;
    z-index: 1495 ;
    width: 100% ;
    height: 100% ;
    padding: 0 ;
    border: 0 ;
    background: rgba(4, 24, 47, .48) ;
    backdrop-filter: blur(2px) ;
  }
  body.nm-workplace[data-wp-shell="retiree"].nm-wp-drawer-open .nm-wp-v555-drawer-backdrop { display: block ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view[data-wp-strategy-state="prerun"] .cnr-prerun-wrap,
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-3up,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid,
  body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-method { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view[data-wp-strategy-state="prerun"] .cnr-customize { grid-column: 1 ; grid-row: auto ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-report-grid article:last-child,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-grid > a:last-child { grid-column: auto ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-face { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="retiree"] #dash-strategies-view .cmp-r-shead { flex-direction: column ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-contextbar { grid-template-columns: 1fr auto ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-dd-current { display: none ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-tabs { display: flex ; width: 100% ; overflow-x: auto ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-settings-tabs button { white-space: nowrap ; }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-howto-foot { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="retiree"] #view-new-plan .nm-new-plan-shell { padding: 14px ; }
}


/* Employee persona presentation */
/* NestMint Workplace Employee — complete presentation redesign
   Scoped to Workplace Employee only. Consumer-direct NestMint and Retiree Workplace are untouched. */

body.nm-workplace[data-wp-shell="employee"] {
  --wp-e200-navy: #062b55;
  --wp-e200-navy-2: #073967;
  --wp-e200-green: #07984c;
  --wp-e200-green-dark: #06753b;
  --wp-e200-blue: #165bc5;
  --wp-e200-ink: #09244f;
  --wp-e200-muted: #64748b;
  --wp-e200-border: #dde6ee;
  --wp-e200-bg: #f4f7fa;
  --wp-e200-card: #ffffff;
  /* r5.16 item 1: 205px -> 188px to match the retiree shell's sidebar. This var
     drives both the sidebar element width and the view's padding-left, so the
     two move together. It was the last remaining source of horizontal
     divergence between the employee and retiree overviews once the centring
     and double-header issues were fixed; the shells now start content at the
     same x. Applies to every employee view, not just the overview. */
  --wp-e200-sidebar: 188px;
  --wp-e200-topbar: 69px;
  background: var(--wp-e200-bg) ;
  color: var(--wp-e200-ink) ;
  font-family: Inter, Arial, sans-serif ;
}

body.nm-workplace[data-wp-shell="employee"] .app-header,
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-sidebar,
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-head,
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-ws-state,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-header,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .view-toggle-bar,
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .calc-header,
body.nm-workplace[data-wp-shell="employee"] #view-budget .calc-header,
body.nm-workplace[data-wp-shell="employee"] #view-reports .nm-reports-header,
body.nm-workplace[data-wp-shell="employee"] #view-profile > .section-container > .section-title,
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-header,
body.nm-workplace[data-wp-shell="employee"] #carry-to-post,
body.nm-workplace[data-wp-shell="employee"] #se-ctx-handoff {
  display: none ;
}

body.nm-workplace[data-wp-shell="employee"] .view.active:not(#view-welcome) {
  display: block ;
  box-sizing: border-box ;
  width: 100% ;
  margin-left: 0 ;
  min-height: 100vh ;
  padding: var(--wp-e200-topbar) 0 0 var(--wp-e200-sidebar) ;
  background: var(--wp-e200-bg) ;
}

/* ───────────────────────── Employee sidebar ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-sidebar {
  position: fixed ;
  inset: 0 auto 0 0 ;
  z-index: 1500 ;
  width: var(--wp-e200-sidebar) ;
  height: 100vh ;
  box-sizing: border-box ;
  display: flex ;
  flex-direction: column ;
  overflow-y: auto ;
  padding: 15px 11px 14px ;
  background: linear-gradient(180deg, #062e59 0%, #052a51 62%, #042447 100%) ;
  color: #fff ;
  box-shadow: 8px 0 30px rgba(5, 36, 72, .08) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-brand {
  display: flex ;
  align-items: center ;
  min-height: 57px ;
  padding: 0 8px 8px ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-brand img {
  display: block ;
  width: 150px ;
  height: auto ;
  max-height: 50px ;
  object-fit: contain ;
  object-position: left center ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav {
  display: flex ;
  flex-direction: column ;
  gap: 3px ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-label {
  margin: 13px 8px 6px ;
  color: #72dd50 ;
  font-size: 9px ;
  line-height: 1.2 ;
  font-weight: 800 ;
  letter-spacing: .075em ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-row {
  display: flex ;
  align-items: center ;
  gap: 11px ;
  min-height: 40px ;
  padding: 8px 10px ;
  box-sizing: border-box ;
  border: 1px solid transparent ;
  border-radius: 7px ;
  color: rgba(255,255,255,.94) ;
  font-size: 11px ;
  font-weight: 600 ;
  line-height: 1.2 ;
  text-decoration: none ;
  transition: background .16s ease, border-color .16s ease, transform .16s ease ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-row:hover {
  background: rgba(255,255,255,.09) ;
  border-color: rgba(255,255,255,.08) ;
  transform: translateX(1px) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-row.active {
  background: linear-gradient(135deg, #10a655, #0a8d48) ;
  border-color: rgba(255,255,255,.14) ;
  color: #fff ;
  box-shadow: 0 7px 17px rgba(0, 126, 63, .28) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-row .nm-ui-icon {
  width: 18px ;
  height: 18px ;
  flex: 0 0 18px ;
  color: currentColor ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-support {
  margin-top: auto ;
  padding: 14px 13px 13px ;
  border: 1px solid rgba(255,255,255,.17) ;
  border-radius: 8px ;
  background: rgba(255,255,255,.055) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-support strong {
  display: block ;
  margin-bottom: 7px ;
  color: #fff ;
  font-size: 10px ;
  line-height: 1.45 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-support p {
  margin: 0 0 11px ;
  color: rgba(255,255,255,.76) ;
  font-size: 8.8px ;
  line-height: 1.55 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-support-btn {
  width: 100% ;
  height: 31px ;
  border: 0 ;
  border-radius: 5px ;
  background: rgba(42, 111, 169, .55) ;
  color: #fff ;
  font: inherit ;
  font-size: 10px ;
  font-weight: 700 ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-side-footer {
  display: flex ;
  flex-direction: column ;
  align-items: center ;
  gap: 9px ;
  padding: 18px 5px 0 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-employer img {
  display: block ;
  width: 91px ;
  max-height: 38px ;
  object-fit: contain ;
  filter: brightness(0) invert(1) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-powered {
  display: flex ;
  align-items: center ;
  gap: 4px ;
  color: rgba(255,255,255,.72) ;
  font-size: 8px ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-powered b { color: #fff ; font-size: 9px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-side-footer small { color: rgba(255,255,255,.55) ; font-size: 7px ; }

/* ───────────────────────── Employee top utility bar ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbar {
  position: fixed ;
  top: 0 ;
  right: 0 ;
  left: var(--wp-e200-sidebar) ;
  z-index: 1490 ;
  height: var(--wp-e200-topbar) ;
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  padding: 0 28px ;
  box-sizing: border-box ;
  border-bottom: 1px solid #dfe6ec ;
  background: rgba(255,255,255,.98) ;
  backdrop-filter: blur(10px) ;
  color: var(--wp-e200-ink) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-top-actions { display: flex ; align-items: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand { gap: 18px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-tenant {
  display: flex ;
  align-items: center ;
  min-width: 82px ;
  height: 35px ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-tenant img { max-width: 88px ; max-height: 35px ; object-fit: contain ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-top-divider,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-sep { display: block ; width: 1px ; height: 30px ; background: #e1e7ec ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand strong { color: #102852 ; font-size: 12px ; font-weight: 700 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-top-actions { gap: 14px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-privacy {
  display: flex ;
  align-items: center ;
  gap: 8px ;
  color: #14345f ;
  font-size: 9.5px ;
  font-weight: 600 ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-privacy .nm-ui-icon { width: 17px ; height: 17px ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-privacy b { font-size: 12px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-iconbtn {
  position: relative ;
  display: grid ;
  place-items: center ;
  width: 30px ;
  height: 30px ;
  padding: 0 ;
  border: 0 ;
  background: transparent ;
  color: #102b5a ;
  font: 600 15px/1 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-iconbtn .nm-ui-icon { width: 18px ; height: 18px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-bell i {
  position: absolute ;
  top: -1px ;
  right: 0 ;
  min-width: 13px ;
  height: 13px ;
  display: grid ;
  place-items: center ;
  border-radius: 99px ;
  background: #07853f ;
  color: #fff ;
  font: 700 7px/1 Inter, sans-serif ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user {
  display: flex ;
  align-items: center ;
  gap: 9px ;
  color: #102852 ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user > i {
  width: 34px ;
  height: 34px ;
  display: grid ;
  place-items: center ;
  border-radius: 50% ;
  background: #082e5e ;
  color: #fff ;
  font: 700 10px/1 Inter, sans-serif ;
  font-style: normal ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user > span { display: flex ; flex-direction: column ; gap: 2px ; min-width: 83px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user b { font-size: 9.5px ; line-height: 1.1 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user small { color: #506681 ; font-size: 8px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user em { font-size: 12px ; font-style: normal ; }

/* ───────────────────────── One page header ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagehead {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 26px ;
  min-height: 112px ;
  margin: 0 0 18px ;
  padding: 23px 27px ;
  box-sizing: border-box ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 12px ;
  background: linear-gradient(135deg, #ffffff 0%, #fbfdff 67%, #f0f8f4 100%) ;
  box-shadow: 0 7px 23px rgba(20, 49, 78, .045) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy > span {
  display: block ;
  margin-bottom: 6px ;
  color: var(--wp-e200-green) ;
  font-size: 9px ;
  font-weight: 800 ;
  letter-spacing: .08em ;
  text-transform: uppercase ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy h1 {
  margin: 0 0 7px ;
  color: #09244f ;
  font-family: Inter, Arial, sans-serif ;
  font-size: 27px ;
  line-height: 1.1 ;
  font-weight: 800 ;
  letter-spacing: -.035em ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy p { max-width: 700px ; margin: 0 ; color: #536b86 ; font-size: 11px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pageactions { display: flex ; align-items: center ; justify-content: flex-end ; gap: 9px ; flex-wrap: wrap ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pageactions .btn { min-height: 36px ; padding: 8px 14px ; border-radius: 6px ; font-size: 10px ; font-weight: 700 ; box-shadow: none ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pageactions .btn-primary { border-color: var(--wp-e200-green) ; background: var(--wp-e200-green) ; color: #fff ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pageactions .btn-secondary { border-color: #cbd7e2 ; background: #fff ; color: #17385f ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-plan-context {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 18px ;
  margin: -3px 0 17px ;
  padding: 10px 14px ;
  border: 1px solid #dce7ef ;
  border-radius: 8px ;
  background: #f9fbfd ;
  color: #4f6781 ;
  font-size: 9px ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-plan-context > span { display: flex ; align-items: center ; gap: 8px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-plan-context .nm-ui-icon { width: 15px ; height: 15px ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-plan-context b { color: #13345d ; }

/* ───────────────────────── Employee Overview ───────────────────────── */
/* r5.16 item 1: release the stale 64px top padding from the unscoped rule
   earlier in this file. That padding predates the fixed topbar; the view
   already reserves header height via --wp-e200-topbar, so the employee shell
   was counting the header twice and pushing the overview 64px down. The
   retiree shell released the same padding; employee never did. */
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-shell { display: block ; min-height: 100% ; padding: 0 ; background: var(--wp-e200-bg) ; }
body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-main {
  width: 100% ;
  max-width: none ;
  min-height: calc(100vh - var(--wp-e200-topbar)) ;
  margin: 0 ;
  /* r5.16 item 1: top pad matched to the retiree owner (10px) so both
     overviews begin at the same offset below their topbar. */
  padding: 10px 28px 26px ;
  box-sizing: border-box ;
  background: var(--wp-e200-bg) ;
}
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-action-grid { grid-template-columns: repeat(4, minmax(0,1fr)) ; }
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-action-grid > a[hidden] { display: none ; }
body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-saved { border-bottom: 1px solid var(--wp-e200-border) ; }

/* ───────────────────────── Common employee page canvas ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-input-guide #wp-input-guide,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-container,
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .calc-container,
body.nm-workplace[data-wp-shell="employee"] #view-budget .calc-container,
body.nm-workplace[data-wp-shell="employee"] #view-reports .nm-reports-shell,
body.nm-workplace[data-wp-shell="employee"] #view-profile .section-container {
  width: auto ;
  max-width: 1440px ;
  min-height: calc(100vh - var(--wp-e200-topbar)) ;
  margin: 0 auto ;
  padding: 25px 29px 38px ;
  box-sizing: border-box ;
  background: transparent ;
}
body.nm-workplace[data-wp-shell="employee"] .input-card,
body.nm-workplace[data-wp-shell="employee"] .chart-card,
body.nm-workplace[data-wp-shell="employee"] .spreadsheet-card,
body.nm-workplace[data-wp-shell="employee"] .sim-card,
body.nm-workplace[data-wp-shell="employee"] .profile-card,
body.nm-workplace[data-wp-shell="employee"] .profile-dashboard,
body.nm-workplace[data-wp-shell="employee"] .planning-tool-card {
  border-color: var(--wp-e200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 18px rgba(20, 49, 78, .04) ;
}
body.nm-workplace[data-wp-shell="employee"] input,
body.nm-workplace[data-wp-shell="employee"] select,
body.nm-workplace[data-wp-shell="employee"] textarea {
  border-color: #cdd9e4 ;
  border-radius: 6px ;
  background: #fff ;
  color: #12345d ;
}
body.nm-workplace[data-wp-shell="employee"] input:focus,
body.nm-workplace[data-wp-shell="employee"] select:focus,
body.nm-workplace[data-wp-shell="employee"] textarea:focus {
  border-color: var(--wp-e200-green) ;
  box-shadow: 0 0 0 3px rgba(7, 152, 76, .11) ;
}

/* ───────────────────────── Input Guide ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-progress {
  margin: 0 0 17px ;
  padding: 19px 22px 17px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 18px rgba(20,49,78,.04) ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-progress-head {
  display: grid ;
  grid-template-columns: 86px minmax(0,1fr) ;
  gap: 16px ;
  align-items: start ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide #wp-ig-count {
  display: inline-flex ;
  align-items: center ;
  justify-content: center ;
  height: 28px ;
  border-radius: 99px ;
  background: #e9f7ef ;
  color: #08743d ;
  font-size: 9px ;
  font-weight: 800 ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide #wp-ig-step-title { display: block ; margin-bottom: 3px ; color: #102f58 ; font-size: 15px ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide #wp-ig-step-note { display: block ; color: #64778c ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-track { height: 4px ; margin: 15px 0 13px ; border-radius: 5px ; background: #e7edf2 ; overflow: hidden ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide #wp-ig-progress-bar { display: block ; height: 100% ; border-radius: inherit ; background: linear-gradient(90deg, #0ba353, #46c478) ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-steps { display: grid ; grid-template-columns: repeat(5,minmax(0,1fr)) ; gap: 8px ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-step {
  display: flex ;
  align-items: center ;
  gap: 8px ;
  min-width: 0 ;
  padding: 8px 9px ;
  border: 1px solid #e2e8ee ;
  border-radius: 7px ;
  background: #fbfcfd ;
  color: #5d7188 ;
  font-size: 9px ;
  font-weight: 650 ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-step i { width: 20px ; height: 20px ; display: grid ; place-items: center ; flex: 0 0 20px ; border-radius: 50% ; background: #e8edf2 ; color: #50657c ; font-size: 8px ; font-style: normal ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-step.active { border-color: #54bf82 ; background: #f2fbf6 ; color: #08743d ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-step.active i,
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-step.complete i { background: var(--wp-e200-green) ; color: #fff ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-fields {
  overflow: hidden ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 18px rgba(20,49,78,.04) ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row {
  display: grid ;
  grid-template-columns: minmax(0,1fr) 360px ;
  gap: 28px ;
  align-items: center ;
  min-height: 85px ;
  padding: 15px 22px ;
  box-sizing: border-box ;
  border-bottom: 1px solid #e8edf1 ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row:last-child { border-bottom: 0 ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row strong { display: block ; margin-bottom: 4px ; color: #12345d ; font-size: 11px ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row small { color:var(--wp-muted,#61738e) ; font-size: 9px ; line-height: 1.45 ; }
/* r5.16 item 5: the employee field-metric override (width/height/padding/
   box-sizing/font-size) was deleted outright. It was the third generation to
   declare the same properties and won only on source order; the base owner
   near the top of this file is now the single source for field metrics. */
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-footer {
  display: flex ;
  flex-wrap: wrap ;
  align-items: center ;
  justify-content: space-between ;
  gap: 12px ;
  margin-top: 15px ;
  padding: 15px 17px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 9px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-footer p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 9px ; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-footer .btn { min-width: 110px ; height: 36px ; font-size: 10px ; }

/* ───────────────────────── Edit Assumptions / Projection / Spreadsheet / Tools ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-layout { gap: 18px ; align-items: start ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-inputs,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-results { min-width: 0 ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .input-card { margin-bottom: 13px ; padding: 18px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .input-card-title { margin-bottom: 14px ; color: #12345d ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .form-field label { color: #263f60 ; font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .form-field input,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .form-field select { min-height: 37px ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .rate-hint,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .field-hint { color:var(--wp-muted,#61738e) ; font-size: 8.5px ; line-height: 1.45 ; }

/* Assumption editor: direct inputs plus a compact live snapshot */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-layout { display: grid ; grid-template-columns: minmax(520px, 1.02fr) minmax(350px, .68fr) ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-inputs { display: block ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results { display: block ; position: sticky ; top: calc(var(--wp-e200-topbar) + 18px) ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results > * { display: none ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results > #se-hero,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results > #pre-scenarios-card { display: grid ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement #se-hero { grid-template-columns: repeat(2,minmax(0,1fr)) ; gap: 10px ; padding: 0 ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement #se-hero .se-hero-card { min-height: 133px ; padding: 16px ; border: 1px solid var(--wp-e200-border) ; border-radius: 9px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement #se-hero .se-hero-primary { grid-column: 1 / -1 ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement #pre-scenarios-card { margin-top: 12px ; }

/* Projection page: results only */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .calc-layout,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement .calc-layout,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement .calc-layout { display: block ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .calc-inputs,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement .calc-inputs,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement .calc-inputs { display: none ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .calc-results,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement .calc-results,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement .calc-results { width: 100% ; display: block ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement #se-planning-tools,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement #pre-spreadsheet-view,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .table-details { display: none ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement #pre-charts-view { display: block ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-hero { gap: 11px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .se-hero-card,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .kpi-card { border-color: var(--wp-e200-border) ; border-radius: 9px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .chart-card { padding: 19px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .chart-title { color: #12345d ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .se-ctx-row { gap: 11px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .se-ctx-card { border-color: var(--wp-e200-border) ; border-radius: 9px ; background: #fff ; }

/* Spreadsheet page: one wide analysis surface */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement .calc-results > * { display: none ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement #pre-spreadsheet-view { display: block ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement #pre-spreadsheet-view .spreadsheet-card { display: block ; margin: 0 ; padding: 18px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-scroll { border: 1px solid #dfe7ee ; border-radius: 8px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table { font-size: 9px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table thead th { background: #f2f6f9 ; color: #17375f ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table .ss-group-row th { background: #e9f2f7 ; color: #21486e ; }

/* Smart Planning Tools page: no charts or duplicate results navigation */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement .calc-results > * { display: none ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #pre-window-alert,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #se-planning-tools { display: block ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools {
  position: relative ;
  padding: 20px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 18px rgba(20,49,78,.04) ;
}
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tools-heading { color: #102f58 ; font-size: 15px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-card { margin-top: 10px ; overflow: hidden ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-toggle { min-height: 54px ; padding: 12px 15px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-body { border-top: 1px solid #e7edf2 ; background: #fbfcfd ; }

/* ───────────────────────── Goal Simulator ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-starting-balance {
  margin-bottom: 16px ;
  padding: 18px 20px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 10px ;
  background: linear-gradient(135deg,#fff,#f4fbf7) ;
  box-shadow: 0 5px 18px rgba(20,49,78,.04) ;
}
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-grid { display: grid ; grid-template-columns: repeat(2,minmax(0,1fr)) ; gap: 14px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-card { padding: 20px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-card h3 { color: #102f58 ; font-size: 14px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-card p { color: #64778c ; font-size: 9px ; line-height: 1.45 ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-card .btn { border-radius: 6px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-result { border-radius: 8px ; background: #f1faf5 ; }

/* ───────────────────────── Budget Tracker ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-budget #budget-view-toggle-bar {
  display: inline-flex ;
  width: auto ;
  margin: 0 0 15px ;
  padding: 4px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 8px ;
  background: #fff ;
}
body.nm-workplace[data-wp-shell="employee"] #view-budget #budget-view-toggle-bar .view-toggle-btn { min-width: 100px ; border: 0 ; border-radius: 6px ; font-size: 9.5px ; }
body.nm-workplace[data-wp-shell="employee"] #view-budget #budget-view-toggle-bar .view-toggle-btn.active { background: #eaf7f0 ; color: #08743d ; }
body.nm-workplace[data-wp-shell="employee"] #view-budget .budget-summary { gap: 11px ; }
body.nm-workplace[data-wp-shell="employee"] #view-budget .kpi-card { border-color: var(--wp-e200-border) ; border-radius: 9px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }
body.nm-workplace[data-wp-shell="employee"] #view-budget .budget-layout { gap: 15px ; }
body.nm-workplace[data-wp-shell="employee"] #view-budget .form-section,
body.nm-workplace[data-wp-shell="employee"] #view-budget .chart-card,
body.nm-workplace[data-wp-shell="employee"] #view-budget .spreadsheet-card { border-color: var(--wp-e200-border) ; border-radius: 10px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }

/* ───────────────────────── Employee Reports ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-reports .nm-wp-e200-report-home { display: block ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro {
  margin-bottom: 16px ;
  padding: 14px 17px ;
  border: 1px solid #cce8d8 ;
  border-radius: 9px ;
  background: #f2fbf6 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro > div { display: grid ; grid-template-columns: 30px auto ; column-gap: 10px ; align-items: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro > div > span { grid-row: 1 / span 2 ; width: 28px ; height: 28px ; display: grid ; place-items: center ; border-radius: 50% ; background: #dff4e8 ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro .nm-ui-icon { width: 16px ; height: 16px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro strong { color: #123b2a ; font-size: 10.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-intro p { margin: 3px 0 0 ; color: #4b6d5d ; font-size: 9px ; line-height: 1.45 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-group {
  margin-bottom: 16px ;
  padding: 20px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 10px ;
  background: #fff ;
  box-shadow: 0 5px 18px rgba(20,49,78,.04) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-group > header { display: grid ; grid-template-columns: minmax(0,1fr) auto ; margin-bottom: 14px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-group > header span { grid-column: 1 ; color: var(--wp-e200-green) ; font-size: 8px ; font-weight: 800 ; letter-spacing: .08em ; text-transform: uppercase ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-group > header h2 { grid-column: 1 ; margin: 4px 0 0 ; color: #102f58 ; font-size: 15px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-group > header p { grid-column: 2 ; grid-row: 1 / span 2 ; max-width: 380px ; margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 9px ; line-height: 1.45 ; text-align: right ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid { display: grid ; grid-template-columns: repeat(3,minmax(0,1fr)) ; gap: 11px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid-two { grid-template-columns: repeat(2,minmax(0,1fr)) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid article {
  display: grid ;
  grid-template-columns: 40px minmax(0,1fr) ;
  grid-template-rows: minmax(112px,auto) auto ;
  column-gap: 11px ;
  padding: 16px ;
  border: 1px solid #dfe7ee ;
  border-radius: 9px ;
  background: #fbfcfd ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid article > i { width: 38px ; height: 38px ; display: grid ; place-items: center ; border-radius: 8px ; background: #e9f6ef ; color: var(--wp-e200-green) ; font-style: normal ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid article > i .nm-ui-icon { width: 20px ; height: 20px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid small { color: #5c7188 ; font-size: 7px ; font-weight: 800 ; letter-spacing: .06em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid h3 { margin: 5px 0 6px ; color: #12345d ; font-size: 12px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 8.5px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid .btn { grid-column: 1 / -1 ; width: 100% ; min-height: 34px ; margin-top: 12px ; border-radius: 6px ; font-size: 9px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-note { display: flex ; align-items: center ; gap: 10px ; padding: 12px 15px ; border: 1px solid #dfe7ee ; border-radius: 8px ; background: #f9fbfd ; color: #64778c ; font-size: 8.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-note strong { color: #17385f ; }

/* ───────────────────────── Employee profile ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] #view-profile .section-container { max-width: 1120px ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-card,
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-dashboard { padding: 20px ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-avatar { background: #082e5e ; color: #fff ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-slot-group[hidden] { display: none ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-quick-links { display: none ; }

/* ───────────────────────── Support modal ───────────────────────── */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal {
  position: fixed ;
  inset: 0 ;
  z-index: 3000 ;
  display: grid ;
  place-items: center ;
  padding: 20px ;
  background: rgba(4,25,48,.56) ;
  backdrop-filter: blur(4px) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal-card {
  position: relative ;
  width: min(430px,calc(100vw - 40px)) ;
  padding: 28px ;
  box-sizing: border-box ;
  border-radius: 13px ;
  background: #fff ;
  box-shadow: 0 25px 70px rgba(3,25,49,.26) ;
  text-align: center ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal-close { position: absolute ; top: 10px ; right: 12px ; border: 0 ; background: transparent ; color:var(--wp-muted,#61738e) ; font-size: 22px ; cursor: pointer ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal-icon { width: 48px ; height: 48px ; display: grid ; place-items: center ; margin: 0 auto 13px ; border-radius: 50% ; background: #e7f7ee ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal-icon .nm-ui-icon { width: 23px ; height: 23px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal h2 { margin: 0 0 8px ; color: #102f58 ; font-size: 20px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal p { margin: 0 auto 15px ; color: #65788d ; font-size: 10px ; line-height: 1.55 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-help-links { display: grid ; gap: 7px ; margin-bottom: 17px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-help-links a { padding: 9px 11px ; border: 1px solid #dfe7ee ; border-radius: 7px ; background: #fbfcfd ; color: #17385f ; font-size: 9px ; font-weight: 700 ; text-decoration: none ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-modal-done { min-width: 120px ; }

/* Demo selector remains available for design review only. */
body.nm-workplace[data-wp-shell="employee"] #nm-wp-demo-switch { z-index: 2500 ; }

/* ───────────────────────── Responsive behavior ───────────────────────── */
@media (max-width: 1180px) {
  body.nm-workplace[data-wp-shell="employee"] { --wp-e200-sidebar: 190px; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-top-actions { gap: 9px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-privacy span { display: none ; }
  body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .calc-layout { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results { position: static ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid { grid-template-columns: repeat(2,minmax(0,1fr)) ; }
}
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="employee"] { --wp-e200-sidebar: 0px; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-sidebar { display: none ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbar { left: 0 ; padding: 0 15px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand strong { font-size: 10px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user > span,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-top-divider,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-sep { display: none ; }
  body.nm-workplace[data-wp-shell="employee"] .view.active:not(#view-welcome) { padding-left: 0 ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagehead { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-steps { grid-template-columns: repeat(2,minmax(0,1fr)) ; }
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row { grid-template-columns: 1fr ; gap: 9px ; }
  body.nm-workplace[data-wp-shell="employee"] #view-pre-simulator .sim-grid,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid-two { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-action-grid { grid-template-columns: repeat(2,minmax(0,1fr)) ; }
}

/* Employee Workplace owns the page-level spreadsheet actions; keep the engine controls as hidden proxies. */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement #pre-spreadsheet-view .spreadsheet-toolbar #pre-sheet-expand-btn,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="spreadsheet"] #view-pre-retirement #pre-spreadsheet-view .spreadsheet-toolbar #pre-export-csv-btn {
  display: none ;
}

/* Reports are persona-specific. Suppress every consumer/retiree report block and show only the Employee report home. */
body.nm-workplace[data-wp-shell="employee"] #view-reports .nm-reports-shell > :not(#nm-wp-e200-pagehead):not(.nm-wp-e200-report-home) {
  display: none ;
}

/* Empty engine-owned notices should not leave blank presentation bars. They reappear automatically when populated. */
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #pre-window-alert:empty,
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #se-insight[hidden],
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #se-insight:has(#se-insight-text:empty) {
  display: none ;
}
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="tools"] #view-pre-retirement #pre-window-alert:not(:empty) {
  display: flex ;
}

/* Employee Workplace page interiors. Presentation-only; existing controls and results stay engine-owned. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-menubtn {
  display: none ;
  width: 36px ;
  height: 36px ;
  place-items: center ;
  padding: 0 ;
  border: 1px solid #d7e1e9 ;
  border-radius: 7px ;
  background: #fff ;
  color: #12345d ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-menubtn .nm-ui-icon { width: 19px ; height: 19px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-context-link {
  display: inline-flex ;
  align-items: center ;
  margin-bottom: 6px ;
  color: var(--wp-e200-green) ;
  font-size: 11px ;
  font-weight: 800 ;
  letter-spacing: .08em ;
  text-transform: uppercase ;
  text-decoration: none ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-context-link:hover { text-decoration: underline ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy > span { display: none ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy p { font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-nav-row { font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-support p { font-size: 11.5px ; }

/* Direct assumptions: clear section map above the retained engine-owned fields. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 24px ;
  margin: 0 0 17px ;
  padding: 16px 18px ;
  border: 1px solid #d8e5ed ;
  border-radius: 10px ;
  background: linear-gradient(135deg,#ffffff 0%,#f6fbf8 100%) ;
  box-shadow: 0 5px 18px rgba(20,49,78,.035) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map > div {
  display: grid ;
  grid-template-columns: 38px minmax(0,1fr) ;
  gap: 12px ;
  align-items: center ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map > div > span {
  width: 38px ;
  height: 38px ;
  display: grid ;
  place-items: center ;
  border-radius: 9px ;
  background: #e7f7ee ;
  color: var(--wp-e200-green) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map .nm-ui-icon { width: 19px ; height: 19px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map small,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy small,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview small,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context small {
  display: block ;
  color: var(--wp-e200-green) ;
  font-size: 10px ;
  font-weight: 800 ;
  letter-spacing: .075em ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map strong { display: block ; margin: 3px 0 ; color: #12345d ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map nav { display: flex ; gap: 7px ; flex-wrap: wrap ; justify-content: flex-end ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map button,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav button {
  min-height: 34px ;
  padding: 7px 11px ;
  border: 1px solid #cfdae4 ;
  border-radius: 6px ;
  background: #fff ;
  color: #214262 ;
  font: 700 11.5px/1.2 Inter, sans-serif ;
  cursor: pointer ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map button:hover,
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav button:hover { border-color: #57b980 ; background: #f0faf5 ; color: #08743d ; }

/* Projection: one compact sub-navigation rather than another page tab bar. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav {
  display: flex ;
  align-items: center ;
  gap: 8px ;
  margin: 0 0 17px ;
  padding: 11px 13px ;
  border: 1px solid var(--wp-e200-border) ;
  border-radius: 8px ;
  background: #fff ;
  box-shadow: 0 4px 14px rgba(20,49,78,.03) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav > span { margin-right: auto ; padding: 0 8px 0 2px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav small { display: block ; color:var(--wp-muted,#61738e) ; font-size: 9px ; font-weight: 800 ; letter-spacing: .07em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav strong { display: block ; margin-top: 2px ; color: #12345d ; font-size: 12px ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement #se-hero { margin-bottom: 14px ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .se-hero-card { min-height: 126px ; }
body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="projection"] #view-pre-retirement .pre-scenarios-card { border: 1px solid var(--wp-e200-border) ; border-radius: 10px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }

/* Smart Planning Tools: dedicated question-first page, existing details retained. */
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools { padding: 0 0 20px ; overflow: hidden ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools > .planning-tools-heading[hidden] { display: none ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-overview { padding: 22px ; border-bottom: 1px solid #e4ebf0 ; background: linear-gradient(135deg,#fbfefd,#f2faf6) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy {
  display: grid ;
  grid-template-columns: 44px minmax(0,1fr) ;
  gap: 13px ;
  align-items: center ;
  margin-bottom: 18px ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy > span { width: 44px ; height: 44px ; display: grid ; place-items: center ; border-radius: 11px ; background: #def4e8 ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy > span .nm-ui-icon { width: 22px ; height: 22px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy h2 { margin: 4px 0 5px ; color: #102f58 ; font-size: 18px ; letter-spacing: -.02em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tools-copy p { max-width: 820px ; margin: 0 ; color: #60758a ; font-size: 12px ; line-height: 1.5 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index { display: grid ; grid-template-columns: repeat(4,minmax(0,1fr)) ; gap: 10px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index > button {
  min-height: 150px ;
  display: grid ;
  grid-template-columns: 34px minmax(0,1fr) ;
  grid-template-rows: 1fr auto ;
  column-gap: 10px ;
  padding: 14px ;
  border: 1px solid #dce6ed ;
  border-radius: 9px ;
  background: #fff ;
  color: #17385f ;
  text-align: left ;
  cursor: pointer ;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index > button:hover { transform: translateY(-2px) ; border-color: #8bcdaa ; box-shadow: 0 8px 20px rgba(20,49,78,.07) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index i { width: 32px ; height: 32px ; display: grid ; place-items: center ; border-radius: 8px ; background: #e8f7ef ; color: var(--wp-e200-green) ; font-style: normal ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index i .nm-ui-icon { width: 17px ; height: 17px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index span { min-width: 0 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index small { display: block ; color:var(--wp-muted,#61738e) ; font-size: 9px ; font-weight: 800 ; letter-spacing: .06em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index b { display: block ; margin: 5px 0 ; color: #17385f ; font-size: 12.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index em { display: block ; color:var(--wp-muted,#61738e) ; font-size: 10px ; line-height: 1.4 ; font-style: normal ; }
/* r5.48: The <strong> in each card is now a real .btn variant. Position it
   as a real button (bottom of the card, spanning the grid), but let .btn /
   .btn-* own color / background / border. Do NOT reintroduce the flat
   #078044 color — the variants ARE the color signal. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index > button > strong {
  grid-column: 1 / -1 ;
  align-self: end ;
  justify-self: start ;
  margin-top: 10px ;
  font-size: 11px ;
  font-weight: 700 ;
  padding: 6px 12px ;
  min-height: 30px ;
  border-radius: 8px ;
  pointer-events: none ; /* the whole card is clickable already */
}

/* r5.48: Status pill — top-right corner of the card. One rule per status
   so the pill color communicates urgency / state instantly. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index > button { position: relative ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-status {
  position: absolute ;
  top: 10px ;
  right: 10px ;
  padding: 3px 8px ;
  border-radius: 999px ;
  font-size: 9px ;
  font-weight: 800 ;
  letter-spacing: .06em ;
  text-transform: uppercase ;
  line-height: 1.3 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-status--eligible-now {
  background: #d9f4e5 ; color: #067a3c ; border: 1px solid #7ec9a1 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-status--eye-opening {
  background: #fff1d6 ; color: #8a5b00 ; border: 1px solid #e5b566 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-status--goal-met {
  background: #eef2fb ; color: #2a4b8a ; border: 1px solid #b3c4e6 ;
}

/* r5.48: Card carries a subtle accent from its variant so the whole card
   — not just the button — reads as a distinct treatment. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-card--primary { border-left: 3px solid var(--color-primary, #0a67e3) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-card--success { border-left: 3px solid var(--color-success, #0c8a49) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-card--accent { border-left: 3px solid var(--color-accent, #d97706) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-card--outline { border-left: 3px solid var(--color-border, #dce6ed) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-card--ghost { border-left: 3px solid var(--color-text-muted, #667) ; }

/* r5.48 D2a: Hide the accordion list on the Smart Planning Tools INDEX view.
   The tool cards are the navigator; the accordion opens (data-wp-e556-tool-open
   sets details.open = true) only when the user picks a card. Any [open]
   detail is shown; closed ones are hidden. This is a real rule change (not
   a DOM patch, not a forced-priority override): the tools container has an
   authoritative mode attribute set by workplace-employee-pages.js. */
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools[data-wp-e556-tools-mode="index"] > details.planning-tool-card:not([open]) { display: none ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools > #se-tools-collapse-all { margin: 14px 20px 2px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools > .se-insight,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools > .se-last-updated,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement #se-planning-tools.nm-wp-e556-tools > details { margin-left: 20px ; margin-right: 20px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-card { scroll-margin-top: 90px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-toggle { position: relative ; min-height: 64px ; padding: 13px 16px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-label { font-size: 12px ; color: #17385f ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .nm-wp-e556-tool-meta { margin-left: auto ; padding: 5px 8px ; border-radius: 99px ; background: #f0f5f8 ; color: #61768b ; font-size: 9px ; font-weight: 800 ; letter-spacing: .055em ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-chevron { margin-left: 8px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .planning-tool-body { padding: 18px ; }

/* Spreadsheet: stronger orientation and readable dense data. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 20px ;
  margin: 0 0 14px ;
  padding: 14px 16px ;
  border: 1px solid #dbe6ed ;
  border-radius: 9px ;
  background: #f8fbfc ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview > div:first-child { display: grid ; grid-template-columns: 38px minmax(0,1fr) ; gap: 11px ; align-items: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview > div:first-child > span { width: 36px ; height: 36px ; display: grid ; place-items: center ; border-radius: 8px ; background: #e6f6ed ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview strong { display: block ; margin: 3px 0 ; color: #14365e ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 11px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-stat { min-width: 90px ; padding-left: 18px ; border-left: 1px solid #dce5eb ; text-align: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-stat b { display: block ; color: #087c42 ; font-size: 20px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-stat span { color:var(--wp-muted,#61738e) ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table { font-size: 12px ; }
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table th,
body.nm-workplace[data-wp-shell="employee"] #view-pre-retirement .spreadsheet-table td { padding: 9px 10px ; white-space: nowrap ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-empty { padding: 42px 20px ; border: 1px dashed #cad8e2 ; border-radius: 9px ; background: #fbfcfd ; text-align: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-empty > span { width: 45px ; height: 45px ; display: grid ; place-items: center ; margin: 0 auto 10px ; border-radius: 50% ; background: #e8f6ee ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-empty h3 { margin: 0 0 6px ; color: #17385f ; font-size: 14px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-empty p { margin: 0 auto 13px ; color:var(--wp-muted,#61738e) ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-empty[hidden] { display: none ; }

/* Goal Simulator: explain the existing solve workflow without changing it. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow { display: grid ; grid-template-columns: repeat(3,minmax(0,1fr)) ; gap: 10px ; margin: 0 0 16px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow > div { display: grid ; grid-template-columns: 30px minmax(0,1fr) ; gap: 10px ; align-items: center ; padding: 13px 15px ; border: 1px solid #dfe7ed ; border-radius: 9px ; background: #fff ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow i { width: 28px ; height: 28px ; display: grid ; place-items: center ; border-radius: 50% ; background: #e5f6ed ; color: #087a40 ; font: 800 11px/1 Inter,sans-serif ; font-style: normal ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow b { display: block ; margin-bottom: 3px ; color: #17385f ; font-size: 12.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow small { display: block ; color:var(--wp-muted,#61738e) ; font-size: 10px ; line-height: 1.4 ; }

/* Budget: retain the shared tracker while making its role clear in Employee Workplace. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 20px ;
  margin: 0 0 16px ;
  padding: 15px 17px ;
  border: 1px solid #d7e6de ;
  border-radius: 9px ;
  background: #f5fbf7 ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context > div { display: grid ; grid-template-columns: 38px minmax(0,1fr) ; gap: 11px ; align-items: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context > div > span { width: 36px ; height: 36px ; display: grid ; place-items: center ; border-radius: 8px ; background: #dff3e7 ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context strong { display: block ; margin: 3px 0 ; color: #17412e ; font-size: 13px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context p { margin: 0 ; color: #587264 ; font-size: 11px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context > a { flex: 0 0 auto ; color: #087943 ; font-size: 11.5px ; font-weight: 750 ; text-decoration: none ; }

/* Reports: only real Employee report/export outputs; no second navigation hub. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary {
  display: flex ;
  align-items: center ;
  justify-content: space-between ;
  gap: 24px ;
  margin: 0 0 16px ;
  padding: 18px 20px ;
  border: 1px solid #d6e5dc ;
  border-radius: 10px ;
  background: linear-gradient(135deg,#ffffff,#f2faf6) ;
}
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary > div:first-child { display: grid ; grid-template-columns: 43px minmax(0,1fr) ; gap: 13px ; align-items: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary > div:first-child > span { width: 42px ; height: 42px ; display: grid ; place-items: center ; border-radius: 10px ; background: #dff4e8 ; color: var(--wp-e200-green) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary small { color: var(--wp-e200-green) ; font-size: 9.5px ; font-weight: 800 ; letter-spacing: .07em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary h2 { margin: 3px 0 4px ; color: #12345d ; font-size: 16px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary p { margin: 0 ; color: #61768a ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-count { min-width: 100px ; padding-left: 22px ; border-left: 1px solid #d8e4dc ; text-align: center ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-count strong { display: block ; color: #087c42 ; font-size: 24px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-count span { color:var(--wp-muted,#61738e) ; font-size: 10px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid article { grid-template-rows: minmax(130px,auto) auto ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-report-grid p { font-size: 11px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help { display: grid ; grid-template-columns: 34px minmax(0,1fr) auto ; gap: 11px ; align-items: center ; padding: 14px 16px ; border: 1px solid #dfe7ee ; border-radius: 9px ; background: #f9fbfd ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help > span { width: 32px ; height: 32px ; display: grid ; place-items: center ; border-radius: 50% ; background: #e9f2f8 ; color: #2c5c87 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help strong { color: #17385f ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help p { margin: 3px 0 0 ; color:var(--wp-muted,#61738e) ; font-size: 10.5px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help a { color: #087943 ; font-size: 11px ; font-weight: 750 ; text-decoration: none ; }

/* Employee profile: one page, three clearly named sections. */
body.nm-workplace[data-wp-shell="employee"] #view-profile .section-container { max-width: 1240px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-tabs { position: sticky ; top: calc(var(--wp-e200-topbar) + 8px) ; z-index: 12 ; display: inline-flex ; gap: 4px ; margin: 0 0 16px ; padding: 4px ; border: 1px solid #dce5ec ; border-radius: 8px ; background: rgba(255,255,255,.97) ; box-shadow: 0 5px 16px rgba(20,49,78,.05) ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-tabs button { min-height: 34px ; padding: 7px 13px ; border: 0 ; border-radius: 6px ; background: transparent ; color: #536b83 ; font: 700 11px/1.2 Inter,sans-serif ; cursor: pointer ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-tabs button.active { background: #eaf7f0 ; color: #08743d ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile [data-wp-e556-profile-section] { scroll-margin-top: 128px ; margin-bottom: 16px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-sectionhead { margin: -2px 0 18px ; padding-bottom: 13px ; border-bottom: 1px solid #e5ebf0 ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-sectionhead span { color: var(--wp-e200-green) ; font-size: 9.5px ; font-weight: 800 ; letter-spacing: .075em ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-sectionhead h2 { margin: 4px 0 ; color: #12345d ; font-size: 16px ; }
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-sectionhead p { margin: 0 ; color:var(--wp-muted,#61738e) ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-card,
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-dashboard,
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-quick-links { padding: 22px ; border: 1px solid var(--wp-e200-border) ; border-radius: 10px ; background: #fff ; box-shadow: 0 5px 18px rgba(20,49,78,.04) ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-quick-links { display: flex ; flex-wrap: wrap ; gap: 10px ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-quick-links .nm-wp-e556-profile-sectionhead { flex: 0 0 100% ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-field label { color: #28435f ; font-size: 11.5px ; }
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-field input,
body.nm-workplace[data-wp-shell="employee"] #view-profile .profile-field select { min-height: 39px ; font-size: 12.5px ; }

/* Mobile/tablet Employee navigation drawer. */
body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-drawer-backdrop { display: none ; position: fixed ; inset: 0 ; z-index: 1485 ; border: 0 ; background: rgba(3,24,47,.52) ; backdrop-filter: blur(2px) ; }
@media (max-width: 1180px) {
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index { grid-template-columns: repeat(2,minmax(0,1fr)) ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-assumption-map nav { justify-content: flex-start ; }
}
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-menubtn { display: grid ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-sidebar { display: flex ; width: 235px ; transform: translateX(-104%) ; transition: transform .2s ease ; box-shadow: 16px 0 45px rgba(2,20,40,.24) ; }
  body.nm-workplace[data-wp-shell="employee"].nm-wp-e556-drawer-open .nm-wp-e200-sidebar { transform: translateX(0) ; }
  body.nm-workplace[data-wp-shell="employee"].nm-wp-e556-drawer-open .nm-wp-e556-drawer-backdrop { display: block ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand { gap: 10px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav { align-items: stretch ; flex-wrap: wrap ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-projection-nav > span { flex: 0 0 100% ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-goal-flow { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-budget-context,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-summary,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-overview { align-items: flex-start ; flex-direction: column ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-count,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-sheet-stat { padding: 10px 0 0 ; border-left: 0 ; border-top: 1px solid #dde6eb ; text-align: left ; }
}
@media (max-width: 620px) {
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbar { height: 62px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-tenant { display: none ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-topbrand strong { max-width: 160px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagehead { min-height: 0 ; padding: 18px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-pagecopy h1 { font-size: 23px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index { grid-template-columns: 1fr ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-tool-index > button { min-height: 126px ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help { grid-template-columns: 32px minmax(0,1fr) ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-report-help a { grid-column: 2 ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-tabs { width: 100% ; overflow-x: auto ; }
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e556-profile-tabs button { white-space: nowrap ; }
}


/* Shared responsive layout contract */
/* Canonical Workplace layout and collision containment. */
body.nm-workplace {
  overflow-x: clip;
  --nm-wp-fixed-sidebar: 205px;
}
body.nm-workplace[data-wp-shell="employee"] { --nm-wp-fixed-sidebar: var(--wp-e200-sidebar, 205px); }
body.nm-workplace[data-wp-shell="retiree"] { --nm-wp-fixed-sidebar: var(--wp-v200-sidebar, 188px); }
body.nm-workplace.nm-wp-modal-open {
  overflow: hidden ;
}
body.nm-workplace .view,
body.nm-workplace .view.active,
body.nm-workplace .calc-container,
body.nm-workplace .dash-container,
body.nm-workplace .section-container,
body.nm-workplace .nm-reports-shell,
body.nm-workplace .wz-main,
body.nm-workplace .nm-new-plan-shell {
  box-sizing: border-box;
  min-width: 0 ;
  max-width: 100%;
}
body.nm-workplace .view.active > *,
body.nm-workplace .calc-container > *,
body.nm-workplace .dash-container > *,
body.nm-workplace .section-container > *,
body.nm-workplace .nm-reports-shell > * {
  min-width: 0;
}
body.nm-workplace #nm-wp-v200-pagehead,
body.nm-workplace #nm-wp-e200-pagehead {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
body.nm-workplace[data-wp-shell="employee"] #nm-wp-v200-pagehead,
body.nm-workplace[data-wp-shell="retiree"] #nm-wp-e200-pagehead {
  display: none ;
}
body.nm-workplace .nm-wp-v200-pagecopy,
body.nm-workplace .nm-wp-e200-pagecopy,
body.nm-workplace .nm-wp-v200-pageactions,
body.nm-workplace .nm-wp-e200-pageactions,
body.nm-workplace .nm-wp-v200-topbrand,
body.nm-workplace .nm-wp-e200-topbrand,
body.nm-workplace .nm-wp-v200-top-actions,
body.nm-workplace .nm-wp-e200-top-actions {
  min-width: 0;
}
body.nm-workplace .nm-wp-v200-pageactions,
body.nm-workplace .nm-wp-e200-pageactions {
  flex-wrap: wrap;
  justify-content: flex-end;
}
body.nm-workplace .nm-wp-v200-tenant strong,
body.nm-workplace .nm-wp-e200-tenant strong,
body.nm-workplace .nm-wp-v200-employer strong,
body.nm-workplace .nm-wp-e200-employer strong {
  display: block;
  max-width: 170px;
  white-space: normal;
  overflow-wrap: anywhere;
  font: 700 14px/1.2 "Plus Jakarta Sans", Inter, sans-serif;
}
body.nm-workplace .nm-wp-v200-topbrand > strong,
body.nm-workplace .nm-wp-e200-topbrand > strong,
body.nm-workplace .nm-wp-v200-user span,
body.nm-workplace .nm-wp-e200-user span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.nm-workplace .nm-wp-v200-user b,
body.nm-workplace .nm-wp-e200-user b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.nm-workplace .nm-wp-v200-nav-row,
body.nm-workplace .nm-wp-e200-nav-row {
  font-size: 13px ;
  line-height: 1.35;
}
body.nm-workplace .nm-wp-v200-support p,
body.nm-workplace .nm-wp-e200-support p,
body.nm-workplace .nm-wp-v200-side-footer,
body.nm-workplace .nm-wp-e200-side-footer {
  font-size: 12px ;
  line-height: 1.45;
}
body.nm-workplace .spreadsheet-wrap,
body.nm-workplace .table-scroll,
body.nm-workplace .dash-table-wrap,
body.nm-workplace .pre-spreadsheet-wrap,
body.nm-workplace [class*="spreadsheet"] table {
  max-width: 100%;
}
body.nm-workplace .spreadsheet-wrap,
body.nm-workplace .table-scroll,
body.nm-workplace .dash-table-wrap,
body.nm-workplace .pre-spreadsheet-wrap {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}
body.nm-workplace .nm-wp-v200-modal,
body.nm-workplace .nm-wp-e200-modal,
body.nm-workplace #nm-howto-modal {
  z-index: 5000 ;
}
body.nm-workplace #nm-wp-global-sidebar {
  z-index: 3100 ;
}
body.nm-workplace #nm-wp-global-topbar {
  z-index: 3000 ;
}
body.nm-workplace #nm-wp-v555-drawer-backdrop,
body.nm-workplace #nm-wp-e556-drawer-backdrop {
  z-index: 3050 ;
}
/* Use the existing compact identity treatment before the utility bar crowds
   its account action at the sidebar boundary. The account control remains. */
@media (min-width:901px) and (max-width:980px) {
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user > span,
  body.nm-workplace[data-wp-shell="employee"] .nm-wp-e200-user > em,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user > span,
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-user > em { display:none; }
}
@media (max-width: 1100px) {
  body.nm-workplace .nm-wp-v200-privacy span,
  body.nm-workplace .nm-wp-e200-privacy span { display: none; }
  body.nm-workplace .nm-wp-v200-top-divider,
  body.nm-workplace .nm-wp-e200-top-divider { margin-inline: 8px; }
  body.nm-workplace .nm-wp-v200-pagehead,
  body.nm-workplace .nm-wp-e200-pagehead { gap: 16px; }
}
@media (max-width: 900px) {
  body.nm-workplace .view.active,
  body.nm-workplace[data-wp-shell="employee"] .view.active,
  body.nm-workplace[data-wp-shell="retiree"] .view.active {
    margin-left: 0 ;
    width: 100% ;
    max-width: 100% ;
    padding-left: 16px ;
    padding-right: 16px ;
  }
  body.nm-workplace .nm-wp-v200-pagehead,
  body.nm-workplace .nm-wp-e200-pagehead {
    align-items: flex-start;
  }
}
@media (max-width: 640px) {
  body.nm-workplace .nm-wp-v200-topbar,
  body.nm-workplace .nm-wp-e200-topbar {
    padding-inline: 12px ;
  }
  body.nm-workplace .nm-wp-v200-tenant strong,
  body.nm-workplace .nm-wp-e200-tenant strong { max-width: 96px; font-size: 12px; white-space:normal; overflow-wrap:anywhere; line-height:1.2; }
  body.nm-workplace .nm-wp-v200-topbrand > strong,
  body.nm-workplace .nm-wp-e200-topbrand > strong { display: none; }
  body.nm-workplace .nm-wp-v200-user span,
  body.nm-workplace .nm-wp-e200-user span,
  body.nm-workplace .nm-wp-v200-user em,
  body.nm-workplace .nm-wp-e200-user em { display: none; }
  body.nm-workplace .nm-wp-v200-pagehead,
  body.nm-workplace .nm-wp-e200-pagehead {
    display: flex;
    flex-direction: column;
    padding: 18px ;
  }
  body.nm-workplace .nm-wp-v200-pageactions,
  body.nm-workplace .nm-wp-e200-pageactions {
    width: 100%;
    justify-content: flex-start;
  }
}


/* Fixed-shell geometry reserves the sidebar and topbar lanes before page content paints. */
body.nm-workplace[data-wp-shell="employee"] .view.active:not(#view-welcome),
body.nm-workplace[data-wp-shell="retiree"] .view.active:not(#view-welcome) {
  position: relative ;
  isolation: isolate;
  overflow: visible ;
}
body.nm-workplace[data-wp-shell="employee"] .view.active:not(#view-welcome) {
  padding-top: var(--wp-e200-topbar, 69px) ;
  padding-left: var(--wp-e200-sidebar, 205px) ;
}
body.nm-workplace[data-wp-shell="retiree"] .view.active:not(#view-welcome) {
  padding-top: var(--wp-v200-topbar, 69px) ;
  padding-left: var(--wp-v200-sidebar, 205px) ;
}
body.nm-workplace #nm-wp-global-topbar {
  position: fixed ;
  top: 0 ;
  right: 0 ;
  left: var(--nm-wp-fixed-sidebar) ;
  width: auto ;
  min-width: 0 ;
}
body.nm-workplace #nm-wp-global-sidebar {
  position: fixed ;
  inset: 0 auto 0 0 ;
  width: var(--nm-wp-fixed-sidebar) ;
  max-width: var(--nm-wp-fixed-sidebar) ;
}
body.nm-workplace .view.active:not(#view-welcome) > :not(#nm-wp-global-sidebar):not(#nm-wp-global-topbar) {
  max-width: 100% ;
  min-width: 0 ;
}
body.nm-workplace .nm-wp-v200-pagehead,
body.nm-workplace .nm-wp-e200-pagehead,
body.nm-workplace .nm-wp-v200-pagebody,
body.nm-workplace .nm-wp-e200-pagebody {
  clear: both;
  box-sizing: border-box ;
}
body.nm-workplace table { border-collapse: separate; }

/* Only the selected engine subview may participate in layout. Legacy page
   rules occasionally force an inactive strategy or projection panel to block,
   which can append an entire second page below the current one. */
body.nm-workplace #view-dashboard .switchable-view:not(.active),
body.nm-workplace #view-pre-retirement .switchable-view:not(.active) {
  display: none ;
  visibility: hidden ;
  pointer-events: none ;
}
body.nm-workplace #view-dashboard .switchable-view.active,
body.nm-workplace #view-pre-retirement .switchable-view.active {
  visibility: visible ;
}
@media (max-width: 900px) {
  body.nm-workplace #nm-wp-global-topbar { left: 0 ; }
  body.nm-workplace[data-wp-shell="employee"] .view.active:not(#view-welcome),
  body.nm-workplace[data-wp-shell="retiree"] .view.active:not(#view-welcome) {
    padding-top: 69px ;
    padding-left: 0 ;
  }
  body.nm-workplace #nm-wp-global-sidebar {
    max-width: min(320px, 86vw) ;
    width: min(320px, 86vw) ;
  }
}

/* Responsive overview composition for tablet and mobile. */
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="employee"] #view-workspace .nm-dash-main,
  body.nm-workplace[data-wp-shell="retiree"] #view-workspace .nm-dash-main {
    width: 100% ;
    max-width: 100% ;
    padding: 18px 16px 32px ;
    overflow: visible ;
  }

  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview {
    display: flex ;
    flex-direction: column ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    height: auto ;
    gap: 16px ;
    margin: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview > .nm-wp-overview-intro,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview > .nm-wp-overview-intro {
    display: flex ;
    flex-direction: column ;
    width: 100% ;
    min-width: 0 ;
    height: auto ;
    gap: 16px ;
    margin: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wp-overview-intro > *,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wp-overview-intro > * {
    width: 100% ;
    min-width: 0 ;
    max-width: 100% ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wp-hero-image,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wp-hero-image {
    width: 100% ;
    min-width: 0 ;
    height: 126px ;
    box-sizing: border-box ;
  }

  /* Employee overview */
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview > .nm-wpo-grid,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-main,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-side {
    display: flex ;
    flex-direction: column ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    height: auto ;
    gap: 14px ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-main,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-side {
    grid-area: auto ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-panel,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-side > *,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-main > * {
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    height: auto ;
    box-sizing: border-box ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chips {
    grid-template-columns: repeat(2, minmax(0, 1fr)) ;
    row-gap: 16px ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chips li {
    border-right: 0 ;
    padding: 4px 8px ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-projected-body,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-track-row {
    display: flex ;
    flex-direction: column ;
    width: 100% ;
    min-width: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chart-wrap,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chart-stage {
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chart-callout {
    right: 8px ;
    max-width: 112px ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-mini-metrics,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-action-grid,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-goal-stats,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-saved-grid {
    grid-template-columns: 1fr ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-mini-metrics > div {
    border-right: 0 ;
    border-bottom: 1px solid #e5eaef ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-mini-metrics > div:last-child {
    border-bottom: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-ring {
    align-self: center ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-track-num {
    position: static ;
    margin: -54px 0 28px ;
    align-self: center ;
    text-align: center ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-track-facts div,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-track-facts dd {
    min-width: 0 ;
    white-space: normal ;
  }

  /* Retiree overview */
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-layout,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-main,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-side {
    display: flex ;
    flex-direction: column ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    height: auto ;
    gap: 14px ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-kpis,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-row2 {
    display: grid ;
    grid-template-columns: 1fr ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    gap: 14px ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-panel,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-kpis article,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-row2 article,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-strat,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-next {
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    height: auto ;
    min-height: 0 ;
    box-sizing: border-box ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-kpis article {
    min-height: 144px ;
  }
  /* r5.48: iPad KPI — the 3-row grid at line 1627 already centers the value
     in row 2 across all cards, so drop the legacy `margin-top:22px` that
     used to force it down. Everything else here stays. */
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-kpis > article > strong {
    margin-top: 0 ; /* r5.48 defect 1a */
    max-width: 100% ;
    overflow: visible ;
    text-overflow: clip ;
    white-space: normal ;
    overflow-wrap: anywhere ;
    text-align: center ;
    font-size: clamp(23px, 8vw, 29px) ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-chart-card,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-row2 article {
    min-height: 220px ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-privacy ,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-privacy {
    display: flex ;
    flex-direction: column ;
    align-items: flex-start ;
    width: 100% ;
    max-width: 100% ;
    gap: 10px ;
    padding: 16px ;
    box-sizing: border-box ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-privacy > div,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-privacy > div,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-privacy a ,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-privacy a {
    width: 100% ;
    min-width: 0 ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-privacy span ,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-privacy span {
    display: block ;
    overflow-wrap: anywhere ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-legal ,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-legal {
    display: flex ;
    flex-direction: column ;
    align-items: flex-start ;
    gap: 10px ;
    width: 100% ;
    max-width: 100% ;
  }
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wpr-legal nav ,
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpr-legal nav {
    display: flex ;
    flex-wrap: wrap ;
    gap: 10px 16px ;
  }

  /* Always render a recognizable menu glyph, even before the icon hydrator. */
  body.nm-workplace .nm-wp-e200-menubtn,
  body.nm-workplace .nm-wp-v200-menubtn {
    position: relative ;
    color: #12345d ;
  }
  body.nm-workplace .nm-wp-e200-menubtn::before,
  body.nm-workplace .nm-wp-v200-menubtn::before {
    content: "";
    width: 17px;
    height: 12px;
    border-top: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    box-sizing: border-box;
  }
  body.nm-workplace .nm-wp-e200-menubtn::after,
  body.nm-workplace .nm-wp-v200-menubtn::after {
    content: "";
    position: absolute;
    left: 9px;
    right: 9px;
    top: 16px;
    border-top: 2px solid currentColor;
  }
  body.nm-workplace .nm-wp-e200-menubtn > *,
  body.nm-workplace .nm-wp-v200-menubtn > * {
    display: none ;
  }
}

@media (max-width: 480px) {
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wp-overview-intro h1,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wp-overview-intro h1 {
    font-size: 28px ;
    overflow-wrap: anywhere ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chips {
    grid-template-columns: 1fr ;
  }
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wp-hero-cta,
  body.nm-workplace[data-wp-shell="retiree"] #wp-ret-overview .nm-wp-hero-cta {
    max-width: calc(100% - 24px) ;
  }
}

/* Workplace is persona-routed by the authenticated employer record. Consumer
   scratchpad/feedback controls and the internal demo persona switch must not
   float over Workplace content or expose the other persona. */
body.nm-workplace #scratchpad-fab,
body.nm-workplace #scratchpad-panel,
body.nm-workplace #feedback-fab,
body.nm-workplace #feedback-panel,
body.nm-workplace #nm-wp-demo-switch {
  display: none ;
}

/* The assumptions engine uses minimum desktop columns. At laptop/tablet widths
   those minimums can exceed the content lane even though the document itself
   clips overflow. Stack the engine panels before that happens. */
@media (max-width: 1180px) {
  body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-layout {
    display: grid ;
    grid-template-columns: minmax(0, 1fr) ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
  }
  body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-inputs,
  body.nm-workplace[data-wp-shell="employee"][data-wp-employee-mode="assumptions"] #view-pre-retirement .calc-results {
    position: static ;
    width: 100% ;
    max-width: 100% ;
    min-width: 0 ;
    box-sizing: border-box ;
  }
}

@media (max-width: 480px) {
  body.nm-workplace[data-wp-shell="employee"] #wp-emp-overview .nm-wpo-chips {
    grid-template-columns: repeat(2, minmax(0, 1fr)) ;
  }
}

/* One shared tablet breakpoint keeps the sidebar either reserved or off-canvas. */
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-menubtn {
    display: grid ;
  }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v200-sidebar {
    display: flex ;
    width: min(320px, 86vw) ;
    max-width: min(320px, 86vw) ;
    transform: translateX(-105%) ;
    transition: transform .22s ease ;
    box-shadow: 16px 0 45px rgba(3,24,48,.25) ;
  }
  body.nm-workplace[data-wp-shell="retiree"].nm-wp-drawer-open .nm-wp-v200-sidebar {
    transform: translateX(0) ;
  }
  body.nm-workplace[data-wp-shell="retiree"] .nm-wp-v555-drawer-backdrop {
    position: fixed ;
    inset: 0 ;
    width: 100% ;
    height: 100% ;
    padding: 0 ;
    border: 0 ;
    background: rgba(4,24,47,.48) ;
    backdrop-filter: blur(2px) ;
    display: none ;
  }
  body.nm-workplace[data-wp-shell="retiree"].nm-wp-drawer-open .nm-wp-v555-drawer-backdrop {
    display: block ;
  }
}


/* Canonical visibility contract: one route, one active page, one active result subview. */
body.nm-workplace .view:not(.active),
body.nm-workplace .switchable-view:not(.active),
body.nm-workplace .dashboard-view:not(.active),
body.nm-workplace .pre-view:not(.active),
body.nm-workplace [hidden] { display: none; }
body.nm-workplace .view.active { display: block; }
body.nm-workplace #main-content,
body.nm-workplace .view,
body.nm-workplace .view > *,
body.nm-workplace .calc-container,
body.nm-workplace .dash-container,
body.nm-workplace .section-container { min-width: 0; max-width: 100%; box-sizing: border-box; }
body.nm-workplace .spreadsheet-wrap,
body.nm-workplace .spreadsheet-scroll,
body.nm-workplace .table-scroll,
body.nm-workplace .dash-table-wrap { overflow-x: auto; max-width: 100%; }
html.nm-wp-scroll-lock, html.nm-wp-scroll-lock body { overflow: hidden; }

/* Single support dialog owned by workplace-core.js. */
body.nm-workplace .nm-wp-support-modal { position: fixed; inset: 0; z-index: 4000; display: grid; place-items: center; padding: 24px; background: rgba(3, 24, 47, .58); }
body.nm-workplace .nm-wp-support-card { position: relative; width: min(520px, 100%); border: 1px solid #dfe7ef; border-radius: 16px; padding: 30px; background: #fff; box-shadow: 0 24px 70px rgba(3, 24, 47, .24); text-align: center; }
body.nm-workplace .nm-wp-support-close { position: absolute; top: 12px; right: 14px; border: 0; background: transparent; font-size: 28px; line-height: 1; cursor: pointer; }
body.nm-workplace .nm-wp-support-icon { display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #eaf7ef; color: #087b43; }
body.nm-workplace .nm-wp-support-card h2 { margin: 14px 0 8px; }
body.nm-workplace .nm-wp-support-card p { margin: 0 auto 20px; max-width: 390px; color: #64748b; }
body.nm-workplace .nm-wp-support-links { display: grid; gap: 8px; margin: 0 0 20px; }
body.nm-workplace .nm-wp-support-links a { color: #0b5d8f; font-weight: 650; text-decoration: none; }

/* Generic drawer backdrop; persona styling remains in the same source. */
body.nm-workplace .nm-wp-drawer-backdrop { position: fixed; inset: 0; z-index: 1450; border: 0; background: rgba(3,24,47,.48); }
@media (min-width: 901px) { body.nm-workplace .nm-wp-drawer-backdrop { display: none; } }

/* Final canonical shell geometry. This is the only rule that reserves the fixed
   Workplace chrome; page components must not add a second sidebar/header offset. */
body.nm-workplace[data-wp-shell="employee"] main#main-content > .view.active:not(#view-welcome) {
  margin-left: 0;
  width: 100%;
  max-width: 100%;
  padding-top: var(--wp-e200-topbar, 69px);
  padding-left: var(--wp-e200-sidebar, 205px);
}
body.nm-workplace[data-wp-shell="retiree"] main#main-content > .view.active:not(#view-welcome) {
  margin-left: 0;
  width: 100%;
  max-width: 100%;
  padding-top: var(--wp-v200-topbar, 68px);
  padding-left: var(--wp-v200-sidebar, 188px);
}
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="employee"] main#main-content > .view.active:not(#view-welcome),
  body.nm-workplace[data-wp-shell="retiree"] main#main-content > .view.active:not(#view-welcome) {
    margin-left: 0;
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* ============================================================
   v149.560 (T3/T8) — PLANNING-VIEW TOGGLE + FIRST-USE EXPLAINER
   Design deliverables v1.1.

   Scoped to body.nm-workplace throughout: the consumer product at
   nestmint.ai must never inherit any of this. No force-override
   declarations — the selectors are specific enough on their own, and
   the design package's no-patch rule forbids override-by-force.

   Tenant theming reads --nm-tenant-primary with a --nm-tenant-accent
   fallback (the variable this codebase already sets) and finally the
   Workplace blue, so an employer with no brand colour still gets an
   accessible control rather than an unstyled one.
   ============================================================ */

body.nm-workplace .nm-wp-view-switch {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 3px;
  border: 1px solid #d7dee5;
  border-radius: 999px;
  background: #f2f5f8;
}

body.nm-workplace .nm-wp-view-switch button {
  appearance: none;
  border: 0;
  margin: 0;
  padding: 7px 16px;
  border-radius: 999px;
  background: transparent;
  color: #4a5866;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease;
}

body.nm-workplace .nm-wp-view-switch button:hover {
  color: #1d2b39;
  background: #e4eaf0;
}

/* Selected state is carried by aria-pressed, not by class alone, so the
   accessible state and the visual state cannot drift apart. */
body.nm-workplace .nm-wp-view-switch button[aria-pressed="true"] {
  background: var(--nm-tenant-primary, var(--nm-tenant-accent, #0B5D8F));
  color: #fff;
  box-shadow: 0 1px 2px rgba(16, 32, 48, .18);
}

body.nm-workplace .nm-wp-view-switch button[aria-pressed="true"]:hover {
  background: var(--nm-tenant-primary, var(--nm-tenant-accent, #0B5D8F));
  color: #fff;
}

body.nm-workplace .nm-wp-view-switch button:focus-visible {
  outline: 2px solid var(--nm-tenant-primary, var(--nm-tenant-accent, #0B5D8F));
  outline-offset: 2px;
}

body.nm-workplace .nm-wp-view-switch-sep {
  display: block;
  width: 1px;
  height: 30px;
  background: #e1e7ec;
}

/* ---- First-use explainer ---- */

body.nm-workplace .nm-wp-view-switch-explainer {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 60;
  width: 264px;
  padding: 14px 16px 12px;
  border: 1px solid #d7dee5;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(16, 32, 48, .16);
  text-align: left;
}

body.nm-workplace .nm-wp-view-switch-explainer::before {
  content: "";
  position: absolute;
  top: -6px;
  right: 28px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-left: 1px solid #d7dee5;
  border-top: 1px solid #d7dee5;
  transform: rotate(45deg);
}

body.nm-workplace .nm-wp-view-switch-explainer p {
  margin: 0 0 10px;
  color: #33414f;
  font-size: 13px;
  line-height: 1.45;
}

body.nm-workplace .nm-wp-view-switch-explainer-dismiss {
  appearance: none;
  border: 0;
  padding: 7px 14px;
  border-radius: 6px;
  background: var(--nm-tenant-primary, var(--nm-tenant-accent, #0B5D8F));
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

body.nm-workplace .nm-wp-view-switch-explainer-dismiss:focus-visible {
  outline: 2px solid #1d2b39;
  outline-offset: 2px;
}

/* ---- Mobile ----
   The toggle stays visible down to 390px (design v1.1). It only tightens:
   the adjacent divider is dropped and the labels lose horizontal padding,
   while the 44px minimum touch target is preserved via min-height. */
@media (max-width: 900px) {
  body.nm-workplace .nm-wp-view-switch-sep { display: none; }

  body.nm-workplace .nm-wp-view-switch button {
    min-height: 44px;
    padding: 7px 12px;
    font-size: 12px;
  }

  body.nm-workplace .nm-wp-view-switch-explainer {
    width: calc(100vw - 24px);
    max-width: 264px;
  }
}

/* ---- Drawer mirror of the planning-view toggle (T6 acceptance) ----
   The sidebar is permanently visible on desktop, where the top-bar toggle
   is already in reach — showing both would be two controls for one setting.
   So the mirror is hidden above the drawer breakpoint and only revealed in
   the mobile drawer. It renders the same markup and binds to the same
   canonical persona state; only its visibility differs. */
body.nm-workplace .nm-wp-view-switch-drawer {
  display: none;
}

body.nm-workplace .nm-wp-view-switch-drawer .nm-wp-view-switch-sep {
  display: none;
}

@media (max-width: 900px) {
  body.nm-workplace .nm-wp-view-switch-drawer {
    display: block;
    margin: 4px 16px 12px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e1e7ec;
  }

  body.nm-workplace .nm-wp-view-switch-drawer-label {
    display: block;
    margin-bottom: 7px;
    color: #6b7885;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
  }

  body.nm-workplace .nm-wp-view-switch-drawer .nm-wp-view-switch {
    display: flex;
    width: 100%;
  }

  body.nm-workplace .nm-wp-view-switch-drawer .nm-wp-view-switch button {
    flex: 1 1 0;
  }
}

/* ---- r5.14: retiree wizard step 8 density (workplace retiree shell ONLY).
   The step-8 markup is SHARED consumer surface and stays untouched; every
   rule below is a retiree-shell-scoped override. Column/layout changes are
   media-gated so the consumer breakpoints (1180/920/640) govern narrow
   widths. Side cards "What happens next" and "Next destinations" duplicate
   sidebar doors on this shell (Jahn ruling 8/10) and are hidden HERE only;
   Plan snapshot stays; consumer keeps all three cards at original sizing. */
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-context{gap:10px;margin-bottom:10px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-context-item{min-height:38px;padding:0 11px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-head{margin-bottom:8px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-head h1{font-size:19px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-ready{min-height:52px;margin-bottom:10px;padding:8px 14px 8px 11px;}
/* Keep the workplace context cards intact, but do not squeeze them between
   the readiness message and status icon in the shared merged-banner DOM. */
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-ready {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-ready .wz8-context-merged {
  grid-column:1 / -1;
  grid-row:2;
  width:100%;
  margin:0;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-ready-check {
  grid-column:2;
  grid-row:1;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-context-copy {
  flex-wrap:wrap;
  padding-block:6px;
}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-ready-icon{width:23px;height:23px;font-size:12px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-planbar{margin:0 0 10px;}
/* r5.16 item 4: Save relocated into the plan bar. workplace-core.js
   renderPlanbar() moves #wz-save-plan-btn out of .wz8-actions into
   .wz8-planbar and stamps data-wp-planbar-save on the bar. These rules key
   off that attribute, so the consumer wizard — which never runs
   renderPlanbar — keeps its existing three-track bar untouched. */
body.nm-workplace #view-planner-wizard .wz8-planbar[data-wp-planbar-save]{grid-template-columns:auto minmax(210px,360px) auto 1fr;}
body.nm-workplace #view-planner-wizard .wz8-planbar[data-wp-planbar-save] .wz8-save{justify-self:start;}
@media (max-width:640px) {
  body.nm-workplace #view-planner-wizard .wz8-planbar[data-wp-planbar-save] {
    grid-template-columns:minmax(0,1fr);
  }
  body.nm-workplace #view-planner-wizard .wz8-planbar[data-wp-planbar-save] :is(.wz8-plan-input,.wz8-save,.wz8-save-status) {
    width:100%; max-width:100%; min-width:0; box-sizing:border-box;
  }
}
/* r5.16 item 5: raised from a 30px floor to match the 44px field metric. */
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-plan-input{min-height:44px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid{gap:10px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid .wz-review-card{min-height:100px;padding:9px 11px 8px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid .wz-review-head{min-height:24px;margin-bottom:6px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid .wz-review-head h3{font-size:12px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid .wz-review-head h3::before{width:20px;height:20px;flex-basis:20px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-sidecard{padding:10px 12px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-side-head{margin-bottom:8px;}
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-sidecard.wz8-next,
body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-sidecard.wz8-dest{display:none;}
@media (min-width: 1181px){
  body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  body.nm-workplace[data-wp-shell="retiree"] #view-planner-wizard .wz8-layout{grid-template-columns:minmax(0,1fr) 250px;gap:14px;}
}


/* NM-ACK-CSS-START r5.64 — privacy-ack overlay (deployment dev's post-r5.63
   note: the r5.55 overlay markup NEVER had CSS — it mounted as an unstyled
   static div at the bottom of body, invisible to users while the server
   correctly 403'd them). Mirrors the house modal recipe
   (.nm-wp-disclosures-modal, this file ~:981). EMPIRICAL CORRECTIONS to the
   field note: the sales popup overlay is z-index 30000 (workplace-popup CSS
   :5), NOT 8000 — the suggested 9500 would sit this legal blocker UNDER a
   marketing prompt, so the ack overlay takes 31000. (Adjacent latent
   finding, not fixed here: disclosures modal at 9999 also sits under the
   popup.) Error token is --color-error (app.css); --color-danger does not
   exist. Scoped body.nm-workplace like every workplace rule; the element
   itself only ever exists on workplace (core mounts it), so consumer
   nestmint.ai can never render it. No forced-priority overrides anywhere. */
body.nm-workplace ._nmWpAckOverlay{position:fixed;inset:0;top:0;right:0;bottom:0;left:0;z-index:31000;display:grid;place-items:center;padding:24px;background:rgba(6,24,42,.56);}
body.nm-workplace .nm-wp-ack-card{position:relative;width:min(480px,100%);max-width:480px;box-sizing:border-box;padding:28px;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.25);color:#17324d;}
body.nm-workplace .nm-wp-ack-card h2{margin:0 0 12px;font-size:22px;line-height:1.25;color:#102a43;}
body.nm-workplace .nm-wp-ack-card p{margin:0 0 16px;color:#3f566b;font-size:13.5px;line-height:1.65;}
body.nm-workplace .nm-wp-ack-card a{color:var(--wp-green-text,#04783c);font-weight:700;}
body.nm-workplace .nm-wp-ack-card #nm-wp-ack-btn{min-height:40px;width:100%;font-size:13px;}
body.nm-workplace .nm-wp-ack-err{margin:10px 0 0;color:var(--color-error);font-size:12px;font-weight:600;}
body.nm-workplace .nm-wp-ack-err[hidden]{display:none;}
/* NM-ACK-CSS-END */

/* r5.114 Deep Design Review D03/D12 — Workplace keeps its own step-first and
   Input Guide visual language; this only reduces avoidable mobile height and
   protects readable help text. */
@media (max-width:480px) {
  body.nm-workplace #view-planner-wizard .wz-shell { padding:12px 12px 24px; }
  body.nm-workplace #view-planner-wizard .wz-side { margin-bottom:10px; padding:10px 11px; }
  body.nm-workplace #view-planner-wizard .wz-side-head { gap:9px; margin-bottom:6px; }
  body.nm-workplace #view-planner-wizard .wz-tagline { font-size:10.5px; }
  body.nm-workplace #view-planner-wizard .wz-progress { margin-bottom:6px; }
  body.nm-workplace #view-planner-wizard .wz-side-nav { gap:4px; }
  body.nm-workplace #view-planner-wizard .wz-side-step { min-height:36px; padding:5px 6px; font-size:10px; }
  body.nm-workplace #view-planner-wizard .wz-step-head h1 { font-size:22px; margin-bottom:4px; }
  body.nm-workplace #view-planner-wizard .wz-step-head p { margin-bottom:10px; }
}
body.nm-workplace .nm-wp-ig-row small { font-size:12px; line-height:1.45; }
body.nm-workplace .nm-wp-ig-field :is(input,select) { font-size:14px; }
@media(max-width:480px){
  body.nm-workplace .nm-wp-ig-field :is(input,select){font-size:16px;min-height:44px}
}


/* r5.114 Deep Design Review D12 — employee Savings Input Guide keeps its
   existing workplace visual language while giving visible labels/help room. */
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row {
  /* Candidate 2 / R1: pair cards at the outer grid only; inside each card the
     label/help and control stack so real hit targets never leave the card. */
  grid-template-columns:minmax(0,1fr);
  gap:8px; min-height:110px;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row strong {
  font-size:13.5px; line-height:1.3;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row small {
  font-size:12px; line-height:1.45; min-height:0;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-field :is(input,select) {
  height:44px; font-size:14px; min-width:0;
}
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-field { width:100%; min-width:0; }
body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-field :is(input,select) { width:100%; max-width:100%; box-sizing:border-box; }
@media(max-width:900px){
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row {
    grid-template-columns:1fr; gap:8px; min-height:0; padding:14px 16px;
  }
}
@media(max-width:480px){
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-field :is(input,select) {
    font-size:16px; min-height:44px;
  }
}

/* r5.114 D12 acceptance — employee guide retains its workplace styling but
   stacks generated cards before the label/help lane becomes cramped. */
@media (max-width: 900px) {
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-fields {
    grid-template-columns:1fr;
  }
  body.nm-workplace[data-wp-shell="employee"] #view-input-guide .nm-wp-ig-row:nth-child(odd) {
    border-right:0;
  }
}

/* r5.114 Candidate 6 — Workplace-owned design-review rules live in the
   canonical workplace stylesheet. Presentation only; no control behavior. */
body.nm-workplace #view-planner-wizard .wz4-card :is(input,select,textarea),
body.nm-workplace #view-planner-wizard .wz5-card :is(input[type="number"],input[type="text"],input[type="date"],select,textarea) { min-height:40px; font-size:14px; }
body.nm-workplace #view-planner-wizard :is(.wz4-card-head p,.wz4-notes p,.wz4-info,.wz5-card-sub,.wz5-phase small,.wz5-person-line>small,.wz5-med-note,.wz5-irmaa-note) { font-size:12px; line-height:1.45; }
body.nm-workplace #view-planner-wizard :is(.wz5-money,.wz5-pct,.wz5-prem-row .wz-prefix,.wz5-magi-row .wz-prefix) { min-height:40px; }
body.nm-workplace #view-planner-wizard :is(.wz5-prem-row .wz-prefix input,.wz5-magi-row .wz-prefix input) { min-height:40px; font-size:14px; }
body.nm-workplace #view-planner-wizard .wz5-prem-label { font-size:12px; line-height:1.3; }
body.nm-workplace #view-planner-wizard .wz5-prem-label small { display:block; margin-top:2px; font-size:11px; font-weight:600; }
body.nm-workplace #view-planner-wizard .wz3-pension-row > input,
body.nm-workplace #view-planner-wizard .wz3-pension-row :is(.wz-prefix,.wz-suffix) > input { font-size:14px; }
body.nm-workplace .planning-tool-context-note { border-left-color:var(--wp-green); background:var(--wp-green-soft); color:#4f6477; }
@media (max-width:760px) {
 body.nm-workplace #view-planner-wizard :is(.wz3-literal,.wz4-card,.wz5-card) :is(input[type="number"],input[type="text"],input[type="date"],select,textarea) { min-height:44px; font-size:16px; }
 body.nm-workplace #view-planner-wizard :is(.wz4-card-head p,.wz4-notes p,.wz4-info,.wz5-card-sub,.wz5-phase small,.wz5-person-line>small,.wz5-med-note,.wz5-irmaa-note) { font-size:12px; }
}
/* Candidate 6 repair: use the optional panel's available width at every
   viewport. The 180px lane protects amounts plus currency/native controls;
   it yields two columns in the 510px panel and one when space is tighter. */
body.nm-workplace #view-planner-wizard .wz3-second-grid {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));
}
