/* RateLabs Advisor Workspace — Phase 1. Scoped; no changes to the public portal. */
body.advisor-app{background:#f5f7fa;color:#1c3047;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.advisor-app a{text-decoration:none}
.advisor-header{position:sticky;top:0;z-index:50;background:#112238;border-bottom:1px solid #293c53;backdrop-filter:none;color:#f6f9fd}
.advisor-header-inner{min-height:74px;max-width:1580px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:0 35px}
.advisor-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:21px;font-weight:750;letter-spacing:-.045em}
.advisor-mark{display:inline-grid;place-items:center;width:35px;height:35px;border:1px solid #527490;border-radius:10px;font-size:19px;color:#fff;letter-spacing:-.1em}
.advisor-mark-dot{color:#65bea6}
.advisor-brand-divider{width:1px;height:28px;background:#40536a}
.advisor-header-context{font-size:13px;font-weight:650;white-space:nowrap;color:#d8e1ed}
.advisor-header-beta{display:inline-block;color:#9ab6d0;border:1px solid #465f7d;padding:3px 7px;margin-left:8px;border-radius:6px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.advisor-header-nav{margin-left:auto;display:flex;gap:25px;align-items:center}
.advisor-header-nav a{font-size:12px;font-weight:600;color:#c5d0de;white-space:nowrap}
.advisor-header-nav a:hover,.advisor-header-nav a:focus-visible{color:#fff}
.advisor-layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 74px);max-width:1580px;margin:0 auto}
.advisor-sidebar{border-right:1px solid #e0e6ec;background:#f9fafc;padding:42px 20px;display:flex;flex-direction:column;gap:8px}
.advisor-sidebar-title{font-size:10px;font-weight:800;color:#94a0b0;letter-spacing:.14em;margin:0 10px 17px}
.advisor-step{display:flex;align-items:flex-start;gap:12px;border:1px solid transparent;border-radius:11px;padding:13px 11px;color:#728296}
.advisor-step.active{background:#eaf0f6;border-color:#dce5ed;color:#1d3752}
.advisor-step-index{font-variant-numeric:tabular-nums;font-size:11px;font-weight:800;margin-top:2px;color:#7990a7}
.advisor-step.active .advisor-step-index{color:#16806e}
.advisor-step strong{display:block;font-size:12px;line-height:1.3;font-weight:750}
.advisor-step small{display:block;font-size:10px;line-height:1.5;margin-top:3px;color:#8995a4}
.advisor-sidebar-bottom{margin-top:auto;padding:20px 10px 0;border-top:1px solid #e5eaf1;display:flex;align-items:flex-start;gap:10px}
.advisor-sidebar-bottom p{font-size:11px;line-height:1.65;color:#8995a4;margin:0}
.advisor-sidebar-bottom strong{color:#62758b}
.advisor-privacy-icon{color:#138775;font-size:20px}
.advisor-main-content{min-width:0;padding:0 47px}
.advisor-topline{padding:25px 0 10px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:.12em;color:#8996a6;font-weight:800}
.advisor-signed-in{letter-spacing:0;font-size:11px;font-weight:550;color:#6b7e90;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.advisor-intro{padding:36px 0 34px;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:25px;align-items:end}
.advisor-eyebrow{display:flex;align-items:center;gap:9px;color:#168373;font-size:10px;font-weight:900;letter-spacing:.12em}
.advisor-live-dot{height:7px;width:7px;border-radius:50%;background:#168b77;box-shadow:0 0 0 4px #e1f3ed}
.advisor-intro h1{font-size:clamp(35px,3.6vw,52px);font-weight:720;letter-spacing:-.055em;line-height:1.11;margin:18px 0 14px;color:#142841}
.advisor-intro h1 em{font-style:normal;color:#147e74}
.advisor-intro p{font-size:13px;line-height:1.8;color:#708197;max-width:690px;margin:0}
.advisor-asof{background:#fff;border:1px solid #e4eaf0;border-radius:15px;padding:18px;box-shadow:0 8px 30px rgba(23,48,72,.035)}
.advisor-asof small{font-size:10px;letter-spacing:.1em;color:#90a0b0;font-weight:850;display:block}
.advisor-asof strong{font-size:16px;margin-top:8px;display:block;color:#193149}
.advisor-asof span{display:block;font-size:11px;color:#8294a6;margin-top:6px;line-height:1.5}
.advisor-separator{height:1px;background:#e1e7ee}
.advisor-section{padding:37px 0 27px}
.advisor-section-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:21px}
.advisor-section-number{font-size:10px;color:#178574;letter-spacing:.12em;font-weight:900}
.advisor-section-head h2,.advisor-next-inner h2{font-size:25px;line-height:1.2;letter-spacing:-.045em;font-weight:750;margin:7px 0;color:#19324b}
.advisor-section-head p{font-size:12px;line-height:1.7;color:#8190a0;margin:0;max-width:790px}
.advisor-reset{border:1px solid #dae4ed;color:#5a6b7f;background:#fff;cursor:pointer;border-radius:9px;font-size:11px;font-weight:750;padding:10px 13px;white-space:nowrap}
.advisor-reset:hover{border-color:#8cadc5;color:#193b58}
.advisor-form-grid{background:#fff;border:1px solid #dfe8ef;border-radius:17px;padding:21px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px;box-shadow:0 10px 40px rgba(34,58,81,.035)}
.advisor-field{min-width:0}
.advisor-field label{font-size:11px;font-weight:800;color:#2c425a;display:block;margin:0 0 10px}
.advisor-field select,.advisor-money-input{width:100%;height:46px;background:#f9fbfc;border:1px solid #dae3eb;border-radius:10px;color:#18344e}
.advisor-field select{padding:0 12px;font-size:13px;font-weight:700;cursor:pointer}
.advisor-field select:disabled{cursor:wait;opacity:.75}
.advisor-money-input{display:flex;align-items:center;padding:0 12px;gap:12px}
.advisor-money-input span{font-size:10px;color:#718397;font-weight:900;letter-spacing:.08em;border-right:1px solid #d8e1e9;padding-right:13px}
.advisor-money-input input{min-width:0;width:100%;background:transparent;border:0;outline:0;font-size:20px;letter-spacing:-.025em;color:#18344e;font-weight:750;font-variant-numeric:tabular-nums}
.advisor-field input:focus-visible,.advisor-field select:focus-visible{outline:2px solid #65ad9e;outline-offset:2px}
.advisor-money-input:focus-within{border-color:#71b5a6}
.advisor-quick-amounts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.advisor-quick-amounts button{background:#fff;border:1px solid #dfe8ef;border-radius:7px;padding:6px 10px;color:#718297;font-size:10px;font-weight:700;cursor:pointer}
.advisor-quick-amounts button.selected{background:#e7f4f0;border-color:#9bd2c3;color:#167965}
.advisor-field-hint{display:block;color:#90a0b0;font-size:10px;margin-top:9px;line-height:1.55}
.advisor-label-row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.advisor-label-row output{font-size:12px;color:#177e6d;font-weight:850}
.advisor-dd{width:100%;height:23px;accent-color:#188774;cursor:pointer;margin:3px 0 0}
.advisor-range-labels{display:flex;justify-content:space-between;color:#93a2b1;font-size:10px;margin-top:1px}
.advisor-scenario-field{grid-column:1/-1}
.advisor-brief-strip{margin-top:15px;padding:15px 18px;border-radius:10px;border:1px solid #dbe9e4;background:#f0f8f5;color:#446959;font-size:12px;line-height:1.65}
.advisor-snapshot-section{padding-top:29px}
.advisor-pill{border:1px solid #d5e6df;border-radius:99px;color:#398272;background:#f3f9f6;font-size:10px;font-weight:750;padding:8px 11px;white-space:nowrap}
.advisor-alert{color:#8191a2;font-size:11px;line-height:1.6;margin:0 0 12px;min-height:16px}
.advisor-alert.warning{color:#9c6419}
.advisor-alert.error{color:#aa3c46}
.advisor-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.advisor-product{background:#fff;border:1px solid #dee7ef;border-radius:14px;padding:18px 15px;min-height:210px;display:flex;flex-direction:column;gap:9px;box-shadow:0 8px 28px rgba(27,52,78,.03)}
.advisor-product.focus{border:1.5px solid #259b85;box-shadow:0 10px 28px rgba(37,155,133,.08)}
.advisor-product-top{display:flex;justify-content:space-between;gap:7px;align-items:center;color:#8695a5;font-size:10px;font-weight:700}
.advisor-product.focus .advisor-product-tag{color:#168775;background:#ecf8f2}
.advisor-product-tag{padding:5px 7px;background:#f0f3f6;color:#728399;border-radius:6px;font-size:9px;font-weight:800;text-align:center}
.advisor-product h3{font-size:16px;letter-spacing:-.03em;margin:6px 0 1px;color:#223951;font-weight:750}
.advisor-product-number{font-size:25px;line-height:1.15;font-weight:800;letter-spacing:-.055em;color:#163951;font-variant-numeric:tabular-nums;margin-top:3px}
.advisor-product-number.no-data{font-size:18px;color:#8d9cab}
.advisor-product-stat-label{font-size:10px;color:#92a0b0;margin-top:-5px}
.advisor-product-stats{border-top:1px solid #eef1f5;padding-top:11px;margin-top:auto;display:grid;gap:9px}
.advisor-product-stat{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;font-size:10px}
.advisor-product-stat span{color:#8898a9;line-height:1.35}
.advisor-product-stat strong{color:#2a455b;text-align:right;font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}
.advisor-product-foot{font-size:9px;color:#97a4b2;margin-top:1px}
.advisor-shimmer{height:12px;background:linear-gradient(90deg,#eff3f7,#f9fafc,#eff3f7);border-radius:6px;width:80%;margin:15px 0 10px}
.advisor-shimmer.short{width:55%;height:24px}
.advisor-disclaimer{padding:20px 21px;border:1px solid #e1e8ef;background:#f9fafc;border-radius:11px;margin-top:15px}
.advisor-disclaimer strong{font-size:11px;color:#4a5b6c}
.advisor-disclaimer p{font-size:11px;line-height:1.75;color:#8390a0;margin:7px 0 0}
.advisor-next-section{padding:26px 0 25px}
.advisor-next-inner{background:#162d43;border-radius:16px;padding:30px 32px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.advisor-next-inner .advisor-section-number{color:#7abcae}
.advisor-next-inner h2{color:#fff;font-size:23px}
.advisor-next-inner p{font-size:12px;color:#b5c4d3;line-height:1.7;max-width:640px;margin:0}
.advisor-next-link{white-space:nowrap;border:1px solid #688296;color:#edf6f9;border-radius:9px;padding:13px 16px;font-size:11px;font-weight:800}
.advisor-next-link:hover{border-color:#a9c4d2}
.advisor-footer{display:flex;justify-content:space-between;gap:15px;color:#94a1af;padding:16px 0 30px;font-size:10px}
@media(max-width:1250px){
  .advisor-layout{grid-template-columns:198px minmax(0,1fr)}
  .advisor-main-content{padding:0 26px}
  .advisor-header-inner{padding:0 24px}
  .advisor-products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .advisor-layout{display:block}
  .advisor-sidebar{display:none}
  .advisor-header-nav{gap:12px}
  .advisor-header-nav a{font-size:11px}
  .advisor-intro{grid-template-columns:1fr;gap:20px}
  .advisor-asof{max-width:300px}
  .advisor-next-inner{display:block}
  .advisor-next-link{display:inline-block;margin-top:20px}
}
@media(max-width:600px){
  .advisor-header-inner{padding:0 16px;gap:11px;min-height:66px;flex-wrap:wrap}
  .advisor-brand{font-size:19px}
  .advisor-brand-divider,.advisor-header-context{display:none}
  .advisor-header-nav{margin-left:auto}
  .advisor-header-nav a:nth-child(1),.advisor-header-nav a:nth-child(2){display:none}
  .advisor-main-content{padding:0 16px}
  .advisor-topline{font-size:9px}
  .advisor-signed-in{max-width:45%}
  .advisor-intro{padding:25px 0}
  .advisor-intro h1{font-size:37px}
  .advisor-section-head{align-items:flex-start}
  .advisor-section-head h2{font-size:22px}
  .advisor-form-grid{grid-template-columns:1fr;padding:17px;gap:21px}
  .advisor-scenario-field{grid-column:auto}
  .advisor-products{grid-template-columns:1fr}
  .advisor-product{min-height:185px}
  .advisor-reset{font-size:10px}
  .advisor-pill{display:none}
  .advisor-next-inner{padding:25px 20px}
  .advisor-footer{display:grid;gap:8px}
}
@media(prefers-reduced-motion:reduce){.advisor-app *{scroll-behavior:auto!important}}


/* Phase 2 — compact advisory header, currency presentation and analytical panels. */
.advisor-step.ready{color:#345a6e;background:#f0f7f5;border-color:#e0ede9}
.advisor-step.ready .advisor-step-index{color:#168674}
.advisor-step.ready small{color:#168674}
.advisor-topline{padding:17px 0 2px}
.advisor-intro{padding:18px 0 20px;grid-template-columns:minmax(0,1fr) 218px;gap:23px;align-items:end}
.advisor-intro h1{font-size:clamp(31px,3.0vw,43px);line-height:1.10;margin:11px 0 8px}
.advisor-intro p{font-size:12px;line-height:1.65;max-width:790px}
.advisor-asof{padding:14px 16px}
.advisor-asof strong{font-size:15px;margin-top:4px}
.advisor-asof span{margin-top:4px}
.advisor-section{padding:23px 0 19px}
.advisor-section-head{margin-bottom:13px}
.advisor-section-head h2{font-size:23px;margin:4px 0}
.advisor-form-grid{padding:17px 20px;gap:15px 23px}
.advisor-field label{margin-bottom:7px}
.advisor-field select,.advisor-money-input{height:41px}
.advisor-money-input{background:#fff;gap:11px}
.advisor-money-input span{letter-spacing:.07em}
.advisor-money-input input{font-size:20px;font-variant-numeric:tabular-nums}
.advisor-field-hint{margin-top:5px}
.advisor-quick-amounts{margin-top:7px}
.advisor-dd{margin-top:0}
.advisor-scenario-field{grid-column:1/-1}
.advisor-brief-strip{margin-top:10px;padding:11px 16px}
.advisor-snapshot-section{padding-top:15px}
.advisor-product{min-height:185px;padding:15px 13px;gap:7px}
.advisor-product h3{margin:3px 0}
.advisor-product-number{font-size:28px}
.advisor-product-stats{padding-top:9px;gap:7px}
.advisor-negative{color:#b45150!important}
.advisor-budget-context{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:center;background:#f1f6f5;border:1px solid #dcece5;border-radius:11px;padding:13px 16px;margin:0 0 15px}
.advisor-budget-eyebrow{display:block;font-size:9px;color:#218274;font-weight:850;letter-spacing:.11em;margin-bottom:4px}
.advisor-budget-title{font-size:12px;color:#435c67;display:block}
.advisor-budget-title strong{color:#147c70;font-size:16px;white-space:nowrap;margin-left:8px;font-variant-numeric:tabular-nums}
.advisor-budget-title small{color:#487e71;font-size:12px;font-weight:650;white-space:nowrap}
.advisor-budget-context p{margin:0;font-size:11px;line-height:1.55;color:#718c83}
.advisor-budget-context p strong{color:#375b51}
.advisor-comparison{margin-top:30px}
.advisor-compare-head{padding-top:5px}
.advisor-compare-head .advisor-section-number{color:#178574}
.advisor-comparison-tag{color:#58737c;background:#edf5f3;border:1px solid #d5e9e2;border-radius:8px;padding:8px 10px;font-size:10px;white-space:nowrap;font-weight:800}
.advisor-table-wrap{border:1px solid #dde5ed;border-radius:13px;overflow-x:auto;background:#fff;box-shadow:0 7px 24px rgba(29,58,77,.03)}
.advisor-table-wrap:focus-visible{outline:2px solid #38a593;outline-offset:2px}
.advisor-compare-table{width:100%;min-width:880px;border-collapse:separate;border-spacing:0;table-layout:fixed}
.advisor-compare-table thead th{padding:14px 12px;background:#f3f7fa;color:#5f7286;font-size:10px;font-weight:850;text-transform:none;text-align:right;letter-spacing:0;border-bottom:1px solid #dfe8ed;white-space:normal}
.advisor-compare-table thead th:first-child{width:28%;text-align:left;position:sticky;left:0;z-index:2;background:#f3f7fa}
.advisor-compare-table tbody th{position:sticky;left:0;z-index:1;background:#fff;text-align:left;border-bottom:1px solid #eef1f5;padding:12px;font-weight:600}
.advisor-compare-table tbody tr:nth-child(even) th{background:#fbfcfd}
.advisor-compare-table tbody td{text-align:right;padding:13px 12px;font-size:12px;border-bottom:1px solid #eef1f5;font-variant-numeric:tabular-nums}
.advisor-compare-table tbody tr:nth-child(even) td{background:#fbfcfd}
.advisor-compare-table tbody tr:hover th,.advisor-compare-table tbody tr:hover td{background:#f5faf8}
.advisor-compare-table tbody tr:last-child th,.advisor-compare-table tbody tr:last-child td{border-bottom:0}
.advisor-compare-metric strong{display:block;font-size:11px;font-weight:800;color:#283f56}
.advisor-compare-metric small{display:block;font-size:9px;color:#98a5b0;font-weight:500;margin-top:4px;line-height:1.45}
.advisor-table-number{white-space:nowrap;color:#2d475d;font-weight:750;font-size:12px}
.advisor-compare-table .advisor-compare-focused{background:#eef8f4!important;color:#157c6b!important}
.advisor-compare-table thead .advisor-compare-focused{color:#126e5f!important}
.advisor-table-caption{font-size:10px;color:#8898a4;margin:11px 1px 18px;line-height:1.65}
.advisor-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.advisor-chart-card{background:#fff;border:1px solid #dfe8ee;border-radius:15px;padding:17px 16px;min-width:0}
.advisor-chart-card-head{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}
.advisor-chart-card h3{font-size:15px;margin:0;letter-spacing:-.02em;color:#243c55;font-weight:800}
.advisor-chart-card-head span{font-size:9px;color:#178573;background:#eef8f4;padding:6px 9px;border-radius:6px;white-space:nowrap}
.advisor-chart-card p{margin:9px 0 11px;font-size:10px;color:#8091a0;line-height:1.6;min-height:33px}
.advisor-chart-card p em{font-style:normal;font-weight:800}
.advisor-chart-view{min-height:210px;display:flex;align-items:center;justify-content:center}
.advisor-svg{max-width:100%;width:100%;height:auto;display:block}
.advisor-chart-empty{font-size:12px;color:#91a0ad;text-align:center;max-width:250px}
.advisor-chart-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 15px;margin-top:5px}
.advisor-chart-legend-item{display:flex;align-items:center;gap:6px;color:#62768a;font-size:10px;white-space:nowrap}
.advisor-chart-legend-item i{width:8px;height:8px;display:inline-block;border-radius:99px}
.advisor-disclaimer{margin-top:22px}
@media(max-width:1140px){.advisor-chart-grid{grid-template-columns:1fr}}
@media(max-width:850px){
  .advisor-intro{grid-template-columns:1fr;gap:13px}
  .advisor-budget-context{grid-template-columns:1fr;gap:7px}
  .advisor-asof{max-width:300px}
}
@media(max-width:600px){
  .advisor-intro{padding:14px 0 18px}
  .advisor-intro h1{font-size:34px}
  .advisor-section{padding:22px 0 16px}
  .advisor-form-grid{grid-template-columns:1fr;padding:16px;gap:16px}
  .advisor-scenario-field{grid-column:auto}
  .advisor-money-input input{font-size:21px}
  .advisor-product{min-height:173px}
  .advisor-comparison{margin-top:25px}
  .advisor-chart-card{padding:15px 10px}
  .advisor-compare-head{align-items:flex-start}
  .advisor-comparison-tag{display:none}
}


/* Phase 2.1: benchmark rows and portfolio MTM calendar/normalized axis switch. */
.advisor-compare-table tbody tr.advisor-benchmark-row td{background:#f6faf8}
.advisor-compare-table tbody tr.advisor-benchmark-row th{background:#f6faf8}
.advisor-compare-table tbody tr.advisor-benchmark-row .advisor-compare-metric strong{color:#176f63}
.advisor-compare-table tbody tr.advisor-benchmark-row:hover td,
.advisor-compare-table tbody tr.advisor-benchmark-row:hover th{background:#ebf6f1}
.advisor-chart-card .advisor-axis-switch{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:10px 0 7px;padding:0;border:0;min-width:0}
.advisor-axis-legend{font-size:10px;font-weight:800;letter-spacing:.04em;color:#718397;float:left;margin:0 9px 0 0;padding:6px 0}
.advisor-axis-switch label{position:relative;display:inline-flex;align-items:center;cursor:pointer}
.advisor-axis-switch input{position:absolute;width:1px;height:1px;opacity:0;left:0;top:0}
.advisor-axis-switch label span{border:1px solid #dce5ed;border-radius:8px;padding:8px 10px;background:#fff;color:#748498;font-size:10px;font-weight:800;white-space:nowrap;transition:background .14s ease}
.advisor-axis-switch input:checked+span{background:#e8f5f0;border-color:#6fc0a7;color:#116c5e}
.advisor-axis-switch input:focus-visible+span{outline:2px solid #2b9a84;outline-offset:2px}
.advisor-axis-switch label:hover span{border-color:#74b9a8}
.advisor-chart-view:has(.advisor-chart-note){display:block}
.advisor-chart-note{font-size:10px;color:#9b6426;margin:0 4px 9px}
@media(max-width:700px){
  .advisor-chart-card .advisor-axis-switch{gap:5px}
  .advisor-axis-legend{width:100%;margin:0}
}


/* Phase 3 — Scenario Studio and independent roll-v1.2 decision workspace */
.advisor-studio-section,.advisor-roll-section{border-top:1px solid #dce5ed;margin-top:13px;padding-top:33px}
.advisor-studio-panel,.advisor-roll-panel{background:#fff;border:1px solid #dee7ee;border-radius:16px;padding:22px;box-shadow:0 10px 35px rgba(32,66,83,.035)}
.advisor-studio-toolbar{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:0 0 18px}
.advisor-studio-toolbar .advisor-field{flex:0 1 340px;min-width:210px}
.advisor-studio-context,.advisor-roll-source{font-size:11px;color:#738699;line-height:1.65;max-width:460px;text-align:right}
.advisor-studio-kpis,.advisor-roll-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:11px 0 20px}
.advisor-studio-kpi,.advisor-roll-kpi{background:#f8fafb;border:1px solid #e2eaf0;border-radius:12px;padding:16px 13px;min-width:0}
.advisor-studio-kpi small,.advisor-roll-kpi small{display:block;color:#76899b;font-size:10px;line-height:1.5;min-height:29px}
.advisor-studio-kpi strong,.advisor-roll-kpi strong{display:block;font-size:clamp(18px,1.6vw,24px);color:#17344d;font-weight:800;letter-spacing:-.04em;margin-top:7px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.advisor-studio-kpi span,.advisor-roll-kpi span{display:block;font-size:10px;color:#8596a6;line-height:1.45;margin-top:8px}
.advisor-roll-kpi.advisor-roll-adverse strong{color:#b45150}
.advisor-studio-placeholder{grid-column:1/-1;color:#8093a2;font-size:12px;padding:22px 15px;line-height:1.6}
.advisor-studio-table{min-width:900px}
.advisor-studio-table thead th:first-child{width:43%;text-align:left}
.advisor-studio-table thead th:last-child{width:13%;text-align:center}
.advisor-studio-table tbody th{text-align:left}
.advisor-studio-table tbody th strong{display:block;font-size:11px;line-height:1.4;color:#2d455d;font-weight:700}
.advisor-studio-table tbody th small{font-size:9px;color:#b35c49;display:block;margin-top:4px}
.advisor-studio-table tbody td:last-child{text-align:center}
.advisor-studio-table .advisor-studio-selected th,.advisor-studio-table .advisor-studio-selected td{background:#eff8f5!important}
.advisor-studio-action{background:#f0f5f7;color:#30546a;border:1px solid #dce8e9;border-radius:8px;padding:8px 9px;font-size:10px;font-weight:750;cursor:pointer;white-space:nowrap}
.advisor-studio-action:hover{background:#e2f2ec;border-color:#a8d5c5}
.advisor-studio-action:disabled{background:#e4f5ed;color:#258a73;cursor:default;opacity:1}
.advisor-method-note{margin:13px 2px 0;color:#8393a1;font-size:11px;line-height:1.7}
.advisor-roll-boundary{border-left:3px solid #ca954d;background:#fdf7ef;padding:13px 15px;color:#786448;font-size:11px;line-height:1.7;border-radius:4px 9px 9px 4px;margin:0 0 15px}
.advisor-roll-chart-card{background:#fbfcfd;border:1px solid #e2e8f0;border-radius:13px;padding:18px 15px;margin-top:13px}
.advisor-roll-chart-card h3,.advisor-roll-detail-card h3{font-size:15px;font-weight:800;letter-spacing:-.025em;color:#25435a;margin:0 0 8px}
.advisor-roll-chart-card p,.advisor-roll-detail-card p{color:#8294a3;font-size:11px;line-height:1.7}
.advisor-roll-chart-card .advisor-chart-view{max-width:820px;margin:auto;min-height:260px}
.advisor-roll-legend{gap:20px}
.advisor-roll-legend span{font-size:11px;color:#587087;display:inline-flex;align-items:center;gap:6px}
.advisor-roll-legend i{display:inline-block;height:9px;width:9px;border-radius:50%}
.advisor-roll-dot{background:#148d82}
.advisor-hold-dot{background:#275f94}
.advisor-roll-details{display:grid;grid-template-columns:1fr 1.35fr;gap:14px;margin-top:15px}
.advisor-roll-detail-card{border:1px solid #e2e9f0;border-radius:13px;padding:18px;min-width:0;background:#fff}
.advisor-roll-hurdle-value{color:#157f74;font-size:32px;letter-spacing:-.04em;font-weight:850;line-height:1.4;font-variant-numeric:tabular-nums}
.advisor-roll-facts{display:grid;gap:8px;margin-top:15px}
.advisor-roll-fact{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #eef2f5;padding-top:9px;font-size:11px;color:#8193a4}
.advisor-roll-fact strong{color:#28475e;font-variant-numeric:tabular-nums;white-space:nowrap}
.advisor-roll-sensitivity-table{min-width:570px}
.advisor-roll-sensitivity-table thead th:first-child{width:22%}
.advisor-roll-sensitivity-table tbody th{font-size:11px;color:#304c62}
.advisor-roll-caveat{margin:16px 1px 0;padding:13px 15px;background:#f7fafc;color:#8193a3;font-size:11px;line-height:1.7;border:1px solid #e7edf2;border-radius:9px}
@media(max-width:1260px){.advisor-studio-kpis,.advisor-roll-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){.advisor-roll-details{grid-template-columns:1fr}}
@media(max-width:600px){
 .advisor-studio-panel,.advisor-roll-panel{padding:15px}
 .advisor-studio-toolbar{display:block}
 .advisor-studio-context,.advisor-roll-source{text-align:left;margin-top:12px}
 .advisor-studio-kpis,.advisor-roll-kpis{gap:8px}
 .advisor-studio-kpi,.advisor-roll-kpi{padding:12px 10px}
 .advisor-studio-kpi strong,.advisor-roll-kpi strong{font-size:19px}
 .advisor-roll-detail-card{padding:13px}
 .advisor-roll-chart-card{padding:14px 8px}
}

/* Advisor-only customer-facing typography and navigation; PDF .rl-doc-page unchanged. */
html:has(body.advisor-app){scroll-behavior:smooth}
.advisor-app .advisor-layout [id]{scroll-margin-top:110px}
.advisor-app .advisor-header-context{font-size:15px;font-weight:750}
.advisor-app .advisor-header-nav a{font-size:14px}
.advisor-app .advisor-sidebar{padding:30px 15px}
.advisor-app .advisor-sidebar-title{font-size:12px;color:#667b8f}
.advisor-app .advisor-workspace-nav{display:grid;gap:8px}
.advisor-app .advisor-step{padding:14px 12px;border-radius:12px;transition:background .15s}
.advisor-app .advisor-step.active{background:#e8f5f1;border-color:#b7dcd2;color:#173d50}
.advisor-app .advisor-step:hover{background:#edf3f7;color:#173d50}
.advisor-app .advisor-step:focus-visible{outline:2px solid #138c78;outline-offset:2px}
.advisor-app .advisor-step-index{font-size:12px}
.advisor-app .advisor-step strong{font-size:15px}
.advisor-app .advisor-step small,.advisor-app .advisor-sidebar-bottom p{font-size:12px}
.advisor-app .advisor-topline{font-size:11px;padding-top:19px}
.advisor-app .advisor-signed-in{font-size:12px}
.advisor-app .advisor-intro{padding:23px 0;grid-template-columns:minmax(0,1fr) 230px}
.advisor-app .advisor-intro h1{font-size:clamp(36px,3.2vw,48px);margin:14px 0 10px}
.advisor-app .advisor-intro p{font-size:16px;line-height:1.65;max-width:740px}
.advisor-app .advisor-eyebrow{font-size:12px}
.advisor-app .advisor-asof{padding:18px 20px}
.advisor-app .advisor-asof small{font-size:11px}
.advisor-app .advisor-asof strong{font-size:18px}
.advisor-app .advisor-asof span{font-size:13px}
.advisor-app .advisor-section{padding:29px 0 22px}
.advisor-app .advisor-section-number{font-size:12px}
.advisor-app .advisor-section-head h2{font-size:clamp(24px,2.2vw,29px);margin:7px 0}
.advisor-app .advisor-section-head p{font-size:15px;line-height:1.65}
.advisor-app .advisor-reset{font-size:13px;padding:12px 15px}
.advisor-app .advisor-form-grid{padding:24px;gap:22px 24px}
.advisor-app .advisor-field label{font-size:14px;margin-bottom:9px}
.advisor-app .advisor-field select,.advisor-app .advisor-money-input{height:51px}
.advisor-app .advisor-field select{font-size:16px}
.advisor-app .advisor-money-input input{font-size:24px}
.advisor-app .advisor-money-input span{font-size:12px}
.advisor-app .advisor-field-hint{font-size:12px;line-height:1.6}
.advisor-app .advisor-quick-amounts button{font-size:12px;padding:8px 12px}
.advisor-app .advisor-label-row output{font-size:16px}
.advisor-app .advisor-range-labels{font-size:12px}
.advisor-app .advisor-brief-strip{font-size:14px}

/* Higher legibility and stronger visual priority for financial outcomes. */
.advisor-app .advisor-pill{font-size:12px}
.advisor-app .advisor-alert{font-size:12px}
.advisor-app .advisor-budget-context{padding:18px 20px;gap:20px}
.advisor-app .advisor-budget-eyebrow{font-size:11px}
.advisor-app .advisor-budget-title{font-size:14px}
.advisor-app .advisor-budget-title strong{font-size:19px}
.advisor-app .advisor-budget-title small{font-size:14px}
.advisor-app .advisor-budget-context p{font-size:13px;line-height:1.6}
.advisor-app .advisor-products{gap:16px}
.advisor-app .advisor-product{padding:20px 18px;min-height:238px;gap:12px;border-radius:16px;box-shadow:0 10px 28px rgba(23,54,78,.07)}
.advisor-app .advisor-product.focus{border-width:2px;box-shadow:0 12px 31px rgba(23,143,117,.12)}
.advisor-app .advisor-product-top{font-size:12px}
.advisor-app .advisor-product-tag{font-size:11px;padding:6px 9px}
.advisor-app .advisor-product h3{font-size:19px}
.advisor-app .advisor-product-number{font-size:clamp(30px,2.7vw,36px)}
.advisor-app .advisor-product-stat-label{font-size:12px}
.advisor-app .advisor-product-stats{gap:10px;padding-top:13px}
.advisor-app .advisor-product-stat{font-size:13px;gap:10px}
.advisor-app .advisor-product-foot{font-size:11px}
.advisor-app .advisor-comparison{margin-top:34px}
.advisor-app .advisor-comparison-tag{font-size:12px;padding:9px 12px}
.advisor-app .advisor-compare-table{min-width:1010px}
.advisor-app .advisor-compare-table thead th{font-size:13px;padding:16px 14px}
.advisor-app .advisor-compare-table tbody th,.advisor-app .advisor-compare-table tbody td{padding:15px 14px}
.advisor-app .advisor-compare-table tbody td{font-size:14px}
.advisor-app .advisor-compare-metric strong{font-size:14px}
.advisor-app .advisor-compare-metric small{font-size:11px;line-height:1.5}
.advisor-app .advisor-table-number{font-size:14px}
.advisor-app .advisor-table-caption{font-size:12px;line-height:1.7}
.advisor-app .advisor-chart-card{padding:21px 19px}
.advisor-app .advisor-chart-card h3{font-size:18px}
.advisor-app .advisor-chart-card-head span{font-size:11px}
.advisor-app .advisor-chart-card p{font-size:13px;line-height:1.6}
.advisor-app .advisor-svg text{font-size:12px}
.advisor-app .advisor-chart-legend-item{font-size:12px}
.advisor-app .advisor-axis-legend,.advisor-app .advisor-axis-switch label span{font-size:12px}
.advisor-app .advisor-disclaimer strong{font-size:14px}
.advisor-app .advisor-disclaimer p{font-size:13px}

/* Studio, roll and client report: human-readable sizes and calm institutional UI. */
.advisor-app .advisor-studio-panel,.advisor-app .advisor-roll-panel{padding:24px}
.advisor-app .advisor-studio-context,.advisor-app .advisor-roll-source{font-size:13px}
.advisor-app .advisor-studio-kpi,.advisor-app .advisor-roll-kpi{padding:18px 16px}
.advisor-app .advisor-studio-kpi small,.advisor-app .advisor-roll-kpi small{font-size:12px}
.advisor-app .advisor-studio-kpi strong,.advisor-app .advisor-roll-kpi strong{font-size:clamp(21px,2vw,28px)}
.advisor-app .advisor-studio-kpi span,.advisor-app .advisor-roll-kpi span{font-size:12px}
.advisor-app .advisor-studio-table{min-width:1050px}
.advisor-app .advisor-studio-table tbody th strong{font-size:14px}
.advisor-app .advisor-studio-table tbody th small{font-size:11px}
.advisor-app .advisor-studio-action{font-size:12px;padding:10px 12px}
.advisor-app .advisor-method-note{font-size:12px}
.advisor-app .advisor-roll-chart-card h3,.advisor-app .advisor-roll-detail-card h3{font-size:18px}
.advisor-app .advisor-roll-chart-card p,.advisor-app .advisor-roll-detail-card p{font-size:13px}
.advisor-app .advisor-roll-boundary,.advisor-app .advisor-roll-caveat{font-size:13px;line-height:1.7}
.advisor-app .advisor-roll-legend span,.advisor-app .advisor-roll-fact{font-size:13px}
.advisor-app .advisor-roll-sensitivity-table{min-width:650px}
.advisor-app .advisor-roll-sensitivity-table tbody th{font-size:13px}
.advisor-app .advisor-illustration-form input,.advisor-app .advisor-illustration-form textarea{font-size:15px;line-height:1.55;padding:13px 15px}
.advisor-app .advisor-report-check strong{font-size:15px}
.advisor-app .advisor-report-check small{font-size:12px}
.advisor-app .advisor-report-actions p,.advisor-app .advisor-report-privacy{font-size:13px}
.advisor-app .advisor-report-primary{font-size:14px;padding:14px 19px}
.advisor-app .advisor-next-inner{padding:33px 38px;background:linear-gradient(112deg,#132b44,#1d4858);box-shadow:0 14px 34px rgba(12,43,61,.12)}
.advisor-app .advisor-next-inner h2{font-size:27px}
.advisor-app .advisor-next-inner p{font-size:15px}
.advisor-app .advisor-next-link{font-size:14px;padding:15px 19px}
.advisor-app .advisor-footer{font-size:12px}

/* On smaller screens, accessible shortcuts replace the desktop sidebar. */
.advisor-mobile-nav{display:none}
@media(max-width:1250px){
  .advisor-app .advisor-layout{grid-template-columns:210px minmax(0,1fr)}
  .advisor-app .advisor-main-content{padding:0 26px}
  .advisor-app .advisor-products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .advisor-app .advisor-layout{display:block}
  .advisor-app .advisor-sidebar{display:none}
  .advisor-app .advisor-intro{grid-template-columns:1fr;gap:15px}
  .advisor-mobile-nav{display:flex;gap:8px;overflow-x:auto;padding:12px 16px;
    background:#fff;border-bottom:1px solid #dfe7ed;scrollbar-width:thin}
  .advisor-mobile-nav a{flex:none;padding:10px 13px;font-size:12px;font-weight:750;
    white-space:nowrap;border:1px solid #e0e8ef;background:#f5f8fa;
    color:#34576c;border-radius:9px;text-decoration:none}
  .advisor-mobile-nav a:hover,.advisor-mobile-nav a.active{
    background:#e8f5f0;border-color:#a9d8c9;color:#147764}
  .advisor-mobile-nav a:focus-visible{outline:2px solid #168b76;outline-offset:2px}
}
@media(max-width:600px){
  .advisor-app .advisor-main-content{padding:0 16px}
  .advisor-app .advisor-intro h1{font-size:clamp(33px,7.8vw,40px)}
  .advisor-app .advisor-intro p{font-size:15px}
  .advisor-app .advisor-section-head{align-items:flex-start;flex-wrap:wrap;gap:12px}
  .advisor-app .advisor-section-head h2{font-size:25px}
  .advisor-app .advisor-form-grid{grid-template-columns:1fr;gap:20px;padding:18px}
  .advisor-app .advisor-products{grid-template-columns:1fr}
  .advisor-app .advisor-compare-table{min-width:920px}
  .advisor-app .advisor-chart-card{padding:17px 12px}
  .advisor-app .advisor-svg text{font-size:10.5px}
  .advisor-app .advisor-budget-context{grid-template-columns:1fr}
  .advisor-app .advisor-studio-kpis,.advisor-app .advisor-roll-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .advisor-app .advisor-studio-panel,.advisor-app .advisor-roll-panel{padding:17px}
  .advisor-app .advisor-next-inner{padding:26px 22px}
  .advisor-app .advisor-next-inner h2{font-size:24px}
  .advisor-app .advisor-next-link{display:inline-block;white-space:normal}
}
@media(prefers-reduced-motion:reduce){
  html:has(body.advisor-app){scroll-behavior:auto}
}

/* Layout hardening: the Advisor shell must never expand beyond the browser viewport. */
body.advisor-app{width:100%;max-width:100%;overflow-x:clip}
.advisor-app .advisor-header{width:100%;max-width:100%}
.advisor-app .advisor-header-inner{width:100%;max-width:1580px;margin-inline:auto}
.advisor-app .advisor-layout{width:100%;max-width:1580px;margin-inline:auto;min-width:0}
.advisor-app .advisor-main-content{min-width:0;width:100%}
.advisor-app .advisor-mobile-nav{display:none}
@media(max-width:850px){
  .advisor-app .advisor-mobile-nav{display:flex;width:100%;max-width:100%;overflow-x:auto}
}


/* RatesLab wordmark for dark Advisor header; do not change workspace layout. */
.advisor-app .advisor-brand{display:inline-flex;align-items:center;flex:none;min-width:0}
.advisor-app .advisor-brand-logo{display:block;width:177px;height:auto;max-height:48px;object-fit:contain}
@media(max-width:600px){.advisor-app .advisor-brand-logo{width:148px}}
