/* OF V2 – financial tools 0.2.0; isolated from Newspaper core. */
body.ofv2-tools-page {overflow-x:clip}
body.ofv2-tools-page .td-header-wrap,
body.ofv2-tools-page .td-footer-wrapper,
body.ofv2-tools-page .td-sub-footer-container,
body.ofv2-tools-page #td-header-menu {display:none!important}
body.ofv2-tools-page .ofv2-site {width:100%;max-width:100%;position:relative;left:0;margin-left:0}
.ofv2-tools-main {max-width:1400px;margin:auto;padding:21px 28px 65px}
.ofv2-tools-crumb {display:flex;gap:9px;color:#617770;font-size:12px;margin:0 0 19px}
.ofv2-tools-crumb a:hover {color:#0e8f6e}
.ofv2-tools-heading {position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(122deg,#0a302d 0%,#0e785f 100%);border-radius:12px;overflow:hidden;padding:42px 50px 45px;color:#fff;margin-bottom:26px}
.ofv2-tools-heading>div:first-child{position:relative;z-index:1;max-width:780px}
.ofv2-tools-eyebrow{font-weight:850;font-size:11px;letter-spacing:.12em;color:#bcebd6}
.ofv2-site .ofv2-tools-heading h1{font:700 clamp(30px,3.5vw,48px)/1.1 Georgia,serif;color:#fff!important;margin:10px 0 15px}
.ofv2-site .ofv2-tools-heading p{font-size:15px;max-width:680px;line-height:1.55;color:#effaf5;margin:0}
.ofv2-tools-illustration {position:relative;min-width:145px;align-self:stretch}
.ofv2-tools-illustration span {position:absolute;right:27px;top:0;font:700 110px/1 Georgia,serif;opacity:.28;color:#d2ffe9}
.ofv2-tools-illustration i {display:block;position:absolute;bottom:-70px;right:0;width:52px;height:125px;transform:rotate(-12deg);border-radius:95% 0 65% 0;background:#a7e1c4;opacity:.33}
.ofv2-tools-illustration i:nth-child(2){right:60px;height:95px;opacity:.38}
.ofv2-tools-illustration i:nth-child(3){right:120px;height:70px;opacity:.25}
.ofv2-tools-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.9fr);align-items:start;gap:24px}
.ofv2-budget-form{padding:28px 30px;background:#fff;border:1px solid #dfebe5;border-radius:12px;box-shadow:0 3px 20px rgba(8,53,45,.035)}
.ofv2-tools-cardhead{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.ofv2-site .ofv2-tools-cardhead h2,.ofv2-site .ofv2-budget-results h2{font:700 27px/1.15 Georgia,serif;color:#0a1e2d;margin:0}
.ofv2-tools-cardhead>span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#08785f}
.ofv2-site .ofv2-tools-instruction {font-size:13px;line-height:1.55;color:#60766e;margin:10px 0 20px}
.ofv2-budget-form fieldset {margin:0 0 22px;border:0;border-top:1px solid #e4ece9;padding:16px 0 0}
.ofv2-budget-form legend {float:none;padding:0 12px 0 0;font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:#0b6653}
.ofv2-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 16px;margin-top:10px}
.ofv2-input-grid label{font-size:13px;font-weight:650;color:#1b3631;display:flex;flex-direction:column;gap:7px}
.ofv2-input-grid label>span{display:flex;align-items:center;justify-content:space-between;border:1px solid #cadbd2;background:#fafdfb;border-radius:6px;padding-right:13px}
.ofv2-input-grid input{min-width:0;min-height:43px;flex:1;width:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:10px 11px!important;font:500 15px/1.3 Arial,sans-serif!important;color:#0a302d!important}
.ofv2-input-grid label>span:focus-within{outline:2px solid #0e8f6e;outline-offset:1px}
.ofv2-input-grid small{font-size:13px;font-weight:700;color:#426c5b}
.ofv2-budget-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.ofv2-budget-actions button{border:1px solid #0b4e41;background:#0b4e41;color:#fff;font-size:12px;font-weight:800;padding:10px 17px;border-radius:6px;cursor:pointer}
.ofv2-budget-actions button:hover{background:#0c725c}
.ofv2-budget-actions button+button{background:#fff;color:#0b4e41}
.ofv2-budget-actions button+button:hover{background:#ebf6f0}
.ofv2-budget-results{position:sticky;top:18px;padding:28px 25px;background:#eaf6ef;border:1px solid #d7e9df;border-radius:12px}
.ofv2-budget-label{font-size:11px;color:#0b7258;font-weight:850;letter-spacing:.08em}
.ofv2-site .ofv2-budget-results h2{margin:8px 0 17px}
.ofv2-budget-resultlist{display:flex;flex-direction:column;gap:0}
.ofv2-budget-resultlist>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;border-bottom:1px solid #d0e1d8;padding:12px 0}
.ofv2-budget-resultlist span{font-size:13px;line-height:1.35;color:#34584c}
.ofv2-budget-resultlist output{font:700 17px/1.2 Arial,sans-serif;color:#0b382c;white-space:nowrap}
.ofv2-budget-total{margin-top:18px;border-radius:9px;background:#0b4036;color:#fff;padding:19px}
.ofv2-budget-total>span{display:block;font-size:12px;color:#ddf4e6;font-weight:650}
.ofv2-budget-total output{display:block;margin-top:5px;font:700 clamp(24px,3vw,33px)/1.18 Georgia,serif;color:#fff!important}
.ofv2-budget-total.is-negative{background:#793534}
.ofv2-budget-status{font-size:13px;line-height:1.55;color:#275844;margin:13px 0!important}
.ofv2-budget-percent{margin-top:18px;padding-top:15px;border-top:1px solid #cfe3d7}
.ofv2-budget-percent>span{font-size:12px;color:#31594b;font-weight:700}
.ofv2-budget-progress{height:9px;border-radius:20px;background:#cbded3;overflow:hidden;margin-top:12px}
.ofv2-budget-progress span{display:block;height:100%;width:0%;background:#0e8f6e;transition:width .12s ease}
.ofv2-budget-progress.is-over span{background:#bb6852}
.ofv2-budget-percent output{display:block;text-align:right;font-size:12px;margin-top:6px;color:#456657;font-weight:700}
.ofv2-budget-privacy{font-size:11px!important;line-height:1.5!important;color:#61776c;margin:20px 0 0!important}
.ofv2-tools-notes{max-width:980px;margin:30px 0 0;background:#f8fbf9;border-radius:9px;padding:24px 30px;border:1px solid #e2eee7}
.ofv2-site .ofv2-tools-notes h2{font:700 23px/1.2 Georgia,serif;color:#0a1e2d;margin:0 0 12px}
.ofv2-tools-notes p{font-size:14px;line-height:1.65;color:#405c51;margin:0 0 11px}
.ofv2-tools-notes p:last-child{margin-bottom:0}
@media(max-width:1000px){.ofv2-tools-main{padding:18px 22px 50px}.ofv2-tools-heading{padding:35px}.ofv2-tools-grid{grid-template-columns:1fr 340px;gap:15px}.ofv2-budget-form{padding:22px}}
@media(max-width:810px){.ofv2-tools-grid{grid-template-columns:1fr}.ofv2-budget-results{position:static}.ofv2-tools-illustration{min-width:70px}}
@media(max-width:720px){.ofv2-tools-main{padding:12px 13px 43px}.ofv2-tools-heading{padding:28px 23px}.ofv2-tools-illustration{display:none}.ofv2-site .ofv2-tools-heading h1{font-size:32px}.ofv2-site .ofv2-tools-heading p{font-size:14px}.ofv2-tools-main .ofv2-input-grid{grid-template-columns:1fr}.ofv2-budget-form{padding:20px}.ofv2-budget-results{padding:21px}.ofv2-tools-notes{padding:20px}}
@media print{body.ofv2-tools-page .ofv2-header,body.ofv2-tools-page .ofv2-footer,body.ofv2-tools-page .ofv2-budget-actions{display:none!important}.ofv2-tools-grid{display:block}.ofv2-budget-results{break-before:page}}
