:root{--ink:#19243b;--muted:#667184;--line:#e1e6ee;--paper:#fff;--bg:#f4f6fa;--blue:#3158d5;--navy:#192b4d;--lime:#d4ef9e;--red:#b23838;--redbg:#fff0ec;--amber:#916520;--green:#267255;font-family:'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:var(--ink);background:var(--bg);font-size:16px;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #82a0fa;outline-offset:3px}a{color:inherit}button{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:2.6rem;line-height:1.38;letter-spacing:-.06em;font-weight:800}h2{font-size:1.4rem;letter-spacing:-.035em}h3{font-size:1.02rem;letter-spacing:-.02em}p{line-height:1.7}small{font-size:.8125rem}.header{background:var(--paper);height:88px;display:flex;justify-content:space-between;align-items:center;padding:0 max(28px,calc((100% - 1192px)/2));border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;white-space:nowrap;font-weight:800;font-size:1.3rem;letter-spacing:-.04em}.brandmark{background:var(--navy);color:var(--lime);border-radius:10px;padding:5px 10px;font-size:1.15rem}.brand-sub{margin-left:14px;font-size:.875rem;color:var(--muted);font-weight:500;letter-spacing:0}.header-actions{display:flex;gap:16px;align-items:center}.prototype{font-size:.8125rem;color:var(--muted)}main{max-width:1248px;margin:auto;padding:44px 28px 64px}.eyebrow{font-size:.8125rem;font-weight:700;color:var(--blue);letter-spacing:.07em;margin-bottom:10px}.muted{color:var(--muted)}.intro{margin-bottom:28px}.intro>p:last-child{color:var(--muted);margin-top:13px}.setup-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:26px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px}.start-panel{padding:30px 34px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.step-pill{font-size:.8rem;background:#eef2fd;color:var(--blue);padding:6px 10px;border-radius:7px;white-space:nowrap}.field{display:block;margin-bottom:24px}.field>span,.field-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:10px}.field .hint{font-size:.8125rem;font-weight:400;color:var(--muted);line-height:1.6;display:block;margin:8px 0 0}.input-wrap{position:relative;display:flex;align-items:center;border:1px solid #cfd7e3;border-radius:10px;background:#fff;overflow:hidden}.input-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #3158d516}.input-wrap input{border:0;width:100%;padding:14px 15px;min-width:0;background:transparent;outline:none;font-size:1.15rem;font-weight:600;color:var(--ink)}.input-wrap .unit{padding-right:15px;white-space:nowrap;color:var(--muted);font-size:.875rem}input[type=date],input[type=text],select{width:100%;border:1px solid #cfd7e3;border-radius:9px;padding:12px 13px;background:#fff;color:var(--ink);min-height:48px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue)}.checkline{display:flex;align-items:center;gap:8px;font-size:.875rem;margin-top:9px}.checkline input{flex-shrink:0}.button{border:1px solid transparent;border-radius:10px;font-weight:600;font-size:.9375rem;padding:13px 20px;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px}.button.primary{background:var(--blue);color:#fff}.button.primary:hover{background:#2447b8}.button.secondary{border-color:var(--line);background:#fff}.button.secondary:hover{background:#f1f4fb}.button.small{font-size:.8125rem;padding:9px 13px;min-height:38px}.button.full{width:100%}.text-button{background:none;border:0;padding:8px 0;color:var(--blue);font-size:.875rem;font-weight:600}.text-button:hover{text-decoration:underline}.subactions{margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.8125rem;color:var(--muted)}.preview-panel{background:var(--navy);color:#fff;border:0;padding:30px;display:flex;flex-direction:column;gap:28px}.preview-panel .eyebrow{color:var(--lime)}.preview-panel h2{font-size:1.6rem;line-height:1.5}.preview-note{color:#bccae0;font-size:.875rem}.mini-timeline{display:flex;gap:0;padding:12px 0}.mini-stop{flex:1;border-top:2px solid #637595;position:relative;padding:19px 8px 0 0}.mini-stop:before{content:'';position:absolute;width:9px;height:9px;background:var(--lime);border:3px solid var(--navy);box-sizing:content-box;border-radius:50%;top:-8px;left:0}.mini-stop b{display:block;font-size:.9375rem}.mini-stop span{display:block;color:#bac8df;font-size:.8125rem;margin-top:9px}.preview-example{padding:20px;background:#ffffff0b;border:1px solid #ffffff20;border-radius:12px}.example-top{font-size:.875rem;color:#cfdbed;margin-bottom:16px;display:flex;justify-content:space-between}.example-top span{font-size:.75rem;color:var(--lime)}.example-bar{height:10px;display:flex;gap:4px;margin-bottom:14px}.example-bar i:first-child{width:40%;background:var(--lime);border-radius:4px}.example-bar i:last-child{flex:1;border:1px dashed #8595b1;border-radius:4px}.preview-example p{font-size:.875rem;color:#d3def0}.preview-list{display:grid;gap:15px}.preview-list p{font-size:.875rem;display:flex;gap:12px;color:#d5e0f2}.preview-list b{color:var(--lime);font-size:.8rem}.resume{padding:18px 22px;margin-bottom:24px;background:#eaf0ff;border:1px solid #cad8ff;border-radius:12px;display:flex;gap:20px;align-items:center;justify-content:space-between}.resume p{font-size:.875rem}.workspace-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.workspace-top h1{font-size:2rem}.workspace-top p{font-size:.875rem;color:var(--muted);margin-top:8px}.top-controls{display:flex;gap:10px}.basics-strip{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-bottom:24px;background:white;padding:17px 22px;border:1px solid var(--line);border-radius:12px}.basics-strip span{font-size:.8125rem;color:var(--muted);display:block;margin-bottom:3px}.basics-strip strong{font-size:1rem}.basics-strip button{margin-left:auto}.work-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.main-col{min-width:0;display:grid;gap:22px}.summary-card{background:var(--navy);color:white;padding:27px 30px;border-radius:17px}.summary-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.summary-head p{color:#c4d1e6;font-size:.875rem}.light-pill{font-size:.75rem;white-space:nowrap;background:#ffffff14;color:var(--lime);padding:6px 9px;border-radius:5px}.summary-card h2{font-size:1.65rem;line-height:1.55;margin-top:15px}.summary-card h2 strong{color:var(--lime)}.summary-detail{font-size:.875rem;color:#c4d1e6;margin:10px 0 22px}.summary-metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff25;padding-top:18px;gap:16px}.summary-metrics span{display:block;font-size:.8125rem;color:#b9c8e2;margin-bottom:8px}.summary-metrics strong{font-size:1.3rem}.side-col{display:grid;gap:18px;position:sticky;top:20px}.next-panel{padding:23px;background:white;border:1px solid var(--line);border-radius:16px}.next-panel h2{font-size:1.15rem;line-height:1.5}.next-desc{font-size:.875rem;color:var(--muted);margin:8px 0 20px}.task{display:flex;align-items:center;gap:12px;padding:15px 0;border-top:1px solid var(--line);width:100%;background:transparent;text-align:left;border-bottom:0;border-left:0;border-right:0}.task-icon{width:30px;height:30px;border-radius:8px;background:#eef2fc;color:var(--blue);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.task p{font-size:.875rem;font-weight:600;line-height:1.45}.task small{display:block;color:var(--muted);font-weight:400;margin-top:5px;line-height:1.55}.task>span:last-child{margin-left:auto;color:var(--muted)}.task:hover p{color:var(--blue)}.note-card{background:#e9effb;border-radius:13px;padding:20px;font-size:.875rem}.note-card h3{margin-bottom:8px}.note-card p{color:#596a87}.note-card.amber{background:#fff3db}.note-card.amber p{color:#80632b}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:24px}.tab{border:0;background:transparent;padding:4px 0 15px;font-weight:600;font-size:.9375rem;color:var(--muted);border-bottom:3px solid transparent}.tab.active{color:var(--blue);border-bottom-color:var(--blue)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-header p{font-size:.8125rem;color:var(--muted);margin-top:7px}.chart{margin:14px 0 25px;width:100%;display:block;max-height:170px}.chart text{font-family:inherit;font-size:12px;fill:#7e899c}.timeline-row{display:grid;grid-template-columns:92px 1fr auto;gap:13px;padding:18px 0;border-top:1px solid var(--line);align-items:center}.timeline-date{font-size:.875rem;font-weight:600}.timeline-date small{font-size:.75rem;color:var(--muted);display:block;margin-top:4px;font-weight:400}.timeline-label{font-size:.875rem;font-weight:600}.timeline-label small{display:block;color:var(--muted);font-size:.8125rem;margin-top:7px;font-weight:400}.timeline-amount{text-align:right;font-size:.9375rem;font-weight:700;white-space:nowrap}.timeline-amount small{display:block;font-size:.75rem;font-weight:400;margin-top:5px;color:var(--muted)}.negative{color:var(--red)}.positive{color:var(--green)}.timeline-row.problem{background:var(--redbg);margin:0 -12px;padding:18px 12px;border-radius:9px;border:0}.add-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.note-inline{font-size:.8125rem;line-height:1.7;color:var(--muted);margin-top:15px}.tag{font-size:.75rem;color:var(--amber);background:#fff2d8;border-radius:4px;padding:2px 6px;margin-left:6px;white-space:nowrap}.tag.blue{color:var(--blue);background:#eef2ff}.statusline{background:#f3f5fa;border-radius:9px;padding:12px 15px;font-size:.8125rem;color:var(--muted);line-height:1.65;margin:16px 0}.statusline.warning{background:#fff4e3;color:#875f22}.uses-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.ledger-row{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.875rem;align-items:flex-start}.ledger-row b{white-space:nowrap}.ledger-total{display:flex;justify-content:space-between;gap:12px;font-weight:700;margin-top:17px}.source-row{padding:16px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:center}.source-row h3{font-size:.9375rem}.source-row p{font-size:.8125rem;color:var(--muted);margin-top:5px}.source-right{text-align:right;flex-shrink:0}.source-right b{display:block;font-size:.9375rem}.source-right button{font-size:.8125rem;margin-left:10px}.empty-state{padding:26px 16px;background:#f7f9fc;border:1px dashed #cdd6e7;border-radius:12px;text-align:center;color:var(--muted);font-size:.875rem}.empty-state p{margin-bottom:12px}.attention-list{display:flex;gap:10px;flex-wrap:wrap}.attention-chip{font-size:.8125rem;color:var(--amber);background:#fff6e4;padding:7px 10px;border-radius:6px}.save-note{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.8125rem;margin-top:24px}.save-note div{display:flex;gap:16px}.error{color:var(--red);font-size:.875rem;margin:10px 0}.pill-toggle{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.pill-toggle label{border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-size:.875rem}.pill-toggle input{accent-color:var(--blue);margin-right:5px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.three-fields{display:grid;grid-template-columns:1.1fr 1fr 44px;gap:10px;align-items:start}.three-fields .field{margin-bottom:12px}.three-fields button{margin-top:30px}.schedule-group{background:#f6f8fc;border-radius:11px;padding:17px;margin-bottom:17px}.schedule-group h3{margin-bottom:14px}.schedule-group .field:last-child{margin-bottom:5px}.modal-note{padding:13px 16px;background:#eef3fc;border-radius:9px;margin-bottom:20px;font-size:.875rem;line-height:1.7;color:#566a8e}.modal-note.warn{background:#fff4e3;color:#83612c}.modal-small{font-size:.8125rem;line-height:1.6;color:var(--muted);margin-top:14px}dialog{border:0;border-radius:18px;padding:0;width:min(600px,calc(100% - 24px));max-height:90dvh;box-shadow:0 30px 120px #111d4540;color:var(--ink)}dialog::backdrop{background:#14243c7a;backdrop-filter:blur(3px)}.dialog-head{padding:25px 26px 20px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:white;z-index:2}.dialog-head h2{font-size:1.5rem}.icon-button{background:transparent;border:0;width:38px;height:38px;font-size:1.6rem;color:var(--muted);border-radius:7px}.icon-button:hover{background:#eef1f7}.icon-button.danger{font-size:1.2rem;color:var(--red)}#dialog-body{padding:25px 26px 8px}.dialog-actions{padding:18px 26px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0;background:white}footer{max-width:1192px;margin:auto;border-top:1px solid var(--line);padding:22px 0 34px;display:flex;gap:24px;align-items:center;color:var(--muted)}footer>span{font-weight:700;white-space:nowrap}footer p{font-size:.75rem;flex:1}footer button{white-space:nowrap}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);background:var(--navy);color:white;max-width:calc(100% - 32px);padding:15px 23px;border-radius:12px;box-shadow:0 10px 40px #172b462b;font-size:.875rem;opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;z-index:20}#toast.show{opacity:1;transform:translate(-50%,0)}.hide{display:none!important}[hidden]{display:none!important}
@media(max-width:1020px){.work-grid{grid-template-columns:minmax(0,1fr) 270px}.panel{padding:23px}.start-panel{padding:25px}.brand-sub{display:none}.header{padding:0 28px}h1{font-size:2.1rem}.summary-card h2{font-size:1.4rem}.summary-card{padding:25px}footer{margin:0 28px}}
@media(max-width:760px){.header{height:70px;padding:0 20px}.header-actions{gap:10px}.brand{font-size:1.2rem}.prototype{font-size:.75rem}main{padding:28px 18px 42px}h1{font-size:1.85rem}.intro>p:last-child{font-size:.875rem}.setup-grid{grid-template-columns:1fr}.preview-panel{padding:24px}.preview-panel h2{font-size:1.35rem}.preview-list{gap:10px}.start-panel{padding:24px}.work-grid{display:flex;flex-direction:column}.main-col,.side-col{width:100%}.side-col{position:static;order:-1;grid-template-columns:1fr}.side-col .note-card{display:none}.next-panel{padding:19px 21px}.next-panel h2{font-size:1.05rem}.next-desc{margin:5px 0 12px}.next-panel .task{padding:12px 0}.workspace-top h1{font-size:1.7rem}.workspace-top{flex-wrap:wrap;gap:12px}.basics-strip{gap:15px;padding:15px}.basics-strip strong{font-size:.9375rem}.basics-strip button{margin-left:0;padding-left:0}.summary-card{padding:22px}.summary-card h2{font-size:1.35rem}.summary-metrics strong{font-size:1.15rem}.tabs{gap:20px}.tab{font-size:.875rem}.timeline-row{grid-template-columns:66px 1fr auto;gap:8px}.timeline-label{font-size:.8125rem}.timeline-date{font-size:.8125rem}.timeline-amount{font-size:.875rem}.timeline-label small{font-size:.75rem}.panel{padding:20px}.panel-header{align-items:flex-start}.panel-header h2{font-size:1.15rem}.uses-grid{grid-template-columns:1fr;gap:27px}.save-note{flex-wrap:wrap;line-height:1.7}footer{margin:0 20px;flex-wrap:wrap;gap:12px}footer p{flex-basis:70%}.dialog-head{padding:20px}.dialog-head h2{font-size:1.3rem}#dialog-body{padding:20px 20px 8px}.dialog-actions{padding:15px 20px}.dialog-actions .button{font-size:.875rem;padding:12px 14px}.resume{flex-wrap:wrap}.two-fields{grid-template-columns:1fr;gap:0}.three-fields{grid-template-columns:1.1fr 1fr 32px;gap:7px}.three-fields input{font-size:.875rem;padding:12px 9px}.three-fields .input-wrap .unit{padding-right:8px}.summary-head{gap:10px}.light-pill{font-size:.6875rem}.subactions{flex-wrap:wrap}.source-row{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:760px){.work-grid{display:grid;grid-template-columns:minmax(0,1fr)}.main-col{display:contents}.summary-card{grid-row:1}.side-col{grid-row:2;order:initial}.main-col>.panel{grid-row:3}.light-pill{font-size:.75rem}}

.amount-preview{display:block;min-height:1.5em;font-size:1rem;font-weight:700;color:var(--blue,#456bdb);font-variant-numeric:tabular-nums}

/* Explain the gap and keep each next step close to the result. */
.gap-detail{margin-top:22px;border-top:1px solid #ffffff25;padding-top:18px;font-size:.8125rem;color:#d3def0;line-height:1.7}.gap-detail summary{cursor:pointer;color:white;font-weight:600;font-size:.9375rem}.gap-detail p{margin-top:12px}.gap-detail ul{padding-left:20px;margin-top:8px;overflow-wrap:anywhere}.gap-ledger{margin-top:14px;background:#ffffff0b;border-radius:9px;padding:6px 14px}.gap-ledger>div{display:flex;justify-content:space-between;gap:15px;padding:9px 0}.gap-ledger b{text-align:right;white-space:nowrap;color:white}.gap-ledger>div:last-child{border-top:1px solid #ffffff25}.gap-ledger>div:last-child b{color:var(--lime)}.all-actions{margin-top:10px;border-top:1px solid var(--line);padding-top:14px}.all-actions summary{font-size:.8125rem;color:var(--muted);cursor:pointer}.all-actions .task:first-of-type{border-top:0}.change-panel{border-color:#cbd7ef}.change-panel .panel-header{margin-bottom:14px}.change-panel h2{font-size:1.1rem;line-height:1.5}.change-panel .text-button{white-space:nowrap}.comparison-scroll{overflow-x:auto}.comparison-scroll table{border-collapse:collapse;width:100%;font-size:.8125rem}.comparison-scroll th,.comparison-scroll td{padding:12px 8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.comparison-scroll th:first-child{text-align:left}.comparison-scroll thead{color:var(--muted);background:#f5f7fc}.comparison-scroll td:last-child{font-weight:600;color:var(--blue)}.history-control{text-align:right}.note-inline.negative{color:var(--red)}
@media(max-width:760px){.summary-card{grid-row:1}.main-col>.change-panel,.history-control{grid-row:2}.side-col{grid-row:3}.main-col>.panel:not(.change-panel){grid-row:4}.gap-ledger>div{flex-wrap:wrap;gap:3px 12px}.gap-ledger b{margin-left:auto}.change-panel .panel-header{flex-wrap:wrap}.comparison-scroll th,.comparison-scroll td{padding:10px 5px;font-size:.75rem}}
/* Sources and uses setup: four working sections and a running total. */
.funding-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start}.funding-sections{display:grid;gap:22px;min-width:0}.funding-summary{position:sticky;top:20px;min-width:0}.funding-summary h2{margin-bottom:20px}.funding-summary .checkline{margin-top:22px;align-items:flex-start;line-height:1.6}.funding-summary .ledger-row{flex-wrap:wrap}.funding-summary .ledger-row b{margin-left:auto}.funding-summary .ledger-row:nth-child(4){border-top:2px solid var(--blue);color:var(--blue);font-weight:700}.setup-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}.setup-heading>span{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;background:var(--navy);color:var(--lime);border-radius:9px;font-weight:700}.setup-heading p{font-size:.875rem;color:var(--muted);margin-top:7px}.setup-entry{background:#f6f8fc;border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0}.entry-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.setup-entry .field:last-child{margin-bottom:0}.ratio-input{display:grid;grid-template-columns:1fr 1.1fr;gap:0 15px;align-items:start;margin-top:16px}.ratio-input>p{grid-column:1/-1;margin:-8px 0 18px;color:var(--blue);font-weight:600;font-size:.875rem}.ratio-input .field{margin-bottom:18px}.loan-check{padding:17px 0;border-bottom:1px solid var(--line);font-weight:600}.funding-sections [data-loan]{margin-top:20px}.existing-debt{margin-top:24px;font-size:.875rem}.existing-debt .field{margin-top:20px}.funding-sections .schedule-group{margin-top:24px}.funding-sections .schedule-group>h3{margin-bottom:12px}.funding-sections details>summary{cursor:pointer;line-height:1.6}.funding-sections details>.field{margin-top:16px}.source-group-title{margin:28px 0 12px}.funding-incomplete{margin-top:18px;border:1px solid #ffffff35;padding:14px;border-radius:9px;font-size:.875rem}.funding-incomplete button{margin-top:10px;background:#fff;color:var(--navy)}#mortgage-percent input{width:100%;border:1px solid #cfd7e3;padding:12px;border-radius:9px}#setup-totals{font-size:.875rem}.funding-summary>.text-button{margin-top:16px}.setup-intro h1{font-size:2.1rem}
@media(max-width:950px){.funding-layout{grid-template-columns:minmax(0,1fr) 285px;gap:18px}.funding-summary{padding:20px}}
@media(max-width:760px){.funding-layout{grid-template-columns:minmax(0,1fr)}.funding-summary{position:static}.setup-intro h1{font-size:1.75rem}.setup-heading h2{font-size:1.2rem}.setup-entry{padding:16px}.ratio-input{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 10px}.ratio-input input,.ratio-input select{font-size:1rem}.funding-summary .ledger-row{font-size:.9375rem}.setup-heading{gap:10px}.funding-sections>.panel{padding:20px}}
[data-ratio-edit] input[type=number]{width:100%;border:1px solid #cfd7e3;border-radius:9px;padding:12px;font-size:1rem}
/* Prelisted inputs: item, amount, and availability stay on the same row. */
.compact-table{margin:18px 0 8px}.compact-table-head,.compact-row{display:grid;grid-template-columns:minmax(110px,.95fr) minmax(160px,1.35fr) minmax(130px,1fr);gap:14px;align-items:start}.compact-table-head{font-size:.875rem;font-weight:600;color:var(--muted);padding:0 0 12px;border-bottom:1px solid var(--line)}.compact-row{padding:14px 0;border-bottom:1px solid var(--line)}.compact-row.has-value{background:#f2f6ff}.compact-row .field{min-width:0;margin:0}.compact-row .field>span:not(.amount-preview),.compact-row .field .hint{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.compact-row .field .amount-preview{display:block;position:static;font-size:.8125rem;line-height:1.4;margin:5px 0 0;min-height:0;color:var(--blue)}.compact-row input[type=text],.compact-row input[type=number],.compact-row select{width:100%;min-width:0;font-size:.9375rem;padding:10px 9px;height:43px}.compact-row input:disabled{background:#f3f5f8;color:#9aa3b2}.compact-row .input-wrap .unit{font-size:.8125rem;padding-right:9px}.row-name>b,.payment-row>b,.payment-name>b{display:block;font-size:.875rem;line-height:1.5;padding-top:10px}.row-name>small{display:block;color:var(--muted);font-size:.8125rem;margin-top:3px}.row-name .field{margin-top:8px}.row-name .field input{font-size:.875rem}.cash-date{font-size:.875rem;color:var(--muted);padding-top:10px}.compact-add{font-size:.875rem;margin:8px 0}.compact-row .ratio-input{margin:0;gap:0 8px;grid-template-columns:76px minmax(0,1fr)}.compact-row .ratio-input .field{margin:0}.compact-row .ratio-input>p{font-size:.8125rem;margin:5px 0 0}.payment-ratio{display:grid;grid-template-columns:85px minmax(0,1fr);gap:8px;min-width:0}.payment-ratio .field{margin:0}.payment-name button{font-size:.8125rem}.closing-row{background:#f4f7fe;color:var(--blue);font-size:.875rem;align-items:center}.closing-row b,.closing-row strong{padding:0}.funding-layout{grid-template-columns:minmax(0,1fr) 300px}.funding-sections>.panel{padding:24px}.payments-table .compact-row{grid-template-columns:minmax(85px,.7fr) minmax(210px,1.5fr) minmax(130px,1fr)}#dialog-body>.payment-row{grid-template-columns:80px minmax(180px,1.4fr) minmax(120px,1fr);gap:10px}
@media(max-width:1080px) and (min-width:761px){.funding-layout{grid-template-columns:minmax(0,1fr)}.funding-summary{position:static}.funding-summary #setup-totals{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}}
@media(max-width:760px){.funding-layout{grid-template-columns:minmax(0,1fr)}.funding-sections>.panel{padding:18px}.compact-table-head{display:none}.compact-row,.payments-table .compact-row,#dialog-body>.payment-row{grid-template-columns:minmax(82px,.75fr) minmax(0,1.5fr);gap:8px 12px}.compact-row>.row-name,.payment-row>b,.payment-row>.payment-name{grid-column:1;grid-row:1/3}.compact-row>.field,.compact-row>.ratio-input,.compact-row>.payment-ratio,.cash-date{grid-column:2}.compact-row .ratio-input,.payment-ratio{grid-template-columns:70px minmax(0,1fr)}.compact-row input[type=text],.compact-row input[type=number],.compact-row select{font-size:.875rem}.closing-row{grid-template-columns:minmax(82px,.75fr) minmax(0,1.5fr)}.closing-row>span{grid-column:2}.row-name .field input{font-size:.8125rem}.funding-summary #setup-totals{display:block}}
/* Bento overview; the input itself stays a compact, readable worksheet. */
.funding-layout{grid-template-columns:minmax(0,1fr);gap:24px}.funding-summary{position:static;background:var(--navy);color:#fff;border:0}.funding-summary h2{margin:0}.funding-summary .eyebrow{color:var(--lime)}.funding-summary .note-inline{color:#d4dfed}.funding-summary .panel-header{margin-bottom:18px}.jump-link{font-size:.875rem;color:var(--lime);text-underline-offset:4px}.funding-summary #setup-totals,.result-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bento-stat{padding:18px;background:#ffffff0b;border:1px solid #ffffff25;border-radius:12px;min-width:0}.bento-stat span{display:block;font-size:.8125rem;line-height:1.6}.bento-stat strong{display:block;font-size:1.6rem;letter-spacing:-.035em;margin-top:8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.bento-stat:last-of-type strong{color:var(--lime)}.summary-breakdown{grid-column:1/-1;font-size:.8125rem;color:#d4dfed}.result-bento{margin:0 0 24px}.result-bento .bento-stat{background:white;border-color:var(--line)}.result-bento .bento-stat span{color:var(--muted)}.result-bento .bento-stat:last-child strong{color:var(--blue)}.funding-sections>.panel{padding:28px}.compact-table-head,.compact-row{grid-template-columns:minmax(145px,1.1fr) minmax(150px,1fr) minmax(190px,1.1fr)}.row-timing{display:grid;gap:8px;min-width:0}.money-rule{margin-top:20px;padding:16px 18px;border-radius:10px;background:#f0f5ff;font-size:.875rem;line-height:1.7}.money-rule p{color:var(--muted);margin-top:5px}.uses-costs{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.uses-costs>h3{font-size:1.15rem;margin-bottom:18px}.uses-costs .two-fields{margin-top:20px}.cost-options{margin:15px 0;font-size:.875rem}.cost-options>summary{cursor:pointer;color:var(--blue);padding:8px 0}.cost-options .field{margin-top:18px}.cost-list .ledger-row{gap:18px;align-items:flex-start}.cost-list small{display:block;color:var(--muted);font-size:.75rem;margin:5px 0;line-height:1.6}.cost-list b{white-space:nowrap}.cost-pending{font-size:.8125rem;color:#865718;background:#fff7e9;padding:9px 12px;margin-top:8px;border-radius:7px}.uses-costs input[type=number],.cost-options input[type=number]{min-height:44px;width:100%;border:1px solid var(--line);border-radius:8px;padding:10px}.income-block{padding:22px 0;border-bottom:1px solid var(--line)}.income-equation{display:grid;grid-template-columns:minmax(100px,1fr) 20px minmax(80px,.6fr) minmax(120px,1fr);gap:12px;align-items:center;margin:18px 0}.income-equation .field{margin:0}.income-equation>strong{color:var(--blue);font-size:1.1rem}.income-date{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;gap:20px;align-items:center}.income-date .field{margin:0}.setup-submit .checkline{margin-bottom:8px}.setup-submit .button{margin-top:18px}.gap-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;list-style:none;padding:0;margin:24px 0 12px}.gap-steps li{padding:15px;border:1px solid #ffffff35;border-radius:11px;background:#ffffff08}.gap-steps span,.gap-steps b,.gap-steps small{display:block}.gap-steps span{font-size:.8125rem;color:#d3def0}.gap-steps b{color:var(--lime);font-size:1.25rem;margin:8px 0}.gap-steps small,.gap-assumption{font-size:.75rem;color:#d3def0;line-height:1.6}.starting-balance{display:flex;justify-content:space-between;gap:15px;background:#eef3ff;padding:16px;border-radius:9px;margin:20px 0;font-size:.9375rem}.cashflow-day{border:1px solid var(--line);border-radius:12px;margin:12px 0;overflow:hidden}.cashflow-day>summary{display:block;cursor:pointer;padding:18px;list-style:none}.cashflow-day>summary::-webkit-details-marker{display:none}.cashflow-title{display:flex;justify-content:space-between;gap:15px;align-items:start}.cashflow-title>b{white-space:nowrap;font-size:.875rem}.cashflow-title>span{font-size:.8125rem;color:var(--muted);text-align:right;overflow-wrap:anywhere}.cashflow-title:after{content:'＋';color:var(--blue)}.cashflow-day[open] .cashflow-title:after{content:'−'}.day-numbers{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:17px;font-size:.75rem;color:var(--muted)}.day-numbers b{display:block;color:var(--ink);font-size:.9375rem;margin-top:6px}.day-numbers .negative b{color:var(--red)}.cashflow-day.is-gap{border-color:#e3b4a9}.cashflow-day.is-gap>summary{background:#fff8f4}.day-action{color:var(--red);font-size:.8125rem;margin-top:13px;font-weight:600}.day-detail{padding:0 18px 16px;border-top:1px solid var(--line);font-size:.8125rem}.day-detail>p:first-child{padding-top:14px;color:var(--muted)}.day-detail .ledger-row{gap:14px;align-items:start}.day-detail .ledger-row>b{white-space:nowrap}.gap-detail:not([open]){margin-top:20px}.summary-metrics{gap:18px}.summary-metrics span{line-height:1.5}.note-card p{overflow-wrap:anywhere}
@media(max-width:760px){.funding-summary #setup-totals,.result-bento{grid-template-columns:minmax(0,1fr);gap:9px}.bento-stat{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px}.bento-stat strong{font-size:1.2rem;margin:0;text-align:right}.bento-stat span{max-width:53%;font-size:.75rem}.funding-summary .panel-header{flex-wrap:wrap}.funding-sections>.panel{padding:18px}.compact-row,.compact-table-head{grid-template-columns:minmax(82px,.8fr) minmax(0,1.5fr)}.row-timing,.compact-row>[data-row-date]{grid-column:2}.income-equation{grid-template-columns:minmax(0,1fr) 12px minmax(0,.6fr);gap:8px}.income-equation>strong{grid-column:1/-1;font-size:1rem}.income-date{grid-template-columns:1fr;gap:8px}.cashflow-title{flex-wrap:wrap;gap:8px}.cashflow-title>span{text-align:left;flex-basis:75%}.day-numbers{gap:6px}.day-numbers b{font-size:.8125rem}.gap-steps{grid-template-columns:1fr}.gap-steps li{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px}.gap-steps b{margin:0;text-align:right;font-size:1.1rem}.gap-steps small{grid-column:1/-1}.cost-list .ledger-row{font-size:.8125rem}.result-bento{margin-bottom:18px}}
/* Bento workspace: one large cashflow tile, a compact action tile, then details. */
:root{--bg:#eef2f8;--line:#dce3ee;--blue:#365bd5;--navy:#17294b}
main{max-width:1360px;padding-top:30px}.header{height:78px;padding-inline:max(28px,calc((100% - 1304px)/2))}.workspace-top{margin-bottom:22px}.workspace-top h1,.setup-intro h1{font-size:2rem;letter-spacing:-.04em}.workspace-top>div>p:last-child{font-size:.875rem}.panel,.summary-card,.next-panel,.note-card{border-radius:22px}.panel,.next-panel{box-shadow:0 4px 18px #22385c03}.result-bento{gap:18px}.result-bento .bento-stat{position:relative;padding:20px 23px;border-radius:18px;border:1px solid var(--line);box-shadow:0 3px 14px #22385c03}.result-bento .bento-stat:before{content:'';position:absolute;left:0;top:23px;width:4px;height:27px;background:var(--blue);border-radius:0 3px 3px 0}.result-bento .bento-stat:last-child{background:#e5ebff;border-color:#cdd8ff}.result-bento .bento-stat span{font-size:.875rem}.result-bento .bento-stat strong{font-size:1.8rem}.basics-strip{border-radius:15px;margin-bottom:18px;padding:16px 21px}.work-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(300px,4fr);gap:20px;align-items:start}.work-grid>.main-col,.work-grid>.side-col{display:contents}.cash-chart-card{grid-column:1;grid-row:1;padding:25px 24px;min-width:0}.work-grid .summary-card{grid-column:2;grid-row:1;margin:0;padding:26px;min-width:0}.summary-card h2{font-size:1.55rem;letter-spacing:-.035em}.summary-head{display:block}.summary-head .light-pill{display:inline-block;white-space:normal;margin-top:10px;line-height:1.5}.summary-detail{margin-bottom:14px}.summary-card .gap-steps{grid-template-columns:1fr;margin-top:20px;gap:9px}.summary-card .gap-steps li{padding:13px 14px;display:grid;grid-template-columns:1fr;gap:0}.summary-card .gap-steps b{font-size:1.15rem;text-align:left;margin:5px 0}.summary-card .gap-steps span{font-size:.875rem}.summary-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid #ffffff30}.summary-bottom span{font-size:.875rem;color:#d3def0;line-height:1.6}.summary-bottom strong{font-size:1.05rem}.summary-card .funding-incomplete{font-size:.8125rem;padding:12px;margin-top:17px;background:#ffffff08}.work-grid .detail-tile{grid-column:1;grid-row:2 / span 4;min-width:0;margin:0}.work-grid .next-panel{grid-column:2;grid-row:2;padding:23px}.work-grid .note-card.amber{grid-column:2;grid-row:3;margin:0;background:#fff8e9;border:1px solid #eddfbd}.work-grid .timing-note{grid-column:2;grid-row:4;margin:0;background:#e6edf9;border:1px solid #d4dfef}.work-grid .change-panel,.work-grid .history-control{grid-column:1/-1;grid-row:auto}.work-grid .note-card p{font-size:.875rem}.note-inline,.panel-header p,.statusline,.chart-footnote{font-size:.875rem}.funding-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.funding-sections>section:first-child,.funding-sections>section:last-child{grid-column:1/-1}.funding-sections>section{padding:24px;min-width:0}.funding-summary{border-radius:22px;padding:26px}.funding-summary .bento-stat{border-radius:14px}.funding-summary #setup-totals{gap:16px}.funding-summary .bento-stat strong{font-size:1.7rem}.funding-sections>section:nth-child(2) .compact-row,.funding-sections>section:nth-child(3) .compact-row{grid-template-columns:minmax(100px,.95fr) minmax(110px,1fr) minmax(135px,1.1fr);gap:10px}.funding-sections>section:nth-child(2) .compact-table-head,.funding-sections>section:nth-child(3) .compact-table-head{grid-template-columns:minmax(100px,.95fr) minmax(110px,1fr) minmax(135px,1.1fr);gap:10px}.funding-sections>section:nth-child(3) .income-equation{grid-template-columns:1fr 12px .7fr;gap:8px}.funding-sections>section:nth-child(3) .income-equation>strong{grid-column:1/-1}.funding-sections>section:nth-child(3) .income-date{grid-template-columns:1fr;gap:10px}.funding-sections .money-rule{padding:15px}.setup-submit{border-radius:22px}
.chart-legend{display:flex;gap:10px 18px;flex-wrap:wrap;align-items:center;font-size:.875rem;color:var(--muted);line-height:1.6;margin:15px 0 4px}.chart-legend>span{display:flex;gap:7px;align-items:center}.chart-legend>span:last-child{font-size:.75rem}.legend-line{display:inline-block;width:17px;height:3px;background:#3b60d7;border-radius:2px}.legend-line.red{background:#bc4036}.chart-scroll{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;margin-inline:-8px}.cash-step-chart{display:block;width:100%;height:auto;max-height:none;overflow:visible}.cash-step-chart text{font:12px 'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif;fill:#68798d}.cash-step-chart .first-gap-label{font-size:13px;fill:#b23838;font-weight:700}.cash-step-chart [data-chart-point]{cursor:pointer;outline:none}.cash-step-chart [data-chart-point]:focus .chart-dot{stroke:#17294b;stroke-width:4}.chart-control{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 0 16px}.chart-control>label{display:flex;align-items:center;gap:12px;font-size:.875rem}.chart-control select{font-size:.875rem;min-height:42px;padding:8px 12px;max-width:235px}.chart-nav{min-width:42px;height:42px;border:1px solid var(--line);background:white;border-radius:10px;font-size:1.1rem}.chart-nav:hover:enabled{background:#edf2ff}.chart-selection{background:#f4f7fc;border:1px solid #e1e8f2;border-radius:15px;padding:18px}.selected-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.selected-heading>div>span{color:#64768c;font-size:.875rem}.selected-heading h3{font-size:1rem;margin-top:7px;line-height:1.6}.balance-badge{padding:6px 10px;border-radius:8px;background:#e4edff;color:#3153ae;font-size:.8125rem;font-weight:600;white-space:nowrap}.balance-badge.deficit{background:#fde5de;color:#aa382d}.selected-equation{display:grid;grid-template-columns:1fr 12px 1fr 12px 1fr 12px 1.15fr;gap:5px;align-items:center;margin-top:22px;font-variant-numeric:tabular-nums}.selected-equation>div>span{display:block;font-size:.8125rem;color:#67788d;line-height:1.5}.selected-equation b{display:block;font-size:.9rem;margin-top:7px;line-height:1.6;overflow-wrap:anywhere}.math-sign{text-align:center;font-size:.875rem;color:#7b89a0}.equation-result{padding:9px 10px;border-radius:9px;background:#e7edff}.equation-result b{color:#3153ae}.equation-result.deficit{background:#fce7e0}.equation-result.deficit b,.equation-result.deficit span{color:#a9362c}.selected-advice{font-size:.875rem;margin-top:15px;color:#a9362c}.chart-event-detail{font-size:.875rem;margin-top:17px;border-top:1px solid #dce3ee;padding-top:13px;line-height:1.6}.chart-event-detail summary{cursor:pointer;color:#3153ae}.chart-event-detail>p{font-size:.8125rem;color:var(--muted);margin-top:12px}.chart-footnote{margin-top:15px;color:var(--muted);line-height:1.65;font-size:.8125rem}.cashflow-days{display:grid;grid-template-columns:1fr;gap:12px}.cashflow-day{margin:0}.cashflow-title>b,.day-numbers{font-size:.875rem}.day-numbers b{font-size:1rem}.cashflow-title>span{font-size:.875rem}.detail-tile .panel-header{align-items:start}.detail-tile h2{font-size:1.2rem}
@media(min-width:1200px){.uses-costs{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.uses-costs>h3,.uses-costs>.checkline,.uses-costs>.two-fields,.uses-costs>.note-inline,.uses-costs>.cost-options{grid-column:1/-1}.uses-costs>#setup-costs{grid-column:1}.uses-costs>.compact-table{grid-column:2;margin-top:0}.uses-costs>.compact-table .compact-row{grid-template-columns:100px 1fr}.uses-costs>.compact-table .compact-row>.field:last-child{grid-column:2}.uses-costs>.compact-table .compact-row>b{grid-column:1;grid-row:1/3}.uses-costs>.note-inline:last-child{grid-column:2}}
@media(max-width:1150px){.funding-sections{grid-template-columns:1fr}.funding-sections>section{grid-column:1!important}.work-grid{grid-template-columns:minmax(0,1fr)}.work-grid .cash-chart-card{grid-column:1;grid-row:1}.work-grid .summary-card{grid-column:1;grid-row:2}.work-grid .summary-card .gap-steps{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.work-grid .detail-tile{grid-column:1;grid-row:3}.work-grid .next-panel{grid-column:1;grid-row:4}.work-grid .note-card.amber{grid-column:1;grid-row:5}.work-grid .timing-note{grid-column:1;grid-row:6}.work-grid .change-panel,.work-grid .history-control{grid-row:auto;grid-column:1}.work-grid .side-col .note-card{display:block}.summary-head{display:flex;flex-wrap:wrap}.summary-head .light-pill{margin-top:0}.funding-sections>section:nth-child(2) .compact-row,.funding-sections>section:nth-child(3) .compact-row,.funding-sections>section:nth-child(2) .compact-table-head,.funding-sections>section:nth-child(3) .compact-table-head{grid-template-columns:minmax(130px,1fr) minmax(140px,1fr) minmax(170px,1.1fr)}}
@media(max-width:760px){main{padding:24px 16px 40px}.header{height:70px;padding:0 18px}.workspace-top h1,.setup-intro h1{font-size:1.7rem}.result-bento{grid-template-columns:1fr 1fr;gap:10px}.result-bento .bento-stat{display:block;padding:16px 18px;border-radius:16px}.result-bento .bento-stat:last-child{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.result-bento .bento-stat span{max-width:none;font-size:.875rem}.result-bento .bento-stat strong{font-size:1.25rem;text-align:left;margin-top:8px}.result-bento .bento-stat:last-child strong{margin:0}.work-grid{gap:16px}.work-grid .cash-chart-card,.work-grid .summary-card,.work-grid .detail-tile{padding:21px 18px}.cash-chart-card .panel-header{gap:12px;align-items:start}.cash-chart-card h2{font-size:1.2rem;line-height:1.5}.cash-chart-card .text-button{white-space:nowrap;font-size:.875rem}.cash-step-chart{height:285px;width:auto}.chart-scroll{margin-inline:-10px}.chart-legend>span:last-child{flex-basis:100%;font-size:.8125rem}.chart-control>label{gap:7px}.chart-control>label>span{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.chart-control select{max-width:220px}.chart-selection{padding:15px}.selected-equation{grid-template-columns:1fr 1fr;gap:12px}.selected-equation .math-sign{display:none}.selected-equation>div{padding:8px 10px}.selected-equation>div:nth-child(3)>span:before{content:'＋ '}.selected-equation>div:nth-child(5)>span:before{content:'− '}.selected-equation>div:last-child>span:before{content:'＝ '}.selected-equation>div>span{font-size:.875rem}.selected-equation b{font-size:1rem;margin-top:5px}.selected-heading h3{font-size:.9375rem}.funding-sections>section{padding:20px 18px}.funding-sections>section:nth-child(2) .compact-row,.funding-sections>section:nth-child(3) .compact-row{grid-template-columns:minmax(82px,.8fr) minmax(0,1.5fr);gap:8px 12px}.funding-sections>section:nth-child(2) .compact-table-head,.funding-sections>section:nth-child(3) .compact-table-head{display:none}.funding-summary{padding:22px 18px}.funding-summary .bento-stat strong{font-size:1.2rem}.summary-card .gap-steps small{font-size:.8125rem}.day-numbers{font-size:.8125rem}.day-numbers b{font-size:.875rem}.cashflow-title>span{flex-basis:70%}.chart-footnote{font-size:.8125rem}.cashflow-day>summary{padding:15px}.tabs{gap:18px}.tab{font-size:.875rem}.work-grid .summary-card .gap-steps{grid-template-columns:1fr}.light-pill{font-size:.75rem}}

.chart-touch-hint{display:none}@media(max-width:760px){.chart-touch-hint{display:block;font-size:.8125rem;line-height:1.6;color:var(--muted);margin:7px 0 0}}
/* Live sources/uses rail and payment-stage bento cards. */
.stage-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.stage-card{background:#f4f6fa;border:1px solid #dce3ee;border-radius:13px;padding:16px;color:#58667b;min-width:0}.stage-card>div{display:flex;align-items:center;gap:8px;font-size:.875rem}.stage-card>div>span:last-child{margin-left:auto;font-size:.8125rem}.stage-card strong{display:block;font-size:1.16rem;margin-top:12px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.stage-card small{display:block;margin-top:7px;line-height:1.5}.stage-icon{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#dce3ee;font-weight:800}.stage-card.enough{background:#eff9f3;border-color:#b8dcca;color:#206246}.stage-card.enough .stage-icon{background:#227553;color:white}.stage-card.gap{background:#fff1ed;border-color:#ecc1b7;color:#a72f28}.stage-card.gap .stage-icon{background:#b43830;color:white}.stage-note{font-size:.8125rem;color:var(--muted);margin-top:12px;line-height:1.65}.funding-summary .stage-note{color:#d4dfed}.result-stages{margin-bottom:24px}.result-stages .stage-cards{margin-top:0}.plan-rail{display:none}.outline-totals{margin-top:17px}.outline-totals>div{padding:10px 0;border-bottom:1px solid var(--line)}.outline-totals span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:5px}.outline-totals b{font-size:1.14rem}.outline-breakdown{font-size:.75rem;margin:14px 0;line-height:1.6}.outline-breakdown summary{cursor:pointer;color:var(--blue)}.outline-breakdown>div{display:flex;justify-content:space-between;gap:6px;margin-top:10px}.outline-breakdown b{text-align:right}.plan-rail .jump-link{color:var(--blue);display:inline-block;margin-top:14px}.installment-expenses{grid-column:1/-1;margin-top:24px}.installment-expenses>h3{padding:18px 0 8px}.uses-costs{display:block}.advance-editor{padding:16px;border:1px solid var(--line);border-radius:12px;margin-bottom:18px}.advance-editor .note-inline{margin-bottom:16px}.cash-bar-chart .bar-amount{font-weight:700;fill:#3153ae;font-size:12px}.cash-bar-chart .bar-negative{fill:#a9362c}.cash-bar-chart .bar-stage{fill:#263952;font-weight:700;font-size:12px}.cash-bar-chart [data-chart-point]:focus-visible .chart-bar{stroke:#17294b;stroke-width:5}.cash-bar-chart{height:355px;width:auto}.chart-legend .legend-line{height:11px;width:11px;border-radius:3px}.chart-control select{max-width:290px}
@media(min-width:1151px){main:has(.funding-layout){max-width:1500px}.funding-layout{grid-template-columns:255px minmax(0,1fr);align-items:start;gap:22px}.funding-summary{grid-column:1/-1;grid-row:1}.plan-rail{display:block;grid-column:1;grid-row:2/4;position:sticky;top:18px;max-height:calc(100vh - 36px);overflow-y:auto;padding:20px}.plan-rail h2{font-size:1.1rem}.plan-rail .stage-cards{grid-template-columns:1fr;gap:8px}.plan-rail .stage-card{padding:12px}.plan-rail .stage-card strong{font-size:1rem;margin-top:8px}.plan-rail .stage-card small{font-size:.72rem}.plan-rail .stage-note{font-size:.72rem}.funding-sections{grid-column:2;grid-row:2;grid-template-columns:1fr}.funding-sections>section{grid-column:1!important}.setup-submit{grid-column:2;grid-row:3}.funding-sections>section:nth-child(2) .compact-row,.funding-sections>section:nth-child(3) .compact-row{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) minmax(180px,1.1fr)}}
@media(max-width:760px){.stage-cards{gap:7px}.stage-card{padding:11px 8px}.stage-card>div{flex-wrap:wrap;gap:5px;font-size:.8125rem}.stage-card>div>span:last-child{margin-left:0;font-size:.72rem}.stage-icon{width:19px;height:19px}.stage-card strong{font-size:.875rem;line-height:1.5}.stage-card small{font-size:.65rem}.stage-note{font-size:.75rem}.advance-row>b,.installment-expenses .compact-row>b{grid-column:1;grid-row:1/3;font-size:.875rem}.chart-control select{max-width:230px}.cash-bar-chart{height:355px}.stage-card.pending strong{font-size:.75rem}}
.bond-estimate,.market-reference{padding:15px;background:#eef3ff;border:1px solid #d9e2f6;border-radius:12px;margin:12px 0;font-size:.875rem;line-height:1.7}.market-reference{background:#f3f8f5;border-color:#d7e6dd}.bond-estimate p,.market-reference p{margin-top:6px}.bond-estimate small,.market-reference small{display:block;color:var(--muted);line-height:1.7;margin-top:7px}
/* Payment reconciliation and explicit invalid-date feedback. */
input[aria-invalid=true]{border-color:#c33430!important;background:#fff3f1!important;box-shadow:0 0 0 1px #c33430}.field .hint.date-error{color:#b12d27;font-weight:600}.field [data-date-feedback]{min-height:21px;color:#426050}.stage-equation{font-size:.8125rem;line-height:1.6;margin-top:9px}.plan-rail .stage-equation{font-size:.75rem}.broker-options{margin-top:22px;padding:18px;background:#f5f7fc;border:1px solid var(--line);border-radius:12px}.broker-options h3{margin-bottom:16px}.broker-options input[type=number]{width:100%;min-height:44px;border:1px solid #cfd7e3;border-radius:8px;padding:10px}.compact-add+.compact-add{margin-left:20px}.payment-ledgers{display:grid;gap:22px;margin-top:24px}.payment-ledger{border:1px solid #d5dfeb;border-radius:16px;overflow:hidden;background:white}.payment-ledger>header{display:flex;justify-content:space-between;gap:15px;padding:20px;background:#f3f7fc;align-items:start}.payment-ledger>header h3{font-size:1.15rem}.payment-ledger>header p{font-size:.8125rem;margin-top:6px;color:var(--muted)}.payment-ledger>header>strong{white-space:nowrap;font-size:1rem}.payment-ledger.ledger-gap{border-color:#e7b2a8}.ledger-gap>header{background:#fff4ef}.flow-columns{display:grid;grid-template-columns:1fr 1fr}.flow-columns>div{min-width:0;padding:18px}.flow-sources{border-right:1px solid var(--line)}.flow-total{padding:14px;background:#ebf3ff;border-radius:9px}.flow-total>span{display:block;font-weight:600;font-size:.875rem}.flow-total>strong{display:block;font-size:1.28rem;margin-top:8px}.flow-uses .flow-total{background:#f6efe9}.flow-group{margin-top:22px}.flow-group h4{font-size:.875rem;margin:0 0 12px}.flow-entry{margin:13px 0}.flow-entry>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:.875rem;line-height:1.6}.flow-entry b{white-space:nowrap}.flow-entry small{font-size:.75rem;color:var(--muted)}.flow-track{height:5px;background:#edf1f6;border-radius:4px;margin:6px 0}.flow-track i{display:block;height:100%;background:#486fcd;border-radius:4px}.flow-entry.use .flow-track i{background:#b6814d}.flow-subtotal{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:10px;font-size:.875rem}.payment-ledger>footer{padding:16px 20px;background:#f5f7fb;font-size:.875rem;line-height:1.7}.same-day-note{padding:12px 20px;background:#fff8e7;font-size:.8125rem}.detail-tile .tabs{gap:16px;flex-wrap:wrap}.work-grid .detail-tile{grid-column:1/-1;grid-row:auto}.work-grid .next-panel{grid-row:auto}.work-grid .note-card.amber,.work-grid .timing-note{grid-row:auto}
@media(max-width:760px){.payment-ledger>header{flex-direction:column;padding:16px}.flow-columns{grid-template-columns:1fr}.flow-sources{border-right:0;border-bottom:1px solid var(--line)}.flow-columns>div{padding:16px}.stage-card small{font-size:.75rem}.stage-equation{font-size:.75rem}.payment-ledger>header>strong{white-space:normal}.compact-add+.compact-add{margin-left:10px}.work-grid .detail-tile{grid-column:1}}
@media(min-width:1151px){.work-grid .detail-tile{grid-row:2}.work-grid .next-panel{grid-column:1;grid-row:3}.work-grid .note-card.amber{grid-column:2;grid-row:3}.work-grid .timing-note{grid-column:1/-1;grid-row:4}}
@media(max-width:1150px){.work-grid .detail-tile{grid-row:3}.work-grid .next-panel{grid-column:1;grid-row:4}.work-grid .note-card.amber{grid-column:1;grid-row:5}.work-grid .timing-note{grid-column:1;grid-row:6}}

.flow-group h4{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line)}.flow-group h4>b{white-space:nowrap}.flow-entry .flow-entry-note{font-size:.8125rem;color:var(--muted);line-height:1.55;margin:4px 0 6px;overflow-wrap:anywhere}

.cost-block{border:1px solid var(--line);border-radius:14px;padding:20px;margin:18px 0;background:#fafcff}.cost-block h3{margin:0 0 16px}.inline-estimate{padding:12px 15px;border-radius:9px;background:#e9f1ff;color:#173c70;font-size:1rem;font-weight:700;margin:12px 0}.lookup-link{display:inline-block;font-weight:650;margin:8px 0 10px;text-decoration:underline;text-underline-offset:3px}.row-name .row-remove{float:right;color:#a83c37;font-size:.8125rem;padding:4px 8px}.flow-group{border:1px solid #dbe3ef;border-radius:12px;overflow:hidden;background:#fff}.flow-group h4{background:#eef3fa;padding:13px 14px;margin:0;border-bottom:1px solid #dbe3ef;font-size:.9375rem}.flow-uses .flow-group h4{background:#f6f0e9}.flow-children{margin:0 14px 12px 24px;padding-left:12px;border-left:2px solid #e3e9f2}.flow-entry{padding-top:3px}.flow-entry+ .flow-entry{border-top:1px solid #edf1f6;padding-top:12px}.amount-comparison{padding:18px 20px;border:1px solid #dbe4ef;border-radius:12px;margin:16px 0;background:white}.payment-ledger>.amount-comparison{margin:16px 18px 0}.compare-caption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;font-size:.9375rem}.compare-row{display:grid;grid-template-columns:50px minmax(0,1fr) minmax(100px,auto);gap:10px;align-items:center;margin:12px 0;font-size:.875rem}.compare-row>b{text-align:right}.compare-track{height:20px;border-radius:5px;background:#edf1f6;overflow:hidden}.compare-track>i{display:block;height:100%;border-radius:5px}.compare-track .source{background:#3973dc}.compare-track .use{background:#b78043}.amount-comparison>p{font-size:.8125rem;color:var(--muted);margin-top:12px}@media(max-width:600px){.cost-block{padding:14px}.flow-children{margin-left:14px}.compare-row{grid-template-columns:45px minmax(0,1fr)}.compare-row>b{grid-column:2;text-align:left}.compare-track{height:18px}}

.rental-summary .two-fields>div{background:#eef4fc;padding:16px;border-radius:12px}.rental-summary strong{display:block;margin-top:8px;font-size:1.35rem}.rental-summary p{line-height:1.65}.rental-input{margin:22px 0}.top-controls{display:flex;gap:12px;flex-wrap:wrap}

.stage-revolver{border-top:1px solid currentColor;padding-top:9px;margin-top:9px;font-size:.75rem;line-height:1.7;overflow-wrap:anywhere}.stage-revolver b{font-weight:700}
/* Planning workbench: retain the existing bento layout and make tools available at each stage. */
#planner-tools{width:min(1060px,94vw);max-height:90dvh;padding:24px;border:1px solid var(--line,#dbe3f0);border-radius:22px;color:var(--navy,#172b4c)}
#planner-tools::backdrop{background:#14264466}.tool-tabs,.tool-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.tool-tabs{border-bottom:1px solid #dbe3f0;padding-bottom:14px}.saved-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.saved-plan,.extra-cost-row,.review-row,.basis-box,.reminder-settings{padding:18px;border:1px solid #dbe3f0;border-radius:14px;margin:12px 0}.saved-plan.selected{border:2px solid #4565da;background:#f4f7ff}.saved-plan small,.review-row small,.allocation-row small,.checklist-row small{display:block;margin:6px 0;color:#526685}.review-row summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer}.review-row summary b{white-space:nowrap}.review-row summary span:before{content:'＋ ';color:#4565da}.review-row[open] summary span:before{content:'− '}.tool-tabs button{min-height:40px}.planner-toolbar{margin:18px 0}.planner-toolbar p{font-size:14px;margin:10px 0 0}.change-summary{color:#284baa;background:#edf3ff;padding:10px;border-radius:8px}.table-scroll{overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;min-width:440px}.compare-table th,.compare-table td{padding:14px;text-align:left;border-bottom:1px solid #dbe3f0}.compare-table thead{background:#edf3ff}.allocation-summary{display:grid;gap:10px;background:#edf3ff;padding:20px;border-radius:12px}.allocation-row{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #dbe3f0}.checklist-row{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid #dbe3f0}.checklist-row input{width:20px;height:20px}.section-nav{position:sticky;top:0;z-index:20;display:flex;gap:8px;justify-content:center;background:#ffffffed;backdrop-filter:blur(10px);padding:12px;border:1px solid #dbe3f0;border-radius:14px;margin:16px 0}.section-nav a{padding:6px 12px;color:#243e70;text-decoration:none;font-weight:600}.funding-sections section{scroll-margin-top:80px}.inline-help{font-size:14px;color:#526685;padding:8px 0}.inline-help summary{cursor:pointer}.gap-link{color:inherit;background:transparent;border:0;text-align:left;font-size:20px;font-weight:700;text-decoration:underline;padding:6px 0;cursor:pointer}.extra-cost-row legend{font-weight:700}.extra-cost-row input,.extra-cost-row select{max-width:100%}.print-preview{background:white;padding:24px;border:1px solid #ccd6e6}.print-preview table,#print-summary table{width:100%;border-collapse:collapse}.print-preview td,.print-preview th,#print-summary td,#print-summary th{padding:10px;border-bottom:1px solid #ccc;text-align:left}#print-summary{display:none}.conflict-box{border:2px solid #eaa938;padding:18px;margin:18px 0}.ownership-common{display:grid;gap:8px;grid-template-columns:1fr 1fr}.ownership-common h3,.ownership-common p{grid-column:1/-1}#planner-tools input,#planner-tools select{font-size:16px;padding:10px;border:1px solid #cad6e9;border-radius:8px;box-sizing:border-box;width:100%}#planner-tools input[type=checkbox]{width:auto}.planner-toolbar .button{font-size:14px}#tool-content>p{line-height:1.65}.plan-rail{max-height:calc(100dvh - 100px);overflow-y:auto;top:80px}.stage-note{font-size:14px}
@media(max-width:700px){.saved-plans{grid-template-columns:1fr}.section-nav{overflow-x:auto;justify-content:flex-start;white-space:nowrap;padding:8px 4px;gap:0}.section-nav a{padding:8px;font-size:14px}.allocation-row{grid-template-columns:1fr 1fr}.allocation-row>span{grid-column:1/-1}#planner-tools{padding:16px;width:96vw}.review-row{padding:12px}.review-row summary{align-items:flex-start}.review-row summary b{font-size:14px}.ownership-common{grid-template-columns:1fr}.tool-tabs{gap:6px}.tool-tabs .button{font-size:14px;padding:8px}.planner-toolbar .tool-actions{display:grid;grid-template-columns:1fr 1fr}.section-nav:has(+.funding-layout){position:sticky}.two-fields{min-width:0}.compact-row>*{min-width:0}}
@media print{body.printing-summary>*{display:none!important}body.printing-summary>#print-summary{display:block!important;padding:20px;color:#111;font:14px/1.6 sans-serif}#print-summary h1{font-size:24px}#print-summary h2{font-size:18px}}
.confirmation-pill{font-size:12px;color:#536988;background:#f0f4fb;border-radius:5px;padding:3px 6px;display:inline-block;margin:4px 0 0}.mobile-funds{display:none}
@media(max-width:700px){.mobile-funds{display:block;position:fixed;z-index:25;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #ccd6e6;box-shadow:0 -3px 12px #243e7010;padding:12px 16px}.mobile-funds summary{font-weight:700;color:#20395f}.mobile-funds p{font-size:14px;margin:8px 0;max-height:40dvh;overflow:auto}body:has(#start-form){padding-bottom:70px}}
/* Planning confidence and intraday checks */
.save-state{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:.875rem;color:#365174}.safety-summary{padding:16px;background:#f1f5ff;border:1px solid #dbe4f5;border-radius:14px;margin:16px 0}.safety-summary p{margin:8px 0;font-size:.875rem;line-height:1.55}.stage-caution{color:#82530b!important;background:#fff3d8;border-radius:7px;padding:8px;font-size:.875rem!important;line-height:1.5}.order-day{border:1px solid #d7dfed;border-radius:14px;padding:16px;margin:18px 0}.order-day ol{padding-left:24px}.order-day li{padding:12px 0;border-bottom:1px solid #e5eaf3;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.order-day li span{flex:1;min-width:160px;font-size:.9375rem}.order-day li b{display:block;font-size:.875rem;margin-top:4px}.safety-summary .error{color:#ab2929}.planner-toolbar>.save-state{border-bottom:1px solid #e5eaf3;padding-bottom:12px}.extra-cost-row .error{font-size:.875rem}
