/* V2 presentation; ?ux=classic remains the current-navigation escape hatch. */
/* Four-page beta. The :has boundary disappears on navigation to Ledger.
   No global theme mutation, financial logic, or Ledger component changes. */
.np-root:has(.rb-page) {
  --bg:#f6f6f0; --panel:#fffefa; --panel-2:#eff2e8; --sidebar:#1a3430;
  --text:#253b33; --text-2:#61705e; --muted:#6b7665; --border:#dfe4d8;
  --accent:#b64d32; --accent-soft:#f9e9e0; --on-accent:#fff;
  --c-green:#39664b; --c-red:#b23b34; --warn:#976316; --grid:#e1e7dc;
  --shadow:0 2px 12px #1a343004; --focus:#a94830;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.np-root:has(.rb-page) .np-aside { --text:#e6eee2; --text-2:#c0d0bf; --muted:#a3b99f; --border:#35524a; --accent:#e7a286; --accent-soft:#29473e; }
.np-root:has(.rb-page) .np-nav-item { border-radius:7px; font-size:14px; }
.np-root:has(.rb-page) .np-nav-item.active { background:#f0f1e8; color:#253b33; }
.np-root:has(.rb-page) .np-nav-sec { color:#a8bca7; letter-spacing:.13em; }
.np-root:has(.rb-page) .np-topbar { background:var(--panel); }
.np-root:has(.rb-page) .np-main { padding:28px 34px !important; }
:is(html.dark,html[data-theme="dark"]) .np-root:has(.rb-page) {
  --bg:#14241f; --panel:#1c3028; --panel-2:#243a2e; --text:#f0f3e8;
  --text-2:#bbc9b3; --muted:#a5b69f; --border:#385041; --accent:#f0aa8e;
  --accent-soft:#45352a; --on-accent:#212f24; --grid:#3a5143; --c-green:#acd5ad; --warn:#e1bc7c;
}
.rb-page { color:var(--text); max-width:1440px; margin:0 auto; min-width:0; font-size:15px; line-height:1.5; }
.rb-page *, .rb-page *::before, .rb-page *::after { box-sizing:border-box; }
.rb-page button, .rb-page input, .rb-page select { font:inherit; }
.rb-page :is(button,a,input,select,summary):focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
.rb-page h2, .rb-page h3, .rb-page h4, .rb-page p { margin:0; }
.rb-page-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.rb-eyebrow { display:block; font-size:11px; letter-spacing:.14em; font-weight:650; color:var(--text-2); margin-bottom:8px; }
.rb-page-head h2 { font-size:clamp(26px,2.5vw,34px); font-weight:600; letter-spacing:-.045em; line-height:1.2; }
.rb-page-head p { color:var(--text-2); margin-top:8px; font-size:14px; }
.rb-actions { display:flex; flex-wrap:wrap; gap:10px; }
.rb-button { display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; min-height:44px; border:1px solid var(--border); border-radius:7px; background:var(--panel); color:var(--text); cursor:pointer; font-weight:600 !important; font-size:13px !important; }
.rb-button.primary { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
.rb-button:hover { box-shadow:0 2px 7px #1a343017; }
.rb-button:disabled { opacity:.65; cursor:wait; }
.rb-text-button { min-height:40px; padding:8px 0; border:0; background:none; color:var(--accent); font-weight:600 !important; font-size:13px !important; cursor:pointer; text-align:left; }
.rb-panel { padding:24px; border:1px solid var(--border); border-radius:12px; background:var(--panel); min-width:0; box-shadow:var(--shadow); }
.rb-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.rb-panel h3 { font-size:18px; line-height:1.35; font-weight:600; letter-spacing:-.025em; }
.rb-panel p { font-size:13px; color:var(--text-2); margin-top:6px; }
.rb-verdict { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:30px; align-items:center; padding:2px 0 26px; }
.rb-chip { display:inline-flex; align-items:center; font-size:12px; border-radius:5px; background:var(--panel-2); color:var(--text-2); padding:4px 9px; }
.rb-chip.positive { color:var(--c-green); }
.rb-chip.attention { color:var(--warn); }
.rb-verdict h3 { font-size:clamp(23px,2.1vw,29px); letter-spacing:-.035em; font-weight:550; margin:10px 0; line-height:1.25; }
.rb-verdict p { max-width:640px; color:var(--text-2); font-size:14px; }
.rb-success { display:flex; align-items:center; border-left:1px solid var(--border); gap:18px; padding-left:28px; }
.rb-success > strong { font-size:64px; font-weight:500; letter-spacing:-.07em; color:var(--c-green); line-height:1; }
.rb-success > div { display:grid; gap:5px; max-width:155px; color:var(--text-2); font-size:12px; }
.rb-success b { font-size:13px; font-weight:600; }
.rb-notice { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; border:1px solid var(--warn); border-radius:8px; margin-bottom:16px; }
.rb-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:22px 0; margin-bottom:24px; border-block:1px solid var(--border); }
.rb-metric { padding:0 24px; border-right:1px solid var(--border); min-width:0; display:flex; flex-direction:column; gap:6px; }
.rb-metric:first-child { padding-left:0; }
.rb-metric:last-child { border:0; }
.rb-metric > span, .rb-evidence-readout span { font-size:13px; color:var(--text-2); }
.rb-metric strong { font-size:30px; line-height:1.2; letter-spacing:-.04em; font-weight:550; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.rb-metric small { font-size:12px; color:var(--text-2); }
.rb-overview-grid { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:20px; }
.rb-next { background:var(--panel-2); padding:22px; }
.rb-next article { border-top:1px solid var(--border); padding-top:16px; margin-top:16px; }
.rb-next h4 { font-size:14px; font-weight:600; }
.rb-next .rb-eyebrow { font-size:10px; }
.rb-projection { margin-top:20px; }
.rb-projection svg { display:block; width:100%; height:auto; overflow:visible; touch-action:pan-y; }
.rb-projection svg text { fill:var(--text-2); font-size:13px; font-family:inherit; }
.rb-gridline { stroke:var(--grid); stroke-width:1; }
.rb-projection-band { fill:#b9d0c1; opacity:.5; }
.rb-projection-median { fill:none; stroke:#db7354; stroke-width:3; stroke-linejoin:round; stroke-linecap:round; }
.rb-projection-retirement { stroke:var(--text-2); stroke-dasharray:5 5; opacity:.65; }
.rb-projection-cursor { stroke:var(--accent); stroke-dasharray:3 6; opacity:.45; }
.rb-projection-dot { fill:var(--accent); stroke:var(--panel); stroke-width:2; }
.rb-projection-inspector { display:flex; align-items:center; gap:16px; font-size:13px; margin:10px 0 16px; }
.rb-projection-inspector input { flex:1; width:100%; min-width:40px; accent-color:var(--accent); min-height:36px; }
.rb-projection-inspector label, .rb-projection-inspector output { flex-shrink:0; }
.rb-chart-key { display:flex; flex-wrap:wrap; align-items:center; gap:16px; padding-top:16px; border-top:1px solid var(--border); color:var(--text-2); font-size:12px; }
.rb-chart-key span { display:flex; gap:7px; align-items:center; }
.rb-chart-key i { width:9px; height:9px; border-radius:2px; background:#b9d0c1; }
.rb-chart-key i.median { background:#db7354; }
.rb-data { margin-top:14px; font-size:12px; color:var(--text-2); }
.rb-data summary { cursor:pointer; padding-block:7px; }
.rb-table-scroll { max-height:280px; overflow:auto; margin-top:8px; }
.rb-data table { border-collapse:collapse; width:100%; font-variant-numeric:tabular-nums; }
.rb-data caption { text-align:left; padding:8px 0; }
.rb-data th, .rb-data td { text-align:right; padding:10px; border-bottom:1px solid var(--border); white-space:nowrap; }
.rb-data th:first-child { text-align:left; }
.rb-bottom-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:20px; }
.rb-evidence-readout { display:flex; flex-wrap:wrap; gap:24px; margin-top:20px; }
.rb-evidence-readout > div { display:grid; gap:6px; }
.rb-evidence-readout strong { font-size:23px; font-weight:550; letter-spacing:-.03em; }
.rb-life-timeline { display:flex; overflow-x:auto; margin-top:28px; padding-bottom:12px; }
.rb-life-timeline > div { flex:1 0 110px; position:relative; display:grid; align-content:start; gap:6px; border-top:1px solid var(--border); padding:16px 10px 0 0; }
.rb-life-timeline i { position:absolute; top:-5px; width:9px; height:9px; border-radius:50%; background:#bacba9; }
.rb-life-timeline > div:first-child i { background:#db7354; }
.rb-life-timeline b { font-size:13px; font-weight:600; }
.rb-life-timeline span { font-size:12px; color:var(--text-2); }
.rb-page .rb-footnote { color:var(--text-2); font-size:12px; line-height:1.6; margin-top:16px; }
.rb-empty { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; min-height:240px; padding:28px; color:var(--text-2); }
@media (max-width:1200px) { .rb-overview-grid { grid-template-columns:minmax(0,1fr) 260px; } .rb-success { flex-direction:column; align-items:flex-start; } .rb-success > strong { font-size:52px; } }
@media (max-width:960px) { .rb-overview-grid,.rb-bottom-grid { grid-template-columns:1fr; } .rb-next { display:grid; grid-template-columns:repeat(3,1fr); gap:0 18px; } .rb-next > h3,.rb-next > p { grid-column:1/-1; } .rb-page-head { align-items:flex-start; flex-wrap:wrap; } .rb-metric { padding:0 14px; } .rb-metric strong { font-size:25px; } }
@media (max-width:600px) { .np-root:has(.rb-page) .np-main { padding:20px 16px !important; } .rb-page-head { gap:16px; } .rb-verdict { grid-template-columns:1fr; gap:20px; } .rb-success { flex-direction:row; border-left:0; padding:0; } .rb-metrics { grid-template-columns:1fr 1fr; row-gap:20px; } .rb-metric:nth-child(3) { padding-left:0; } .rb-metric:nth-child(2) { border:0; } .rb-panel { padding:18px; } .rb-next { display:block; } .rb-section-head { flex-wrap:wrap; } .rb-projection-inspector { flex-wrap:wrap; gap:8px; } .rb-projection-inspector input { order:3; flex-basis:100%; } .rb-projection-inspector output { margin-left:auto; } .rb-metric small { font-size:11px; } }
@media (prefers-reduced-motion:reduce) { .rb-page *, .rb-page *::before, .rb-page *::after { animation-duration:0s !important; transition-duration:0s !important; scroll-behavior:auto !important; } }

/* The original chart, controls and failure analysis remain mounted. The
   marker is owned by the beta wrapper; none of these rules reach Ledger. */
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-wrap { max-width:none; gap:22px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater:has(.cn-stage) {
  display:grid; grid-template-columns:210px minmax(0,1fr); gap:0;
  background:var(--panel); border:1px solid var(--border); border-radius:12px;
  box-shadow:0 12px 36px #132d2210;
}
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater::before { display:none; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance :is(.cn-theater-head,.cn-stage,.cn-timeline,.cn-legend) {
  --panel:#18352e; --panel-2:#1d3e34; --text:#f1f4e9; --text-2:#c2d1ba;
  --muted:#b0c4a5; --border:#365448; --grid:#3c594b; --accent:#efac88;
  --accent-soft:#334c3a; --coral:#eaa07e; --c-green:#aed19c; --c-teal:#b2d2b5;
  --c-red:#f0a497; --c-amber:#e0c490;
  grid-column:2; min-width:0; background:var(--panel); color:var(--text);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater-head { grid-row:1; padding:24px 24px 16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater-title { font-size:20px; letter-spacing:-.03em; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater-sub { margin-top:8px; font-size:13px; max-width:74ch; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-controls { gap:6px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-ctl { min-height:40px; border-radius:6px; padding:0 12px; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-stage { grid-row:2; grid-template-columns:minmax(0,1fr) 170px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-canvas { height:380px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-age { padding:20px 16px 16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-age > strong { font-size:36px; font-weight:550; letter-spacing:-.045em; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-row { flex-wrap:wrap; padding:10px 14px; gap:5px 10px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-row > :is(span,b) { font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-foot { font-size:11px; padding:12px 14px 16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-timeline { grid-row:3; padding:10px 24px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-timeline-range { height:36px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-legend { grid-row:4; padding:16px 24px; font-size:12px; gap:10px 18px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens {
  grid-column:1; grid-row:1/5; align-content:start; align-items:stretch;
  flex-direction:column; flex-wrap:nowrap; padding:24px 18px; gap:10px;
  background:var(--panel); border-top:0; border-right:1px solid var(--border);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-label { font-family:inherit; font-size:11px; letter-spacing:.12em; line-height:1.5; margin:0 0 12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-btn {
  flex:0 0 auto; justify-content:space-between; min-height:48px; height:auto;
  padding:12px; border-radius:7px; font-size:13px; text-align:left;
  color:var(--text); background:var(--panel); border:1px solid var(--border);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-btn[aria-pressed="true"] {
  background:var(--accent-soft); color:var(--text); border-color:var(--accent);
  box-shadow:inset 3px 0 var(--accent);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-adopt { min-height:48px; height:auto; padding:12px; border-radius:7px; font-size:12px; color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-note { margin-top:auto; padding-top:22px; flex:0 1 auto; color:var(--text-2); font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume { padding:8px; border-radius:10px; background:var(--panel); }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-cell { padding:14px 16px; min-width:130px; flex:1 1 auto; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-cell > span { font-size:12px; text-transform:none; letter-spacing:0; font-family:inherit; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-cell > strong { font-size:14px; font-family:inherit; font-weight:600; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-edit { padding:12px 16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-edit button { min-height:40px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-disclose { border-radius:10px; background:var(--panel); }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-disclose-toggle { padding:20px 24px; font-size:16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater[role="alert"] { display:block; }
@media (max-width:1100px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater:has(.cn-stage) { grid-template-columns:185px minmax(0,1fr); }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-stage { grid-template-columns:minmax(0,1fr); }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-left:0; border-top:1px solid var(--border); }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-age { grid-row:1/3; padding:14px; border-bottom:0; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-foot { grid-column:1/-1; padding:10px 14px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-canvas { height:340px; }
}
@media (max-width:720px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater:has(.cn-stage) { display:flex; flex-direction:column; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens { order:-1; flex-direction:row; flex-wrap:wrap; gap:8px; padding:18px; border-right:0; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-label { width:100%; margin-bottom:2px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-btn { min-height:44px; flex:1 1 120px; font-size:12px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-lens-note { flex-basis:100%; padding-top:8px; margin:0; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-theater-head { padding:20px 18px 16px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-canvas { height:300px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-canvas-cell { padding:0; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-timeline { padding:10px 14px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-legend { padding:14px; font-size:11px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-readout-age { grid-row:auto; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-chance .cn-assume-cell { min-width:115px; padding:12px; }
}

/* Portfolio presentation only; all account and holding controls stay canonical.
   Tables scroll internally rather than shrinking financial text below legibility. */
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-page { max-width:none; gap:22px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.pf-card,.beta-panel) {
  --beta-chart:#537960; --ledger-taxable:#587865; --ledger-deferred:#c17655;
  --ledger-roth:#a0b189; --ledger-neutral:#a9b4a4;
  border:1px solid var(--border); border-radius:12px; background:var(--panel); box-shadow:var(--shadow);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1 { gap:22px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1__overview { grid-template-columns:minmax(0,1fr) 305px; align-items:stretch; gap:22px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1__overview-rail { grid-template-rows:auto 1fr; gap:16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-portfolio-history { padding:26px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-value { color:var(--text); font-family:inherit; font-size:clamp(32px,3.6vw,46px); letter-spacing:-.05em; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-readout-label { font-size:14px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-readout { padding-bottom:24px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-context-number { padding-left:18px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-context-number strong { font-size:18px; font-family:inherit; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-segmented { padding:3px; border-radius:7px; background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-segmented button { min-width:36px; min-height:36px; border-radius:5px; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-segmented button[aria-pressed="true"] { color:var(--text); background:var(--panel); box-shadow:0 1px 4px #16382912; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-evidence { border-top:1px solid var(--border); padding-top:16px; margin-top:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.beta-evidence p,.beta-chart-help,.beta-observation) { font-size:12px; line-height:1.55; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-values { margin-top:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-completeness-strip { padding:18px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-allocation-card { --c-blue:#587865; --c-amber:#c17655; padding:20px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-card-heading h2 { font-size:18px; font-weight:600; letter-spacing:-.03em; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-allocation-bar { height:16px; border-radius:5px; gap:3px; overflow:hidden; margin:22px 0; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-allocation-list { display:grid; gap:0; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-allocation-list > div { padding:12px 0; border-bottom:1px solid var(--border); font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-allocation-list em { font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-note { font-size:12px; line-height:1.55; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today { border-radius:12px; background:var(--panel); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today__top { padding:16px 20px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today__main { padding:16px 20px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today__block { padding:16px 20px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today__foot { padding:12px 20px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-today :is(button,select) { min-height:40px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-workspace { grid-template-columns:290px minmax(0,1fr); gap:22px; align-items:start; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-card { padding:0; overflow:visible; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-card > .pf-card-heading { padding:20px; border-bottom:1px solid var(--border); gap:12px; flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-nav { padding:12px 10px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-group-label { font-family:inherit; font-size:11px; color:var(--text-2); letter-spacing:.07em; padding:18px 10px 9px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-row { min-height:54px; border-radius:7px; padding-left:10px; padding-block:12px; font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-wrap { border-radius:7px; margin-top:4px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-wrap.selected { background:var(--panel-2); box-shadow:inset 3px 0 var(--accent); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-row strong { font-size:13px; font-family:inherit; font-variant-numeric:tabular-nums; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-row.pf-all { color:var(--text); background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-edit { font-size:11px; color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-header { padding:22px; gap:18px; align-items:flex-start; flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-header h2 { font-size:20px; letter-spacing:-.025em; font-weight:600; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-header p { margin-top:5px; font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-actions { gap:8px; flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.pf-button,.pf-small-button) { min-height:40px; border-radius:6px; font-family:inherit; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-filter { max-width:100%; min-height:40px; border-radius:6px; font-size:14px; background:var(--panel); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-scroll { overflow-x:auto; max-width:100%; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table { min-width:1060px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.pf-table-head,.pf-table-row) { grid-template-columns:86px minmax(150px,1.3fr) minmax(165px,1.3fr) 70px 100px 88px 110px 108px 145px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-head { background:var(--panel-2); min-height:44px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-th { font-family:inherit; font-size:11px; text-transform:uppercase; letter-spacing:.055em; color:var(--text-2); min-height:40px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-row { min-height:88px; padding-block:14px; align-items:center; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-row:hover { background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-row :is(.mono,.pf-cell-button) { font-family:inherit; font-size:14px; font-variant-numeric:tabular-nums; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-row-actions { gap:4px; flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-row-actions > button { min-height:36px; font-size:11px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-footer { padding:18px 22px; gap:12px; flex-wrap:wrap; font-size:13px; background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.pf-account-editor,.pf-new-account,.pf-cash-editor) { background:var(--panel-2); border-radius:8px; margin:12px; padding:16px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio :is(.pf-account-editor,.pf-new-account,.pf-cash-editor) :is(input,select,button) { min-height:44px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-editor input[type="checkbox"] { min-height:20px; }
html[data-ro-ux="v2-beta"] .np-root:has(.rb-portfolio) .pf-header-actions :is(button,a) { border-radius:6px; min-height:40px; }
html[data-ro-ux="v2-beta"] .np-root:has(.rb-portfolio) .pf-page-actions-context { color:var(--text-2); }
@container portfolio (max-width:950px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-workspace { grid-template-columns:1fr; }
}
@media (max-width:960px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1__overview { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1__overview-rail { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-workspace { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
}
@media (max-width:600px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .beta-portfolio-history { padding:18px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-phase1__overview-rail { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-account-nav { display:block; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-header { padding:18px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-holdings-actions { width:100%; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-filter { width:100%; flex-basis:100%; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-portfolio .pf-table-footer { padding:16px 18px; }
}

/* Scoped refresh: canonical signed-outflow and FX calculations are untouched. */
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses > div:last-child { max-width:none!important; gap:22px!important; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses :is(.beta-panel,.exp-register-pane,.exp-detail-panel) {
  --beta-chart:#627d64; --ledger-taxable:#537a63; --ledger-roth:#95aa7e; --ledger-deferred:#c37a56; --ledger-neutral:#a5ad9b;
  border-radius:12px; border:1px solid var(--border); box-shadow:none; background:var(--panel);
}
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-analysis-grid { grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr); gap:22px; align-items:start; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses :is(.beta-spending,.beta-composition) { padding:24px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-value { font-family:inherit; font-size:clamp(32px,3.5vw,46px); font-weight:550; letter-spacing:-.045em; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-readout-label { font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-context-number strong { font-family:inherit; font-size:22px; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-month-picker { display:flex; gap:4px; padding:5px; border-radius:8px; background:var(--panel-2); margin-top:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-month-picker button { flex:1; min-width:0; min-height:40px; border-radius:5px; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-month-picker button[aria-pressed="true"] { background:var(--panel); color:var(--text); box-shadow:0 1px 5px #132d2214; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-panel-top h2 { font-size:20px; font-weight:550; letter-spacing:-.03em; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-composition-summary { margin-block:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-composition-summary > div strong { font-family:inherit; font-size:26px; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-category { min-height:44px; border-radius:6px; }
@media(min-width:1101px) {
  /* Let the spending chart determine the shared row height. Long category
     lists scroll inside the right card instead of stretching both charts. */
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-composition { contain:size; align-self:stretch; min-height:0; }
  .rb-expenses .beta-composition > :not(.beta-category-list) { flex-shrink:0; }
  .rb-expenses .beta-category-list { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; }
}
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-category :is(strong,small) { font-family:inherit; font-variant-numeric:tabular-nums; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses :is(.beta-footnote,.beta-chart-help,.beta-observation) { font-size:12px; line-height:1.6; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-workspace { grid-template-columns:minmax(0,1fr) 340px; gap:22px; align-items:start; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-workspace:not(:has(.exp-detail-panel.is-open)) { grid-template-columns:1fr; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-panel:not(.is-open) { display:none; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-pane { padding:24px!important; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-table { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-grid { grid-template-columns:130px minmax(165px,2fr) minmax(118px,1fr) 115px 105px 34px; min-width:765px; gap:14px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-head { padding:14px 10px!important; background:var(--panel-2); border-radius:6px; font-family:inherit!important; font-size:11px!important; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row { min-height:64px; padding:12px 10px; border-radius:5px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row.is-oneoff:not(.is-split) { opacity:1; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row.is-oneoff:not(.is-split) .exp-register-payee::after { content:'One-off'; color:var(--text-2); font-size:10px; border:1px solid var(--border); padding:2px 4px; border-radius:4px; white-space:nowrap; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses :is(.exp-register-date,.exp-register-amount,.exp-register-base) { font-family:inherit; font-variant-numeric:tabular-nums; font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-payee { font-size:14px; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-category-chip { font-size:12px; border-radius:5px; padding:6px 8px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-panel { top:12px; max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-header { padding:18px 20px; background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-body { padding:18px 20px; overscroll-behavior:contain; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-actions { flex-shrink:0; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-field :is(input,select) { min-height:44px; font-family:inherit; font-size:14px; border-radius:6px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-button { min-height:44px; border-radius:6px; font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-field > span { font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-addbar > div { border-radius:12px!important; background:var(--panel-2)!important; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-addbar :is(input,select) { min-height:44px; border-radius:6px!important; font-size:14px!important; }
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) :is(.exp-header-action,.exp-period-toggle,.exp-period-arrow) { min-height:40px; border-radius:6px; font-family:inherit; }
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-header-action-meta { font-size:11px; font-family:inherit; }
@media(max-width:1100px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-analysis-grid { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-workspace { grid-template-columns:minmax(0,1fr) 300px; }
}
@media(max-width:820px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-workspace { grid-template-columns:1fr; }
  /* Keep the mobile editor at the selected row's viewport, not above a long
     register. Only its form body scrolls; Save and Cancel remain reachable. */
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-panel.is-open {
    position:fixed; z-index:90; inset:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));
    max-height:calc(100vh - 20px); max-height:calc(100dvh - 20px); box-shadow:0 16px 60px #132d2240;
  }
}
@media(max-width:600px) {
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses :is(.beta-spending,.beta-composition) { padding:18px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-pane { padding:16px!important; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .beta-month-picker button { font-size:11px; padding-inline:5px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-addbar :is(input,select) { font-size:16px!important; }
}

/* Monthly observations are discrete, with a genuine zero baseline. */
.rb-expenses .rb-expense-bars { min-width:0; margin-top:20px; }
.rb-expenses .rb-expense-bars svg { display:block; width:100%; touch-action:pan-y; }
.rb-expenses .rb-expense-bars [role="slider"]:focus-visible { outline:3px solid var(--accent); outline-offset:4px; border-radius:6px; }
.rb-expenses .rb-spending-bar { fill:#9db3a0; }
.rb-expenses .rb-spending-bar.selected { fill:#d56d4d; }
.rb-expenses .rb-spending-zero { stroke:#9db3a0; stroke-width:2; }
.rb-expenses .rb-spending-zero.selected { stroke:#d56d4d; }
.rb-expenses .rb-month-active { fill:var(--accent); font-weight:650; }
.rb-expenses .beta-spending { align-self:start; }
.rb-expenses .beta-composition-summary { gap:14px; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-base { display:block!important; }
html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-close { min-width:44px; min-height:44px; }
@media(max-width:600px) {
  /* Cards keep the payee, original amount and converted amount visible together. */
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row {
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"date action" "payee amount" "category base";
    min-width:0; gap:10px 12px; padding:16px 8px;
  }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-head {
    position:absolute; width:1px; height:1px; min-width:0; overflow:hidden;
    clip-path:inset(50%); padding:0!important; white-space:nowrap;
  }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-date { grid-area:date; overflow:visible; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-payee { grid-area:payee; flex-wrap:wrap; overflow:visible; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-payee > span:first-child { white-space:normal; overflow-wrap:anywhere; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-amount { grid-area:amount; overflow:visible; font-weight:600; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row > .exp-category-chip { grid-area:category; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-base { grid-area:base; overflow:visible; font-size:12px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-base::before { content:'Base '; font-weight:400; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-register-row-action { grid-area:action; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-field :is(input,select) { font-size:16px; }
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-form-grid { gap:12px; }
}

/* Keep the period controls together instead of allowing an entire screen of
   wrapped header buttons on a phone. All secondary actions remain scrollable. */
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-page-actions {
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:8px 12px;
}
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-header-actions {
  display:flex!important; min-width:0; flex-wrap:nowrap; overflow-x:auto;
  overscroll-behavior-x:contain; padding:3px; gap:8px;
}
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-header-actions > * { flex:0 0 auto; }
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-page-actions-context {
  display:flex!important; grid-column:1 / -1; margin-left:0; justify-content:flex-start; flex-wrap:nowrap;
}
html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-period-label { display:inline; }
html[data-ro-ux="v2-beta"] .rb-expenses .exp-register-head [role="columnheader"][tabindex] { min-height:30px; }
html[data-ro-ux="v2-beta"] .rb-expenses .exp-register-head [role="columnheader"]:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
html[data-ro-ux="v2-beta"] .rb-expenses .exp-quick-add-form button { font-family:inherit; }
html[data-ro-ux="v2-beta"] .rb-expenses .exp-quick-add-form button:disabled { opacity:.5; cursor:not-allowed; }
@media(max-width:820px) {
  /* Retain the canonical mobile sheet rather than reordering it above rows.
     Header and actions stay fixed; only .exp-detail-body scrolls. */
  html[data-ro-ux="v2-beta"] .rb-page.rb-expenses .exp-detail-panel.is-open {
    position:fixed; z-index:100; top:max(8px,env(safe-area-inset-top));
    right:max(8px,env(safe-area-inset-right)); bottom:max(8px,env(safe-area-inset-bottom));
    left:max(8px,env(safe-area-inset-left)); width:auto; height:auto;
    max-height:calc(100vh - 16px); max-height:calc(100dvh - 16px);
    box-shadow:0 0 0 100vmax #18342bcc;
  }
  html[data-ro-ux="v2-beta"] .rb-expenses .exp-detail-field :is(input,select) { font-size:16px; }
  html[data-ro-ux="v2-beta"] .rb-expenses .exp-detail-header h2 { max-width:calc(100vw - 115px); }
  html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-header-action-meta { display:none; }
  html[data-ro-ux="v2-beta"] .np-root:has(.rb-expenses) .exp-header-count { display:none; }
}

@media(max-width:600px) {
  html[data-ro-ux="v2-beta"] .rb-expenses .exp-register-head:focus-within { position:static; width:auto; height:auto; min-width:600px; overflow:visible; clip-path:none; padding:8px!important; }
}

/* Shared palette for the approved refresh, including portalled dialogs and SVGs.
   COLOR ONLY: Ledger inherits these tokens without any geometry, font, motion,
   visibility, ordering or interaction change. Classic remains untouched. */
html[data-ro-ux-refresh="v2-beta"],
html[data-ro-ux-refresh="v2-beta"] .np-root {
  --bg:#f8f5ef; --panel:#fffdfa; --panel-2:#f5eee6; --sidebar:#fbf8f2;
  --text:#17283a; --text-2:#6c6a66; --muted:#6c6a66; --border:#e7ddd2;
  --accent:#b3492e; --accent-soft:#f5e3d9; --on-accent:#ffffff;
  --primary:#b3492e; --on-primary:#ffffff; --coral:#c66a4e; --coral-ink:#a8422b;
  --c-green:#39664b; --c-red:#b23b34; --warn:#936014; --grid:#ece4db;
  --hover:#f3e8df; --focus:#b3492e;
  --c-blue:#6d8297; --c-violet:#80748c; --c-amber:#9a7442;
  --c-teal:#728d95; --c-orange:#b96a4e; --c-orange-ink:#9f4c34;
  --ledger-taxable:#6d8297; --ledger-income:#778da0; --ledger-deferred:#a67650;
  --ledger-illiquid:#9b8667; --ledger-roth:#80748c; --ledger-benefit:#728d95;
  --ledger-expense:#b3492e; --ledger-tax:#9d6655;
  --ledger-neutral:#817b72; --ledger-total:#17283a;
}
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]),
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]) .np-root {
  --bg:#14241f; --panel:#1c3028; --panel-2:#243a2e; --sidebar:#12241f;
  --text:#f0f3e8; --text-2:#bbc9b3; --muted:#a5b69f; --border:#385041;
  --accent:#f0aa8e; --accent-soft:#45352a; --on-accent:#212f24;
  --primary:#f0aa8e; --on-primary:#212f24; --coral:#ef9b7b; --coral-ink:#f0aa8e;
  --c-green:#acd5ad; --c-red:#f0a19b; --warn:#e1bc7c; --grid:#3a5143;
  --hover:#2c4436; --focus:#f0aa8e;
  --c-blue:#a2c4ad; --c-violet:#c2abd2; --c-amber:#e1bc7c;
  --c-teal:#92c6bb; --c-orange:#e9a383; --c-orange-ink:#f0b69b;
  --ledger-taxable:#a2c4ad; --ledger-income:#b4cfa4; --ledger-deferred:#e1b27e;
  --ledger-illiquid:#d6c18f; --ledger-roth:#92c6bb; --ledger-benefit:#b1d8cd;
  --ledger-expense:#f0aa8e; --ledger-tax:#e7b5a3;
  --ledger-neutral:#a5b69f; --ledger-total:#f0f3e8;
}
html[data-ro-ux-refresh="v2-beta"] .np-aside {
  --text:#17283a; --text-2:#6f6d69; --muted:#6f6d69; --border:#e7ddd2;
  --accent:#b64d32; --accent-soft:#f5e3d9; --hover:#f3e8df;
}
html[data-ro-ux-refresh="v2-beta"] .np-nav-item.active { background-color:#f5e5dc; color:#9f412d; }
html[data-ro-ux-refresh="v2-beta"] .np-nav-sec { color:#938980; }
/* Explicit foregrounds stay legible in source-controlled outlined controls. */
html[data-ro-ux-refresh="v2-beta"] .np-aside :is(a,button) { color:var(--text); }
/* A monetary value is not a warning. Preserve the existing link decoration,
   missing-value treatment and favorable/unfavorable delta colors. */
html[data-ro-ux-refresh="v2-beta"] .np-ledger-app .ledger-cell-button:not(.ledger-missing-value) { color:var(--text); }

/* App-wide workspace polish. Every rule excludes Ledger AND the four approved
   refresh pages. No controllers, calculation models or headers are replaced. */

/* Shared density, typography and content alignment. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) { --beta-space:22px; --beta-pad:24px; --beta-radius:12px; --workspace-control-radius:7px; --workspace-heading:600 20px/1.35 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; --workspace-control:600 13px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-size:15px; line-height:1.5; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main { padding:28px 34px !important; gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main > :not(.np-product-disclaimer) { max-width:1440px !important; width:100%; min-width:0; margin-inline:auto !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main > .np-product-disclaimer { max-width:1440px; width:100%; margin-inline:auto; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) :is(h1,h2,h3,h4,button,input,select,textarea,summary,label,output,th,td) { font-family:inherit !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) :is(.np-topbar-title,.np-card-title,.goals-title,.goals-detail-title,.pulse-section-heading h2,.ro-acs-title,.close-heading-copy h2) { font-weight:600 !important; letter-spacing:-.03em; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-nav-item { border-radius:7px; font-size:14px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-nav-sec { letter-spacing:.13em; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-topbar { padding:12px 34px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-page-action-bar { padding-inline:34px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) :is(.beta-context-copy,.beta-context-switch a) { font-family:inherit; font-size:13px; line-height:1.5; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .beta-context-section { font-family:inherit; font-size:11px; letter-spacing:.12em; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .beta-context-badge { font-family:inherit; background:var(--panel-2); }

/* Calm panels and restrained hierarchy, rather than a second card design per page. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.np-card,.goals-panel,.goals-form,.pulse-item,.pulse-panel,.pulse-review-body,.wil-main,.wil-side,.wil-saved,.care-panel,.eq-panel,.ye-moves-panel,.ye-year-summary,.tax-payment-panel,.tax-projection-chart,.tax-projection-detail,.tax-headroom-card,.tax-buckets-card,.compare-empty,.fp-section,.ia-list,.dc-card,.dc-panel,.pf-trade-card,.pf-trade-net-card) { border:1px solid var(--border); border-radius:12px !important; background:var(--panel); box-shadow:none !important; min-width:0; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.np-card,.pulse-panel,.eq-panel,.care-panel,.fp-section,.pf-trade-card,.pf-trade-net-card) { padding:24px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.np-card-title,.goals-panel-title,.pulse-panel h3,.eq-panel h3,.care-controls h3,.pf-card-heading h2) { font-family:inherit !important; font-size:18px !important; font-weight:600; letter-spacing:-.025em; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.pulse-item-summary,.goals-empty-copy,.compare-intro,.care-setup p,.fp-section-copy) { font-size:14px; line-height:1.6; max-width:75ch; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.pulse-footnote,.ro-acs-footnote,.care-footnote,.dc-copy,.ia-guidance,.fp-field-hint) { font-size:12px; line-height:1.6; }

/* Native inputs, keyboard focus and genuinely touch-sized controls. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(button:not(.np-tip-trigger):not(.care-toggle):not([role="switch"]),summary) { min-height:44px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(button:not(.np-tip-trigger):not(.care-toggle):not([role="switch"]),select) { font-size:13px !important; border-radius:7px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]):not([type="file"]),select,textarea) { min-height:44px; max-width:100%; font-size:14px !important; border-radius:7px !important; background-color:var(--panel); color:var(--text); border-color:var(--border); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main textarea { resize:vertical; min-height:100px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(input[type="checkbox"],input[type="radio"],input[type="range"]) { accent-color:var(--accent); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.np-btn-primary,.tax-primary-button,.goals-button-primary,.pulse-primary-button,.ye-button.primary,.wil-btn.primary,.care-save,.compare-button.primary,.eq-btn-primary,.v2-btn-primary,.dc-btn-primary,.fp-button.primary,.pf-button.primary) { background:var(--accent) !important; border-color:var(--accent) !important; color:var(--on-accent) !important; }

/* Segmented controls and exact-value tables keep their original event handlers. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.tax-view-tabs,.wil-tabs,.dc-tabs) { display:flex; flex-wrap:wrap; gap:4px; padding:5px; border-radius:8px; background:var(--panel-2); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.tax-view-tabs,.wil-tabs,.dc-tabs) > button { border-radius:5px; padding-inline:14px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.tax-view-tab[aria-selected="true"],.tax-view-tabs__list button.is-active,.wil-tab.active,.dc-tab.active) { background:var(--panel); color:var(--text); box-shadow:0 1px 5px #132d2214; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.ro-acs-header,.ro-acs-toolbar,.ro-acs-readout) { gap:16px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main .ro-acs-title { font-size:20px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main .ro-acs-readout { padding:18px 0; margin-top:16px; border-block:1px solid var(--border); background:none; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main .ro-acs-readout-value { font-family:inherit; font-size:18px; font-weight:550; font-variant-numeric:tabular-nums; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.compare-scroll,.goals-table-wrap,.pf-trade-table-scroll,.ia-table,.dc-schedule,.ro-acs-table-wrap:not(.ro-acs-visually-hidden)) { max-width:100%; overflow:auto; overscroll-behavior:contain; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.goals-table,.ro-acs-table,.pf-trade-table) :is(th,td) { padding:12px; font-size:13px; font-variant-numeric:tabular-nums; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.goals-table,.ro-acs-table) thead th { background:var(--panel-2); }

/* Review: payment hierarchy, readable comparisons and the month-end checklist. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-payment-hero { padding:24px; border-radius:12px; background:var(--panel-2); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-payment-hero__amount { font-family:inherit; font-weight:550; letter-spacing:-.045em; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-headroom-grid { gap:16px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-lifetime-bottom-row { gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="yearend"] .ye-workspace { grid-template-columns:minmax(0,1fr) 300px; gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="yearend"] :is(.ye-move-content h2,.ye-combined h2) { font-size:17px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="yearend"] .ye-compare-row > span { font-size:12px; padding:11px 6px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="yearend"] .ye-year-summary { padding:20px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="close"] .close-heading { margin-bottom:8px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="close"] .close-review-row { padding-block:16px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="close"] .close-heading-progress { border:1px solid var(--border); background:var(--panel-2); padding:16px; border-radius:10px; }

/* Plan: sensible rails, uncluttered forms and stronger section readouts. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="goals"] .goals-hub .np-grid-12 { grid-template-columns:minmax(0,1fr) 300px; gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="goals"] :is(.goals-hub .np-card-title-row,.goals-settings-card > h2,.goals-form-header) { border-radius:11px 11px 0 0; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="pulse"] .pulse-overview-columns { grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr); gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="pulse"] .pulse-item { padding:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="whatif"] .wil-layout { grid-template-columns:minmax(0,1fr) 300px; gap:22px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="whatif"] .wil-catalog-card { border-radius:8px; padding:18px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="whatif"] .wil-side { background:var(--panel-2); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .care-layout { gap:22px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .care-controls { background:var(--panel-2) !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .care-plan-action { border-radius:10px !important; padding:18px 22px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-workspace { grid-template-columns:220px minmax(0,1fr); gap:24px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-rail { padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--panel-2); align-self:start; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-rail-list button { min-height:46px; padding:10px 12px; font-size:13px; border-radius:7px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-rail-list button.active { background:var(--panel); box-shadow:0 1px 5px #132d2214; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-form-grid { gap:20px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-save-bar { gap:12px; padding:16px; background:var(--panel-2); border-radius:10px; }

/* Secondary tools and account settings inherit the same visual system. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="settings"] .np-main > main > div { border-radius:12px !important; box-shadow:none !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="settings"] .np-main section { padding:24px !important; scroll-margin-top:20px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="settings"] .np-main section h2 { font-size:17px !important; font-weight:600; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="activity"] .np-main > div > section { border-radius:12px !important; padding:24px !important; box-shadow:none !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="activity"] .np-main > div > section > div:first-child { font-size:18px !important; font-weight:600 !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="equity"] :is(.eq-wizard,.eq-decision-card) { border-radius:12px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .ia-row { border-radius:10px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="deferred-comp"] .dc-grid { gap:20px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="trade-scenario"] .pf-trade-layout { grid-template-columns:minmax(0,1fr) 300px; gap:22px; }

/* Stack at tablet widths; preserve internal scrolling rather than shrinking data. */
@media(max-width:1100px) {
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="yearend"] .ye-workspace { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="goals"] .goals-hub .np-grid-12 { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="pulse"] .pulse-overview-columns { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="whatif"] .wil-layout { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="trade-scenario"] .pf-trade-layout { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:700px) {
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) { --beta-pad:18px; --beta-space:18px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main { padding:20px 16px !important; gap:18px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-topbar { padding:10px 16px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-page-action-bar { padding-inline:16px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(.np-card,.pulse-panel,.eq-panel,.care-panel,.fp-section,.pf-trade-card,.pf-trade-net-card) { padding:18px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,textarea) { font-size:16px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-workspace { display:flex; flex-direction:column; gap:18px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-rail { width:100%; margin:0; position:static; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-rail-list { display:flex; flex-wrap:wrap; width:100%; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-form-grid { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="profile"] .fp-save-bar { flex-wrap:wrap; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="activity"] .np-main > div > section { padding:18px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="activity"] .np-main > div > section > div > div { display:flex !important; flex-wrap:wrap; min-width:0; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="settings"] .np-main section { padding:18px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="settings"] .np-main section > header { flex-basis:100% !important; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="close"] :is(.close-audit-grid,.close-cash-grid) { grid-template-columns:minmax(0,1fr) !important; }
}
@media(prefers-reduced-motion:reduce) {
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page)) .np-main :is(button,a,input,select,details) { scroll-behavior:auto !important; transition:none !important; }
}

/* Browser-found narrow-width cases. Contain the record, not the whole page:
   financial tables retain every column and scroll inside their own wrapper. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="equity"] .eq-records-tabs { flex-wrap:wrap; min-width:0; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="equity"] .eq-ladder-disclosure-body { overflow-wrap:anywhere; }
/* Absolute screen-reader captions need a local containing block, otherwise
   a wide scrolled table can extend the document even while its text is clipped. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="goals"] :is(.goals-view,.goals-table-wrap) { position:relative; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .alternative-assets-view { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] :is(.ia-cols,.ia-kpis,.ia-list,.ia-add,.ia-table) { min-width:0; max-width:100%; }
@media(max-width:700px) {
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .ia-kpis { grid-template-columns:minmax(0,1fr); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .ia-kpi + .ia-kpi { border-left:0; border-top:1px solid var(--border); }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .ia-add { flex-basis:100%; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="alternatives"] .ia-fields { grid-template-columns:minmax(0,1fr); }
}
/* Size the tax controls to their content area, not a fixed three-card row.
   Four applicable controls fit one wide row; narrow screens stack naturally. */
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-headroom-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); grid-auto-flow:row; grid-auto-columns:auto; padding:16px; }
html[data-ro-ux-refresh="v2-beta"] .np-root:not(.np-ledger-app):not(:has(.rb-page))[data-workspace="tax"] .tax-headroom-card__value { font-family:inherit; font-weight:600; font-variant-numeric:tabular-nums; }

/* Compact authenticated page chrome. Ledger keeps the canonical account header. */
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page:not(.np-ledger-app) .np-main { padding-top:14px !important; }
html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header {
  width:100%; max-width:1440px; margin:0 auto 14px !important; display:grid; gap:10px; min-width:0;
}
.np-compact-page #compact-page-title {
  margin:0; min-width:0; font-size:clamp(27px,2.35vw,34px) !important; font-weight:600; letter-spacing:-.045em; line-height:1.15;
}
.np-compact-page .compact-header-actions {
  display:flex; align-items:center; justify-content:space-between; gap:14px; min-width:0;
}
.np-compact-page .compact-header-tools {
  margin-left:auto; display:flex; align-items:center; justify-content:flex-end; gap:8px; min-width:0;
}
.np-compact-page .compact-header-tools > :first-child { min-width:0; }
.np-compact-page .compact-header-rail-action { flex:none; }
.np-compact-page .compact-header-menu {
  display:none; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:1px solid var(--border); border-radius:7px; background:var(--panel); color:var(--text); align-items:center; justify-content:center; cursor:pointer;
}
/* The refreshed four pages already own a verbose adapter preamble. Replace it
   with this single title; the original route controller still owns all actions. */
.np-compact-page .rb-page > .rb-page-head { display:none; }
.np-compact-page .beta-context-line { display:none; }
.np-compact-page .beta-page-context { gap:0; margin:0; padding:0; border:0; }
.np-compact-page .beta-context-actions { margin:0; padding:0; }
.np-compact-page .compact-header-tools :is(.pf-page-actions,.exp-page-actions) { padding:0; border:0; background:none; }
.np-compact-page .compact-header-tools :is(.pf-page-actions,.exp-page-actions,.exp-header-actions,.exp-page-actions-context) { gap:7px; }

/* Expenses: title + working controls stay on one desktop row. The verbose
   tracked-vs-plan sentence remains in the Baseline panel/title, not the toolbar. */
.np-compact-page .compact-header-tools .exp-page-actions { display:flex; flex-wrap:nowrap; align-items:center; justify-content:flex-end; gap:7px; min-width:0; }
.np-compact-page .compact-header-tools .exp-header-actions { display:flex; flex-wrap:nowrap; align-items:center; gap:7px; min-width:0; padding:0; overflow:visible; }
.np-compact-page .compact-header-tools .exp-header-count { display:none; }
.np-compact-page .compact-header-tools .exp-page-actions-context { display:flex; align-items:center; margin-left:0; flex-shrink:0; }
.np-compact-page .compact-header-tools :is(.exp-header-action,.exp-period-arrow,.exp-period-toggle) {
  min-height:40px; font-size:11.5px !important; padding-inline:8px; border-radius:7px; white-space:nowrap;
}
.np-compact-page .compact-header-tools .exp-header-action-meta { display:none !important; }
.np-compact-page .compact-header-currency { flex:0 0 96px; min-width:0; font-size:10px; }
.np-compact-page .compact-header-currency > span { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.np-compact-page .compact-header-currency select { width:96px; max-width:100% !important; min-height:30px; font-size:11.5px !important; margin-top:0 !important; background:var(--panel); }
.np-compact-page .compact-header-currency small { display:none; }
.np-compact-page .compact-header-more { position:relative; flex-shrink:0; font-size:11.5px; }
.np-compact-page .compact-header-more > summary { display:flex; align-items:center; gap:7px; min-height:40px; padding:0 9px; border:1px solid var(--border); border-radius:7px; cursor:pointer; list-style:none; background:var(--panel); }
.np-compact-page .compact-header-more > summary::-webkit-details-marker { display:none; }
.np-compact-page .compact-header-more > summary::after { content:'⌄'; }
.np-compact-page .compact-header-more-panel { position:absolute; top:calc(100% + 6px); right:0; z-index:25; display:grid; gap:6px; min-width:180px; padding:8px; border:1px solid var(--border); border-radius:9px; background:var(--panel); box-shadow:0 8px 25px #16342b20; }
.np-compact-page .compact-header-more-panel .exp-header-action { width:100%; justify-content:flex-start; }
.np-compact-page .compact-page-header :is(button,a,input,select,summary):focus-visible { outline:3px solid var(--focus); outline-offset:3px; }

@media (max-width:1180px) {
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header { gap:10px; }
  .np-compact-page .compact-header-tools { flex:1 0 100%; justify-content:flex-start; margin-left:0; }
  .np-compact-page .compact-header-actions { align-items:flex-start; flex-wrap:wrap; }
  .np-compact-page .compact-header-tools .exp-page-actions { flex-wrap:wrap; justify-content:flex-start; }
  .np-compact-page .compact-header-tools .exp-header-actions { flex-wrap:wrap; }
}
@media (max-width:960px) { .np-compact-page .compact-header-menu { display:flex; } }
@media (max-width:760px) {
  html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page:not(.np-ledger-app) .np-main { padding-top:12px !important; }
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header { margin-bottom:12px !important; gap:10px; }
  .np-compact-page #compact-page-title { font-size:clamp(25px,7.3vw,31px) !important; }
  .np-compact-page .compact-header-actions { gap:10px; }
  .np-compact-page .compact-header-tools { flex-basis:100%; overflow:visible; }
  .np-compact-page .compact-header-tools .exp-page-actions-context { margin-left:0; }
  .np-compact-page .compact-header-currency select { width:104px; font-size:16px !important; min-height:44px; }
}
/* The Expenses refresh previously used a two-row grid for narrow safety. This
   later compact-shell rule intentionally wins on desktop so the title and all
   working controls share one row; the 1180px breakpoint restores wrapping. */
html[data-ro-ux-refresh="v2-beta"][data-ro-ux="v2-beta"] .np-root.np-compact-page:has(.rb-expenses) .compact-header-tools .exp-page-actions { display:flex !important; width:auto !important; grid-template-columns:none !important; flex:0 1 auto; flex-wrap:nowrap !important; gap:7px !important; }
html[data-ro-ux-refresh="v2-beta"][data-ro-ux="v2-beta"] .np-root.np-compact-page:has(.rb-expenses) .compact-header-tools .exp-header-actions { display:flex !important; flex-wrap:nowrap !important; overflow:visible !important; padding:0 !important; gap:7px !important; }
html[data-ro-ux-refresh="v2-beta"][data-ro-ux="v2-beta"] .np-root.np-compact-page:has(.rb-expenses) .compact-header-tools .exp-page-actions-context { display:flex !important; grid-column:auto !important; margin-left:0 !important; justify-content:flex-start; flex-wrap:nowrap !important; }
@media (max-width:1180px) {
  html[data-ro-ux-refresh="v2-beta"][data-ro-ux="v2-beta"] .np-root.np-compact-page:has(.rb-expenses) .compact-header-tools .exp-page-actions,
  html[data-ro-ux-refresh="v2-beta"][data-ro-ux="v2-beta"] .np-root.np-compact-page:has(.rb-expenses) .compact-header-tools .exp-header-actions { flex-wrap:wrap !important; }
}

/* Backdoor Roth is launched from the compact page header, not a body widget. */
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .care-roth > section:has(> button[aria-controls="backdoor-roth-worksheet"]) {
  display:none;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .care-roth > section:has(#backdoor-roth-worksheet) {
  display:block;
  position:fixed;
  z-index:90;
  top:72px;
  right:24px;
  width:min(960px,calc(100vw - 48px));
  max-height:calc(100dvh - 96px);
  overflow:auto;
  border-radius:12px !important;
  box-shadow:0 18px 54px rgba(24,31,39,.22) !important;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .care-roth > section:has(#backdoor-roth-worksheet) > button[aria-controls="backdoor-roth-worksheet"] {
  display:none;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .care-roth > section:has(#backdoor-roth-worksheet) #backdoor-roth-worksheet {
  border-top:0 !important;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .compact-page-header--expenses .expense-insights__compact-launcher .pf-insights-button {
  background:var(--accent) !important;
  border-color:var(--accent) !important;
  color:var(--on-accent) !important;
}
@media(max-width:760px) {
  html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .care-roth > section:has(#backdoor-roth-worksheet) {
    top:64px;
    right:8px;
    width:calc(100vw - 16px);
    max-height:calc(100dvh - 76px);
  }
}

/* Mockup-approved authenticated workspace presentation. Ledger is explicitly excluded. */
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page:not(.np-ledger-app) {
  --mock-radius:10px;
  --mock-gap:14px;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page:not(.np-ledger-app) .np-main {
  padding-top:14px !important;
}
/* Keep the navigation physically stable while route-specific stylesheets load. */
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .np-aside {
  font-family:'Space Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .np-aside .np-nav-item {
  min-height:38px; line-height:20px; font-size:14px !important; border-radius:10px !important;
  transform:none !important; transition:background-color .15s ease,color .15s ease,border-color .15s ease !important;
}
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .np-aside .np-nav-item:hover,
html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page .np-aside .np-nav-item:active { transform:none !important; }

/* One 52px page bar: short title, contextual controls, one primary action, optional More. */
html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header {
  width:100%; max-width:1440px; min-height:52px; margin:0 auto 12px !important;
  display:flex !important; align-items:center; justify-content:space-between; gap:16px; min-width:0;
  padding-bottom:10px; border-bottom:1px solid var(--border);
}
.np-compact-page .compact-page-header__main { display:flex; align-items:center; gap:10px; min-width:0; }
.np-compact-page #compact-page-title {
  margin:0; font-size:20px !important; line-height:1.2; letter-spacing:-.025em; font-weight:700; color:var(--text);
}
.np-compact-page .compact-page-header__tools { margin-left:auto; display:flex; align-items:center; justify-content:flex-end; gap:8px; min-width:0; }
.np-compact-page .compact-page-header__tools > :is(button,a),
.np-compact-page .compact-page-header__tools > .compact-header-more > summary {
  min-height:38px; border-radius:7px; font-size:12.5px; font-weight:650; white-space:nowrap;
}
.np-compact-page .compact-page-header__tools > :is(button,a):not(.np-btn-primary):not(.primary):not(.beta-primary):not(.mockup-header-primary) {
  background:var(--panel); border:1px solid var(--border); color:var(--text); padding:0 12px;
}
.np-compact-page .compact-page-header__tools > :is(.np-btn-primary,.primary,.beta-primary,.mockup-header-primary),
.np-compact-page .compact-page-header__tools > button[class*="primary"] {
  background:var(--primary,#17283a); color:var(--on-primary,#fff); border:1px solid var(--primary,#17283a); padding:0 13px;
}
.np-compact-page .compact-header-more { position:relative; flex:none; }
.np-compact-page .compact-header-more > summary {
  list-style:none; cursor:pointer; display:flex; align-items:center; gap:7px; padding:0 11px;
  border:1px solid var(--border); background:var(--panel); color:var(--text);
}
.np-compact-page .compact-header-more > summary::-webkit-details-marker { display:none; }
.np-compact-page .compact-header-more > summary::after { content:'⌄'; font-size:11px; color:var(--text-2); }
.np-compact-page .compact-header-more-panel {
  position:absolute; z-index:80; top:calc(100% + 7px); right:0; min-width:210px; max-width:min(320px,calc(100vw - 28px));
  display:grid; gap:5px; padding:8px; border:1px solid var(--border); border-radius:10px;
  background:var(--panel); box-shadow:0 14px 36px #16342b20;
  max-height:calc(100dvh - 150px); overflow-y:auto; overscroll-behavior:contain;
}
.np-compact-page .compact-header-more-panel :is(button,a,summary) {
  width:100%; min-height:38px; justify-content:flex-start; text-align:left; border-radius:7px !important;
  padding:7px 10px !important; background:transparent !important; color:var(--text) !important;
  border:0 !important; box-shadow:none !important; text-decoration:none;
}
.np-compact-page .compact-header-more-panel :is(button,a,summary):hover { background:var(--panel-2) !important; }
.np-compact-page .compact-header-more-panel .exp-header-action-meta { display:none !important; }
.np-compact-page .compact-header-menu { display:none; width:40px; height:40px; min-width:40px; padding:0; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:8px; background:var(--panel); color:var(--text); }

/* Overview has no visible page heading at all; the content starts immediately. */
html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header--dashboard { min-height:0; height:0; margin:0 !important; padding:0; border:0; overflow:visible; }
.np-compact-page .compact-page-header--dashboard #compact-page-title { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.np-compact-page .compact-page-header--dashboard .compact-page-header__main { height:0; }
.np-compact-page .rb-overview > .rb-page-head { display:none !important; }
.np-compact-page .rb-home-summary {
  display:grid; grid-template-columns:minmax(220px,1.2fr) repeat(3,minmax(120px,.7fr));
  border:1px solid var(--border); border-radius:var(--mock-radius); background:var(--panel); margin-bottom:var(--mock-gap); overflow:hidden;
}
.np-compact-page .rb-home-status,.np-compact-page .rb-home-stat { min-width:0; padding:17px 20px; }
.np-compact-page .rb-home-stat { border-left:1px solid var(--border); display:grid; gap:3px; }
.np-compact-page .rb-home-status { display:grid; grid-template-columns:auto 1fr; column-gap:10px; align-content:center; }
.np-compact-page .rb-home-status-dot { width:13px; height:13px; margin-top:3px; border-radius:50%; background:var(--c-green); }
.np-compact-page .rb-home-status.attention .rb-home-status-dot { background:var(--warn); }
.np-compact-page .rb-home-status.quiet .rb-home-status-dot { background:var(--muted); }
.np-compact-page .rb-home-status strong { font-size:17px; line-height:1.2; }
.np-compact-page .rb-home-status small,.np-compact-page .rb-home-stat span { color:var(--text-2); font-size:11.5px; }
.np-compact-page .rb-home-status small { grid-column:2; margin-top:3px; }
.np-compact-page .rb-home-stat strong { font-size:19px; line-height:1.15; letter-spacing:-.03em; font-weight:650; }
.np-compact-page .rb-home-projection { margin-bottom:var(--mock-gap); padding:20px !important; }
.np-compact-page .rb-home-takeaways { margin-bottom:var(--mock-gap); padding:18px 20px !important; }
.np-compact-page .rb-home-takeaways > h3 { margin:0 0 13px; font-size:14px; }
.np-compact-page .rb-home-takeaway-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.np-compact-page .rb-home-takeaway { padding:4px 18px; border-left:1px solid var(--border); }
.np-compact-page .rb-home-takeaway:first-child { border-left:0; padding-left:0; }
.np-compact-page .rb-home-takeaway:last-child { padding-right:0; }
.np-compact-page .rb-home-takeaway h4 { font-size:13px; margin:3px 0; }
.np-compact-page .rb-home-takeaway p { font-size:11.5px; margin:0; color:var(--text-2); }
.np-compact-page .rb-home-takeaway .rb-text-button { min-height:30px; font-size:11.5px !important; padding:3px 0; }
.np-compact-page .rb-overview .rb-bottom-grid { margin-top:0; }

/* Chance: a calm one-row header above the existing forest theater. */
.np-compact-page:has(.rb-chance) .compact-page-header { margin-bottom:10px !important; }
.np-compact-page:has(.rb-chance) .compact-page-header__tools > button { background:var(--primary,#17283a); color:var(--on-primary,#fff); border-color:var(--primary,#17283a); }
.np-compact-page:has(.rb-chance) .np-topbar-stats,.np-compact-page:has(.rb-chance) .rb-metrics { display:none !important; }

/* Portfolio: mockup-style top cards and dense tabular workspace. */
.np-compact-page:has(.rb-portfolio) .pf-page { gap:12px; }
.np-compact-page:has(.rb-portfolio) :is(.pf-card,.pf-overview-card,.pf-history-card) { border-radius:var(--mock-radius) !important; box-shadow:none !important; }
.np-compact-page:has(.rb-portfolio) .pf-phase1-overview { gap:12px; }
.np-compact-page:has(.rb-portfolio) .pf-workspace { gap:12px; }
.np-compact-page:has(.rb-portfolio) .pf-card-heading { margin-bottom:10px; }
.np-compact-page:has(.rb-portfolio) .pf-header-actions { display:none !important; }
.np-compact-page:has(.rb-portfolio) .pf-page-actions-context { display:none !important; }

/* Expenses: ONE header row. Month + category live beside the title; only Add + More stay on the right. */
.np-compact-page .compact-page-header__tools--expenses { flex:1; justify-content:flex-end; }
.np-compact-page .compact-page-header__tools--expenses .exp-page-actions-context {
  order:-3; display:flex !important; align-items:center; flex-wrap:nowrap !important; gap:4px !important; margin:0 auto 0 0 !important;
  padding:0 !important; border:0 !important; background:none !important;
}
.np-compact-page .compact-page-header__tools--expenses .exp-header-count { display:none !important; }
.np-compact-page .compact-page-header__tools--expenses :is(.exp-period-arrow,.exp-period-toggle) { min-height:34px !important; padding:0 9px !important; font-size:11.5px !important; border-radius:7px !important; }
.np-compact-page .compact-page-header__tools--expenses .exp-period-label { min-width:70px; text-align:center; font-size:12px; font-weight:650; white-space:nowrap; }
.np-compact-page .compact-expense-category { order:-2; position:relative; display:flex; align-items:center; }
.np-compact-page .compact-expense-category > span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.np-compact-page .compact-expense-category select {
  height:34px; min-width:126px; max-width:154px; padding:0 28px 0 10px; border:1px solid var(--border); border-radius:7px;
  background:var(--panel); color:var(--text); font:600 11.5px inherit;
}
.np-compact-page .compact-page-header__tools--expenses > .exp-header-action { order:1; min-height:38px !important; background:var(--primary,#17283a) !important; color:var(--on-primary,#fff) !important; border-color:var(--primary,#17283a) !important; }
.np-compact-page .compact-page-header__tools--expenses > .compact-header-more { order:2; }
.np-compact-page .compact-header-more--expenses .compact-header-currency { padding:7px 10px; border-top:1px solid var(--border); margin-top:4px; }
.np-compact-page .compact-header-more--expenses .compact-header-currency > span { display:block; font-size:10px; color:var(--text-2); }
.np-compact-page .compact-header-more--expenses .compact-header-currency select { width:100%; margin-top:4px; }
/* The category is now in the header; don't make users choose it twice. */
.np-compact-page:has(.rb-expenses) .expense-register-toolbar__field:has(select[aria-label="Category"]) { display:none !important; }
.np-compact-page:has(.rb-expenses) .beta-analysis-grid { gap:12px; }
.np-compact-page:has(.rb-expenses) .exp-workspace { gap:12px; }
.np-compact-page:has(.rb-expenses) :is(.beta-panel,.exp-register-pane,.exp-detail-panel) { border-radius:var(--mock-radius) !important; box-shadow:none !important; }

/* Goals: list-first layout with restrained progress rows like the approved mockup. */
.np-root[data-workspace="goals"] .goals-view-shell { max-width:none; }
.np-root[data-workspace="goals"] :is(.goals-card,.goals-panel,.goals-state) { border-radius:var(--mock-radius) !important; box-shadow:none !important; }
.np-root[data-workspace="goals"] .goals-page-actions { display:contents; }
.np-root[data-workspace="goals"] .goals-list { gap:8px; }
.np-root[data-workspace="goals"] .goals-row { border-radius:9px; }

/* What If: tabs/list dominate; the explanatory banner becomes a slim disclosure. */
.np-root[data-workspace="whatif"] .wil-page { gap:12px; }
.np-root[data-workspace="whatif"] .wil-notice { padding:9px 12px; border-radius:8px; }
.np-root[data-workspace="whatif"] .wil-layout { gap:12px; }
.np-root[data-workspace="whatif"] :is(.wil-main,.wil-side,.wil-saved) { border-radius:var(--mock-radius); box-shadow:none; }
.np-root[data-workspace="whatif"] .wil-tabs { min-height:42px; }
.np-root[data-workspace="whatif"] .wil-tab { padding-block:10px; }

/* Tax: compact tabs and summary cards, no second page-level action strip. */
.np-root[data-workspace="tax"] .tax-workspace { max-width:none !important; margin:0 !important; gap:12px !important; }
.np-root[data-workspace="tax"] .tax-view-tabs { min-height:42px; margin:0; padding:0 2px; }
.np-root[data-workspace="tax"] :is(.tax-control,.tax-worksheet,.tax-panel,.analysis-shell) { border-radius:var(--mock-radius) !important; box-shadow:none !important; }

/* Destination: tabs immediately follow the one-row header; content cards stay editorial and compact. */
.np-root[data-workspace="country"] .care-country-tabs { margin-top:0 !important; min-height:42px; }
.np-root[data-workspace="country"] .care-country-tab { padding:10px 12px !important; font-size:12.5px !important; }
.np-root[data-workspace="country"] .care-panel { border-radius:var(--mock-radius) !important; box-shadow:none !important; }
.np-root[data-workspace="country"] .care-country-picker { gap:6px !important; }
.np-root[data-workspace="country"] .care-country-option { padding:7px 10px !important; font-size:12px !important; }

/* All other non-Ledger workspaces inherit the same compact card language. */
.np-root.np-compact-page:not(.np-ledger-app) [data-workspace],
.np-root.np-compact-page:not(.np-ledger-app) .np-main > :not(.compact-page-header) { min-width:0; }
.np-root.np-compact-page:not(.np-ledger-app) :is(.np-card,.care-panel,.tax-panel,.roth-card,.hc-card,.ye-card) { box-shadow:none; }

@media (max-width:1180px) {
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header { align-items:flex-start; flex-wrap:wrap; }
  .np-compact-page .compact-page-header__tools { flex:1 0 100%; justify-content:flex-start; margin-left:0; }
  .np-compact-page .compact-page-header__tools--expenses { flex-wrap:wrap; }
  .np-compact-page .compact-header-more-panel { left:0; right:auto; }
}
@media(max-width:1100px) {
  .np-compact-page .rb-home-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .np-compact-page .rb-home-stat { border-top:1px solid var(--border); }
}
@media (min-width:821px) and (max-width:1180px) {
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header--expenses { flex-wrap:nowrap; align-items:center; gap:8px; }
  .np-compact-page .compact-page-header__tools--expenses { flex:1 1 auto; flex-wrap:nowrap; gap:5px; }
  .np-compact-page .compact-page-header__tools--expenses .compact-header-more-panel { right:0; left:auto; }
  .np-compact-page .compact-expense-category select { min-width:112px; max-width:126px; }
}
@media (max-width:960px) { .np-compact-page .compact-header-menu { display:flex; } }
@media (min-width:761px) and (max-width:960px) {
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header--dashboard { min-height:42px; height:42px; padding:0; margin-bottom:5px !important; border:0; }
  .np-compact-page .compact-page-header--dashboard .compact-page-header__main { height:42px; }
}
@media (max-width:760px) {
  html[data-ro-ux-refresh="v2-beta"] .np-root.np-compact-page:not(.np-ledger-app) .np-main { padding-top:10px !important; }
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header { min-height:46px; margin-bottom:10px !important; padding-bottom:8px; }
  .np-compact-page #compact-page-title { font-size:19px !important; }
  html[data-ro-ux-refresh="v2-beta"] .np-compact-page .compact-page-header--dashboard { min-height:42px; height:42px; padding:0; margin-bottom:5px !important; border:0; }
  .np-compact-page .compact-page-header--dashboard .compact-page-header__main { height:42px; }
  .np-compact-page .compact-page-header__tools--expenses .exp-page-actions-context { flex:1 1 auto; margin:0 !important; }
  .np-compact-page .compact-expense-category select { min-width:120px; font-size:16px; height:40px; }
  .np-compact-page .compact-page-header__tools--expenses :is(.exp-period-arrow,.exp-period-toggle) { min-height:40px !important; }
  .np-compact-page .rb-home-summary { grid-template-columns:1fr 1fr; }
  .np-compact-page .rb-home-status { grid-column:1 / -1; border-bottom:1px solid var(--border); }
  .np-compact-page .rb-home-stat { border-left:0; border-top:1px solid var(--border); }
  .np-compact-page .rb-home-stat:nth-of-type(even) { border-left:1px solid var(--border); }
  .np-compact-page .rb-home-takeaway-grid { grid-template-columns:1fr; }
  .np-compact-page .rb-home-takeaway,.np-compact-page .rb-home-takeaway:first-child,.np-compact-page .rb-home-takeaway:last-child { border-left:0; border-top:1px solid var(--border); padding:12px 0; }
  .np-compact-page .rb-home-takeaway:first-child { border-top:0; }
}

/* Destination visual dossier — presentation only. Canonical country data and handlers remain in CountryView. */
html[data-ro-ux="v2-beta"] .np-root:has(.care-destination) .np-main { background:var(--bg,#f8f5ef); }
html[data-ro-ux="v2-beta"] .np-compact-page .compact-page-header.destination-visual-header { display:block!important; max-width:1320px; margin:0 auto; padding:20px 24px 0; border:0; background:transparent; }
html[data-ro-ux="v2-beta"] .destination-visual-header__top { min-height:54px; display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
html[data-ro-ux="v2-beta"] .destination-visual-header__identity { min-width:0; display:flex; align-items:center; gap:11px; }
html[data-ro-ux="v2-beta"] .destination-visual-header__identity h1 { margin:0; color:var(--text); font-size:clamp(24px,3vw,36px); line-height:1; font-weight:560; letter-spacing:-.045em; }
html[data-ro-ux="v2-beta"] .destination-visual-header__eyebrow { color:var(--text-2); font-size:11px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; white-space:nowrap; }
html[data-ro-ux="v2-beta"] .destination-visual-header__actions { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery { position:relative; display:grid; grid-template-columns:minmax(0,1.72fr) minmax(250px,.72fr); gap:10px; height:clamp(270px,31vw,390px); overflow:hidden; border-radius:18px; background:#17283a; box-shadow:0 14px 38px rgba(23,40,58,.12); }
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery.is-generic { grid-template-columns:1fr; }
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery figure { position:relative; min-width:0; min-height:0; margin:0; overflow:hidden; background:#1e354d; }
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery img { width:100%; height:100%; display:block; object-fit:cover; transform:scale(1.002); }
html[data-ro-ux="v2-beta"] .destination-visual-header__lead::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(23,40,58,.82) 0%,rgba(23,40,58,.42) 43%,rgba(23,40,58,.06) 72%),linear-gradient(0deg,rgba(23,40,58,.46),transparent 48%); pointer-events:none; }
html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption { position:absolute; z-index:2; left:clamp(22px,3.5vw,48px); bottom:clamp(22px,3.5vw,42px); width:min(540px,72%); color:#fffaf0; display:flex; flex-direction:column; gap:7px; }
html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption > span { font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; opacity:.78; }
html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption strong { font-size:clamp(25px,3.25vw,45px); line-height:1.02; font-weight:540; letter-spacing:-.045em; text-wrap:balance; }
html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption small { max-width:480px; color:rgba(255,250,240,.82); font-size:13px; line-height:1.5; }
html[data-ro-ux="v2-beta"] .destination-visual-header__stack { display:grid; grid-template-rows:1fr 1fr; gap:10px; min-height:0; }
html[data-ro-ux="v2-beta"] .destination-visual-header__stack figure::after { content:""; position:absolute; inset:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); pointer-events:none; }
html[data-ro-ux="v2-beta"] .destination-visual-header__meta { min-height:48px; display:flex; align-items:center; gap:12px; justify-content:space-between; padding:8px 2px 0; color:var(--text-2); }
html[data-ro-ux="v2-beta"] .destination-visual-header__meta > span:first-child { min-height:34px; border-color:transparent!important; background:transparent!important; padding-inline:0!important; }
html[data-ro-ux="v2-beta"] .destination-visual-header__hint { font-size:11.5px; color:var(--muted); white-space:nowrap; }
html[data-ro-ux="v2-beta"] .destination-hero-menu { display:none; }
html[data-ro-ux="v2-beta"] .care-page.care-destination { max-width:1320px!important; gap:14px!important; margin:0 auto!important; padding:0 24px 34px; }
html[data-ro-ux="v2-beta"] .care-destination > .care-panel:first-child { padding:14px 16px!important; border-radius:12px!important; border:1px solid var(--border)!important; background:var(--panel)!important; box-shadow:0 6px 24px #7b5c4510!important; }
html[data-ro-ux="v2-beta"] .care-destination > .care-panel:first-child > .care-section-title { margin:0 0 9px!important; color:var(--text)!important; font-size:11.5px!important; font-weight:700!important; letter-spacing:.1em; text-transform:uppercase; }
html[data-ro-ux="v2-beta"] .care-country-picker { flex-wrap:nowrap!important; gap:6px!important; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; padding-bottom:1px; }
html[data-ro-ux="v2-beta"] .care-country-picker::-webkit-scrollbar { display:none; }
html[data-ro-ux="v2-beta"] .care-country-option { min-height:38px; flex:0 0 auto; padding:7px 11px!important; border:1px solid var(--border)!important; border-radius:8px!important; background:var(--panel)!important; color:var(--text)!important; font-weight:550!important; box-shadow:none!important; transition:background .14s ease,border-color .14s ease,color .14s ease!important; }
html[data-ro-ux="v2-beta"] .care-country-option:not([aria-pressed="true"]):hover { background:var(--hover)!important; border-color:var(--border)!important; }
html[data-ro-ux="v2-beta"] .care-country-option[aria-pressed="true"] { background:var(--accent-soft)!important; border-color:var(--accent)!important; color:var(--coral-ink,#9f412d)!important; font-weight:700!important; }
html[data-ro-ux="v2-beta"] .care-country-tabs { position:relative; gap:4px!important; padding:5px!important; border:1px solid var(--border)!important; border-radius:10px; background:var(--panel-2); overflow-x:auto; scrollbar-width:none; }
html[data-ro-ux="v2-beta"] .care-country-tabs::-webkit-scrollbar { display:none; }
html[data-ro-ux="v2-beta"] .care-country-tab { min-height:38px; padding:7px 14px!important; border:0!important; border-radius:7px!important; white-space:nowrap; font-size:13px!important; font-weight:550!important; color:var(--text-2)!important; transition:background .14s ease,color .14s ease!important; }
html[data-ro-ux="v2-beta"] .care-country-tab:hover { color:var(--text)!important; background:color-mix(in srgb,var(--panel) 50%,transparent)!important; }
html[data-ro-ux="v2-beta"] .care-country-tab[aria-pressed="true"] { background:var(--panel)!important; color:var(--text)!important; font-weight:650!important; box-shadow:0 2px 8px #7b5c4510!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts { grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:10px!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts::before { content:"At a glance"; grid-column:1/-1; color:var(--text-2); font-size:11px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; margin:5px 0 0 2px; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact { position:relative; min-height:136px; padding:18px!important; border:1px solid var(--border)!important; border-radius:13px!important; box-shadow:0 6px 24px #7b5c4510!important; overflow:hidden; background:var(--panel)!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact::after { position:absolute; right:14px; top:13px; font-size:18px; opacity:.58; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(2) { background:color-mix(in srgb,var(--panel) 94%,#e7ddd2)!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(2)::after { content:"⌂"; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(3) { background:color-mix(in srgb,var(--accent-soft) 30%,var(--panel))!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(3)::after { content:"◎"; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(4) { background:color-mix(in srgb,var(--panel-2) 65%,var(--panel))!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(4)::after { content:"+"; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(5) { background:color-mix(in srgb,var(--grid) 55%,var(--panel))!important; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact:nth-child(5)::after { content:"↗"; }
html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact > div:nth-child(2) { font-family:inherit!important; font-size:clamp(22px,2.4vw,30px)!important; font-weight:560!important; letter-spacing:-.04em!important; }
html[data-ro-ux="v2-beta"] .care-destination > .care-destination-facts + .care-panel { position:relative; padding:17px 18px 17px 22px!important; border-radius:12px!important; box-shadow:0 6px 24px #7b5c4510!important; background:var(--panel)!important; overflow:hidden; }
html[data-ro-ux="v2-beta"] .care-destination > .care-destination-facts + .care-panel::before { content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--accent); }
html[data-ro-ux="v2-beta"] .care-destination .care-panel:has(.care-field) { padding:20px!important; border-radius:13px!important; box-shadow:none!important; background:var(--panel)!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-panel:has(.care-field) .care-section-title { font-size:18px!important; font-weight:560!important; letter-spacing:-.025em; }
html[data-ro-ux="v2-beta"] .care-destination .care-field label { font-size:11.5px!important; font-weight:600; }
html[data-ro-ux="v2-beta"] .care-destination .care-field :is(input,select) { min-height:44px; border-radius:7px!important; font-family:inherit!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth { padding:21px!important; border:1px solid var(--border)!important; border-radius:14px!important; background:var(--panel)!important; color:var(--text)!important; box-shadow:0 6px 24px #7b5c4510!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth :is(h2,h3,strong) { color:var(--text)!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth h2 { font-size:16px!important; font-weight:700!important; color:var(--text)!important; letter-spacing:-.02em; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth :is(div,span) { --text:#17283a; --text-2:#6f6d69; --muted:#827b73; --grid:#f5eee6; --panel:#fffdfa; --border:#e7ddd2; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth section[aria-labelledby="global-wealth-roles"] > div > div { border:1px solid var(--border)!important; background:var(--panel-2)!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth section[aria-labelledby="global-wealth-coverage"] [role="listitem"] { border:1px solid var(--border)!important; background:var(--panel)!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth button { background:var(--panel)!important; border:1px solid var(--border)!important; border-radius:10px!important; color:var(--text)!important; font-weight:600!important; transition:background .12s ease,border-color .12s ease!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-wealth button:hover { background:var(--hover)!important; border-color:var(--border)!important; }
html[data-ro-ux="v2-beta"]:is(.dark,[data-theme="dark"]) .care-destination .care-wealth :is(div,span) { --text:#f5eee8; --text-2:#c6bbb1; --muted:#a99f97; --grid:#2d2926; --panel:#24211f; --border:#463d37; }
html[data-ro-ux="v2-beta"]:is(.dark,[data-theme="dark"]) .care-destination .care-wealth :is(h2,h3,strong) { color:var(--text)!important; }
html[data-ro-ux="v2-beta"] .care-destination .care-panel { box-shadow:none!important; }
html[data-ro-ux="v2-beta"] .care-destination > div[style*="grid-template-columns:1fr 1fr"] { gap:10px!important; }
html[data-ro-ux="v2-beta"] .care-destination > div[style*="grid-template-columns:1fr 1fr"] > .care-panel { border-radius:13px!important; min-height:100%; }
html[data-ro-ux="v2-beta"] .care-destination .care-section-title { letter-spacing:-.01em; }
@media (max-width:1000px) {
  html[data-ro-ux="v2-beta"] .destination-visual-header__gallery { grid-template-columns:minmax(0,1.45fr) minmax(210px,.65fr); height:330px; }
  html[data-ro-ux="v2-beta"] .care-destination-facts { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:720px) {
  html[data-ro-ux="v2-beta"] .destination-visual-header { padding:10px 14px 0; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__top { min-height:46px; margin-bottom:8px; }
  html[data-ro-ux="v2-beta"] .destination-hero-menu { display:inline-flex; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__eyebrow { display:none; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__identity h1 { font-size:25px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__gallery { grid-template-columns:1fr; height:280px; border-radius:14px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__stack { display:none; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption { left:20px; bottom:20px; width:82%; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption strong { font-size:30px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption small { font-size:12px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__meta { align-items:flex-start; flex-direction:column; gap:2px; padding-top:6px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__hint { display:none; }
  html[data-ro-ux="v2-beta"] .care-page.care-destination { padding:0 14px 28px; }
  html[data-ro-ux="v2-beta"] .care-destination-facts { grid-template-columns:1fr 1fr!important; }
  html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact { min-height:118px; padding:15px!important; }
  html[data-ro-ux="v2-beta"] .care-destination > div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns:1fr!important; }
}
@media (max-width:430px) {
  html[data-ro-ux="v2-beta"] .destination-visual-header__gallery { height:250px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption strong { font-size:27px; }
  html[data-ro-ux="v2-beta"] .destination-visual-header__lead figcaption small { display:none; }
  html[data-ro-ux="v2-beta"] .care-destination-facts { grid-template-columns:1fr!important; }
  html[data-ro-ux="v2-beta"] .care-destination-facts .care-fact { min-height:104px; }
}
@media (prefers-reduced-motion:reduce) {
  html[data-ro-ux="v2-beta"] .destination-visual-header__gallery img,
  html[data-ro-ux="v2-beta"] .care-country-option,
  html[data-ro-ux="v2-beta"] .care-country-tab { transition:none!important; transform:none!important; }
}

/* Lightweight country-specific Destination hero artwork. Presentation only. */
html[data-ro-ux="v2-beta"] .destination-country-art {
  display:block;
  width:100%;
  height:100%;
  min-width:100%;
  min-height:100%;
  overflow:hidden;
}
html[data-ro-ux="v2-beta"] .destination-country-art use { pointer-events:none; }
@media (prefers-reduced-motion:reduce) {
  html[data-ro-ux="v2-beta"] .destination-country-art { transform:none!important; transition:none!important; }
}
/* Only the launcher is in the normal CSS closure; the guide reader is lazy. */
html[data-ro-ux="v2-beta"] .destination-visual-header__top:has(.destination-guides-entry) { flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .destination-guides-entry { min-width:0; max-width:100%; }
html[data-ro-ux="v2-beta"] .destination-guides-entry > button { min-height:44px; white-space:normal; }
html[data-ro-ux="v2-beta"] .destination-guides-entry > small { display:block; max-width:240px; color:var(--text-2); font-size:12px; }
@media(max-width:600px) {
  html[data-ro-ux="v2-beta"] .destination-visual-header__actions:has(.destination-guides-entry) { flex-basis:100%; justify-content:space-between; }
}

/* Exact approved destination artwork, cropped from the user-approved country board.
   Presentation only: no country assumptions, calculations, or handlers live here. */
html[data-ro-ux="v2-beta"] .destination-exact-art {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.004);
}

/* The board already contains its own country title, strapline and dark lower
   treatment. Do not layer the page's generic marketing caption on top of it. */
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery.is-exact-country-art .destination-visual-header__lead::after { background:none; }
html[data-ro-ux="v2-beta"] .destination-visual-header__gallery.is-exact-country-art .destination-visual-header__lead figcaption { display:none; }
@media (prefers-reduced-motion:reduce) {
  html[data-ro-ux="v2-beta"] .destination-exact-art { transform:none; }
}

/* Small, scoped refinements; no Ledger body/header or financial styles. */
html[data-ro-ux="v2-beta"] .care-roth .roth-chart-expat-note {
  display:block; max-width:68ch; color:var(--text-2); font-size:13px; line-height:1.55;
}
html[data-ro-ux="v2-beta"] .care-roth .roth-chart-expat-note strong { color:var(--text); }

/* Overview is a digest, not another Chance theater. The existing projection
   keeps its exact data table and controls; only its compact geometry changes. */
html[data-ro-ux="v2-beta"] .rb-overview--digest { --digest-gap:16px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-summary { margin-bottom:var(--digest-gap); }
html[data-ro-ux="v2-beta"] .rb-overview--digest :is(.rb-home-status,.rb-home-stat) { padding:14px 18px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-status strong { font-size:15px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-status small { line-height:1.5; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-digest-grid {
  display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);
  gap:var(--digest-gap); align-items:stretch; margin-bottom:var(--digest-gap);
}
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-projection {
  min-width:0; margin:0; padding:18px 20px!important; background:var(--panel);
}
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-section-head { align-items:center; gap:10px; margin-bottom:10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-section-head h3 { font-size:17px; line-height:1.35; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-section-head p { font-size:12px; margin-top:4px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-section-head > .rb-text-button { flex-shrink:0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-text-button { text-decoration:none; font-size:12px; min-height:34px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest a.rb-text-button { display:inline-flex; align-items:center; gap:4px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest a.rb-text-button:hover { text-decoration:underline; text-underline-offset:3px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest :is(a,button,summary):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact { margin-top:8px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact > svg { width:100%; height:auto; max-height:230px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-projection-inspector { margin:4px 0 8px; gap:10px; flex-wrap:wrap; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-projection-inspector input { min-width:65px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-chart-key { padding-top:9px; gap:8px 14px; font-size:11px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-data { margin-top:5px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-projection .rb-footnote { font-size:11px; line-height:1.55; margin-top:8px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-projection > .rb-empty { min-height:190px; padding:24px 10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-run-state { font-size:12px; color:var(--text-2); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-attention { min-width:0; padding:18px 20px; background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item { border-top:1px solid var(--border); padding:11px 0 8px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item-meta { display:flex; justify-content:space-between; gap:8px; font-size:10px; color:var(--text-2); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-state-tag { font-weight:600; color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item.is-planned .rb-digest-state-tag { color:var(--text-2); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item h4 { font-size:14px; font-weight:600; line-height:1.45; margin:5px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item-facts { display:flex; flex-wrap:wrap; gap:3px 14px; color:var(--text-2); font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item-facts b { color:var(--text); font-weight:600; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-source { display:block; font-size:10px; color:var(--text-2); margin-top:4px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-limit { color:var(--text-2); font-size:11px; line-height:1.55; margin:5px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-item-actions { display:flex; align-items:start; flex-wrap:wrap; gap:0 14px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence { min-width:0; color:var(--text-2); font-size:11px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence[open] { flex-basis:100%; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence summary { cursor:pointer; padding:9px 0; min-height:34px; width:fit-content; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence p { font-size:12px; line-height:1.6; margin-bottom:8px; overflow-wrap:anywhere; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence dl { margin:6px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence dl > div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 14px; padding:4px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-evidence dd { margin:0; font-weight:600; color:var(--text); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-toolbar { display:flex; align-items:center; gap:8px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-refresh { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; padding:0; border:1px solid var(--border); border-radius:6px; color:var(--accent); background:transparent; cursor:pointer; flex-shrink:0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-refresh:disabled { opacity:.45; cursor:wait; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-asof { display:block; color:var(--text-2); font-size:10px; margin-top:6px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-global-limits { margin-top:2px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-state { min-height:0; color:var(--text-2); font-size:13px; line-height:1.65; padding:12px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-state p { font-size:13px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--digest-gap); margin-bottom:var(--digest-gap); align-items:start; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid > .rb-panel { padding:18px 20px; min-width:0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid .rb-section-head { flex-wrap:wrap; gap:2px 10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar { list-style:none; margin:0; padding:0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar li { display:grid; gap:4px; border-top:1px solid var(--border); padding:10px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar time { font-size:11px; font-weight:600; color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar a { color:var(--text); font-size:13px; line-height:1.5; text-decoration:none; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar a:hover { text-decoration:underline; text-underline-offset:3px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-calendar small { color:var(--text-2); font-size:10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-close { font-size:12px; color:var(--text-2); margin:0 0 8px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes article { border-top:1px solid var(--border); padding:10px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes article > span { display:block; color:var(--text-2); font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes article > strong { display:block; font-size:24px; font-weight:550; letter-spacing:-.035em; color:var(--text); margin:4px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes article > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes b { font-size:12px; font-weight:600; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-digest-changes small { display:inline-block; color:var(--text-2); font-size:10px; line-height:1.6; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-milestones { list-style:none; padding:0; margin:8px 0 16px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-milestones li { position:relative; display:grid; grid-template-columns:8px 1fr auto; align-items:center; gap:10px; padding:10px 0; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-milestones li > span { width:7px; height:7px; border-radius:50%; background:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-milestones b { font-size:13px; font-weight:550; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-milestones small { color:var(--text-2); font-size:11px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-plan-detail { border-top:1px solid var(--border); padding-top:10px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:4px 10px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-plan-detail small { color:var(--text-2); font-size:11px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-areas { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px 18px; padding:10px 18px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-area { display:flex; justify-content:space-between; align-items:center; gap:10px; min-width:0; min-height:64px; padding:10px 6px; border:0; border-radius:7px; background:transparent; color:var(--text); text-align:left; font:inherit; cursor:pointer; transform:none!important; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-area:hover { background:var(--panel-2); }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-area strong { display:block; font-size:13px; font-weight:600; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-area small { display:block; color:var(--text-2); font-size:11px; margin-top:3px; }
html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-area i { color:var(--accent); font-size:16px; font-style:normal; }
@media(max-width:1100px) {
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-digest-grid { grid-template-columns:minmax(0,1fr) minmax(280px,.95fr); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-life { grid-column:1/-1; }
}
@media(max-width:860px) {
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-digest-grid { grid-template-columns:minmax(0,1fr); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-status { grid-column:1/-1; border-bottom:1px solid var(--border); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-stat { border-left:0; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-areas { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  html[data-ro-ux="v2-beta"] .rb-overview--digest { --digest-gap:12px; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid { grid-template-columns:minmax(0,1fr); }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-projection,
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-attention,
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-review-grid > .rb-panel { padding:15px!important; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-section-head { flex-wrap:wrap; gap:2px 8px; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-projection-inspector input { flex-basis:100%; order:2; margin:0; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-projection--compact .rb-projection-inspector output { margin-left:auto; }
  html[data-ro-ux="v2-beta"] .rb-overview--digest .rb-home-areas { gap:0 8px; padding:8px 12px; }
}

/* Editorial ivory + ink + terracotta palette selected for the current V2 experience.
   Color only for shared shell/Ledger: no Ledger geometry, behavior, ordering or math. */
html[data-ro-ux-refresh="v2-beta"],
html[data-ro-ux-refresh="v2-beta"] .np-root {
  --bg:#f8f5ef; --panel:#fffdfa; --panel-2:#f5eee6; --sidebar:#fbf8f2;
  --text:#17283a; --text-2:#6f6d69; --muted:#827b73; --border:#e7ddd2;
  --accent:#b64d32; --accent-soft:#f5e3d9; --on-accent:#ffffff;
  --primary:#b64d32; --on-primary:#ffffff; --coral:#c66a4e; --coral-ink:#a8422b;
  --c-green:#657b68; --c-red:#b23f36; --warn:#9a6a27; --grid:#ece4db;
  --hover:#f3e8df; --focus:#b64d32; --shadow:0 8px 30px #82654f10;
  --c-blue:#6d8297; --c-violet:#80748c; --c-amber:#9a7442;
  --c-teal:#728d95; --c-orange:#b96a4e; --c-orange-ink:#9f4c34;
  --ledger-taxable:#6d8297; --ledger-income:#778da0; --ledger-deferred:#a67650;
  --ledger-illiquid:#9b8667; --ledger-roth:#80748c; --ledger-benefit:#728d95;
  --ledger-expense:#b64d32; --ledger-tax:#9d6655; --ledger-neutral:#817b72; --ledger-total:#17283a;
}
html[data-ro-ux-refresh="v2-beta"] .np-root .np-aside {
  --text:#17283a; --text-2:#6f6d69; --muted:#8c847b; --border:#e7ddd2;
  --accent:#b64d32; --accent-soft:#f5e3d9; --hover:#f3e8df;
  background:var(--sidebar)!important; color:var(--text)!important; border-right:1px solid var(--border);
}
html[data-ro-ux-refresh="v2-beta"] .np-root .np-aside :is(a,button) { color:var(--text); }
/* Keep every route row on an identical box. The base active state changes font
   weight, and with `line-height: normal` that can move the rows below it by a
   pixel when navigation changes. Explicit geometry removes that sidebar bounce. */
html[data-ro-ux-refresh="v2-beta"] .np-root .np-nav-item {
  min-height:38px;
  line-height:20px;
  align-items:center;
}
html[data-ro-ux-refresh="v2-beta"] .np-root .np-nav-item.active {
  background:#f5e5dc!important;
  color:#9f412d!important;
  line-height:20px;
}
html[data-ro-ux-refresh="v2-beta"] .np-root .np-nav-scroll {
  overflow-anchor:none;
  scroll-behavior:auto;
}
html[data-ro-ux-refresh="v2-beta"] .np-root .np-nav-item:hover { background:#f6ede5; }
html[data-ro-ux-refresh="v2-beta"] .np-root .np-nav-sec { color:#938980; line-height:16px; }
html[data-ro-ux-refresh="v2-beta"] .np-root .np-aside :is(.np-brand,.np-brand-name) { color:#17283a; }
html[data-ro-ux-refresh="v2-beta"] .rb-projection-band { fill:#dbe2e8; }
html[data-ro-ux-refresh="v2-beta"] .rb-projection-median { stroke:#b64d32; }
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]),
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]) .np-root {
  --bg:#181717; --panel:#24211f; --panel-2:#2d2926; --sidebar:#1d1b1d;
  --text:#f5eee8; --text-2:#c6bbb1; --muted:#a99f97; --border:#463d37;
  --accent:#e39272; --accent-soft:#493229; --on-accent:#251c18;
  --primary:#e39272; --on-primary:#251c18; --coral:#e39272; --coral-ink:#f0aa8d;
  --c-green:#9fb19c; --c-red:#ed9d95; --warn:#dfb77c; --grid:#413a35;
  --hover:#342e2a; --focus:#e39272; --shadow:0 12px 40px #00000026;
  --c-blue:#9fb1c1; --c-violet:#b7a9c4; --c-amber:#d4b07a; --c-teal:#9ebbc0;
  --ledger-taxable:#9fb1c1; --ledger-income:#abc0ce; --ledger-deferred:#d8aa7e;
  --ledger-illiquid:#cbb78f; --ledger-roth:#b7a9c4; --ledger-benefit:#9ebbc0;
  --ledger-expense:#e39272; --ledger-tax:#d8a18d; --ledger-neutral:#aaa198; --ledger-total:#f5eee8;
}
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]) .np-root .np-aside {
  --text:#f5eee8; --text-2:#c6bbb1; --muted:#a99f97; --border:#463d37;
  --accent:#e39272; --accent-soft:#493229; --hover:#342e2a;
  background:#1d1b1d!important;
}
html[data-ro-ux-refresh="v2-beta"]:is(.dark,[data-theme="dark"]) .np-root .np-nav-item.active { background:#493229!important; color:#f5eee8!important; }

/* Overview treatment based on the selected editorial/terracotta visual direction. */
html[data-ro-ux="v2-beta"] .rb-overview--editorial { --digest-gap:14px; max-width:1480px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero {
  position:relative; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  min-height:140px; overflow:hidden; margin:0 0 14px; border-bottom:1px solid var(--border);
  background:linear-gradient(95deg,var(--bg) 0%,var(--bg) 55%,color-mix(in srgb,var(--panel) 82%,transparent) 72%,transparent 100%);
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-copy { position:relative; z-index:2; padding:4px 24px 10px 2px; align-self:start; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-actions {
  position:absolute; z-index:3; top:4px; right:12px;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-actions .np-topbar-actions { flex-shrink:0; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero h1 {
  margin:0; max-width:820px; color:var(--text); font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(32px,3vw,46px); font-weight:600; line-height:1.02; letter-spacing:-.04em;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero h1 span { color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero p { margin:10px 0 0; color:var(--text-2); font-family:Georgia,'Times New Roman',serif; font-size:17px; line-height:1.45; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero .rb-editorial-hero-detail { margin-top:3px; font-family:inherit; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-destination {
  display:inline-flex; align-items:center; gap:7px; min-height:36px; margin-top:12px; padding:6px 10px;
  border:1px solid var(--border); border-radius:999px; background:color-mix(in srgb,var(--panel) 88%,transparent);
  color:var(--text-2); font-size:11px; font-weight:600; cursor:pointer;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-destination b { color:var(--accent); }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art { position:relative; min-height:140px; overflow:hidden; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art::before {
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 74%,transparent) 18%,transparent 55%);
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art img {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:72% 52%;
  opacity:.64; filter:saturate(.62) contrast(.9) brightness(1.08);
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art > span {
  position:absolute; z-index:2; top:58px; right:10px; color:var(--accent); font-family:Georgia,'Times New Roman',serif;
  font-size:16px; font-style:italic; letter-spacing:.01em; transform:rotate(-4deg); opacity:.82;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary {
  display:grid; grid-template-columns:minmax(280px,1.12fr) repeat(3,minmax(180px,1fr)); gap:10px;
  margin:0 0 14px; padding:0; border:0; background:transparent; box-shadow:none; overflow:visible;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary :is(.rb-home-status,.rb-home-stat) {
  min-width:0; min-height:102px; padding:16px 18px; border:1px solid var(--border); border-radius:12px;
  background:color-mix(in srgb,var(--panel) 96%,transparent); box-shadow:0 6px 24px #7b5c4510;
}
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary .rb-home-stat { border-left:1px solid var(--border); }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-status { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:11px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-status > span { display:grid; gap:3px; min-width:0; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-status strong { font-family:Georgia,'Times New Roman',serif; font-size:15px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-status-value { display:block; color:var(--text); font-family:Georgia,'Times New Roman',serif; font-size:29px; line-height:1; letter-spacing:-.045em; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-status small { line-height:1.45; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-stat > span { color:var(--text-2); font-family:Georgia,'Times New Roman',serif; font-size:12px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-stat strong { display:block; margin-top:3px; color:var(--text); font-family:Georgia,'Times New Roman',serif; font-size:26px; font-weight:600; letter-spacing:-.035em; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-stat small { color:var(--text-2); font-size:10px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-primary-grid { grid-template-columns:minmax(0,1.5fr) minmax(330px,.9fr); gap:14px; align-items:stretch; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-panel { border-radius:12px; box-shadow:0 6px 24px #7b5c4510; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-projection { padding:20px 22px!important; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-section-head h3 { font-family:Georgia,'Times New Roman',serif; font-size:20px; font-weight:600; letter-spacing:-.025em; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-projection .rb-projection--compact > svg { max-height:270px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-attention { background:var(--panel); padding:20px 20px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-attention .rb-digest-item { padding:13px 0 10px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-attention .rb-digest-item:first-of-type { margin-top:3px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-attention .rb-digest-item h4 { font-family:Georgia,'Times New Roman',serif; font-size:15px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-attention .rb-digest-item:not(.is-planned):first-of-type { margin-inline:-8px; padding:13px 8px 10px; border-radius:8px; background:var(--accent-soft); border-top-color:transparent; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-review-grid { margin-top:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-review-grid > .rb-panel { background:color-mix(in srgb,var(--panel) 97%,transparent); }
html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-footnote { color:var(--text-2); }
html[data-ro-ux="v2-beta"]:is(.dark,[data-theme="dark"]) .rb-overview--editorial .rb-editorial-hero-art img { opacity:.4; filter:saturate(.55) contrast(.85) brightness(.78); }
html[data-ro-ux="v2-beta"]:is(.dark,[data-theme="dark"]) .rb-overview--editorial .rb-editorial-hero-art::before { background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 80%,transparent) 24%,transparent 62%); }
@media(max-width:1120px) {
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-primary-grid { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-life { grid-column:1/-1; }
}
@media(max-width:760px) {
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero { grid-template-columns:1fr; min-height:196px; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-copy { padding:14px 12px 18px 0; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero h1 { font-size:clamp(31px,9vw,42px); max-width:12ch; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero p { max-width:28ch; font-size:15px; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art { position:absolute; inset:0 0 0 35%; min-height:100%; opacity:.58; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-art > span { display:none; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-summary :is(.rb-home-status,.rb-home-stat) { min-height:82px; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-review-grid { grid-template-columns:1fr; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-home-life { grid-column:auto; }
}
@media(max-width:520px) {
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-hero-detail { display:none; }
  html[data-ro-ux="v2-beta"] .rb-overview--editorial .rb-editorial-destination { margin-top:9px; }
}
@media(prefers-reduced-motion:reduce) {
  html[data-ro-ux="v2-beta"] .rb-overview--editorial * { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}

