#pf-renewal-simulation { --ps-ink:#193a37; --ps-muted:#536d64; --ps-teal:#087f76; --ps-dark:#102b30; --ps-line:#cfdfd7; --ps-soft:#edf5f0; --ps-paper:#fff; color:var(--ps-ink); font-family:Arial,Helvetica,sans-serif; background:transparent; }
#pf-renewal-simulation * { box-sizing:border-box; }
#pf-renewal-simulation h2,#pf-renewal-simulation h3,#pf-renewal-simulation h4 { color:inherit; }
#pf-renewal-simulation .ps-window { background:var(--ps-paper); color-scheme:light; border:1px solid #aac8ba; border-radius:10px; overflow:hidden; }
#pf-renewal-simulation .ps-banner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:9px 1.25rem; background:#255747; color:#fff; padding:1rem 1.4375rem; }
#pf-renewal-simulation .ps-banner strong { font-size:1rem; font-weight:500; letter-spacing:.035em; }
#pf-renewal-simulation .ps-banner span { font-size:0.8125rem; color:#e2f1e9; line-height:1.5; }
#pf-renewal-simulation .ps-chrome { display:flex; align-items:center; justify-content:space-between; gap:1.125rem; flex-wrap:wrap; padding:1.125rem 1.4375rem; border-bottom:1px solid var(--ps-line); }
#pf-renewal-simulation .ps-brand { font:500 1.25rem ui-monospace,monospace; }
#pf-renewal-simulation .ps-brand span { color:var(--ps-teal); }
#pf-renewal-simulation .ps-workspace { display:flex; flex-wrap:wrap; gap:6px 1rem; font-size:0.875rem; color:var(--ps-muted); }
#pf-renewal-simulation .ps-workspace b { color:var(--ps-ink); font-weight:500; }
#pf-renewal-simulation .ps-progress { list-style:none; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:9px; padding:1.25rem 1.4375rem 0; margin:0; }
#pf-renewal-simulation .ps-progress li { display:flex; align-items:center; gap:7px; color:#697e73; font-size:0.75rem; min-width:0; }
#pf-renewal-simulation .ps-step-number { display:inline-flex; align-items:center; justify-content:center; border:1px solid #bfcfc5; border-radius:50%; width:1.625rem; height:1.625rem; flex-shrink:0; font-size:0.8125rem; }
#pf-renewal-simulation .ps-progress li[aria-current="step"] { color:#0b6257; font-weight:500; }
#pf-renewal-simulation .ps-progress li[aria-current="step"] .ps-step-number { background:#087f76; color:white; border-color:#087f76; }
#pf-renewal-simulation .ps-progress li.ps-complete .ps-step-number { background:#e0efe7; border-color:#b6d5c4; color:#27674f; }
#pf-renewal-simulation .ps-guide { padding:1.375rem 1.4375rem 1.125rem; }
#pf-renewal-simulation .ps-guide h2 { margin:0 0 9px; font-size:1.6875rem; font-weight:500; line-height:1.2; letter-spacing:-.025em; }
#pf-renewal-simulation .ps-guide p { font-size:0.9375rem; line-height:1.55; color:var(--ps-muted); margin:0; max-width:830px; }
#pf-renewal-simulation .ps-screen { background:#f1f6f3; border-top:1px solid var(--ps-line); border-bottom:1px solid var(--ps-line); padding:1.5rem; }
#pf-renewal-simulation .ps-screen h3 { margin:0 0 0.75rem; font-size:1.4375rem; font-weight:500; letter-spacing:-.025em; line-height:1.25; }
#pf-renewal-simulation .ps-screen h4 { margin:0 0 8px; font-size:1rem; font-weight:500; line-height:1.35; }
#pf-renewal-simulation .ps-screen p { margin:0; font-size:0.9375rem; line-height:1.55; }
#pf-renewal-simulation .ps-label { display:block; font:500 0.75rem ui-monospace,monospace; letter-spacing:.08em; text-transform:uppercase; color:var(--ps-teal); margin-bottom:0.75rem; }
#pf-renewal-simulation .ps-panel { border:1px solid #d1e0d7; background:#fff; border-radius:7px; padding:1.375rem; min-width:0; }
#pf-renewal-simulation .ps-intro-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:1.125rem; }
#pf-renewal-simulation .ps-role { background:#173a3e; color:#f1f8f4; border-color:#173a3e; }
#pf-renewal-simulation .ps-role .ps-label { color:#9fdfc8; }
#pf-renewal-simulation .ps-role p { color:#d2e7dd; }
#pf-renewal-simulation .ps-sources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0.875rem; }
#pf-renewal-simulation .ps-intro-sources { margin-top:1.125rem; }
#pf-renewal-simulation .ps-source { border:1px solid #c4dace; border-radius:5px; background:white; padding:1.0625rem; min-width:0; }
#pf-renewal-simulation .ps-source strong { font-size:1.0625rem; font-weight:500; display:block; margin-bottom:7px; }
#pf-renewal-simulation .ps-source p { color:#556f61; font-size:0.875rem; }
#pf-renewal-simulation .ps-ask { border:1px solid #90bda8; padding:1.4375rem; background:#fff; border-radius:7px; }
#pf-renewal-simulation .ps-ask label { display:block; font:500 0.8125rem ui-monospace,monospace; color:var(--ps-teal); letter-spacing:.08em; margin-bottom:0.9375rem; }
#pf-renewal-simulation .ps-ask textarea { display:block; width:100%; min-height:112px; resize:none; border:1px solid #b9d2c4; border-radius:5px; background:#f8fbf9; padding:1.125rem; color:#153d31; font:400 1.3125rem/1.5 Arial,Helvetica,sans-serif; }
#pf-renewal-simulation .ps-preset { font-size:0.8125rem; color:#5a7666; margin-top:0.75rem; }
#pf-renewal-simulation .ps-note { color:#4d6c5b; font-size:0.875rem; line-height:1.5; margin-top:1.125rem; }
#pf-renewal-simulation .ps-cluster { padding:1.375rem; border:2px solid #7fae99; border-radius:7px; background:#e5f0e9; }
#pf-renewal-simulation .ps-cluster-head { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-bottom:1.1875rem; }
#pf-renewal-simulation .ps-cluster-head h3 { margin:0; }
#pf-renewal-simulation .ps-cluster-head span { font-size:0.8125rem; color:#476654; }
#pf-renewal-simulation .ps-join { text-align:center; margin-top:1.0625rem; padding:0.875rem; border-top:1px solid #b8d2c2; font-size:0.9375rem; }
#pf-renewal-simulation .ps-context { display:grid; grid-template-columns:1fr 1fr; gap:1.125rem; margin-top:1.125rem; }
#pf-renewal-simulation .ps-context p { font-size:0.875rem; color:var(--ps-muted); }
#pf-renewal-simulation .ps-query { list-style:none; padding:0; margin:0; display:grid; gap:0.75rem; }
#pf-renewal-simulation .ps-query li { display:grid; grid-template-columns:1.875rem 1fr auto; gap:0.875rem; align-items:center; background:#fff; border:1px solid #ccded1; border-radius:6px; padding:1.125rem; }
#pf-renewal-simulation .ps-query-num { font:500 0.875rem ui-monospace,monospace; color:var(--ps-teal); }
#pf-renewal-simulation .ps-query strong { font-size:1.0625rem; font-weight:500; display:block; }
#pf-renewal-simulation .ps-query small { font-size:0.8125rem; color:var(--ps-muted); display:block; margin-top:5px; }
#pf-renewal-simulation .ps-query-count { font-size:0.875rem; color:#275c40; white-space:nowrap; background:#edf5f0; padding:7px 10px; border-radius:4px; }
#pf-renewal-simulation .ps-result-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:0.75rem; margin-bottom:1.125rem; }
#pf-renewal-simulation .ps-result-heading h3 { margin:0; }
#pf-renewal-simulation .ps-status { color:#25684e; background:#e0f0e6; border:1px solid #b8d7c4; border-radius:4px; padding:6px 10px; font-size:0.8125rem; }
#pf-renewal-simulation .ps-table-wrap { overflow-x:auto; background:white; border:1px solid #d0e0d5; border-radius:6px; }
/* Keep the product table readable independently of surrounding theme styles. */
#pf-renewal-simulation table { width:100%; min-width:540px; margin:0; border-collapse:collapse; background:#fff; color:#193a37; font:400 0.9375rem/1.5 Arial,Helvetica,sans-serif; }
#pf-renewal-simulation caption { text-align:left; padding:0.9375rem 1.0625rem; font:400 0.8125rem/1.5 Arial,Helvetica,sans-serif; color:#456355; background:#fff; }
#pf-renewal-simulation th,#pf-renewal-simulation td { padding:0.875rem 1rem; text-align:left; vertical-align:middle; border-bottom:1px solid #cbdcd1; color:#193a37; background:#fff; font:400 0.9375rem/1.5 Arial,Helvetica,sans-serif; letter-spacing:normal; text-transform:none; white-space:normal; word-break:normal; }
#pf-renewal-simulation thead th { color:#fff; background:#255747; font-weight:500; border-bottom-color:#255747; }
#pf-renewal-simulation tbody th,#pf-renewal-simulation tbody td { color:#193a37; background:#fff; }
#pf-renewal-simulation th { font-weight:500; }
#pf-renewal-simulation td:last-child,#pf-renewal-simulation th:last-child { text-align:right; font-variant-numeric:tabular-nums; }
#pf-renewal-simulation tfoot th,#pf-renewal-simulation tfoot td { color:#193a37; background:#eaf2ed; font-weight:500; border-bottom:0; }
#pf-renewal-simulation .ps-pin-preview { margin-top:1.125rem; padding:1.0625rem 1.25rem; background:#e1f0e7; border:1px solid #b4d3be; border-radius:5px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:0.75rem; }
#pf-renewal-simulation .ps-pin-preview span { font-size:0.8125rem; color:#456d56; }
#pf-renewal-simulation .ps-pin-preview strong { display:block; font-size:1.0625rem; font-weight:500; margin-top:5px; }
#pf-renewal-simulation .ps-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0.875rem; margin-bottom:1.125rem; }
#pf-renewal-simulation .ps-summary article { padding:1.1875rem; border:1px solid #cfdfd4; border-radius:6px; background:#fff; min-width:0; }
#pf-renewal-simulation .ps-summary span { display:block; font-size:0.8125rem; color:#536e5e; margin-bottom:11px; }
#pf-renewal-simulation .ps-summary b { font-size:2.125rem; font-weight:500; letter-spacing:-.03em; color:#174b34; font-variant-numeric:tabular-nums; }
#pf-renewal-simulation .ps-charts { display:grid; grid-template-columns:1.15fr 1fr; gap:1.125rem; margin-bottom:1.125rem; }
#pf-renewal-simulation .ps-chart-sub { font-size:0.75rem!important; color:#62786b; margin-bottom:1.125rem!important; }
#pf-renewal-simulation .ps-bars { display:grid; gap:1rem; padding-top:6px; }
#pf-renewal-simulation .ps-bar-row { display:grid; grid-template-columns:5.5rem 1fr 4.125rem; gap:0.75rem; align-items:center; font-size:0.8125rem; }
#pf-renewal-simulation .ps-bar-track { height:1.3125rem; background:#edf4ef; border-radius:3px; overflow:hidden; }
#pf-renewal-simulation .ps-bar { height:100%; background:#188b75; border-radius:3px; transition:width .3s ease; }
#pf-renewal-simulation .ps-bar-value { text-align:right; color:#2b5d43; font-variant-numeric:tabular-nums; }
#pf-renewal-simulation .ps-bar-scale { display:flex; justify-content:space-between; margin:0.875rem 4.875rem 0 100px; font-size:0.75rem; color:#688071; }
#pf-renewal-simulation .ps-donut-layout { display:flex; align-items:center; gap:0.9375rem; }
#pf-renewal-simulation .ps-donut { width:145px; max-width:45%; flex-shrink:0; }
#pf-renewal-simulation .ps-donut-number { font:500 1.875rem Arial,Helvetica,sans-serif; fill:#214b36; }
#pf-renewal-simulation .ps-donut-label { font:0.75rem Arial,Helvetica,sans-serif; fill:#577261; }
#pf-renewal-simulation .ps-legend { list-style:none; margin:0; padding:0; flex:1; min-width:0; }
#pf-renewal-simulation .ps-legend li { display:grid; grid-template-columns:8px 1fr auto; gap:8px; align-items:center; padding:10px 0; font-size:0.8125rem; }
#pf-renewal-simulation .ps-swatch { width:8px; height:8px; border-radius:2px; }
#pf-renewal-simulation .ps-change { padding:1.0625rem 1.25rem; margin-bottom:1.125rem; background:#dff0e6; border:1px solid #aed0ba; border-radius:6px; }
#pf-renewal-simulation .ps-change strong { font-size:1rem; font-weight:500; display:block; margin-bottom:8px; }
#pf-renewal-simulation .ps-change p { font-size:0.875rem; color:#385f47; }
#pf-renewal-simulation .ps-footer { display:flex; align-items:center; justify-content:space-between; gap:0.875rem; padding:1.1875rem 1.4375rem; background:#fff; }
#pf-renewal-simulation .ps-footer button { font:500 0.9375rem/1.35 Arial,Helvetica,sans-serif; border-radius:5px; padding:0.75rem 1.125rem; min-height:2.75rem; cursor:pointer; }
#pf-renewal-simulation .ps-back { background:#fff; color:#355f50; border:1px solid #b9d1c2; }
#pf-renewal-simulation .ps-next { background:#087f76; color:white; border:1px solid #087f76; max-width:72%; }
#pf-renewal-simulation .ps-footer button:disabled { opacity:.48; cursor:default; }
#pf-renewal-simulation .ps-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:820px) { #pf-renewal-simulation .ps-step-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); } #pf-renewal-simulation .ps-progress li { justify-content:center; } #pf-renewal-simulation .ps-charts { grid-template-columns:1fr; } }
@media(max-width:620px) { #pf-renewal-simulation .ps-intro-grid,#pf-renewal-simulation .ps-sources,#pf-renewal-simulation .ps-context { grid-template-columns:1fr; } #pf-renewal-simulation .ps-screen { padding:1rem; } #pf-renewal-simulation .ps-panel,#pf-renewal-simulation .ps-cluster,#pf-renewal-simulation .ps-ask { padding:1.0625rem; } #pf-renewal-simulation .ps-summary { grid-template-columns:1fr; gap:10px; } #pf-renewal-simulation .ps-summary article { display:flex; align-items:center; justify-content:space-between; gap:0.9375rem; padding:1rem; } #pf-renewal-simulation .ps-summary span { margin:0; } #pf-renewal-simulation .ps-summary b { font-size:1.75rem; } #pf-renewal-simulation .ps-query li { grid-template-columns:1.4375rem 1fr; padding:0.9375rem; gap:9px; } #pf-renewal-simulation .ps-query-count { grid-column:2; justify-self:start; } #pf-renewal-simulation .ps-bar-row { grid-template-columns:4.375rem 1fr 3.375rem; gap:7px; } #pf-renewal-simulation .ps-bar-scale { margin-left:4.8125rem; margin-right:3.8125rem; } #pf-renewal-simulation .ps-donut-layout { gap:10px; } #pf-renewal-simulation .ps-guide h2 { font-size:1.5rem; } #pf-renewal-simulation .ps-ask textarea { font-size:1.125rem; min-height:145px; } }
@media(max-width:380px) { #pf-renewal-simulation .ps-donut-layout { flex-direction:column; } #pf-renewal-simulation .ps-donut { max-width:100%; } #pf-renewal-simulation .ps-legend { width:100%; } #pf-renewal-simulation .ps-summary article { align-items:flex-start; flex-direction:column; gap:7px; } }
@media(prefers-reduced-motion:reduce) { #pf-renewal-simulation .ps-bar { transition:none; } }

#pf-renewal-simulation[hidden] { display:none; }
#pf-renewal-simulation { line-height:1.5; scroll-margin-top:1.5rem; }
#pf-renewal-simulation .ps-guide h2 { scroll-margin-top:1.5rem; }
#pf-renewal-simulation .ps-progress li { margin:0; padding:0; }
#pf-renewal-simulation .ps-progress { padding-left:1.4375rem; }
#pf-renewal-simulation .ps-source p,#pf-renewal-simulation .ps-context p { margin:0; }
#pf-renewal-simulation .ps-table-wrap { overscroll-behavior-x:contain; }
.pf-walkthrough-heading { max-width:50rem; margin-bottom:2rem; }
.pf-walkthrough-heading .pf-eyebrow { font-size:1rem; color:#255747; }
.pf-walkthrough-heading .pf-example-disclosure { font-size:1rem; line-height:1.55; margin:1rem 0; }
.pf-walkthrough-reading { margin-top:1.5rem; }
.pf-walkthrough-reading>summary { padding:1rem 0; font-size:1rem; font-weight:600; color:#08665f; cursor:pointer; }
.pf-walkthrough-reading>p { max-width:52rem; }
.pf-walkthrough-intro { scroll-margin-top:1.5rem; }
@media(max-width:620px) { #pf-renewal-simulation .ps-progress { padding-left:1rem; padding-right:1rem; gap:5px; } }

/* Reflow controls/diagram when visitors enlarge text, not only the viewport. */
.pf-source-row { grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr)); }
#pf-renewal-simulation .ps-progress { display:flex; flex-wrap:wrap; }
#pf-renewal-simulation .ps-progress li { flex:1 1 auto; }
#pf-renewal-simulation .ps-footer { flex-wrap:wrap; }
#pf-renewal-simulation .ps-next { margin-left:auto; }
@media(max-width:820px) { #pf-renewal-simulation .ps-progress li { flex:1 0 1.625rem; } }
@media(max-width:620px) {
  #pf-renewal-simulation .ps-bar-row { grid-template-columns:minmax(0,1fr) auto; }
  #pf-renewal-simulation .ps-bar-track { grid-column:1/-1; grid-row:2; }
  #pf-renewal-simulation .ps-bar-value { grid-column:2; grid-row:1; }
  #pf-renewal-simulation .ps-bar-scale { margin:0.875rem 0 0; }
}
/* Font-relative minimums prevent crowded KPI and chart columns at 200% text. */
#pf-renewal-simulation { overflow-wrap:anywhere; }
#pf-renewal-simulation .ps-summary { grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr)); }
#pf-renewal-simulation .ps-charts,#pf-renewal-simulation .ps-intro-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr)); }
#pf-renewal-simulation .ps-sources { grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr)); }
#pf-renewal-simulation .ps-context { grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr)); }
#pf-renewal-simulation .ps-summary b { font-size:clamp(1.25rem,7vw,2.125rem); }
