:root{--ink:#192821;--muted:#64726b;--paper:#fffdf9;--line:#dfe6df;--green:#176b4a;--soft:#eef6f1;--gold:#c6922f;--danger:#a43427}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f7f4;color:var(--ink)}button,input,select{font:inherit}.topbar{height:68px;background:#123f31;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1180px)/2))}.brand{color:white;text-decoration:none;font-size:20px;font-weight:750}.brand span{color:#f4c85a}.top-actions{display:flex;align-items:center;gap:16px}.saved{font-size:13px;color:#d6ebe0}.nav-link{color:#d6ebe0;text-decoration:none;font-size:13px}.shell{max-width:1180px;margin:auto;padding:36px 24px 80px}.hero{display:flex;justify-content:space-between;align-items:center;padding:14px 8px 32px}.hero h1{font-family:Georgia,serif;font-size:42px;margin:5px 0 9px}.hero p{color:var(--muted);margin:0;max-width:600px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--green);margin:0 0 7px}.hero-badge{text-align:center;background:#e2efe8;border-radius:50%;width:92px;height:92px;padding-top:19px;font-size:27px;color:var(--green);font-weight:800}.hero-badge small{font-size:10px;font-weight:600}.report-tabs{display:flex;gap:5px;overflow:auto;border-bottom:1px solid var(--line)}.report-tabs button{border:0;background:transparent;color:var(--muted);padding:14px 16px;white-space:nowrap;cursor:pointer;border-bottom:3px solid transparent}.report-tabs button.active{color:var(--green);border-bottom-color:var(--green);font-weight:750}.workspace{background:var(--paper);border:1px solid var(--line);border-top:0;padding:30px;display:grid;grid-template-columns:1fr 280px;gap:38px}.workspace h2{font-size:23px;margin:0 0 8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.form-grid label,label{font-size:13px;font-weight:650;color:#38473f}.form-grid input{display:block;width:100%;margin-top:7px;border:1px solid #cfd9d1;border-radius:6px;padding:11px;background:white;color:var(--ink)}.form-grid input:focus{outline:2px solid #a8d7bf;border-color:var(--green)}.button{border:1px solid var(--green);border-radius:6px;background:var(--green);color:white;font-weight:700;padding:10px 16px;cursor:pointer}.button.secondary{background:white;color:var(--green)}.button.full{width:100%;padding:13px}.summary{background:var(--soft);padding:22px;border-radius:7px;align-self:start}.summary h3{margin:3px 0 20px;font-size:18px}.summary dl{margin:0}.summary dl div{border-top:1px solid #cde0d4;padding:13px 0}.summary dt{font-size:12px;color:var(--muted)}.summary dd{font-size:18px;font-weight:750;margin:4px 0 0}.hint{color:var(--muted);font-size:14px;line-height:1.55}.report-area{margin-top:42px;background:var(--paper);border:1px solid var(--line)}.report-heading{padding:27px 30px 17px;display:flex;justify-content:space-between;align-items:center}.report-heading h2{font-family:Georgia,serif;margin:0;font-size:28px}.report-actions{display:flex;gap:8px}.report{padding:42px 58px;min-height:600px}.report h1{font-family:Georgia,serif;text-align:center;margin:6px 0}.report .sub{text-align:center;color:var(--muted);margin:0 0 28px}.report h3{font-size:16px;background:#eaf3ed;padding:10px;margin:26px 0 0}.report table{width:100%;border-collapse:collapse;font-size:13px}.report td,.report th{border:1px solid #cfd9d1;padding:9px;text-align:left}.report th{background:#f4f7f4}.report td:last-child,.report th:not(:first-child){text-align:right}.report .total td{font-weight:800;background:#f1f7f3}.signature{margin-top:70px;display:flex;justify-content:space-between}.hidden{display:none}.preview-page{position:relative}.watermark-grid{position:absolute;inset:0;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));overflow:hidden;pointer-events:none;user-select:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.watermark-grid span{display:grid;place-items:center;min-width:0;color:rgba(23,107,74,.16);font-size:clamp(12px,1.7vw,22px);font-weight:900;letter-spacing:.06em;white-space:nowrap;transform:rotate(-30deg)}.premium-lock{position:relative;max-height:365px;overflow:hidden}.premium-lock .lockable{filter:blur(7px);user-select:none;pointer-events:none}.premium-lock:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(255,253,249,.98) 25%)}.lock-message{position:absolute;z-index:2;left:50%;top:68%;transform:translate(-50%,-50%);width:min(410px,90%);text-align:center;background:#123f31;color:white;padding:20px;border-radius:8px;box-shadow:0 12px 28px #123f3144}.lock-message strong{display:block;font-size:16px;margin-bottom:9px}.lock-message button{margin-top:12px}.info-grid{margin-top:38px;padding:30px;background:#e2efe8;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:20px}.info-grid h2{font-family:Georgia,serif;margin:0 0 7px}.info-grid p{margin:0;color:var(--muted)}.site-links{display:flex;gap:22px;padding:25px 0}.site-links a{font-size:13px;color:var(--muted)}.payment-modal{border:0;border-radius:12px;padding:28px;width:min(480px,calc(100% - 32px));box-shadow:0 25px 80px #0005}.payment-modal::backdrop{background:#10271ccc}.modal-head{display:flex;justify-content:space-between;align-items:start}.modal-head h2{font-family:Georgia,serif;margin:0}.icon-button{border:0;background:transparent;font-size:27px;line-height:1;cursor:pointer}.payment-price{display:flex;justify-content:space-between;align-items:center;margin:24px 0 12px;padding:16px;background:var(--soft);border-radius:7px}.payment-price strong{font-size:24px}.payment-note,.tiny{font-size:12px;color:var(--muted)}.payment-error{background:#fce8e5;color:var(--danger);padding:10px;border-radius:6px;font-size:13px}@media(max-width:760px){.topbar{padding:0 16px}.saved,.nav-link{display:none}.shell{padding:25px 15px}.hero h1{font-size:32px}.hero-badge{display:none}.workspace{grid-template-columns:1fr;padding:22px}.summary{order:-1}.form-grid{grid-template-columns:1fr}.report-heading{padding:21px;display:block}.report-actions{margin-top:14px}.report{padding:25px 15px;overflow:auto}.watermark-grid span{font-size:10px;letter-spacing:.02em}.info-grid{align-items:start;flex-direction:column}}@media print{body{background:white}.topbar,.hero,.workspace,.report-heading,.report-tabs,.info-grid,.site-links{display:none!important}.shell{padding:0}.report-area{margin:0;border:0}.report{display:block!important;padding:18mm}.report h1{font-size:24px}.watermark-grid span{color:rgba(23,107,74,.18)!important}.print-section{break-after:page}.print-section:last-child{break-after:auto}@page{size:A4;margin:12mm}}
.form-grid select{display:block;width:100%;margin-top:7px;border:1px solid #cfd9d1;border-radius:6px;padding:11px;background:#fff;color:var(--ink)}.form-grid input[readonly]{background:var(--soft);color:#526158;cursor:not-allowed}
.form-grid{align-items:start}.form-grid label{line-height:1.35}.form-grid input,.form-grid select{min-height:46px}.form-grid input[readonly]{background:#eef6f1}.form-grid input[type="number"]{font-variant-numeric:tabular-nums}@media(max-width:760px){.shell{padding:18px 14px 48px}.workspace{padding:18px 15px;gap:20px}.workspace h2{font-size:22px}.form-grid{gap:16px}.form-grid label{font-size:14px}.form-grid input,.form-grid select{margin-top:6px;padding:13px 12px;font-size:16px;border-radius:8px}.form-grid input:focus,.form-grid select:focus{outline:3px solid #a8d7bf;outline-offset:1px}.summary{padding:18px 16px}.summary dl div{padding:11px 0}.report-tabs{scroll-snap-type:x mandatory}.report-tabs button{scroll-snap-align:start;padding:13px 14px}.report{padding:22px 14px}.report table{font-size:12px}.report td,.report th{padding:8px;white-space:nowrap}.payment-modal{padding:22px 20px}.payment-price{padding:14px}.button{min-height:44px}.top-actions{gap:8px}}
.machinery-purchase-field{grid-column:1/-1;display:flex!important;align-items:center;gap:10px;padding:11px 12px;border:1px solid #cfd9d1;border-radius:6px;background:#f7faf8}.machinery-purchase-field input{display:inline-block!important;width:20px!important;height:20px!important;min-height:20px!important;margin:0!important;flex:0 0 20px}.machinery-cost-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.machinery-cost-fields[hidden]{display:none!important}.field-error{display:block;margin-top:6px;color:#a01818;font-size:12px;line-height:1.35}.field-error[hidden]{display:none!important}.preview-page.locked .assumption-secure-area{filter:blur(7px);user-select:none;pointer-events:none}.assumptions-lock-message{top:58%}@media(max-width:760px){.machinery-cost-fields{grid-template-columns:1fr;gap:16px}.assumptions-lock-message{top:60%}}
.machinery-cost-fields{grid-template-columns:minmax(0,1fr)}.working-capital-field,.repayment-months-field{display:none!important}.projection-period-field select{display:block;width:100%;min-height:46px;margin-top:7px;border:1px solid #cfd9d1;border-radius:6px;padding:11px;background:#fff;color:var(--ink)}.projection-period-field select:focus{outline:2px solid #a8d7bf;border-color:var(--green)}.projection-year-group{margin-top:14px}.projection-year-group h4{margin:0 0 7px;color:var(--green);font-size:14px}
.dpr-flow-head{margin-bottom:26px}.dpr-flow-head h2{font-family:Georgia,serif;font-size:28px;margin:0 0 14px}.dpr-flow-progress{height:8px;background:#dfece4;border-radius:999px;overflow:hidden}.dpr-flow-progress span{display:block;width:0;height:100%;background:var(--green);border-radius:inherit;transition:width .2s ease}.dpr-flow-status{margin:9px 0 0;font-size:13px;font-weight:700;color:var(--muted)}.dpr-flow-card{min-height:370px}.dpr-flow-card h3{font-size:20px;margin:0 0 5px}.dpr-flow-card>p{margin:0 0 20px;color:var(--muted);font-size:14px}.dpr-flow-nav{display:flex;justify-content:space-between;gap:12px;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.dpr-flow-nav .button{min-width:116px;min-height:46px}@media(max-width:760px){.dpr-flow-head{margin-bottom:22px}.dpr-flow-head h2{font-size:25px}.dpr-flow-card{min-height:0}.dpr-flow-card h3{font-size:19px}.dpr-flow-card>p{font-size:14px;line-height:1.5}.dpr-flow-nav{position:sticky;bottom:0;z-index:5;background:rgba(255,253,249,.98);padding:14px 0 8px;margin-top:22px}.dpr-flow-nav .button{flex:1;min-width:0;min-height:50px;font-size:16px}}
.mobile-average-dscr{display:none}@media screen and (max-width:760px){.workspace>.summary{display:none}.mobile-average-dscr{display:flex;box-sizing:border-box;width:100%;min-width:0;margin:0 0 18px;padding:12px 14px;align-items:center;justify-content:space-between;gap:12px;border:1px solid #cde0d4;border-left:4px solid var(--green);border-radius:8px;background:var(--soft);color:#38473f}.mobile-average-dscr span{font-size:13px;font-weight:700}.mobile-average-dscr strong{flex:0 0 auto;color:var(--green);font-size:20px;line-height:1.2}}@media print{.mobile-average-dscr{display:none!important}}
.repayment-protected{filter:blur(6px);user-select:none;-webkit-user-select:none}
.repayment-lock-message{top:300px}
#previousReport,#nextReport{min-height:44px}#previousReport:disabled{background:#eef1ef;border-color:#b7c0bb;color:#7b8781;cursor:not-allowed;opacity:.8}@media(max-width:760px){.report-actions{flex-wrap:wrap}.report-actions .button{min-height:44px}#previousReport,#nextReport{flex:1 1 calc(50% - 4px);width:auto}}

/* Task 002: center the iframe dialog in the visible parent browser viewport. */
.payment-modal.payment-modal-parent-positioned{position:absolute;inset:auto 0 auto 0;top:var(--dpr-payment-modal-center);margin:0 auto;transform:translateY(-50%);max-height:min(var(--dpr-payment-modal-max-height),calc(100dvh - 32px));overflow-y:auto;overscroll-behavior:contain}
.payment-modal.payment-modal-position-pending{visibility:hidden}
@supports not (height:100dvh){.payment-modal.payment-modal-parent-positioned{max-height:var(--dpr-payment-modal-max-height)}}

/* Compact Cash Flow and DSCR preview notice, kept above the fixed mobile navigation. */
.premium-lock>.lock-message{top:25%;width:min(300px,84%);padding:12px 14px}
.premium-lock>.lock-message strong{margin:0;font-size:15px;line-height:1.35}

/* Task 003: first-page Contents list only. */
.report .dpr-contents{margin-top:26px;text-align:left;break-inside:avoid;page-break-inside:avoid}.report .dpr-contents h3{margin:0 0 12px;padding:0;background:transparent;text-align:left}.report .dpr-contents ol{margin:0 0 0 2.5rem;padding:0;line-height:1.55}.report .dpr-contents li{padding-left:.2rem;break-inside:avoid;page-break-inside:avoid}

/* Task 004: repayment schedule yearly subtotal rows only. */
.report tr.repayment-year-total{font-weight:800;background:#eef6f1;break-inside:avoid;page-break-inside:avoid;break-before:avoid;page-break-before:avoid}.report tr.repayment-year-total th{text-align:left}.report tr.repayment-year-total td{text-align:right}

/* Task 005: Declaration follows Depreciation in the same print section. */
.report .depreciation-declaration{break-inside:avoid;page-break-inside:avoid}.report .depreciation-declaration .declaration-section{margin-top:42px;break-inside:avoid;page-break-inside:avoid}.report .depreciation-declaration .declaration-section h1{text-align:left;margin-bottom:18px;break-after:avoid;page-break-after:avoid}.report .depreciation-declaration .declaration-section p{break-after:avoid;page-break-after:avoid}.report .declaration-section .signature{break-inside:avoid;page-break-inside:avoid}

/* Task 006: verified paid reports are bound to their saved order snapshot. */
.paid-report-lock{margin:0 0 20px;padding:14px 16px;border:1px solid #cde0d4;border-radius:7px;background:#eef6f1;color:#38473f;font-size:13px;line-height:1.5}.paid-report-lock[hidden]{display:none}.paid-report-lock .button{margin-top:10px}.paid-report-locked input,.paid-report-locked select,.paid-report-locked textarea{opacity:1;color:var(--ink);cursor:not-allowed}.paid-report-locked #resetBtn{cursor:not-allowed;opacity:.6}
@media print{.paid-report-lock{display:none!important}}

/* Task 009: mobile screen containment and touch usability only. */
@media screen and (max-width:760px){
html,body{width:100%;max-width:100%;overflow-x:clip}
.topbar{gap:10px}.brand{min-width:0;font-size:18px;line-height:1.15;overflow-wrap:anywhere}.top-actions{flex:0 0 auto}.top-actions #resetBtn{padding-inline:12px;white-space:nowrap}
.shell,.hero,.workspace,.workspace form,.summary,.report-area,.report-heading,.report-actions,.report-tabs,.report,.info-grid,.site-links{min-width:0;max-width:100%}
.hero{padding-inline:0}.hero h1,.report-heading h2,.report h1,.report h3,.summary h3,.info-grid h2{overflow-wrap:anywhere}
.workspace{width:100%}.form-grid>*{min-width:0}.form-grid input,.form-grid select{max-width:100%;font-size:16px}
.summary dd{max-width:100%;overflow-wrap:anywhere}
.report-area{width:100%;overflow:hidden}.report-heading{width:100%}.report-actions{display:flex;width:100%;gap:8px;flex-wrap:wrap}
.report-actions .button{min-width:0;max-width:100%;white-space:normal;line-height:1.25}
.report-actions #printOne,.report-actions #printAll{flex:1 1 100%;width:100%}
.report-actions #previousReport,.report-actions #nextReport{flex:1 1 calc(50% - 4px);width:auto}
.report-tabs{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.report-tabs button{flex:0 0 auto}
.report{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.report table{width:max-content;min-width:100%;max-width:none}.report td,.report th{white-space:nowrap}
.report p,.report li,.report .signature{overflow-wrap:anywhere}.signature{gap:24px}.signature>*{min-width:0;max-width:100%}
.lock-message{width:calc(100% - 20px);max-width:410px;padding:16px}.lock-message .button{max-width:100%;white-space:normal}
.paid-report-lock{max-width:100%;overflow-wrap:anywhere}.paid-report-lock .button{width:100%;max-width:100%;white-space:normal}
.info-grid{width:100%;padding:22px 18px}.info-grid>*,.info-grid .button{min-width:0;max-width:100%}.info-grid .button{width:100%;white-space:normal}
.site-links{width:100%;flex-wrap:wrap;gap:12px 20px}.site-links a{overflow-wrap:anywhere}
.payment-modal,.payment-modal.payment-modal-parent-positioned{width:calc(100% - 16px);max-width:480px;max-height:calc(100dvh - 16px);padding:20px 18px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.modal-head{gap:12px}.modal-head>div{min-width:0}.modal-head h2{font-size:25px;line-height:1.15;overflow-wrap:anywhere}.icon-button{flex:0 0 44px;width:44px;height:44px;padding:0}
.payment-price{gap:12px}.payment-price span{min-width:0;overflow-wrap:anywhere}.payment-price strong{flex:0 0 auto}.payment-modal .button{min-width:0;max-width:100%;white-space:normal}
}

/* Task 030: compact, responsive and print-reliable Means of Finance SVG chart. */
.report .means-finance-block{break-inside:avoid;page-break-inside:avoid}
.report .means-finance-chart{position:relative;box-sizing:border-box;margin:14px 0 0;padding:12px 14px;border:1px solid #cfd9d1;border-radius:7px;background:#f8fbf9;break-inside:avoid;page-break-inside:avoid}
.report .means-finance-chart figcaption{margin:0 0 8px;color:#0b4534;font-size:14px;font-weight:800;text-align:left}
.report .means-finance-chart-layout{display:grid;grid-template-columns:142px minmax(0,1fr);align-items:center;gap:18px}
.report .finance-pie{display:block;width:142px;height:142px;max-width:100%;overflow:visible}
.report .finance-pie path,.report .finance-pie circle{stroke:#fff;stroke-width:1.25;vector-effect:non-scaling-stroke}
.report .finance-pie-slice-label{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:6.5px;font-weight:800;line-height:1;paint-order:stroke fill;stroke:rgba(0,0,0,.18);stroke-width:.35px;stroke-linejoin:round;pointer-events:none}
.report .dpr-project-report-title{max-width:100%;line-height:1.2;overflow-wrap:anywhere}
.report .finance-pie-legend{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.report .finance-pie-legend li{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:8px;min-width:0}
.report .finance-pie-key{display:block;width:12px;height:12px}
.report .finance-pie-legend span{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:10px}
.report .finance-pie-legend strong,.report .finance-pie-legend small{font-size:12px;line-height:1.35}
.report .finance-pie-legend small{color:#526158;font-variant-numeric:tabular-nums;white-space:nowrap}
.preview-page.locked .finance-chart-protected{filter:blur(7px);user-select:none;pointer-events:none}.report .finance-chart-lock-tag{position:absolute;z-index:2;left:50%;top:58%;transform:translate(-50%,-50%);min-height:34px;padding:7px 13px;border:1px solid #176b4a;border-radius:6px;background:#176b4a;color:#fff;font-size:12px;font-weight:800;line-height:1.2;white-space:nowrap;box-shadow:0 5px 14px rgba(18,63,49,.28);cursor:pointer}.report .finance-chart-lock-tag:focus-visible{outline:3px solid #f4c85a;outline-offset:2px}
@media screen and (max-width:520px){
	.report .means-finance-chart{padding:12px 10px}
	.report .means-finance-chart-layout{grid-template-columns:1fr;justify-items:center;gap:10px}
	.report .finance-pie{width:136px;height:136px}
	.report .finance-pie-legend{width:100%}
	.report .finance-pie-legend span{align-items:flex-start;flex-direction:column;gap:1px}
}
@media print{
	.report .means-finance-block,.report .means-finance-chart{-webkit-region-break-inside:avoid;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .means-finance-chart{margin-top:3mm;padding:2.5mm 3mm;background:#f8fbf9!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
	.report .means-finance-chart figcaption{margin-bottom:1.5mm;font-size:10.5pt}
	.report .means-finance-chart-layout{grid-template-columns:36mm minmax(0,1fr);gap:5mm}
	.report .finance-pie{width:36mm;height:36mm}
	.report .finance-pie-slice-label{font-size:6.5px}
	.report .finance-pie-legend{gap:1.5mm}
	.report .finance-pie-legend strong,.report .finance-pie-legend small{font-size:8.5pt}
}
@media screen and (max-width:340px){
.topbar{padding-inline:12px}.brand{font-size:16px}.top-actions #resetBtn{padding-inline:10px}
.shell{padding-inline:10px}.workspace{padding-inline:12px}.report-heading{padding-inline:14px}.report{padding-inline:10px}
.dpr-flow-nav{gap:8px}.dpr-flow-nav .button{padding-inline:10px}
.site-links{gap:10px 14px}
.payment-modal,.payment-modal.payment-modal-parent-positioned{width:calc(100% - 10px);padding:18px 15px}.modal-head h2{font-size:23px}
}

/* Task 018: isolated green theme, true mobile viewport fit, and mobile navigation. */
:root{--ink:#17251f;--paper:#fff;--line:#dbe7df;--green:#145a46;--soft:#eef7f2;--gold:#c89b3c}
html,body{margin:0;max-width:100%;min-width:0;width:100%;overflow-x:hidden}
body{background:#eef7f2;color:#17251f}
.topbar{background:#0b4534}
.brand span{color:#c89b3c}
.button{background:#145a46;border-color:#145a46}
.button.secondary{background:#fff;color:#145a46}
.workspace,.report-area{background:#fff}
.summary,.payment-price{background:#eef7f2}
.report h1,.report-heading h2{color:#0b4534;font-weight:800}
.report h3{background:#eef7f2;border-left:4px solid #c89b3c;color:#0b4534;font-weight:800}
.report th{background:#145a46;color:#fff;font-weight:800}
.report .total td,.report tr.repayment-year-total{background:#eef7f2;color:#0b4534;font-weight:800}
.report td{font-weight:550}
.green-mobile-nav{display:none}

@media screen and (max-width:760px){
	body{padding:0}
	.topbar{width:100%;padding:0 14px}
	.shell{box-sizing:border-box;margin:0;max-width:100%;padding:18px 0 24px;width:100%}
	.hero{padding:12px 16px 24px}
	.workspace{border-left:0;border-right:0;padding:18px 16px;width:100%}
	.report-area{border-left:0;border-right:0;margin-top:28px;width:100%}
	.report-heading{padding:20px 16px}
	.report-tabs{padding-inline:8px}
	.report{max-width:100%;padding:22px 14px}
	.info-grid{border-radius:0;margin-top:28px;padding:24px 16px}
	.site-links{box-sizing:border-box;flex-wrap:wrap;padding:22px 16px;width:100%}
	.dpr-flow-nav{display:none}
	.green-mobile-nav{align-items:stretch;background:#0b4534;bottom:0;box-shadow:0 -6px 22px rgba(11,69,52,.2);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));left:0;padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));position:fixed;right:0;z-index:900}
	.green-mobile-nav button{appearance:none;background:transparent;border:1px solid transparent;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;min-width:0;padding:5px 2px}
	.green-mobile-nav button span{font-size:23px;font-weight:800;line-height:1}
	.green-mobile-nav button small{font-size:10px;font-weight:700;line-height:1.15;max-width:100%;overflow-wrap:anywhere}
	.green-mobile-nav button.active{background:#145a46;border-color:#237a61;color:#fff}
	.green-mobile-nav button.active small{color:#f1cf73}
	.green-mobile-nav button:focus-visible{outline:3px solid #c89b3c;outline-offset:-3px}
	.green-mobile-nav button:disabled{cursor:not-allowed;opacity:.4}
}

@media print{
	.green-mobile-nav{display:none!important}
	body{padding:0!important}
	.report h1,.report-heading h2{color:#0b4534!important}
	.report h3{-webkit-print-color-adjust:exact;background:#eef7f2!important;border-left-color:#c89b3c!important;color:#0b4534!important;print-color-adjust:exact}
	.report th{-webkit-print-color-adjust:exact;background:#145a46!important;color:#fff!important;print-color-adjust:exact}
}

/* Task compact-responsive-intro-mobile-flow: isolated responsive introduction. */
.green-dpr-mobile-flow{display:none}
@media screen and (min-width:761px){
	.shell>.hero{padding:6px 8px 20px}
	.shell>.hero h1{font-size:clamp(34px,3vw,42px);line-height:1.08}
	.shell>.hero p:last-child{max-width:600px;line-height:1.45}
}
@media screen and (max-width:760px){
	.shell{padding-top:0}
	.shell>.hero{display:none!important}
	.shell>.green-dpr-mobile-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,.85fr) auto minmax(0,1.3fr);align-items:center;gap:4px;width:calc(100% - 24px);max-width:100%;margin:10px 12px;padding:9px 10px;box-sizing:border-box;border:1px solid #cde0d4;border-radius:9px;background:#f7fbf8;color:var(--ink)}
	.shell>.green-dpr-mobile-flow .green-dpr-mobile-flow__step{min-width:0;text-align:center;white-space:nowrap;font-size:clamp(10px,2.8vw,12px);font-weight:750;line-height:1.15}
	.shell>.green-dpr-mobile-flow .green-dpr-mobile-flow__arrow{display:block;width:12px;height:12px;overflow:visible;fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
	.shell>.green-dpr-mobile-flow+.workspace{padding-top:14px}
	.dpr-flow-head{margin-bottom:16px}
	.dpr-flow-head h2{margin-bottom:10px;font-size:23px;line-height:1.15}
	.dpr-flow-status{margin-top:7px}
	.dpr-flow-card>p{margin-bottom:14px}
}
@media screen and (max-width:370px){
	.shell>.green-dpr-mobile-flow{grid-template-columns:minmax(0,1fr) auto minmax(0,.9fr) auto minmax(0,.72fr) auto minmax(0,1.18fr);gap:2px;width:calc(100% - 16px);margin-inline:8px;padding-inline:6px}
	.shell>.green-dpr-mobile-flow .green-dpr-mobile-flow__arrow{width:9px;height:9px}
}
@media print{
	.shell>.green-dpr-mobile-flow{display:none!important}
}

/* Task 039: remove duplicate report-heading controls only on mobile. */
@media screen and (max-width:760px){
	.report-heading .report-actions #printOne,
	.report-heading .report-actions #previousReport,
	.report-heading .report-actions #nextReport{display:none!important}
	.report-heading .report-actions #printAll{
		display:none!important;
		flex:1 1 100%;
		width:100%;
	}
	.info-grid,.site-links{display:none!important}
}

/* Task 010: contain the repayment table without changing its print layout. */
@media screen{
.repayment-table-scroll{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.repayment-table-scroll table{min-width:760px}
}

/* Task 024: real print-only nodes replace the stretched Task 023 pseudo-elements. */
.dpr-task-024-print-decor{display:none}
@media print{
	.dpr-task-024-print-decor{
		display:block!important;
		position:fixed;
		z-index:0;
		pointer-events:none;
		-webkit-print-color-adjust:exact;
		print-color-adjust:exact;
	}
	.dpr-task-024-print-decor span{display:block;position:absolute}
	.dpr-task-024-print-top{top:0;left:0;width:7mm;height:4.5mm}
	.dpr-task-024-print-top .dpr-task-024-green{
		top:0;left:0;width:6.5mm;height:2.6mm;background:#0b4534;
		clip-path:polygon(0 0,100% 0,82% 100%,0 100%);
	}
	.dpr-task-024-print-top .dpr-task-024-gold-one{
		top:2.9mm;left:0;width:7mm;height:.25mm;background:#c89b3c;
		clip-path:polygon(0 0,100% 0,83% 100%,0 100%);
	}
	.dpr-task-024-print-top .dpr-task-024-gold-two{
		top:3.7mm;left:1mm;width:5.5mm;height:.2mm;background:#c89b3c;
		clip-path:polygon(0 0,100% 0,82% 100%,0 100%);
	}
	.dpr-task-024-print-bottom{right:0;bottom:0;width:7mm;height:4.5mm}
	.dpr-task-024-print-bottom .dpr-task-024-green{
		right:0;bottom:0;width:6.5mm;height:2.6mm;background:#0b4534;
		clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);
	}
	.dpr-task-024-print-bottom .dpr-task-024-gold-one{
		right:0;bottom:2.9mm;width:7mm;height:.25mm;background:#c89b3c;
		clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);
	}
	.dpr-task-024-print-bottom .dpr-task-024-gold-two{
		right:1mm;bottom:3.7mm;width:5.5mm;height:.2mm;background:#c89b3c;
		clip-path:polygon(22% 0,100% 0,100% 100%,0 100%);
	}
}

/* Task seven-year-single-row-preview-pdf-tables. */
.seven-year-table-scroll{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.report .seven-year-financial-table{width:100%;min-width:900px;table-layout:fixed}
.report .seven-year-financial-table .financial-particulars-column{width:25%}
.report .seven-year-financial-table .financial-year-column{width:10.714%}
.report .financial-dscr-section .average-dscr-result{margin:10px 0 0}
@media print{
	.report .seven-year-table-scroll{width:100%!important;max-width:100%!important;overflow:visible!important}
	.report .seven-year-financial-table{width:100%!important;min-width:0!important;max-width:100%!important;table-layout:fixed!important;font-size:7.5pt!important}
	.report .seven-year-financial-table .financial-particulars-column{width:25%!important}
	.report .seven-year-financial-table .financial-year-column{width:10.714%!important}
	.report .seven-year-financial-table th,.report .seven-year-financial-table td{padding:1.6mm 1mm!important;white-space:nowrap!important;overflow:hidden;line-height:1.2}
	.report .seven-year-financial-table thead{display:table-header-group}
	.report .seven-year-financial-table tr{-webkit-region-break-inside:avoid;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .seven-year-cashflow-section{-webkit-region-break-inside:avoid;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .seven-year-dscr-section{break-before:auto;page-break-before:auto;-webkit-region-break-inside:avoid;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .seven-year-dscr-section h3{break-after:avoid;page-break-after:avoid}
	.report .seven-year-dscr-section .average-dscr-result{break-before:avoid;page-break-before:avoid;margin-top:2mm!important;margin-bottom:0!important}
}

/* Task add-cash-flow-dscr-preview-pdf-charts. */
.report .dpr-financial-chart-figure{box-sizing:border-box;width:100%;max-width:100%;margin:20px 0 0;padding:12px 14px;border:1px solid #cfd9d1;border-radius:8px;background:#f8fbf9;overflow:hidden;break-inside:avoid;page-break-inside:avoid}
.report .dpr-financial-chart-figure figcaption{margin:0 0 7px;color:#0b4534;font-size:15px;font-weight:800;text-align:left}
.report .dpr-financial-chart{display:block;width:100%;height:auto;max-width:100%;overflow:visible}
.preview-page.locked .premium-lock{max-height:1080px}
@media screen and (max-width:760px){
	.report .dpr-financial-chart-figure{margin-top:14px;padding:10px 8px}
	.report .dpr-financial-chart-figure figcaption{font-size:13px}
	.report .dpr-financial-chart{min-width:620px}
	.report .dpr-financial-chart-figure{overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
}
@media print{
	.report .dpr-financial-chart-figure{width:100%!important;max-width:100%!important;max-height:86mm;margin:3mm 0 0!important;padding:2mm 2.5mm!important;border-color:#cfd9d1!important;background:#f8fbf9!important;overflow:hidden!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .dpr-financial-chart-figure figcaption{margin-bottom:1mm;font-size:10pt}
	.report .dpr-financial-chart{width:100%!important;height:auto!important;min-width:0!important;max-height:78mm!important}
	.report .financial-cashflow-section,.report .financial-dscr-section{-webkit-region-break-inside:avoid;break-inside:avoid!important;page-break-inside:avoid!important}
	.report .financial-dscr-section .average-dscr-result{margin:1.5mm 0 0!important;break-after:avoid;page-break-after:avoid}
	.report .repayment-table-scroll{overflow:visible!important}
	.report .repayment-table-scroll table{width:100%!important;min-width:0!important;max-width:100%!important;font-size:8.5pt!important}
	.report .repayment-table-scroll thead{display:table-header-group}
	.report .repayment-table-scroll tr{break-inside:avoid!important;page-break-inside:avoid!important}
	.report .repayment-table-scroll th,.report .repayment-table-scroll td{padding:1mm 1.4mm!important;line-height:1.15}
	.report .repayment-table-scroll tr.repayment-year-total{break-before:avoid!important;page-break-before:avoid!important}
}
