/* Shared three-stage presentation for the nine local-first tools. */
.em-expanded--guided{max-width:none;margin:0 0 26px;border:0;background:transparent;box-shadow:none;color:var(--ink,#141414);font:inherit}
.em-expanded--guided .em-expanded-intro p{max-width:760px;margin:0 0 16px;color:#343434;font-size:16px;line-height:1.55}
.em-expanded--guided .em-decision-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;padding:0;margin:19px 0 20px}
.em-expanded--guided .em-decision-steps li{display:flex;align-items:center;gap:10px;position:relative;min-width:0;min-height:48px;padding:11px 16px;background:#fff;border:1px solid #9da2ac;border-radius:5px;font:700 13px/1.3 var(--sans,system-ui,sans-serif)}
.em-expanded--guided .em-decision-steps li:first-child{border-color:#b99424;background:#fff1bf}
.em-expanded--guided .em-decision-steps li:not(:last-child):after{content:'→';position:absolute;right:-16px;top:50%;transform:translate(50%,-50%);font-size:22px;font-weight:400;background:var(--bg,#f1f1ee);padding:0 2px;z-index:1}
.em-expanded--guided .em-decision-steps span{color:#262626}
.em-expanded--guided .em-expanded-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.em-expanded--guided .em-expanded-panel,.em-expanded--guided .em-expanded-explain{min-width:0;padding:22px;background:#fff;border:1px solid #d9dce3;border-radius:7px;box-shadow:0 2px 0 #e5e5e0}
.em-expanded--guided .em-expanded-result-panel{position:sticky;top:16px}
.em-expanded--guided h3{font-size:21px;line-height:1.25;letter-spacing:-.025em;margin:0 0 16px}
.em-expanded--guided .em-expanded-fields{grid-template-columns:1fr;gap:12px}
.em-expanded--guided .em-expanded-fields label{font-size:14px;gap:4px}
.em-expanded--guided input,.em-expanded--guided textarea{padding:10px 13px;background:#fff;border:1px solid #cbd0da;border-radius:5px;font:400 16px/1.3 var(--sans,system-ui,sans-serif)}
.em-expanded--guided textarea{font:400 13px/1.45 var(--mono,ui-monospace,Consolas,monospace);min-height:115px}
.em-expanded--guided .em-expanded-actions{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:10px;margin:16px 0 4px}
.em-expanded--guided button{min-width:0;min-height:40px;padding:10px 7px;border:1px solid var(--line,#d2d2cc);background:#fff;color:var(--ink,#141414);border-radius:0;box-shadow:none;font:700 12px/1.4 var(--mono,ui-monospace,Consolas,monospace)}
.em-expanded--guided button[type=submit]{background:var(--lime,#f2c94c);border-color:#d0a900;box-shadow:3px 3px 0 #b7b7b0}
.em-expanded--guided button:hover{background:#ffdc63}
.em-expanded--guided .em-expanded-saved{margin-top:10px}
.em-expanded--guided .em-expanded-saved summary{font:12px/1.4 var(--mono,ui-monospace,Consolas,monospace)}
.em-expanded--guided [role=status]{background:transparent;border:0;padding:0;margin:10px 0 0;color:#6d7180;font-size:11px}
.em-expanded--guided [data-expanded-output]{margin:0}
.em-expanded--guided .em-expanded-primary{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
.em-expanded--guided .em-expanded-primary strong{font-size:clamp(34px,3.2vw,42px);line-height:1.1;letter-spacing:-.045em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.em-expanded--guided .em-expanded-primary span{font-size:14px;color:#333}
.em-expanded--guided .em-expanded-breakdown{border-top:1px solid var(--line,#d2d2cc);margin-top:12px}
.em-expanded--guided .em-expanded-breakdown summary{padding:13px 0;font-size:12px}
.em-expanded--guided .em-expanded-card{background:#fafaf8}
.em-expanded--guided .em-expanded-explain{margin-top:14px;padding:20px 22px}
.em-expanded--guided .em-expanded-explain>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.em-expanded--guided .em-expanded-explain p{margin:0;font-size:13px;color:var(--muted,#666662)}
.em-expanded--guided .em-expanded-explain b{display:block;margin-bottom:5px;color:var(--ink,#141414);font:700 12px/1.4 var(--mono,ui-monospace,Consolas,monospace)}
.em-expanded--guided>.em-expanded-method,.em-expanded--guided>.em-expanded-note{margin:13px 0 0}
.em-expanded--guided [hidden]{display:none!important}
@media(min-width:1000px){.em-expanded--guided:is([data-expanded="rent-or-buy"],[data-expanded="independence-plan"],[data-expanded="fee-impact"]) .em-expanded-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.em-expanded--guided .em-expanded-layout{grid-template-columns:1fr}.em-expanded--guided .em-expanded-panel{padding:17px}.em-expanded--guided .em-expanded-result-panel{position:static}.em-expanded--guided .em-expanded-explain>div{grid-template-columns:1fr}.em-expanded--guided .em-decision-steps li{font-size:12px;padding:9px}}
@media(max-width:480px){.em-expanded--guided .em-decision-steps{grid-template-columns:1fr;gap:6px}.em-expanded--guided .em-decision-steps li:not(:last-child):after{display:none}.em-expanded--guided .em-expanded-actions{grid-template-columns:1fr 1fr}.em-expanded--guided .em-expanded-actions button:first-child{grid-column:1/-1}}
@media print{.em-expanded--guided{border:0;box-shadow:none}.em-expanded--guided .em-expanded-panel{border:0;box-shadow:none}.em-expanded--guided .em-expanded-layout{grid-template-columns:1fr}.em-expanded--guided .em-expanded-input-panel,.em-expanded--guided .em-decision-steps{display:none!important}}

/* Bond calendar: full-width editable schedule and month-first results. */
.em-expanded--bond .em-expanded-panel{margin-bottom:14px}
.em-expanded--bond .em-expanded-result-panel{position:static}
.em-bond-entry-scroll{max-width:100%;overflow-x:auto;border:1px solid #d9dce3;border-radius:5px}
.em-bond-entry-head,.em-bond-entry{display:grid;grid-template-columns:minmax(130px,1.5fr) minmax(85px,.65fr) minmax(125px,.9fr) repeat(3,minmax(100px,.85fr)) 38px;gap:7px;min-width:790px;align-items:end;padding:9px 11px}
.em-bond-entry-head{background:#f3f4f2;border-bottom:1px solid #d9dce3;color:#555;font-size:11px;font-weight:700}
.em-bond-entry+.em-bond-entry{border-top:1px solid #e1e3e7}
.em-bond-entry label{min-width:0;font-size:11px}
.em-bond-entry label span{display:none}
.em-bond-entry input{width:100%;min-width:0;padding:8px!important;font-size:13px!important}
.em-bond-entry [data-bond-remove]{min-height:36px;padding:5px;font-size:18px;line-height:1}
.em-expanded--bond [data-bond-add]{margin-top:10px;padding:9px 15px;background:#fff;border-color:#d9dce3}
.em-bond-source{margin-top:12px;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}
.em-bond-source summary{font-size:12px;font-weight:700}
.em-bond-source p{margin:7px 0;font-size:11px;color:#666}
.em-bond-source textarea{width:100%;min-height:90px}
.em-expanded--bond .em-expanded-actions{max-width:570px}
.em-bond-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 13px}
.em-bond-summary .em-expanded-card{min-width:0;padding:15px;border:1px solid #d9dce3;border-radius:5px;background:#fff}
.em-bond-summary .em-expanded-card:last-child{background:#fff6d9;border-color:#e2c363}
.em-bond-summary .em-expanded-card span{font-size:11px;line-height:1.4}
.em-bond-summary .em-expanded-card strong{font-size:clamp(18px,2.3vw,26px);overflow-wrap:anywhere}
.em-bond-next{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap;margin:12px 0 18px;padding:12px 14px;background:#fff9e8;border:1px solid #f0da87;border-radius:5px;font-size:12px}
.em-bond-next b{font-size:12px}
.em-bond-timeline-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.em-bond-timeline-head h4,.em-bond-chart h4{margin:8px 0 10px;font-size:17px}
.em-bond-timeline-head span{font-size:11px;color:#666}
.em-bond-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.em-bond-month{display:flex;flex-direction:column;gap:4px;min-width:0;min-height:80px;padding:10px;border:1px solid #d9dce3;border-radius:5px;background:#fff}
.em-bond-month:first-child{background:#fff8df;border-color:#e3c66b}
.em-bond-month b{font-size:12px}.em-bond-month span{font-size:12px;font-weight:700}.em-bond-month small{font-size:10px;color:#555}
.em-bond-chart{margin:18px 0 4px}
.em-bond-chart [data-bond-chart]{display:flex;align-items:end;gap:8px;height:170px;padding:8px 6px 0;border-bottom:1px solid #a8abb1;background:repeating-linear-gradient(to top,#e8e9eb 0,#e8e9eb 1px,transparent 1px,transparent 42px)}
.em-bond-bar-item{display:flex;flex:1;min-width:0;height:100%;flex-direction:column;align-items:center;justify-content:end;gap:3px}
.em-bond-bar-pair{display:flex;align-items:end;justify-content:center;gap:2px;width:100%;height:135px}
.em-bond-bar-pair i{display:block;width:min(45%,24px);min-height:0}
.em-bond-bar-coupon{background:#f2c94c}.em-bond-bar-principal{background:#aeb2b8}
.em-bond-bar-item small{max-width:100%;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.em-bond-chart p{margin:8px 0;color:#666;font-size:11px}
.em-expanded--bond .em-expanded-primary{flex-direction:row;align-items:baseline;gap:10px;margin:15px 0 0;padding:10px 12px;background:#fff8dc;border:1px solid #e7d18b;border-radius:5px}
.em-expanded--bond .em-expanded-primary strong{font-size:20px}
.em-expanded--bond .em-expanded-primary span{font-size:12px}
@media(max-width:900px){.em-bond-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.em-bond-months{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){.em-bond-entry-head{display:none}.em-bond-entry{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.em-bond-entry label span{display:block;margin-bottom:3px}.em-bond-entry label:first-child,.em-bond-entry label:nth-child(3){grid-column:1/-1}.em-bond-entry [data-bond-remove]{grid-column:1/-1}.em-bond-summary,.em-bond-months{grid-template-columns:repeat(2,minmax(0,1fr))}.em-bond-timeline-head{display:block}.em-bond-bar-item small{writing-mode:vertical-rl;max-height:48px}.em-expanded--bond .em-expanded-primary{display:block}}

/* Portfolio return: operation journal, valuation and observed cash flows. */
.em-expanded--portfolio .em-expanded-panel{margin-bottom:14px}
.em-portfolio-ledger-scroll{max-width:100%;overflow-x:auto;border:1px solid #d9dce3;border-radius:5px}
.em-portfolio-entry-head,.em-portfolio-entry{display:grid;grid-template-columns:minmax(116px,.85fr) minmax(130px,1.2fr) minmax(125px,1fr) minmax(100px,.9fr) 80px minmax(90px,.8fr) minmax(90px,.8fr) 38px;gap:7px;min-width:850px;align-items:end;padding:9px 11px}
.em-portfolio-entry-head{background:#f3f4f2;border-bottom:1px solid #d9dce3;color:#555;font-size:11px;font-weight:700}
.em-portfolio-entry+.em-portfolio-entry{border-top:1px solid #e1e3e7}
.em-portfolio-entry label{min-width:0;font-size:11px}.em-portfolio-entry label span{display:none}
.em-portfolio-entry input,.em-portfolio-entry select{width:100%;min-width:0;padding:8px!important;border:1px solid #cbd0da;border-radius:5px;background:#fff;font:400 13px/1.3 var(--sans,system-ui,sans-serif)}
.em-portfolio-entry input[readonly]{background:#f1f2f1;color:#666}
.em-portfolio-entry [data-portfolio-remove]{min-height:36px;padding:5px;font-size:18px;line-height:1}
.em-portfolio-row-actions{display:flex;gap:10px;flex-wrap:wrap;margin:11px 0}.em-portfolio-row-actions button{padding:9px 15px}
.em-portfolio-source{margin:10px 0;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}
.em-portfolio-source summary{font-size:12px;font-weight:700}.em-portfolio-source p{margin:7px 0;font-size:11px;color:#666}.em-portfolio-source textarea{width:100%}
.em-portfolio-file{position:absolute;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.em-portfolio-source>p:last-child{font-size:11px;color:#666}
.em-portfolio-valuation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;margin:16px 0;padding:16px;background:#fff9e7;border:1px solid #ead38b;border-radius:5px}
.em-portfolio-valuation label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:700}.em-portfolio-valuation input{width:100%}.em-portfolio-valuation p{grid-column:1/-1;margin:0;color:#555;font-size:11px}
.em-expanded--portfolio .em-expanded-actions{max-width:580px}
.em-portfolio-result-grid{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,2fr);gap:12px;align-items:stretch}
.em-expanded--portfolio .em-expanded-primary{justify-content:center;margin:0;padding:16px;background:#fff1b9;border:1px solid #e2bf48;border-radius:5px}
.em-expanded--portfolio .em-expanded-primary strong{font-size:clamp(25px,3vw,38px)}
.em-expanded--portfolio .em-expanded-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.em-expanded--portfolio .em-expanded-card{min-width:0;padding:12px;border:1px solid #d9dce3;border-radius:5px;background:#fff}
.em-expanded--portfolio .em-expanded-card:nth-child(4),.em-expanded--portfolio .em-expanded-card:nth-child(6){display:none}
.em-expanded--portfolio .em-expanded-card span{font-size:10px}.em-expanded--portfolio .em-expanded-card strong{font-size:17px;overflow-wrap:anywhere}
.em-portfolio-xirr{margin:13px 0;padding:10px 14px;background:#f2f4f2;border-left:3px solid #e5bd3d;font-size:13px;font-weight:700}
.em-portfolio-chart{margin-top:17px}.em-portfolio-chart h4{margin:0 0 12px;font-size:17px}
.em-portfolio-chart [data-portfolio-chart]{display:grid;gap:7px;max-width:820px}.em-portfolio-flow{display:grid;grid-template-columns:100px minmax(0,1fr) minmax(150px,auto);align-items:center;gap:9px;font-size:11px}.em-portfolio-flow i{display:block;min-width:4px;max-width:100%;height:16px}.em-portfolio-flow-in{background:#f2c94c}.em-portfolio-flow-out{background:#9ea8b5}.em-portfolio-flow b{text-align:right;font-size:11px}
.em-portfolio-chart p{color:#666;font-size:11px}
@media(max-width:900px){.em-portfolio-result-grid{grid-template-columns:1fr}.em-expanded--portfolio .em-expanded-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.em-portfolio-entry-head{display:none}.em-portfolio-entry{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.em-portfolio-entry label span{display:block;margin-bottom:3px}.em-portfolio-entry label:nth-child(2),.em-portfolio-entry label:nth-child(7){grid-column:1/-1}.em-portfolio-entry [data-portfolio-remove]{grid-column:1/-1}.em-portfolio-valuation{grid-template-columns:1fr}.em-portfolio-row-actions{display:grid;grid-template-columns:1fr 1fr}.em-portfolio-row-actions button{padding:8px 4px}.em-portfolio-flow{grid-template-columns:77px minmax(0,1fr);gap:5px}.em-portfolio-flow b{grid-column:2;text-align:left}.em-expanded--portfolio .em-expanded-cards{grid-template-columns:1fr 1fr}}

/* Family balance: editable snapshot and grouped capital map. */
.em-expanded--family .em-expanded-panel{margin-bottom:14px}
.em-family-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px}.em-family-heading h3{margin:0}
.em-family-heading label{display:flex;align-items:center;gap:10px;color:#555;font-size:12px}.em-family-heading input{width:155px}
.em-family-ledger-scroll{max-width:100%;overflow-x:auto;border:1px solid #d9dce3;border-radius:5px}
.em-family-entry-head,.em-family-entry{display:grid;grid-template-columns:minmax(100px,.9fr) minmax(145px,1.4fr) minmax(95px,.7fr) minmax(100px,.8fr) minmax(70px,.6fr) minmax(95px,.7fr) minmax(100px,.9fr) minmax(95px,.8fr) 38px;gap:7px;min-width:945px;align-items:end;padding:8px 10px}
.em-family-entry-head{background:#f3f4f2;border-bottom:1px solid #d9dce3;color:#555;font-size:11px;font-weight:700}
.em-family-entry+.em-family-entry{border-top:1px solid #e1e3e7}.em-family-entry:has([data-family-field="2"] option[value="liability"]:checked){background:#fff8f7}.em-family-entry:has([data-family-field="5"] option[value="yes"]:checked){background:#fcfff5}
.em-family-entry label{min-width:0;font-size:11px}.em-family-entry label span{display:none}
.em-family-entry input,.em-family-entry select{width:100%;min-width:0;padding:8px!important;border:1px solid #cbd0da;border-radius:5px;background:#fff;font:400 12px/1.3 var(--sans,system-ui,sans-serif)}
.em-family-entry [data-family-remove]{min-height:34px;padding:5px;font-size:18px;line-height:1}.em-expanded--family [data-family-add]{margin-top:10px;padding:9px 15px}
.em-family-source{margin:12px 0;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}.em-family-source summary{font-size:12px;font-weight:700}.em-family-source p{margin:7px 0;color:#666;font-size:11px}.em-family-source textarea{width:100%}
.em-expanded--family .em-expanded-actions{max-width:590px}
.em-family-summary{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,2fr);gap:12px}
.em-expanded--family .em-expanded-primary{justify-content:center;margin:0;padding:17px;background:#fff2bd;border:1px solid #e2bf48;border-radius:5px}
.em-expanded--family .em-expanded-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.em-expanded--family .em-expanded-card{min-width:0;padding:12px;border:1px solid #d9dce3;border-radius:5px;background:#fff}.em-expanded--family .em-expanded-card:nth-child(3){display:none}.em-expanded--family .em-expanded-card span{font-size:11px}.em-expanded--family .em-expanded-card strong{font-size:clamp(16px,1.8vw,21px);overflow-wrap:anywhere}
.em-family-bars{margin:19px 0}.em-family-bars h4{margin:0 0 12px;font-size:17px}.em-family-bar-row{display:grid;grid-template-columns:170px minmax(0,1fr) 160px;gap:10px;align-items:center;margin:9px 0;font-size:12px}.em-family-bar-row b{text-align:right}.em-family-bar-track{height:19px;background:#f0f1f2;border-radius:3px;overflow:hidden}.em-family-bar-track i{display:block;height:100%}.em-family-bar-asset{background:#f2c94c}.em-family-bar-liquid{background:#99b88b}.em-family-bar-debt{background:#ee9f9f}.em-family-bars p{margin:12px 0 0;color:#666;font-size:11px}
@media(max-width:900px){.em-family-summary{grid-template-columns:1fr}.em-expanded--family .em-expanded-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){.em-family-heading{display:block}.em-family-heading label{margin-top:12px;justify-content:space-between}.em-family-entry-head{display:none}.em-family-entry{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.em-family-entry label span{display:block;margin-bottom:3px}.em-family-entry label:nth-child(2),.em-family-entry label:nth-child(7){grid-column:1/-1}.em-family-entry [data-family-remove]{grid-column:1/-1}.em-expanded--family .em-expanded-cards{grid-template-columns:1fr 1fr}.em-family-bar-row{grid-template-columns:100px minmax(0,1fr);gap:5px}.em-family-bar-row b{grid-column:2;text-align:left}}

/* Multiple debts: card inputs and honest head-to-head repayment paths. */
.em-expanded--debts .em-expanded-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.em-debt-entry{position:relative;margin:0 0 10px;padding:12px;border:1px solid #d9dce3;border-radius:5px;background:#fff}
.em-debt-entry label{display:flex;flex-direction:column;gap:3px;margin:0;font-size:11px}.em-debt-entry label:first-child{margin-right:26px;font-weight:700}.em-debt-entry label:first-child input{font-weight:700}
.em-debt-entry label:not(:first-child){display:inline-flex;width:calc(33.333% - 7px);margin:9px 7px 0 0;vertical-align:top}.em-debt-entry label:nth-child(4){margin-right:0}
.em-debt-entry input{min-width:0;width:100%;font-size:13px!important}.em-debt-entry [data-debt-remove]{position:absolute;right:10px;top:9px;width:30px;min-height:30px;padding:3px;font-size:17px;line-height:1}
.em-expanded--debts [data-debt-add]{width:100%;background:#fff5d7;border-color:#e1c760}
.em-debt-source{margin-top:12px;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}.em-debt-source summary{font-size:12px;font-weight:700}.em-debt-source p{margin:7px 0;color:#666;font-size:11px}.em-debt-source textarea{width:100%}
.em-debt-budget{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.em-debt-budget label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700}.em-debt-budget input{width:100%}
.em-debt-rule{margin:12px 0;padding:10px 12px;background:#fff8e7;border-left:3px solid #e4bb3c;color:#555;font-size:11px}
.em-debt-strategies{display:grid;grid-template-columns:1fr 1fr;gap:10px}.em-debt-strategy{min-width:0;padding:14px;border:1px solid #d9dce3;border-radius:5px;background:#fff}.em-debt-strategy--avalanche{background:#fff6d5;border-color:#e6c663}.em-debt-strategy h4{margin:0 0 3px;font-size:14px}.em-debt-strategy p{margin:0;color:#666;font-size:11px}.em-debt-strategy strong{display:block;margin-top:15px;font-size:clamp(22px,2.3vw,29px);line-height:1}.em-debt-strategy small{display:block;margin:4px 0 15px;color:#555;font-size:10px}.em-debt-strategy div{display:flex;justify-content:space-between;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid #e1e1df;font-size:11px}.em-debt-strategy div b{text-align:right;overflow-wrap:anywhere}
.em-debt-chart{margin-top:20px}.em-debt-chart h4{margin:0 0 10px;font-size:14px}.em-debt-chart [data-debt-chart]{height:185px;border-bottom:1px solid #b8bdc4;background:repeating-linear-gradient(to top,#e9eaed 0,#e9eaed 1px,transparent 1px,transparent 36px)}.em-debt-chart svg{display:block;width:100%;height:100%}.em-debt-chart p{display:flex;gap:8px;align-items:center;margin:9px 0;color:#555;font-size:10px}.em-debt-chart p i{display:inline-block;width:15px;height:3px;background:#d5a20d}.em-debt-chart p i:nth-of-type(2){background:#65758c}
@media(max-width:900px){.em-expanded--debts .em-expanded-layout{grid-template-columns:1fr}.em-expanded--debts .em-expanded-result-panel{position:static}}
@media(max-width:480px){.em-debt-entry label:not(:first-child){width:calc(50% - 6px)}.em-debt-entry label:nth-child(3){margin-right:0}.em-debt-entry label:nth-child(4){width:100%}.em-debt-strategies{grid-template-columns:1fr}.em-debt-budget{grid-template-columns:1fr}}

/* Rent versus buy: two branches with scenario assumptions separate from essentials. */
.em-expanded--rent .em-expanded-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.em-rent-core{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.em-rent-core label,.em-rent-advanced label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700}.em-rent-core input,.em-rent-advanced input{width:100%;min-width:0;font-size:14px!important}
.em-rent-advanced{margin-top:15px;padding:10px 12px;border:1px solid #d9dce3;border-radius:5px}.em-rent-advanced summary{font-size:12px;font-weight:700}.em-rent-advanced>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.em-rent-advanced p{margin:10px 0 0;color:#666;font-size:11px}
.em-rent-branches{display:grid;grid-template-columns:1fr 1fr;gap:10px}.em-rent-branch{min-width:0;padding:15px;border:1px solid #d9dce3;border-radius:5px}.em-rent-branch--buy{background:#fff6d4;border-color:#e6c663}.em-rent-branch--rent{background:#f5f7fa}.em-rent-branch h4{margin:0;font-size:14px}.em-rent-branch strong{display:block;margin:15px 0 3px;font-size:clamp(20px,2.2vw,27px);overflow-wrap:anywhere}.em-rent-branch span{font-size:11px;color:#555}
.em-rent-difference{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:12px;padding:13px 15px;border:1px solid #d5e2d2;background:#f2f8ef;border-radius:5px}.em-rent-difference--negative{border-color:#edc6c6;background:#fff4f4}.em-rent-difference span{font-size:12px}.em-rent-difference strong{margin-left:auto;font-size:23px;color:#247343}.em-rent-difference--negative strong{color:#a43f3f}.em-rent-difference small{display:none}
.em-rent-debt{margin:10px 0;color:#555;font-size:12px}.em-rent-chart{margin-top:16px}.em-rent-chart h4{margin:0 0 10px;font-size:14px}.em-rent-chart [data-rent-chart]{height:185px;border-bottom:1px solid #b8bdc4;background:repeating-linear-gradient(to top,#e9eaed 0,#e9eaed 1px,transparent 1px,transparent 36px)}.em-rent-chart svg{display:block;width:100%;height:100%}.em-rent-chart p{display:flex;gap:8px;align-items:center;margin:8px 0;color:#555;font-size:10px}.em-rent-chart p i{display:inline-block;width:15px;height:3px;background:#d5a20d}.em-rent-chart p i:nth-of-type(2){background:#65758c}
.em-rent-sensitivity{margin:15px 0;padding:11px 13px;border-left:3px solid #e4bb3c;background:#fff9e9;color:#444;font-size:11px;line-height:1.5}
@media(max-width:950px){.em-expanded--rent .em-expanded-layout{grid-template-columns:1fr}.em-expanded--rent .em-expanded-result-panel{position:static}}
@media(max-width:480px){.em-rent-core,.em-rent-advanced>div{grid-template-columns:1fr}.em-rent-branches{grid-template-columns:1fr}.em-rent-difference strong{margin-left:0}}

/* Independence plan: three explicit return assumptions against one growing goal. */
.em-expanded--independence .em-expanded-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
.em-independence-input h4{margin:17px 0 10px;padding-top:12px;border-top:1px solid #e1e3e6;font-size:14px}.em-independence-input h4:first-child{margin-top:0;padding-top:0;border:0}
.em-independence-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.em-independence-field-grid label,.em-independence-rates label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700}.em-independence-field-grid input,.em-independence-rates input{width:100%;min-width:0;font-size:14px!important}
.em-independence-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.em-independence-caution{margin:14px 0 2px;padding:10px 12px;background:#fff9e7;border-left:3px solid #e0b638;color:#555;font-size:11px}
.em-independence-goal{padding:15px 17px;border:1px solid #e4cd79;border-radius:5px;background:#fff5d5}.em-independence-goal span{display:block;color:#555;font-size:12px}.em-independence-goal strong{display:block;margin-top:6px;font-size:clamp(25px,2.7vw,36px);overflow-wrap:anywhere}
.em-independence-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:13px 0}.em-independence-scenarios>div{min-width:0;min-height:110px;padding:13px;border:1px solid #d9dce3;border-radius:5px;background:#fff}.em-independence-scenarios>div:nth-child(2){background:#fff9e6;border-color:#ead38b}.em-independence-scenarios b{display:block;font-size:11px}.em-independence-scenarios strong{display:block;margin-top:18px;font-size:clamp(16px,1.8vw,22px);overflow-wrap:anywhere}
.em-independence-chart{margin-top:17px}.em-independence-chart h4{margin:0 0 11px;font-size:14px}.em-independence-chart [data-independence-chart]{height:200px;border-bottom:1px solid #b8bdc4;background:repeating-linear-gradient(to top,#e9eaed 0,#e9eaed 1px,transparent 1px,transparent 40px)}.em-independence-chart svg{display:block;width:100%;height:100%}.em-independence-chart p{margin:9px 0;color:#555;font-size:11px}
@media(max-width:950px){.em-expanded--independence .em-expanded-layout{grid-template-columns:1fr}.em-expanded--independence .em-expanded-result-panel{position:static}}
@media(max-width:480px){.em-independence-field-grid{grid-template-columns:1fr}.em-independence-rates{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.em-independence-rates label{font-size:10px}.em-independence-scenarios{grid-template-columns:1fr}.em-independence-scenarios>div{min-height:0}.em-independence-scenarios strong{margin-top:8px}}

/* Fee impact: symmetric fee assumptions and two measured capital paths. */
.em-expanded--fees .em-expanded-panel{margin-bottom:14px}.em-fees-base{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.em-fees-base label,.em-fees-options label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700}.em-fees-base input,.em-fees-options input{width:100%;min-width:0;font-size:14px!important}
.em-fees-assumption{margin:13px 0;padding:10px 12px;background:#fff9e9;border-left:3px solid #e4bc44;color:#555;font-size:11px}
.em-fees-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.em-fees-options fieldset{min-width:0;margin:0;padding:14px;border:1px solid #d9dce3;border-radius:5px}.em-fees-options fieldset:first-child{background:#f3fbf5}.em-fees-options fieldset:last-child{background:#f8f5fb}.em-fees-options legend{padding:0 6px;font-size:14px;font-weight:700}.em-fees-options fieldset>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.em-expanded--fees .em-expanded-actions{max-width:610px}
.em-fees-summary{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:10px}.em-fees-branch,.em-fees-difference{min-width:0;padding:15px;border:1px solid #d9dce3;border-radius:5px}.em-fees-branch:first-child{background:#f1faf4}.em-fees-branch:nth-child(2){background:#f8f4fb}.em-fees-difference{background:#fff5d7;border-color:#e5c96c}.em-fees-difference--negative{background:#fff4f4;border-color:#edc6c6}.em-fees-branch span,.em-fees-difference span{display:block;font-size:11px}.em-fees-branch strong,.em-fees-difference strong{display:block;margin:12px 0;font-size:clamp(19px,2.3vw,28px);overflow-wrap:anywhere}.em-fees-branch small,.em-fees-difference small{color:#555;font-size:10px}.em-fees-difference small{display:none}
.em-fees-chart{margin:18px 0}.em-fees-chart h4{margin:0 0 10px;font-size:15px}.em-fees-chart [data-fees-chart]{height:190px;border-bottom:1px solid #b8bdc4;background:repeating-linear-gradient(to top,#e9eaed 0,#e9eaed 1px,transparent 1px,transparent 38px)}.em-fees-chart svg{display:block;width:100%;height:100%}.em-fees-chart p{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:11px;color:#555}.em-fees-chart p i{display:inline-block;width:15px;height:3px;background:#3f9a69}.em-fees-chart p i:nth-of-type(2){background:#8060ad}.em-fees-explain{padding:10px 12px;background:#fff9e9;border-left:3px solid #e4bc44;font-size:11px;color:#555}
@media(max-width:900px){.em-fees-base{grid-template-columns:repeat(2,minmax(0,1fr))}.em-fees-summary{grid-template-columns:1fr 1fr}.em-fees-difference{grid-column:1/-1}}
@media(max-width:480px){.em-fees-base,.em-fees-options,.em-fees-options fieldset>div,.em-fees-summary{grid-template-columns:1fr}.em-fees-difference{grid-column:auto}}

/* 2025 deposit-interest tax: transparent arithmetic, visible exclusions and scope. */
.em-expanded--tax .em-expanded-panel{margin-bottom:14px}.em-tax-year-banner{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 13px;padding:12px 15px;border:1px solid #ecd58a;border-radius:5px;background:#fff8de;font-size:12px}.em-tax-year-banner b{font-size:13px}
.em-tax-entry-head,.em-tax-entry{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,1fr) minmax(160px,1fr) 38px;gap:10px;align-items:end;padding:10px 12px}.em-tax-entry-head{color:#555;background:#f3f4f2;border:1px solid #d9dce3;border-radius:5px 5px 0 0;font-size:11px;font-weight:700}.em-tax-entry{border:1px solid #d9dce3;border-top:0;background:#fff}.em-tax-entry:last-child{border-radius:0 0 5px 5px}.em-tax-entry label{display:flex;min-width:0;flex-direction:column;gap:3px;font-size:11px}.em-tax-entry label span{display:none}.em-tax-entry input,.em-tax-entry select{width:100%;min-width:0;padding:9px;border:1px solid #cbd0da;border-radius:5px;background:#fff;font:400 13px/1.3 var(--sans,system-ui,sans-serif)}.em-tax-entry [data-tax-remove]{min-height:37px;padding:4px;font-size:18px}
.em-expanded--tax [data-tax-add]{margin:11px 0;padding:9px 15px;background:#fff8e0}.em-tax-source{margin:7px 0 13px;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}.em-tax-source summary{font-size:12px;font-weight:700}.em-tax-source p{font-size:11px;color:#666}.em-tax-source textarea{width:100%}
.em-tax-other{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,2fr);gap:12px;align-items:center;margin:12px 0;padding:15px;border:1px solid #e6d48c;border-radius:5px;background:#fff9e8}.em-tax-other label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700}.em-tax-other input{width:100%}.em-tax-other p{margin:0;color:#555;font-size:11px}
.em-expanded--tax .em-expanded-actions{max-width:600px}
.em-tax-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.em-tax-flow>div{min-width:0;min-height:105px;padding:15px;border:1px solid #d9dce3;border-radius:5px;background:#fff}.em-tax-flow>div:nth-child(2){background:#f4f2fb}.em-tax-flow>div:nth-child(3){background:#eff8f3}.em-tax-flow>.em-tax-result{background:#fff1c1;border-color:#e1c365}.em-tax-flow span{display:block;font-size:11px}.em-tax-flow strong{display:block;margin:17px 0 0;font-size:clamp(17px,2vw,25px);overflow-wrap:anywhere}.em-tax-flow small{display:none}
.em-tax-excluded{margin:13px 0;padding:10px 12px;background:#f4f5f5;color:#555;font-size:11px}.em-tax-warning{margin:14px 0;padding:13px 15px;background:#fff6e6;border-left:3px solid #dfae34;font-size:12px;color:#444}
@media(max-width:850px){.em-tax-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.em-tax-entry-head{display:none}.em-tax-entry{grid-template-columns:1fr 1fr}.em-tax-entry label span{display:block}.em-tax-entry label:first-child{grid-column:1/-1}.em-tax-entry [data-tax-remove]{grid-column:1/-1}.em-tax-other{grid-template-columns:1fr}}
@media(max-width:420px){.em-tax-flow{grid-template-columns:1fr 1fr}.em-tax-flow>div{padding:10px;min-height:100px}.em-tax-flow strong{font-size:17px}}

/* Personal inflation: editable fixed-quantity basket and category contribution map. */
.em-inflation-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.85fr);gap:12px;align-items:start}.em-inflation-layout>.em-expanded-panel{min-width:0}
.em-inflation-entry-head,.em-inflation-entry{display:grid;grid-template-columns:minmax(130px,1.5fr) repeat(3,minmax(95px,1fr)) 34px;gap:7px;align-items:end;padding:9px 10px}.em-inflation-entry-head{background:#f3f4f2;border:1px solid #d9dce3;border-radius:5px 5px 0 0;font-size:11px;font-weight:700;color:#555}.em-inflation-entry{border:1px solid #d9dce3;border-top:0;background:#fff}.em-inflation-entry:last-child{border-radius:0 0 5px 5px}.em-inflation-entry label{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:11px}.em-inflation-entry label span{display:none}.em-inflation-entry input{width:100%;min-width:0;padding:8px!important;border:1px solid #cbd0da;border-radius:5px;background:#fff;font:400 12px/1.3 var(--sans,system-ui,sans-serif)}.em-inflation-entry [data-inflation-remove]{min-height:35px;padding:4px;font-size:17px}
.em-expanded--inflation [data-inflation-add]{margin:12px 0;padding:9px 14px;background:#fff9e9}.em-inflation-source{margin:9px 0 13px;padding:9px 12px;border:1px solid #d9dce3;border-radius:5px}.em-inflation-source summary{font-size:12px;font-weight:700}.em-inflation-source p{font-size:11px;color:#666}.em-inflation-source textarea{width:100%}.em-expanded--inflation .em-expanded-actions{max-width:550px}
.em-inflation-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px}.em-inflation-summary>div{min-width:0;min-height:93px;padding:13px;border:1px solid #d9dce3;border-radius:5px;background:#fff}.em-inflation-summary>div:nth-child(2){background:#f6f8f6}.em-inflation-summary>div:nth-child(3){background:#fff8e9}.em-inflation-summary>.em-inflation-primary{background:#fff1bc;border-color:#e5c665}.em-inflation-summary--falling>div:nth-child(3),.em-inflation-summary--falling>.em-inflation-primary{background:#edf8f0;border-color:#bbdac5}.em-inflation-summary span{display:block;font-size:11px;line-height:1.4}.em-inflation-summary strong{display:block;margin-top:12px;font-size:clamp(19px,2vw,25px);overflow-wrap:anywhere}.em-inflation-summary small{display:none}
.em-inflation-warning{margin:12px 0;padding:10px 12px;background:#f5f6f4;color:#555;font-size:11px}.em-inflation-chart{margin-top:16px}.em-inflation-chart h4{margin:0 0 12px;font-size:14px}.em-inflation-bar-row{display:grid;grid-template-columns:minmax(80px,100px) minmax(0,1fr) minmax(70px,100px);gap:8px;align-items:center;margin:10px 0;font-size:11px}.em-inflation-bar-row span{overflow-wrap:anywhere}.em-inflation-bar-track{height:14px;background:#f0f1f2;border-radius:3px;overflow:hidden}.em-inflation-bar-track i{display:block;height:100%}.em-inflation-bar-up{background:#f1c84b}.em-inflation-bar-down{background:#8fbfa4}.em-inflation-bar-row b{text-align:right;overflow-wrap:anywhere}
@media(max-width:1050px){.em-inflation-layout{grid-template-columns:1fr}}
@media(max-width:550px){.em-inflation-entry-head{display:none}.em-inflation-entry{grid-template-columns:1fr 1fr}.em-inflation-entry label span{display:block}.em-inflation-entry label:first-child{grid-column:1/-1}.em-inflation-entry [data-inflation-remove]{grid-column:1/-1}.em-inflation-summary{grid-template-columns:1fr 1fr}.em-inflation-bar-row{grid-template-columns:75px minmax(0,1fr)}.em-inflation-bar-row b{grid-column:2;text-align:left}}
