:root{--ink: #10263f;--muted: #607080;--navy: #102f52;--navy-deep: #09233e;--green: #19695f;--gold: #b58a43;--gold-soft: #fff2d5;--paper: #fffdf8;--canvas: #edf2f2;--critical: #9e3b35;--condition: #1d7367;--line: #d6dfde;--shadow: 0 18px 45px rgb(16 38 63 / 10%);--radius: 12px;color:var(--ink);background:var(--canvas);font-family:Avenir Next,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{min-width:320px;overflow-x:clip;background:var(--canvas)}body{min-width:320px;margin:0;overflow-x:hidden}body.drawer-open{overflow:hidden}.print-gate-message{display:none}button,input,select{font:inherit}button,select,input{min-height:44px}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c89741;outline-offset:2px}.app-shell{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);column-gap:26px;align-items:start;width:min(1480px,calc(100% - 40px));margin:0 auto;padding:28px 0 48px}.app-header{position:relative;grid-column:2;grid-row:1;min-width:0;overflow:hidden;padding:40px 42px 26px;color:#f9f6ec;border:1px solid rgb(238 210 154 / 28%);border-radius:var(--radius);background:var(--navy-deep);box-shadow:var(--shadow)}.app-header:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";opacity:.5;pointer-events:none;background-image:linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),rgb(255 255 255 / 7%) calc(100% - 1px)),linear-gradient(0deg,transparent 0,transparent calc(100% - 1px),rgb(255 255 255 / 5%) calc(100% - 1px));background-size:48px 100%,100% 24px}.app-header:after{position:absolute;width:580px;height:580px;content:"";right:-280px;top:-410px;border:1px solid rgb(232 193 112 / 34%);border-radius:50%;box-shadow:0 0 0 35px #e8c1700a,0 0 0 70px #e8c17008}.masthead,.mode-controls,.export-control,.status-row{position:relative;z-index:1}.masthead{max-width:670px}.eyebrow,.section-kicker{margin:0 0 9px;color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.14em}.masthead h1,h2,h3{font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif}.masthead h1{margin:0;color:#fffdf5;font-size:clamp(36px,5vw,62px);font-weight:600;letter-spacing:.05em;line-height:1.08}.subtitle{margin:14px 0 0;color:#d8e2e5;font-size:16px;letter-spacing:.08em}.mode-controls{display:grid;grid-template-columns:repeat(3,minmax(150px,210px));gap:13px;margin-top:31px}.mode-controls label{display:grid;gap:6px;color:#cddce0;font-size:12px;font-weight:600;letter-spacing:.06em}select,input[type=number]{width:100%;border:1px solid var(--line);border-radius:7px;background:#fffefa;color:var(--ink);padding:9px 11px;transition:border-color .14s ease,box-shadow .14s ease}.mode-controls select{border-color:#eed29a57;background:#ffffff17;color:#fffdf5}.mode-controls option{background:var(--navy-deep);color:#fff}.export-control{display:flex;align-items:center;gap:12px;margin-top:16px}.export-pdf{min-width:118px;border:1px solid #e3c27f;border-radius:7px;background:#e3c27f;color:var(--navy-deep);padding:9px 16px;font-size:13px;font-weight:800}.export-pdf:hover:not(:disabled){background:#f0d79f}.export-pdf:disabled{cursor:not-allowed;opacity:.55}.export-status{margin:0;color:#cddce0;font-size:11px;line-height:1.5}select:hover,input[type=number]:hover{border-color:#90a4aa}.status-row{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-top:25px;padding-top:18px;border-top:1px solid rgb(238 210 154 / 25%)}.data-status,.identity-status{margin:0;font-size:13px;line-height:1.55}.data-status{display:flex;flex-wrap:wrap;gap:7px 12px;align-items:baseline}.data-status strong{font-weight:700}.status-critical strong:before,.status-expired strong:before,.status-checked strong:before{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;content:"";background:currentColor}.status-critical,.status-expired{color:#ffd7cb}.status-checked{color:#c3eee1}.identity-status{color:#dce8e9;text-align:right}.dashboard{display:contents}.parameter-slot{grid-column:1;grid-row:1 / span 2;min-width:0;align-self:stretch}.parameter-panel,.results-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:0 8px 26px #10263f0d}.parameter-panel{position:sticky;top:18px;display:grid;grid-template-rows:minmax(0,1fr) auto;height:calc(100dvh - 56px);max-height:calc(100dvh - 56px);overflow:hidden;padding:0}.parameter-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:19px 19px 0}.panel-folio{display:flex;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line);color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.14em}.panel-heading{padding:18px 0 7px}.panel-heading h2,.results-panel h2{margin:0;font-size:27px;font-weight:600;letter-spacing:.03em}.panel-heading p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.preset-row{display:grid;gap:8px;padding:13px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em}.preset-row div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.preset-row button{min-height:34px;border:1px solid #b9c7c7;border-radius:5px;background:transparent;color:var(--navy);font-size:12px}.preset-row button:hover{border-color:var(--green);background:#e8f3f0}.parameter-fields{display:grid;gap:14px;padding:16px 0 30px}.parameter-group{display:grid;gap:13px;margin:4px 0 0;padding-top:17px;border-top:1px solid var(--line)}.parameter-group h3{margin:0;color:var(--navy);font-size:17px;font-weight:600;letter-spacing:.04em}.field{display:grid;gap:6px;color:var(--ink);font-size:13px;font-weight:600;line-height:1.3}.input-wrap{position:relative;display:block}.input-wrap input{padding-right:46px}.input-wrap b{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:11px;font-weight:600}.check-field{display:flex;min-height:44px;align-items:center;gap:9px;color:var(--ink);font-size:13px;font-weight:600}.check-field input{width:18px;min-height:18px;accent-color:var(--green)}.range-line{display:grid;grid-template-columns:1fr 48px;gap:10px;align-items:center}.range-line input{width:100%;min-height:24px;accent-color:var(--green)}.range-line output{color:var(--green);font-feature-settings:"tnum";font-size:13px;font-weight:700;text-align:right}.field-error{margin:0;color:var(--critical);font-size:12px;font-weight:500}.parameter-footer{position:static;z-index:3;padding:12px 19px 19px;border-top:1px solid var(--line);background:#fffefa;box-shadow:0 -10px 24px #10263f1a}.parameter-actions{position:static;display:grid;gap:9px;margin:0;padding:13px 7px 7px;border:1px solid var(--line);border-radius:9px;background:#fffefa}.calculation-feedback{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:11px;font-weight:700;line-height:1.45}.calculation-feedback:before{flex:0 0 auto;width:8px;height:8px;border-radius:50%;content:"";background:var(--green);box-shadow:0 0 0 3px #19695f1a}.parameter-actions[data-feedback-state=dirty] .calculation-feedback:before{background:var(--gold);box-shadow:0 0 0 3px #b58a4321}.parameter-actions[data-feedback-state=invalid] .calculation-feedback{color:var(--critical)}.parameter-actions[data-feedback-state=invalid] .calculation-feedback:before{background:var(--critical);box-shadow:0 0 0 3px #9e3b351c}.parameter-actions [data-apply-parameters]{width:100%;border:1px solid var(--green);border-radius:7px;background:var(--navy);color:#fffdf5;font-size:13px;font-weight:800}.parameter-actions[data-feedback-state=dirty] [data-apply-parameters]{background:var(--green);box-shadow:0 7px 18px #19695f38}.parameter-actions [data-apply-parameters]:disabled{cursor:not-allowed;border-color:#aebdbc;background:#e8ece8;box-shadow:none;color:#667474;opacity:1}.reset-button{width:100%;margin-top:9px;border:1px solid var(--navy);border-radius:6px;background:transparent;color:var(--navy);font-size:13px;font-weight:700}.reset-button:hover{background:var(--navy);color:#fffdf5}.results-panel{grid-column:2;grid-row:2;min-width:0;min-height:330px;margin-top:26px;padding:clamp(25px,4vw,53px);transition:box-shadow .22s ease,outline-color .22s ease,background-color .22s ease}.results-panel.results-just-updated{outline:3px solid rgb(25 105 95 / 27%);outline-offset:4px;background:#fffefa;box-shadow:0 12px 34px #19695f21}.pending-results-notice{margin:0 0 25px;padding:12px 15px;border:1px solid #dfc58f;border-left:5px solid var(--gold);border-radius:7px;background:#fff8e8;color:#72561f;font-size:13px;font-weight:700;line-height:1.55}.results-panel .section-kicker{color:var(--green)}.capital-figure{max-width:550px;margin-top:36px;padding:25px 0 0;border-top:2px solid var(--gold)}.capital-figure span{display:block;color:var(--muted);font-size:13px;font-weight:600}.capital-figure strong{display:block;margin-top:8px;color:var(--navy);font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:clamp(34px,6vw,64px);font-weight:500;letter-spacing:.02em;line-height:1}.capital-figure p{color:var(--muted);font-size:14px}.results-error{border-color:#e1b8b0}.results-error .section-kicker{color:var(--critical)}.results-error ul{margin:22px 0 0;padding-left:21px;color:var(--critical);line-height:1.7}.parameter-toggle,.drawer-backdrop{display:none}@media(max-width:980px){.app-shell{display:block;width:min(100% - 28px,880px)}.app-header{grid-column:auto;grid-row:auto;padding:31px 28px 24px}.dashboard{display:grid;grid-template-columns:1fr;margin-top:26px}.parameter-slot{display:contents}.results-panel{grid-column:1;grid-row:auto;min-height:260px;margin-top:0}.parameter-toggle{position:fixed;z-index:30;right:22px;bottom:max(22px,env(safe-area-inset-bottom));display:block;min-width:112px;border:1px solid #d9b66f;border-radius:999px;background:var(--navy);box-shadow:0 10px 30px #05192c4d;color:#fffdf5;font-size:13px;font-weight:700}body.drawer-open .parameter-toggle{right:calc(min(420px,90vw) + 14px)}.drawer-backdrop{position:fixed;z-index:24;top:0;right:0;bottom:0;left:0;display:block;opacity:0;pointer-events:none;background:#05192c70;transition:opacity .16s ease}.drawer-backdrop[data-open=true]{opacity:1;pointer-events:auto}.parameter-panel{position:fixed;z-index:25;inset:0 0 0 auto;width:min(420px,90vw);height:100dvh;max-height:100dvh;overflow:hidden;border-radius:0;padding:0;visibility:hidden;pointer-events:none;transform:translate(105%);transition:transform .18s ease,visibility 0s linear .18s;box-shadow:-14px 0 40px #05192c38}.parameter-panel[data-open=true]{visibility:visible;pointer-events:auto;transform:translate(0);transition-delay:0s}.parameter-scroll{padding:24px 24px 0}.parameter-footer{padding:12px 24px 24px}}@media(max-width:640px){.app-shell{width:100%;padding:0 0 28px}.app-header{border-width:0 0 1px;border-radius:0;padding:31px 20px 22px}.masthead h1{font-size:38px}.subtitle{font-size:14px;line-height:1.65}.mode-controls{grid-template-columns:1fr;gap:11px;margin-top:25px}.status-row{display:grid;gap:12px;align-items:start}.identity-status{text-align:left}.dashboard{display:block;margin-top:0}.parameter-slot{display:contents}.parameter-toggle{right:18px;bottom:max(18px,env(safe-area-inset-bottom))}body.drawer-open .parameter-toggle{right:18px;bottom:calc(min(78dvh,680px) + 12px)}.parameter-panel{inset:auto 0 0;width:100%;height:min(78dvh,680px);max-height:min(78dvh,680px);border-radius:16px 16px 0 0;padding:0;transform:translateY(105%);box-shadow:0 -14px 40px #05192c38}.parameter-panel[data-open=true]{transform:translateY(0)}.parameter-scroll{padding:19px 20px 0}.parameter-footer{padding:12px 20px calc(16px + env(safe-area-inset-bottom))}.results-panel{min-height:300px;border-right:0;border-left:0;border-radius:0;padding:34px 20px 80px}.capital-figure{margin-top:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.result-summary{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(320px,1.25fr);gap:28px;align-items:end;padding-bottom:26px;border-bottom:1px solid var(--line)}.result-summary .capital-figure{max-width:none;margin:0;padding-top:17px}.result-summary .capital-figure strong{font-size:clamp(32px,4.5vw,56px)}.parameter-summary,.cash-flow{margin-top:16px;border:1px solid var(--line);border-radius:8px;background:#fbfcf9}.parameter-summary>summary,.cash-flow>summary{padding:13px 15px;color:var(--navy);cursor:pointer;font-size:13px;font-weight:700}.parameter-summary[open]>summary,.cash-flow[open]>summary{border-bottom:1px solid var(--line)}.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.table-scroll:focus-visible{outline:3px solid #c89741;outline-offset:-3px}.parameter-summary table,.money-table table,.cash-flow table,.risk-table table{width:100%;border-collapse:collapse}.parameter-summary th,.parameter-summary td,.money-table th,.money-table td,.cash-flow th,.cash-flow td,.risk-table th,.risk-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.parameter-summary tr:last-child>*,.money-table tbody tr:last-child>*,.cash-flow tbody tr:last-child>*,.risk-table tbody tr:last-child>*{border-bottom:0}.parameter-summary th,.money-table th,.cash-flow th,.risk-table th{color:var(--navy);font-size:12px;font-weight:700}.parameter-summary td,.money-table td,.cash-flow td,.risk-table td{color:var(--muted);font-size:12px;line-height:1.55}.parameter-summary td,.money-table td:nth-child(2),.cash-flow td:last-child{font-feature-settings:"tnum";white-space:nowrap}.money-table td.money-value{color:var(--ink);font-weight:700;text-align:right}.money-table thead th:nth-child(2),.cash-flow thead th:last-child{text-align:right}.money-label{display:block}.money-definition{display:block;margin-top:4px}.money-kind{display:inline-block;width:fit-content;margin-top:5px;padding:2px 6px;border:1px solid currentColor;border-radius:999px;font-family:Avenir Next,PingFang SC,sans-serif;font-size:9px;font-weight:800;letter-spacing:.04em;line-height:1.35;white-space:nowrap}[data-money-kind=cash] .money-kind{background:var(--gold-soft);color:#6f4b00}[data-money-kind=offset] .money-kind{background:#e2f1eb;color:#0d6558}[data-money-kind=liability] .money-kind{background:#f4e5df;color:#8a3928}.money-table tr[data-money-kind=cash]{background:#fffbf1}.money-table tr[data-money-kind=cash]>th{box-shadow:inset 4px 0 0 var(--gold)}.money-table tr[data-money-kind=offset]{background:#f2f8f5}.money-table tr[data-money-kind=offset]>th{box-shadow:inset 4px 0 0 var(--green)}.money-table tr[data-money-kind=liability]{background:#fff7f4}.money-table tr[data-money-kind=liability]>th{box-shadow:inset 4px 0 #a4513d}.cash-flow td:last-child{color:var(--ink);font-weight:700;text-align:right}.positive-value{color:var(--green)!important}.negative-value{color:var(--critical)!important}.status-banner{display:grid;grid-template-columns:30px 1fr;gap:12px;margin:18px 0;padding:15px 17px;border:1px solid #e0c88f;border-left:4px solid var(--gold);border-radius:8px;background:#fff8e9}.status-banner .status-icon{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#f0dcae;color:#72551e;font-size:14px;font-weight:800}.status-banner strong{color:#5f4518;font-size:14px}.status-banner p{margin:4px 0 0;color:#725e36;font-size:12px;line-height:1.6}.affordability-summary,.decision-comparison{margin:26px 0;padding-top:26px;border-top:1px solid var(--line)}.affordability-summary>h2,.decision-comparison>h2{margin:0;font-size:25px}.affordability-intro,.decision-intro,.decision-note{max-width:920px;color:var(--muted);font-size:12px;line-height:1.7}.affordability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:17px}.affordability-card{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#fffefa}.affordability-card header{padding:16px 17px 13px;border-bottom:1px solid var(--line);background:#f1f5f1}.affordability-card header span{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.1em}.affordability-card h3{margin:3px 0 0;color:var(--navy);font-family:inherit;font-size:18px}.affordability-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.affordability-card dl>div{min-width:0;padding:14px 16px;border-bottom:1px solid var(--line)}.affordability-card dl>div:nth-child(odd){border-right:1px solid var(--line)}.affordability-card dt{color:var(--muted);font-size:10px;font-weight:800;line-height:1.4}.affordability-card dt .money-kind{display:block}.affordability-card dd{margin:5px 0 0;color:var(--navy);font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:clamp(18px,2vw,25px);font-weight:700;line-height:1.15;overflow-wrap:anywhere}.affordability-card small{display:block;margin-top:5px;color:var(--muted);font-size:9px;line-height:1.5}.affordability-card .ongoing-cost,.affordability-card [data-money-kind=cash]{box-shadow:inset 4px 0 0 var(--gold);background:#fffaef}.affordability-card [data-money-kind=offset]{box-shadow:inset 4px 0 0 var(--green);background:#f2f8f5}.affordability-card [data-money-kind=liability]{box-shadow:inset 4px 0 #a4513d;background:#fff7f4}.decision-investment-basis{position:relative;margin-top:18px;overflow:hidden;border:1px solid rgb(224 190 124 / 42%);border-radius:10px;background:var(--navy-deep);box-shadow:0 12px 28px #09233e24;color:#fffdf5}.decision-investment-basis:after{position:absolute;right:-72px;top:-116px;width:230px;height:230px;border:1px solid rgb(224 190 124 / 30%);border-radius:50%;box-shadow:0 0 0 26px #e0be7c0a;content:"";pointer-events:none}.decision-investment-basis>p{margin:0;padding:13px 18px 11px;border-bottom:1px solid rgb(224 190 124 / 22%);color:#dfbd78;font-size:10px;font-weight:800;letter-spacing:.12em}.decision-basis-grid{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.35fr 1.2fr}.decision-investment-basis[data-product-scope=single] .decision-basis-grid{grid-template-columns:minmax(220px,.85fr) minmax(0,1.35fr)}.decision-basis-grid>*{min-width:0;padding:16px 18px 18px;border-right:1px solid rgb(224 190 124 / 18%)}.decision-basis-grid>*:last-child{border-right:0}.decision-basis-grid span,.decision-basis-grid small{display:block;color:#bdcfd3;font-size:9px;line-height:1.5}.decision-basis-grid span{font-weight:800;letter-spacing:.06em}.decision-basis-grid strong{display:block;margin:5px 0;color:#fffdf5;font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:clamp(17px,2vw,24px);line-height:1.15}.decision-basis-grid .decision-basis-capital strong{color:#edcd8d;font-size:clamp(24px,3vw,36px)}.decision-basis-product h3{margin:0 0 9px;color:#fffdf5;font-family:inherit;font-size:15px}.decision-basis-product dl{display:grid;gap:1px;margin:0}.decision-basis-product dl>div{min-width:0;padding:7px 9px;border-left:3px solid var(--gold);background:#fff2d512}.decision-basis-product dt{color:#bdcfd3;font-size:10px;font-weight:800;line-height:1.45}.decision-basis-product dt .money-kind{margin:0 0 0 6px;vertical-align:middle}.decision-basis-product dd{margin:3px 0 0;color:#fffdf5;font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:clamp(16px,1.65vw,21px);font-weight:700;line-height:1.15;overflow-wrap:anywhere}.decision-basis-product [data-current-net-investment]{color:#edcd8d;font-size:clamp(19px,2vw,26px)}.decision-basis-product>small{margin-top:8px}.decision-key-wrap{margin-top:17px}.decision-scroll-shell{min-width:0}.decision-scroll-frame{--decision-scrollbar-height: 16px;position:relative;min-width:0}.decision-scroll-frame:before,.decision-scroll-frame:after{position:absolute;z-index:4;top:0;bottom:var(--decision-scrollbar-height);width:28px;content:"";opacity:1;pointer-events:none;transition:opacity .14s ease}.decision-scroll-frame:before{left:0;background:linear-gradient(90deg,rgb(9 35 62 / 20%),transparent)}.decision-scroll-frame:after{right:0;background:linear-gradient(270deg,rgb(9 35 62 / 20%),transparent)}.decision-scroll-shell[data-at-left=true] .decision-scroll-frame:before,.decision-scroll-shell[data-at-right=true] .decision-scroll-frame:after,.decision-scroll-shell[data-overflowing=false] .decision-scroll-frame:before,.decision-scroll-shell[data-overflowing=false] .decision-scroll-frame:after{opacity:0}.decision-scroll-shell .table-scroll{scrollbar-width:auto;scrollbar-color:var(--green) #d9e3df;scrollbar-gutter:stable}.decision-scroll-shell .table-scroll::-webkit-scrollbar{height:16px}.decision-scroll-shell .table-scroll::-webkit-scrollbar-track{border:1px solid #9db0ae;border-radius:5px;background:#d9e3df}.decision-scroll-shell .table-scroll::-webkit-scrollbar-thumb{border:3px solid #d9e3df;border-radius:6px;background:var(--green)}.horizontal-scroll-hint{margin:0 0 6px;color:var(--navy);font-size:12px;font-weight:800}.horizontal-scroll-hint[hidden]{display:none}.decision-table{width:100%;min-width:1020px;border-collapse:collapse;border-top:2px solid var(--green)}.decision-table[data-product-scope=single]{min-width:680px}.decision-table thead{background:#edf4f0}.decision-table th,.decision-table td{padding:12px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.decision-table th{color:var(--navy);font-size:11px;font-weight:800}.decision-table tbody th{white-space:nowrap}.decision-table thead th:first-child,.decision-table tbody th:first-child{position:sticky;left:0;z-index:2;background:var(--paper);box-shadow:1px 0 0 var(--line)}.decision-table thead th:first-child{z-index:3;background:#edf4f0}.decision-table td{color:var(--muted);font-size:10px}.decision-table td strong{display:block;color:var(--ink);font-size:12px;font-feature-settings:"tnum";white-space:nowrap}.decision-table td small{display:block;margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45;white-space:nowrap}.decision-table .decision-invested{display:grid;gap:4px;min-width:170px;margin-top:8px;padding:7px 9px;border-left:4px solid var(--gold);background:var(--gold-soft);color:var(--navy)}.decision-invested>span{color:#6f4b00;font-size:12px;font-weight:800;line-height:1.4;white-space:normal}.decision-invested>span .money-kind{margin:0 0 0 4px;vertical-align:middle}.decision-table .decision-invested>strong{color:var(--navy);font-size:clamp(14px,1.2vw,16px);font-weight:800}.decision-table .decision-profit{font-weight:800}.decision-table .cell-product{display:none}.decision-return strong{color:var(--green)!important}.decision-unavailable strong{color:#7b898f!important;white-space:normal!important}.decision-winner{color:var(--navy)!important;font-weight:800;white-space:nowrap}.decision-full{margin-top:12px;border:1px solid var(--line);border-radius:8px;background:#fbfcf9}.decision-full>summary{padding:13px 15px;color:var(--navy);cursor:pointer;font-size:12px;font-weight:800}.decision-full[open]>summary{border-bottom:1px solid var(--line)}.decision-full .decision-table{border-top:0}.decision-note{margin:12px 0 0;padding:11px 14px;border-left:4px solid #356f9f;background:#eef5fb}.decision-note strong{color:var(--navy)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.product-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fffefa}.product-heading{position:relative;padding:22px 20px 19px;overflow:hidden;background:var(--navy);color:#fff}.product-heading:after{position:absolute;right:-35px;bottom:-55px;width:130px;height:130px;border:1px solid rgb(224 190 124 / 38%);border-radius:50%;content:"";box-shadow:0 0 0 19px #e0be7c0d}.product-heading p{margin:0 0 5px;color:#dcb870;font-size:9px;font-weight:700;letter-spacing:.14em}.product-heading h2{color:#fffdf5;font-size:27px}.product-heading span{display:block;margin-top:5px;color:#c9d8dc;font-size:11px}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:7px 19px 0}.metric{display:grid;align-content:start;gap:5px;min-width:0;padding:15px 8px 14px;border-bottom:1px solid var(--line)}.metric:nth-child(odd){padding-left:0;padding-right:16px;border-right:1px solid var(--line)}.metric:nth-child(2n){padding-left:16px;padding-right:0}.metric>span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em}.metric strong{overflow-wrap:anywhere;color:var(--green);font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:clamp(20px,2.2vw,29px);font-weight:600;line-height:1.1}.metric small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.5}.metric-risk strong{color:var(--critical)}.metric-primary{margin:5px 0;padding-top:12px;padding-bottom:12px;border-radius:6px;background:#edf5f0;box-shadow:inset 4px 0 0 var(--green)}.metric-primary:nth-child(odd),.metric-primary:nth-child(2n){padding-left:13px;padding-right:13px}.money-table{padding:21px 19px 0}.money-table h3{margin:0 0 11px;color:var(--navy);font-family:inherit;font-size:14px;letter-spacing:.04em}.money-table table{min-width:470px;border-top:2px solid var(--gold)}.money-table thead{background:#f1f4f1}.money-table th:first-child{width:35%}.money-table td:nth-child(2){width:27%}.cash-flow{margin:16px 19px 0}.cash-flow table{min-width:460px}.product-notes{display:grid;gap:9px;padding:19px}.context-note{padding:13px 14px;border-radius:7px}.context-note.info{border-left:4px solid #356f9f;background:#eef5fb}.context-note.condition{border-left:4px solid #bf8b32;background:#fff7e8}.context-note.critical{border-left:4px solid var(--critical);background:#fff0ed}.note-heading{display:grid;grid-template-columns:21px 1fr;gap:7px;align-items:start;color:var(--navy);font-size:12px;line-height:1.5}.note-heading>span{display:grid;width:19px;height:19px;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:10px;font-weight:800}.context-note details{margin:7px 0 0 28px;color:var(--muted);font-size:11px;line-height:1.65}.context-note summary{color:var(--navy);cursor:pointer;font-weight:700}.context-note p{margin:7px 0 0}.risk-table{margin-top:24px;padding-top:25px;border-top:1px solid var(--line)}.risk-table h2,.source-appendix h2{margin:0 0 14px;font-size:25px}.risk-table table{min-width:600px;border-top:2px solid var(--critical)}.risk-table thead{background:#faf0ed}.risk-table th:first-child{width:18%}.risk-table td:last-child{color:var(--critical);font-weight:700}.risk-cards{display:none}.risk-card{border:1px solid #e1b8b0;border-left:4px solid var(--critical);border-radius:8px;background:#fff8f5;padding:15px}.risk-card h3{margin:0;color:var(--navy);font-family:inherit;font-size:16px}.risk-card dl{display:grid;gap:13px;margin:14px 0 0}.risk-card dl>div{display:grid;gap:4px}.risk-card dt{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em}.risk-card dd{margin:0;color:var(--ink);font-size:12px;line-height:1.6}.risk-card dl>div:last-child dd{color:var(--critical);font-weight:700}.identity-note{margin:17px 0 0;padding:13px 15px;border-left:4px solid #316ea6;background:#eef5fb;color:#465e70;font-size:12px;line-height:1.6}.identity-note strong{color:var(--navy)}.source-appendix{margin-top:27px;padding-top:27px;border-top:1px solid var(--line)}.source-version{color:var(--muted);font-feature-settings:"tnum";font-size:12px}.source-appendix ul{display:grid;gap:0;margin:17px 0 0;padding:0;border-top:1px solid var(--line);list-style:none}.source-appendix li{display:grid;grid-template-columns:142px 1fr;gap:14px;padding:13px 4px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.55}.source-status{align-self:start;width:fit-content;padding:3px 7px;border:1px solid #9dadae;border-radius:999px;color:var(--muted);font-size:10px;font-weight:700}.source-appendix a,.source-appendix li strong{color:var(--navy);font-weight:700}.source-appendix li p{margin:3px 0 0;color:var(--muted)}.source-appendix li .source-warning{color:var(--critical);font-weight:700}.tool-disclaimer{margin:17px 0 0;padding:15px;border:1px solid #e0c88f;background:#fffaef;color:var(--muted);font-size:12px;line-height:1.6}.tool-disclaimer strong{color:#634b22}@media(max-width:1200px){.product-grid,.affordability-grid{grid-template-columns:1fr}.metric strong{font-size:clamp(23px,3vw,31px)}}@media(max-width:700px){.result-summary{grid-template-columns:1fr;gap:17px}.result-summary .capital-figure{padding-top:14px}.metric-grid{grid-template-columns:1fr}.metric,.metric:nth-child(odd),.metric:nth-child(2n){padding:14px 0;border-right:0}.money-table,.product-notes{padding-right:15px;padding-left:15px}.cash-flow{margin-right:15px;margin-left:15px}.risk-table-scroll{display:none}.risk-cards{display:grid;gap:10px}.source-appendix li{grid-template-columns:1fr;gap:7px}.affordability-grid,.affordability-card dl{grid-template-columns:1fr}.affordability-card dl>div:nth-child(odd){border-right:0}.decision-basis-grid,.decision-investment-basis[data-product-scope=single] .decision-basis-grid{grid-template-columns:1fr}.decision-basis-grid>*{border-right:0;border-bottom:1px solid rgb(224 190 124 / 18%)}.decision-basis-grid>*:last-child{border-bottom:0}.decision-table{min-width:920px}}.charts{display:grid;gap:18px;margin-top:28px;padding-top:27px;border-top:1px solid var(--line)}.charts>.section-kicker{margin-bottom:-13px}.charts>h2{margin:0 0 2px;font-size:25px}.chart-figure{min-width:0;margin:0;padding:18px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fffefa}.figure-visual{margin:0}.chart-figure figcaption{margin-bottom:5px;color:var(--navy);font-family:Iowan Old Style,Baskerville,Songti SC,STSong,serif;font-size:19px;font-weight:700}.chart-description,.chart-note{color:var(--muted);font-size:11px;line-height:1.65}.chart-description{margin:0 0 14px}.timeline-basis{margin:-9px 0 0;padding:11px 14px;border-left:4px solid var(--gold);background:#fff8e9;color:var(--muted);font-size:11px;line-height:1.6}.timeline-basis strong{color:#634b22}.chart-note{margin:0;padding:14px 16px;border-left:4px solid #356f9f;background:#eef5fb}.chart-note strong{color:var(--navy)}.chart-figure svg{display:block;width:100%;height:auto;overflow:visible}.chart-axis{stroke:#aebbbb;stroke-width:1;vector-effect:non-scaling-stroke}.chart-legend text,.axis-label,.heat-axis-title,.waterfall-index,.payback-marker text,.heat-cell text{fill:var(--muted);font-family:Avenir Next,PingFang SC,sans-serif;font-size:11px}.chart-legend text{fill:var(--navy);font-size:12px;font-weight:700}.line-prime-value{stroke:var(--green)}.line-trust-value{stroke:var(--gold);stroke-dasharray:10 6}.line-prime-cost{stroke:#52677e;stroke-dasharray:3 6}.line-trust-cost{stroke:#8f7043;stroke-dasharray:12 4 2 4}.chart-point{fill:#fffefa;stroke-width:2;vector-effect:non-scaling-stroke}.line-prime-value-point{stroke:var(--green)}.line-trust-value-point{stroke:var(--gold)}.line-prime-cost-point{stroke:#52677e}.line-trust-cost-point{stroke:#8f7043}.payback-marker circle{fill:#fffefa;stroke:var(--navy);stroke-width:2;vector-effect:non-scaling-stroke}.payback-economic circle{stroke:var(--gold);stroke-dasharray:2 1}.payback-axis-only circle{fill:#eef5fb;stroke-dasharray:2 2}.payback-marker text{fill:var(--navy);font-size:10px;font-weight:800;paint-order:stroke;stroke:#fffefa;stroke-width:3px}.payback-print-summary{display:none}.funding-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.funding-chart-grid:has(.funding-chart:only-child){grid-template-columns:1fr}.waterfall-item rect{fill:var(--green)}.waterfall-offset rect{fill:var(--gold)}.waterfall-connector{stroke:#7b898f;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.waterfall-index{fill:var(--navy);font-size:10px;font-weight:800}.funding-bars{display:none}.funding-row{display:grid;grid-template-columns:minmax(118px,.8fr) minmax(80px,1fr) minmax(100px,auto);gap:10px;align-items:center;margin:10px 0;color:var(--muted);font-size:11px}.funding-row b{color:var(--navy)}.funding-row small{display:block;margin:2px 0 0 22px;color:var(--muted);font-size:9px}.funding-row strong{color:var(--ink);font-size:10px;font-feature-settings:"tnum";text-align:right;white-space:nowrap}.funding-bar{display:block;width:max(4px,calc(var(--bar) * 100%));height:11px;border-radius:999px;background:repeating-linear-gradient(45deg,var(--green) 0 5px,#2f8075 5px 9px)}.funding-bar.offset{background:repeating-linear-gradient(-45deg,var(--gold) 0 5px,#cfaa68 5px 9px)}.chart-graphic-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.chart-graphic-scroll:focus-visible{outline:3px solid #c89741;outline-offset:-3px}.sensitivity-chart svg{min-width:680px}.heat-axis-title{fill:var(--navy);font-size:11px;font-weight:800}.heat-cell rect{stroke:#cbd6d4;stroke-width:1;vector-effect:non-scaling-stroke}.heat-cell.loss rect{fill:#f9dfdc}.heat-cell.close rect{fill:#fbefd5}.heat-cell.lead rect{fill:#e4f0eb}.heat-cell.strong-lead rect{fill:#cbe5da}.heat-cell.no-data rect{fill:#e8ecee}.heat-cell text{fill:var(--ink);font-size:11px;font-weight:800}.heat-cell .heat-cell-status{fill:var(--muted);font-size:9px;font-weight:700}.chart-data{margin-top:14px;border-top:1px solid var(--line)}.chart-data>summary{padding:13px 2px 4px;color:var(--navy);cursor:pointer;font-size:11px;font-weight:800}.chart-data table{width:100%;min-width:520px;margin-top:8px;border-collapse:collapse}.chart-data th,.chart-data td{padding:9px 10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px;text-align:right;white-space:nowrap}.chart-data th:first-child,.chart-data td:first-child{color:var(--navy);text-align:left}.chart-data thead{background:#f1f4f1}@media(max-width:900px){.funding-chart-grid{grid-template-columns:1fr}}@media(max-width:640px){.chart-figure{padding:13px}.chart-figure figcaption{font-size:17px}.value-chart svg{min-width:590px}.funding-waterfall{display:none!important}.funding-bars{display:block}.funding-row{grid-template-columns:minmax(94px,.9fr) minmax(46px,1fr) minmax(92px,auto);gap:7px}.chart-data table{min-width:500px}}@media print{@page{size:A4 portrait;margin:11mm}:root{color:#111;background:#fff}html,body{min-width:0;background:#fff;color:#111}body{overflow:visible!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.app-shell{display:block;width:100%;margin:0;padding:0}body:not(.print-ready) .app-shell{display:none!important}.print-gate-message{display:block!important;margin:18mm auto;max-width:150mm;padding:8mm;border:1px solid #9e3b35;background:#fff0ed;color:#6f2824;font-size:12pt;font-weight:700;line-height:1.6}body.print-ready .print-gate-message{display:none!important}body.print-ready .app-shell{display:block}.parameter-panel,.parameter-footer,.parameter-actions,.parameter-toggle,.mobile-parameters,.drawer-backdrop,.pending-results-notice,.mode-controls,.export-control,.export-pdf{display:none!important}.app-header{width:100%;margin:0 0 8mm;padding:8mm;border-radius:0;box-shadow:none}.app-header:after{display:none}.masthead h1{font-size:28pt}.subtitle{margin-top:3mm;font-size:10pt}.status-row{margin-top:5mm;padding-top:4mm}.dashboard,.product-grid,.funding-chart-grid{display:block;width:100%;margin:0}.parameter-slot{display:none}.results-panel{min-height:0;margin-top:0;padding:0;border:0;border-radius:0;box-shadow:none}.result-summary{grid-template-columns:1fr 1fr;gap:8mm}.parameter-summary{display:block}details>summary{display:none}details>*:not(summary){display:block}.decision-key-wrap{display:none}.decision-full{border:0;background:transparent}.horizontal-scroll-hint{display:none!important}.decision-scroll-frame:before,.decision-scroll-frame:after{display:none}.decision-table thead th:first-child,.decision-table tbody th:first-child{position:static;box-shadow:none}.decision-investment-basis{border-color:#839192;background:#fff;box-shadow:none;color:var(--ink)}.decision-investment-basis:after{display:none}.decision-investment-basis>p{border-color:var(--line);color:var(--navy)}.decision-basis-grid>*{border-color:var(--line)}.decision-basis-grid span,.decision-basis-grid small{color:var(--muted)}.decision-basis-grid strong,.decision-basis-grid .decision-basis-capital strong,.decision-basis-product h3,.decision-basis-product dd,.decision-basis-product [data-current-net-investment]{color:var(--ink)}.decision-basis-product dt{color:var(--muted)}.money-kind{border-color:#555!important;background:#fff!important;color:#111!important}.decision-table .decision-invested{border:1px solid #777;border-left:4px solid #555;background:#fff}.decision-invested>span,.decision-table .decision-invested>strong{color:#111}.decision-table{min-width:0!important;font-size:7pt}.decision-table th,.decision-table td{padding:1.7mm 1.2mm}.decision-table td strong{font-size:7pt;white-space:normal}.decision-table td small{font-size:6pt;white-space:normal}.product-card{margin:0 0 8mm;overflow:visible;break-inside:auto;border-color:#9ca8aa}.product-heading{break-after:avoid}.metric-grid{break-before:avoid}.product-heading,.metric-grid,.context-note,.status-banner,.risk-card,.source-appendix li{break-inside:avoid}.money-table,.cash-flow{break-inside:auto}.context-note{margin-bottom:3mm;break-inside:avoid}.context-note details{display:block}.chart-figure{margin:0 0 6mm;overflow:visible;break-inside:auto}.figure-visual{margin:0;break-inside:avoid}.chart-graphic-scroll,.table-scroll{max-width:none;overflow:visible}.chart-graphic-scroll svg,.figure-visual>svg{width:100%;max-height:115mm}.payback-marker text{display:none}.payback-print-summary{display:block;margin:2mm 0 0;padding:2mm 3mm;border-left:1mm solid var(--gold);background:#fff8e9;color:var(--muted);font-size:8pt;line-height:1.45}.payback-print-summary strong{color:var(--navy)}.chart-data{break-inside:auto}.risk-table-scroll{display:block!important}.risk-cards{display:none!important}table,.money-table table,.cash-flow table,.risk-table table,.chart-data table{width:100%;min-width:0!important;table-layout:auto}thead{display:table-header-group}tr{break-inside:avoid}th,td,.parameter-summary td,.money-table td:nth-child(2),.cash-flow td:last-child{white-space:normal!important;overflow-wrap:anywhere}.risk-table,.source-appendix{break-before:auto}.source-appendix li{padding:1.8mm 1mm;font-size:8pt;line-height:1.35}.source-appendix li p{margin-top:1mm}.tool-disclaimer{margin-top:3mm;padding:3mm;font-size:8pt;line-height:1.4}.source-appendix a{overflow-wrap:anywhere}a[href]:after{content:" — " attr(href);display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-all;white-space:normal;color:var(--muted);font-size:7pt;font-weight:400}}
