/* Shared public calculators: content first, no framework, no private app overrides. */
.mupt-page{--mupt-ink:#193d35;--mupt-muted:#52665f;--mupt-green:#19684b;--mupt-line:#dfe8e2;max-width:1200px;margin:0 auto;padding:32px 32px 0;color:var(--mupt-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;font-size:16px;line-height:1.6}
.mupt-page *{box-sizing:border-box}.mupt-page [hidden]{display:none!important}.mupt-page a{color:var(--mupt-green)}.mupt-page button,.mupt-page input{font:inherit}.mupt-page h1,.mupt-page h2,.mupt-page h3,.mupt-page p{margin:0}.mupt-page h1{font-size:40px!important;line-height:1.12!important;letter-spacing:-1.5px;font-weight:720}.mupt-page h1 span{color:#54806b}.mupt-page h2{font-size:25px;line-height:1.25;letter-spacing:-.65px;font-weight:680}.mupt-page h3{font-size:18px;line-height:1.35;letter-spacing:-.25px}.mupt-page p{color:var(--mupt-muted)}
.mupt-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font-size:13px;color:var(--mupt-muted);margin-bottom:32px}.mupt-breadcrumb a{text-decoration:none}.mupt-hero{padding:8px 0 36px;max-width:800px}.mupt-hero>p:not(.mupt-eyebrow){font-size:18px;max-width:700px;margin-top:20px}.mupt-eyebrow{font-size:11px!important;font-weight:750;letter-spacing:1.6px;color:var(--mupt-green)!important;margin-bottom:13px!important}.mupt-benefits{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px;font-size:13px;font-weight:600;color:#3f6c57}
.mupt-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:24px;align-items:start}.mupt-card{background:#fff;border:1px solid var(--mupt-line);border-radius:24px;padding:28px;box-shadow:0 5px 26px #153f2b04;min-width:0}.mupt-section-heading>p:last-child{font-size:14px;margin-top:12px}.mupt-section-heading{margin-bottom:14px}.mupt-result{background:linear-gradient(145deg,#eff8ef,#f8fbf8)}.mupt-budget-result{position:sticky;top:calc(var(--mu-web-header-offset,76px) + 24px)}
.mupt-cost-row{display:grid;grid-template-columns:minmax(0,1fr) 128px;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid #eaf0ec}.mupt-cost-row:last-child{border-bottom:0}.mupt-cost-row label strong{display:block;font-size:14px;font-weight:650;line-height:1.4}.mupt-cost-row label small{display:block;color:var(--mupt-muted);font-size:12px;line-height:1.45;margin-top:4px}.mupt-cost-row--deposit{margin-top:8px;border-top:1px dashed #c5d9cc}.mupt-money-input{display:flex;align-items:center;gap:7px;background:#f7faf8;border:1px solid #d9e4dc;border-radius:12px;padding:0 12px;min-width:0;height:48px}.mupt-money-input input{background:transparent;border:0;box-shadow:none;outline:none;text-align:right;width:100%;min-width:0;color:var(--mupt-ink);padding:0;font-size:16px;font-variant-numeric:tabular-nums}.mupt-money-input>span{color:#637c70}.mupt-money-input:focus-within{border-color:#218556;box-shadow:0 0 0 3px #21855618}.mupt-money-input:has([aria-invalid=true]){border-color:#b04436;background:#fff6f3}.mupt-total{font-size:clamp(32px,3.7vw,46px);font-weight:730;line-height:1.2;letter-spacing:-1.6px;color:var(--mupt-ink)!important;font-variant-numeric:tabular-nums;margin-top:22px!important;overflow-wrap:anywhere}
.mupt-note{font-size:13px;color:var(--mupt-muted);line-height:1.5}.mupt-totals{margin:25px 0 16px;padding-top:16px;border-top:1px solid #d9e6dc}.mupt-totals>div{display:flex;justify-content:space-between;gap:18px;padding:7px 0;font-size:13px}.mupt-totals dt{max-width:65%}.mupt-totals dd{font-weight:650;text-align:right;font-variant-numeric:tabular-nums;margin:0;white-space:nowrap}.mupt-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--mupt-green);background:var(--mupt-green);color:#fff!important;border-radius:13px;padding:13px 19px;min-height:48px;text-decoration:none!important;font-weight:650!important;font-size:14px!important;line-height:1.4;cursor:pointer;transition:background .16s,transform .16s;text-align:center}.mupt-button:hover{background:#12553d;transform:translateY(-1px)}.mupt-button--secondary{background:#fff;color:var(--mupt-green)!important;border-color:#cbded1}.mupt-button--secondary:hover{background:#e9f4eb}.mupt-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.mupt-budget-result>.mupt-button{width:100%;margin-top:12px}.mupt-budget-result>[data-budget-continue]{margin-top:24px}.mupt-text-button{border:0;background:none;padding:14px 0;color:var(--mupt-muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-size:12px!important}.mupt-storage-note{margin-top:14px!important;font-size:12px}.mupt-preview-link{display:flex;gap:12px;border-top:1px solid #d9e6dc;padding-top:20px;margin-top:24px;align-items:start}.mupt-preview-link>span{background:#daeddd;border-radius:50%;width:26px;height:26px;text-align:center;flex:none;color:#276743;font-weight:700}.mupt-preview-link p{font-size:13px}.mupt-error{padding:12px 14px;background:#fff1e9;border-radius:12px;color:#8b3828!important;margin-top:14px!important;font-size:14px}.mupt-page :focus-visible{outline:3px solid #28845d;outline-offset:4px}.mupt-money-input input:focus-visible{outline:none}
.mupt-editorial{margin-top:40px}.mupt-editorial>p:not(.mupt-eyebrow){margin-top:16px;max-width:850px}.mupt-explain-grid,.mupt-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px}.mupt-explain-grid p,.mupt-step-grid p{font-size:14px;margin-top:10px}.mupt-faq{margin-top:44px}.mupt-faq>h2{margin-bottom:20px}.mupt-faq details{border-bottom:1px solid var(--mupt-line);padding:0 4px}.mupt-faq summary{padding:18px 28px 18px 0;font-weight:600;cursor:pointer;position:relative;list-style:none}.mupt-faq summary::-webkit-details-marker{display:none}.mupt-faq summary:after{content:'+';position:absolute;right:4px;font-size:22px;font-weight:400;line-height:1.1}.mupt-faq details[open] summary:after{content:'−'}.mupt-faq details>p{font-size:14px;padding-bottom:20px;max-width:900px}.mupt-related{margin:44px 0}.mupt-related>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.mupt-related a{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--mupt-line);border-radius:18px;padding:20px;text-decoration:none;font-size:14px;font-weight:600}.mupt-related a:hover{border-color:#9abda7;background:#f1f8f1}.mupt-related a span{flex:none}.mupt-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mupt-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.mupt-field{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:14px;font-weight:600}.mupt-field input,.mupt-field select{width:100%;min-width:0;min-height:48px;border:1px solid #c9dcd0;border-radius:12px;padding:11px 13px;background:#fff;color:var(--mupt-ink);font-size:16px}.mupt-field small{font-weight:400;color:var(--mupt-muted)}.mupt-date-form{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin-top:22px}.mupt-date-form .mupt-field{flex:1 1 220px}.mupt-status{font-size:14px;margin-top:14px!important}.mupt-phase-list{display:grid;gap:18px;margin:28px 0}.mupt-phase{border:1px solid var(--mupt-line);border-radius:24px;background:#fff;overflow:hidden}.mupt-phase>header,.mupt-phase>summary{padding:22px 26px;display:flex;gap:16px;align-items:center;cursor:pointer}.mupt-phase-number{width:38px;height:38px;flex:none;border-radius:12px;background:#edf6ef;color:var(--mupt-green);display:inline-flex;align-items:center;justify-content:center;font-weight:700}.mupt-task-list{list-style:none;padding:0 26px 12px;margin:0}.mupt-task-row{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:15px 0;border-top:1px solid #edf1ee}.mupt-task-copy{min-width:0;flex:1}.mupt-task-copy a{font-size:15px;font-weight:600;text-decoration:none}.mupt-task-copy small,.mupt-task-copy p{display:block;font-size:12px;color:var(--mupt-muted);margin-top:3px}.mupt-task-timing{flex:0 0 160px;font-size:12px;text-align:right;color:var(--mupt-muted)}.mupt-task-date{display:block;font-weight:650;color:var(--mupt-green);font-size:13px}.mupt-page .mu-site-footer-wrap{margin-top:40px}
@media(max-width:1000px){.mupt-page h1{font-size:36px!important}.mupt-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr);gap:18px}.mupt-card{padding:22px}.mupt-cost-row{grid-template-columns:minmax(0,1fr) 110px;gap:10px}.mupt-explain-grid,.mupt-step-grid{gap:20px}}
@media(max-width:760px){.mupt-page{padding:22px 20px 0}.mupt-page h1{font-size:32px!important;letter-spacing:-1px}.mupt-page h2{font-size:23px}.mupt-grid{grid-template-columns:1fr}.mupt-hero{padding-bottom:28px}.mupt-hero>p:not(.mupt-eyebrow){font-size:16px;line-height:1.6}.mupt-benefits{font-size:12px;gap:8px 14px}.mupt-card{border-radius:20px;padding:22px}.mupt-budget-result{position:static}.mupt-cost-row{grid-template-columns:minmax(0,1fr) 115px;gap:12px}.mupt-explain-grid,.mupt-step-grid,.mupt-related>div{grid-template-columns:1fr;gap:18px}.mupt-related a{min-height:68px}.mupt-phase{border-radius:20px}.mupt-phase>header,.mupt-phase>summary{padding:20px}.mupt-task-list{padding:0 20px 10px}.mupt-task-row{gap:10px;align-items:start}.mupt-task-timing{flex-basis:115px}.mupt-breadcrumb{margin-bottom:24px}.mupt-editorial,.mupt-faq,.mupt-related{margin-top:32px}}
@media(max-width:375px){.mupt-page{padding-inline:14px}.mupt-card{padding:18px}.mupt-cost-row{grid-template-columns:minmax(0,1fr) 100px}.mupt-money-input{padding-inline:9px}.mupt-task-row{flex-direction:column}.mupt-task-timing{text-align:left;flex-basis:auto}.mupt-button{padding-inline:14px}}
@media(prefers-reduced-motion:reduce){.mupt-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.mu-web-nav,.mu-web-header,.mupt-breadcrumb,.mupt-actions,.mupt-button,.mupt-text-button,.mu-site-footer-wrap,.mupt-related{display:none!important}.mupt-page{max-width:none;padding:0;font-size:10pt}.mupt-grid{display:block}.mupt-card{box-shadow:none;break-inside:avoid;margin-bottom:16px}.mupt-budget-result{position:static}.mupt-phase{break-inside:avoid}}
/* Checklist details use the same cards without nested padding. */
.mupt-page #checkliste{margin-top:38px;scroll-margin-top:110px}.mupt-phase.mupt-card{padding:0}.mupt-phase>summary{list-style:none}.mupt-phase>summary::-webkit-details-marker{display:none}.mupt-phase>summary>span:nth-child(2){flex:1}.mupt-phase>summary strong{font-size:17px;line-height:1.35;display:block}.mupt-phase>summary small{display:block;font-size:12px;color:var(--mupt-muted);margin-top:3px}.mupt-phase-toggle{font-size:23px;line-height:1;font-weight:400;color:var(--mupt-green)}.mupt-phase[open] .mupt-phase-toggle{transform:rotate(45deg)}.mupt-phase>.mupt-note{padding:0 26px 18px}.mupt-task-row>img{flex:none;width:40px;height:40px;object-fit:contain}.mupt-phase-link{display:block;padding:12px 26px 22px;font-size:13px;text-decoration:none;font-weight:600}.mupt-task-row.is-current .mupt-task-date{color:#97602c}.mupt-date-form~.mupt-note{margin-top:14px}.mupt-card>[data-checklist-result]{padding:22px;border-radius:16px;margin-top:22px}.mupt-card>[data-checklist-result] h3{font-size:22px;margin-bottom:8px}.mupt-card>[data-checklist-result] .mupt-note{margin-top:14px}.mupt-related a.mupt-card{display:block}.mupt-related a.mupt-card h3{font-size:16px}.mupt-related a.mupt-card p{font-size:13px;margin-top:10px}.mupt-related .mupt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mupt-import{margin:18px 0;padding:22px;border:1px solid #bcd6c6;border-radius:20px;background:#f0f8f1}.mupt-import h2{font-size:20px}.mupt-import p{font-size:14px;line-height:1.5;margin:10px 0}.mupt-import__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.mupt-import__status{font-size:13px}.mupt-import__actions button{min-height:44px}
@media(max-width:760px){.mupt-related .mupt-grid{grid-template-columns:1fr}.mupt-phase>.mupt-note{padding-inline:20px}.mupt-task-row>img{width:30px;height:30px}.mupt-task-timing{flex-basis:100px}.mupt-task-copy a{font-size:14px}.mupt-phase-link{padding-inline:20px}.mupt-card>[data-checklist-result]{padding:18px}.mupt-task-row{flex-wrap:wrap}.mupt-task-timing{margin-left:40px;text-align:left;flex:1 1 calc(100% - 40px)}}
@media print{[data-mu-web],.mu-web-spacer,.mu-web-nav-spacer,.mu-web-header-spacer,.mu-app-legal-footer,.mupt-page footer{display:none!important}.mupt-phase,.mupt-phase.mupt-card{break-inside:auto}.mupt-task-row{break-inside:avoid}.mupt-phase summary{break-after:avoid}.mupt-phase-toggle{display:none}.mupt-task-list{padding-inline:0}}
body.moveu-public-budget-page{margin:0;min-width:320px;background:#f7f9f8;-webkit-font-smoothing:antialiased}
