/* Canonical Client Plan Presentation — shared by Professional preview, real receiver, saved plan, and demo. */
.client-plan-document{--cp-ink:#173b37;--cp-text:#36514d;--cp-muted:#687d79;--cp-brand:#2f7f75;--cp-brand-soft:#eaf6f3;--cp-line:#d2e2de;--cp-surface:#fff;--cp-soft:#f7fbfa;display:grid;gap:0;width:100%;overflow:hidden;border:1px solid var(--cp-line);border-radius:24px;background:var(--cp-surface);color:var(--cp-text);box-shadow:0 18px 44px rgba(22,65,58,.08)}
.client-plan-document *{box-sizing:border-box}.client-plan-document h2,.client-plan-document h3,.client-plan-document h4,.client-plan-document p,.client-plan-document dl,.client-plan-document dt,.client-plan-document dd{margin:0}.client-plan-document h2,.client-plan-document h3,.client-plan-document h4{color:var(--cp-ink)}
.client-plan-state{display:grid;gap:12px;padding:clamp(20px,4vw,30px);border-bottom:1px solid var(--cp-line);background:linear-gradient(145deg,#f3fbf8,#fbfefd)}.client-plan-state-kicker,.client-plan-kicker,.client-plan-moment-copy>span,.client-plan-guidance-block>span{color:var(--cp-brand);font-size:.72rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}.client-plan-state h3{font-size:clamp(1.5rem,4vw,2rem);line-height:1.08}.client-plan-state-empty{color:var(--cp-muted);line-height:1.55}.client-plan-change-list{display:grid;gap:9px;margin-top:4px}.client-plan-change{display:grid;gap:5px;padding:13px 15px;border:1px solid var(--cp-line);border-radius:14px;background:#fff}.client-plan-change strong{color:var(--cp-ink)}.client-plan-change b{color:var(--cp-ink);font-size:1rem;line-height:1.3}.client-plan-change span{color:var(--cp-muted);line-height:1.45}.client-plan-change[data-kind="removed"] strong{color:#964c3d}.client-plan-change[data-kind="added"]{border-color:#b9dcd4}.client-plan-preserved{display:grid;gap:3px;margin-top:3px;padding:14px 15px;border-radius:14px;background:#183f3a;color:#fff}.client-plan-preserved strong{font-size:.96rem}.client-plan-preserved span{color:#d8e8e4;line-height:1.45}
.client-plan-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.85fr);gap:22px;padding:clamp(22px,4vw,34px);background:linear-gradient(145deg,#fff,#f8fcfb)}.client-plan-hero-copy{display:grid;align-content:start;gap:8px;min-width:0}.client-plan-hero h2{font-size:clamp(1.65rem,4vw,2.25rem);line-height:1.08;letter-spacing:-.025em}.client-plan-hero-copy p{max-width:64ch;color:var(--cp-muted);font-size:1rem;line-height:1.55}.client-plan-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:start;overflow:hidden;border:1px solid var(--cp-line);border-radius:16px;background:#fff}.client-plan-facts>div{display:grid;gap:2px;min-width:0;padding:11px 13px;border-right:1px solid #e5efec;border-bottom:1px solid #e5efec}.client-plan-facts>div:nth-child(2n){border-right:0}.client-plan-facts>div:nth-last-child(-n+2){border-bottom:0}.client-plan-facts>div.client-plan-fact-wide{grid-column:1/-1;border-right:0;border-bottom:0}.client-plan-facts dt{color:var(--cp-muted);font-size:.65rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}.client-plan-facts dd{overflow-wrap:anywhere;color:var(--cp-ink);font-size:.9rem;font-weight:850}
.client-plan-moment-nav{display:grid;gap:9px;padding:17px clamp(22px,4vw,34px);border-top:1px solid var(--cp-line);border-bottom:1px solid var(--cp-line);background:#fbfdfc}.client-plan-moment-nav>span{color:var(--cp-muted);font-size:.7rem;font-weight:900;letter-spacing:.065em;text-transform:uppercase}.client-plan-moment-nav>div{display:flex;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px;overscroll-behavior-inline:contain;scrollbar-width:thin}.client-plan-moment-link{display:inline-flex;flex:0 0 auto;align-items:center;gap:10px;min-height:42px;max-width:min(76vw,22rem);padding:9px 12px;border:1px solid var(--cp-line);border-radius:13px;background:#fff;color:var(--cp-ink);font-weight:850;text-decoration:none;white-space:nowrap}.client-plan-moment-link>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.client-plan-moment-link b{display:grid;place-items:center;flex:0 0 auto;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:var(--cp-brand-soft);color:var(--cp-brand);font-size:.76rem}
.client-plan-moments{display:grid}.client-plan-moment{display:grid;gap:14px;padding:clamp(22px,4vw,32px);border-bottom:1px solid var(--cp-line);scroll-margin-top:24px}.client-plan-moment:last-child{border-bottom:0}.client-plan-moment-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;min-width:0}.client-plan-moment-copy{display:grid;gap:4px;min-width:0}.client-plan-moment-head h3{font-size:clamp(1.35rem,3vw,1.7rem);line-height:1.08;letter-spacing:-.015em;overflow-wrap:anywhere}.client-plan-moment-count{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:#f1f6f4;color:var(--cp-muted);font-size:.74rem;font-weight:850;white-space:nowrap}.client-plan-support-list{display:grid;gap:12px}
.client-plan-support{overflow:hidden;border:1px solid var(--cp-line);border-radius:17px;background:#fff;box-shadow:0 5px 16px rgba(22,65,58,.035)}.client-plan-support.is-unavailable{border-color:#dec98d;background:#fffdf8}.client-plan-support-head{display:block;padding:17px 18px 12px}.client-plan-support-title{display:grid;gap:8px;min-width:0}.client-plan-support-title h4{font-size:clamp(1.12rem,3vw,1.32rem);line-height:1.15;overflow-wrap:anywhere}.client-plan-support-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.client-plan-duration,.client-plan-support-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#f1f5f4;color:var(--cp-muted);font-size:.74rem;font-weight:850}.client-plan-support-badge{background:var(--cp-brand-soft);color:var(--cp-brand);white-space:nowrap}.client-plan-support-body{display:grid;gap:0;padding:0 18px 16px}.client-plan-guidance-block{display:grid;gap:5px;padding:12px 0;border-top:1px solid #edf3f1}.client-plan-guidance-block p{color:var(--cp-text);font-size:.98rem;line-height:1.5}.client-plan-more-guidance{margin-top:3px;border-top:1px solid #edf3f1}.client-plan-more-guidance summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;color:var(--cp-brand);font-size:.84rem;font-weight:850;cursor:pointer;list-style:none}.client-plan-more-guidance summary::-webkit-details-marker{display:none}.client-plan-more-guidance summary b{font-size:1rem;transition:transform .16s ease}.client-plan-more-guidance[open] summary b{transform:rotate(180deg)}.client-plan-more-guidance-body{display:grid;gap:11px;padding:2px 0 4px}.client-plan-guidance-note{display:grid;gap:3px;padding-left:12px;border-left:3px solid var(--cp-line)}.client-plan-guidance-note strong{color:var(--cp-brand);font-size:.73rem;letter-spacing:.035em;text-transform:uppercase}.client-plan-guidance-note p{color:var(--cp-muted);font-size:.9rem;line-height:1.48}.client-plan-safety{display:grid;grid-template-columns:28px 1fr;gap:9px;padding:11px 12px;border-radius:13px;background:#fff8e8;color:#66501a}.client-plan-safety>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f3dfaa;font-weight:950}.client-plan-safety strong{font-size:.78rem}.client-plan-safety p{margin-top:2px;color:#725f2a;font-size:.9rem;line-height:1.45}
@media(max-width:720px){.client-plan-document{border-radius:21px}.client-plan-hero{grid-template-columns:1fr;gap:17px}.client-plan-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.client-plan-facts>div,.client-plan-facts>div:nth-child(2n){border-right:1px solid #e5efec;border-bottom:0}.client-plan-facts>div:nth-child(3n){border-right:0}.client-plan-facts>div.client-plan-fact-wide{grid-column:1/-1;border-top:1px solid #e5efec;border-right:0}.client-plan-moment-head{align-items:center}.client-plan-support-head{padding:16px 16px 11px}.client-plan-support-body{padding:0 16px 15px}}
@media(max-width:430px){.client-plan-hero,.client-plan-state{padding:20px}.client-plan-moment{padding:18px 20px 20px}.client-plan-moment-nav{padding:15px 20px}.client-plan-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.client-plan-facts>div:nth-child(3n){border-right:1px solid #e5efec}.client-plan-facts>div:nth-child(2n){border-right:0}.client-plan-facts>div.client-plan-fact-wide{border-right:0}.client-plan-moment-head{align-items:flex-end}.client-plan-moment-count{padding:5px 9px}.client-plan-support-head{padding:15px 15px 10px}.client-plan-support-body{padding:0 15px 14px}.client-plan-guidance-block p{font-size:.94rem}}
.client-plan-moment-link:focus-visible,.client-plan-more-guidance summary:focus-visible,.client-plan-full-plan>summary:focus-visible{outline:3px solid var(--cp-brand);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.client-plan-more-guidance summary b{transition:none}}
@media(prefers-contrast:more){.client-plan-document,.client-plan-support,.client-plan-moment-link,.client-plan-facts{border-width:2px}}

/* Real client handoff PR2 — guided update disclosure + full-plan transition. */
.client-plan-full-plan{border-top:1px solid var(--cp-line);background:#fff}
.client-plan-full-plan>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:15px clamp(22px,4vw,34px);color:var(--cp-ink);cursor:pointer;list-style:none}
.client-plan-full-plan>summary::-webkit-details-marker{display:none}
.client-plan-full-plan>summary span{font-size:1.02rem;font-weight:900;line-height:1.3}
.client-plan-full-plan>summary small{color:var(--cp-muted);font-size:.8rem;font-weight:850;white-space:nowrap}
.client-plan-full-plan>summary::after{content:'⌄';margin-left:2px;color:var(--cp-brand);font-weight:950;transition:transform .16s ease}
.client-plan-full-plan[open]>summary::after{transform:rotate(180deg)}
.client-plan-full-plan[open]>summary{border-bottom:1px solid var(--cp-line);background:#fbfdfc}
.client-plan-full-plan-body{display:block}
@media(max-width:430px){.client-plan-full-plan>summary{padding:14px 20px}.client-plan-full-plan>summary span{font-size:.96rem}.client-plan-full-plan>summary small{font-size:.74rem}}
@media(prefers-reduced-motion:reduce){.client-plan-full-plan>summary::after{transition:none}}

@media(forced-colors:active){
  .client-plan-document,.client-plan-support,.client-plan-moment-link,.client-plan-facts,.client-plan-change,.client-plan-full-plan{border-color:ButtonText!important;box-shadow:none!important}
  .client-plan-moment-count,.client-plan-moment-link b{background:Highlight!important;color:HighlightText!important}
  .client-plan-preserved{background:Canvas!important;color:CanvasText!important;border:2px solid ButtonText}
  .client-plan-preserved span,.client-plan-guidance-block p,.client-plan-hero-copy p,.client-plan-change span{color:CanvasText!important}
  .client-plan-safety{border:1px solid ButtonText;background:Canvas!important;color:CanvasText!important}
}
