/* Budget laboratory: the existing wallet palette, readable controls and responsive cards. */
.lab{--lab-beige:#f6f3ed}.lab-intro{border:1px solid var(--line);border-top:6px solid var(--orange);background:var(--lab-beige);border-radius:8px;padding:28px 32px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:24px}.lab-intro h2{font-size:38px;margin:8px 0 12px}.lab-intro p{max-width:710px}.lab-intro-mark{font-family:Anton,sans-serif;color:var(--green);font-size:65px;line-height:1;text-align:center;min-width:125px}.lab-intro-mark span{display:block;font:700 13px Raleway,sans-serif;letter-spacing:1px;margin-top:12px}.lab-toolbar{padding:22px;margin-bottom:22px}.lab-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lab-toolbar>.lab-input-grid{grid-template-columns:2fr 1fr 1.4fr}.lab-field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:16px;font-weight:700;line-height:1.5}.lab-field>span:first-child{color:var(--green)}.lab-field input,.lab-field select{font-size:17px;padding:11px 12px;min-height:48px;border:1px solid #c5bda9;border-radius:5px;background:white;color:var(--ink);width:100%;min-width:0}.lab-field input{font-variant-numeric:tabular-nums}.lab-field select{width:100%;max-width:100%;font-weight:500;white-space:normal}.lab-field small{font-size:14px;font-weight:500;line-height:1.5;color:var(--muted)}.lab-input-wrap{position:relative;display:flex;align-items:center}.lab-input-wrap input{width:100%;padding-right:82px}.lab-input-wrap em{position:absolute;right:25px;font-size:13px;font-style:normal;font-weight:500;color:var(--muted);pointer-events:none}.lab-toolbar-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;font-size:14px}.lab-toolbar-foot .tag{background:var(--lab-beige);color:var(--green)}.lab-tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:25px;overflow-x:auto}.lab-tabs button{background:white;border:1px solid var(--line);color:var(--green);border-radius:5px;padding:10px 15px;font-size:16px;white-space:nowrap;font-weight:700}.lab-tabs button.active{background:var(--green);border-color:var(--green);color:white}.lab-main-grid{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:24px;align-items:start}.lab-workbench{min-width:0}.lab-section{margin-bottom:24px;overflow:hidden}.lab-section>.lab-input-grid,.lab-section>.lab-presets,.lab-section>.lab-button-row,.lab-section>.lab-international,.lab-section>.source-grid,.lab-section>.lab-info-grid{margin:22px}.lab-section>h2{margin:24px 24px 14px}.lab-section>p{margin:16px 24px}.lab-section>.lab-details{margin:22px}.lab-state{position:sticky;top:20px;min-width:0}.lab-state>.panel{padding:22px;background:var(--green);color:white;border-color:var(--green)}.lab-state-head .mini-label,.lab-state-head h2{color:white}.lab-state-head h2{font-size:29px;margin:10px 0 22px}.lab-ledger{margin:0}.lab-ledger>div{padding:12px 0;border-top:1px solid #ffffff35}.lab-ledger dt{font-size:14px;color:#d8d1c1}.lab-ledger dd{font-size:20px;font-weight:750;margin:3px 0 0;font-variant-numeric:tabular-nums;line-height:1.4}.lab-ledger-total dd{font-size:29px;color:#ff9b65}.lab-state .rise{color:#ffb089}.lab-state .fall{color:#ccead8}.lab-state-secondary{font-size:13px;line-height:1.65;border-top:1px solid #ffffff35;padding-top:14px;margin-top:8px}.lab-state-secondary p{margin:7px 0}.lab-state a,.lab-state .text-button{color:white}.lab-state .text-button{margin-top:15px;font-size:14px}.lab-how{padding:20px;font-size:15px;line-height:2.1;color:var(--muted)}.lab-how span{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;border-radius:50%;background:var(--lab-beige);color:var(--green);font-weight:700;margin-right:7px}.lab-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lab-preset{text-align:left;background:var(--lab-beige);border:1px solid var(--line);border-radius:5px;min-height:130px;padding:20px;cursor:pointer;transition:border .15s,transform .15s}.lab-preset:hover{border-color:var(--orange);transform:translateY(-2px)}.lab-preset strong{display:block;color:var(--green);font-size:18px}.lab-preset span{display:block;font-size:14px;color:var(--muted);margin-top:10px;line-height:1.6}.lab-financing{border-left:5px solid var(--orange)}.lab-inline-result{background:var(--lab-beige);padding:16px;border-radius:5px;font-size:16px}.lab-programme{padding:25px;border-top:1px solid var(--line)}.lab-programme h3{font-size:25px;margin:8px 0}.lab-programme p{font-size:15px;margin-bottom:18px}.lab-programme .lab-input-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.lab-programme .lab-field{font-size:14px}.lab-programme .lab-input-wrap input{padding-right:65px}.lab-programme .lab-input-wrap em{font-size:11px}.lab-transfer,.lab-reform-editor{padding:24px;border-top:1px solid var(--line);background:#fff}.lab-transfer .text-button,.lab-reform-editor .text-button{margin-top:15px}.lab-reform-editor h3{font-size:27px;margin-bottom:12px}.lab-reform-editor p{font-size:16px;margin-bottom:18px}.lab-button-row{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.lab-empty{padding:16px;color:var(--muted);background:var(--lab-beige)}.lab-household-editor{margin:20px;border:1px solid var(--line);border-radius:5px;padding:18px}.lab-household-editor summary{font-size:20px;font-weight:750;color:var(--green);cursor:pointer}.lab-household-editor summary span{display:block;font-size:14px;font-weight:500;margin:5px 0 0 18px}.lab-household-editor>.lab-input-grid{margin-top:22px}.lab-anchor{font-size:15px;background:var(--lab-beige);padding:16px;border-radius:4px}.lab-message{background:var(--lab-beige);border-left:4px solid var(--sand);padding:20px 24px;margin:20px 0;font-size:16px}.lab-message.invalid{border-left-color:var(--orange)}.lab-message p{margin:5px 0}.lab-household-results{margin-top:32px}.lab-results-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.lab-results-title h2{margin-top:8px}.lab-household-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lab-wallet{background:var(--lab-beige);border:1px solid #c8bba3;border-top:6px solid var(--sand);border-radius:9px;padding:23px;min-width:0;box-shadow:0 6px 0 #ece7dc}.lab-wallet-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.lab-wallet-title>span{color:var(--sand);white-space:nowrap;font-size:20px}.lab-wallet-title h3{font-size:25px}.lab-wallet-big{font-size:27px;font-weight:800;margin-top:20px;line-height:1.35;overflow-wrap:anywhere}.lab-wallet-big small{font-size:14px;display:block;font-weight:500;margin-top:7px;color:var(--muted)}.lab-wallet .rise{color:#a24317}.lab-wallet .fall{color:var(--green)}.lab-basket{height:11px;border-radius:20px;background:#e1d9c8;margin-top:22px;overflow:hidden}.lab-basket-fill{height:100%;background:var(--green)}.lab-basket-caption{font-size:15px;margin:9px 0 15px}.lab-wallet-details{border-top:1px solid var(--line);padding-top:15px;font-size:14px}.lab-wallet-details summary{font-weight:700;cursor:pointer;color:var(--green)}.lab-wallet-details dl>div{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0;line-height:1.5}.lab-wallet-details dd{text-align:right;margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.lab-wallet-details p{font-size:13px;line-height:1.6;margin-top:14px}.lab-chart{padding:20px 15px}.lab-chart svg{width:100%;height:auto;font-family:Raleway,Arial,sans-serif;fill:var(--ink)}.lab-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:13px;padding:0 24px 20px}.lab-legend i{display:inline-block;width:15px;height:4px;margin-right:6px;vertical-align:middle}.lab table{font-size:14px}.lab table .num{font-variant-numeric:tabular-nums}.lab-details{font-size:15px;line-height:1.7;padding:17px;background:var(--lab-beige);border-radius:4px}.lab-details summary{font-weight:700;color:var(--green);cursor:pointer}.lab-details p{margin-top:12px}.lab-service{border-top:1px solid var(--line);padding:24px}.lab-service h3{margin:8px 0 15px}.lab-service p{font-size:16px;margin:12px 0}.lab-service-figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;background:var(--lab-beige);padding:16px}.lab-service-figures small{font-size:13px;display:block;color:var(--muted)}.lab-service-figures strong{font-size:18px}.lab-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;font-size:15px}.lab-info-grid strong{color:var(--green)}.lab-info-grid p{font-size:14px;margin-top:8px}.lab-audit{border-top:1px solid var(--line);padding:20px 24px;font-size:16px}.lab-audit summary{display:flex;align-items:center;gap:12px;justify-content:space-between;color:var(--green);font-weight:750;cursor:pointer;list-style:revert}.lab-audit summary em{font-size:12px;font-style:normal;font-weight:500;background:var(--lab-beige);padding:4px 8px;border-radius:4px;white-space:nowrap}.lab-audit p{margin:15px 0;line-height:1.7}.lab-audit .mini-label{font-size:13px}.lab-audit .lab-button-row{margin-top:16px}.lab-opinion{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px}.lab-opinion strong{font-size:35px;color:var(--green);display:block}.lab-opinion span{font-size:14px;line-height:1.5;display:block}.lab-audit-trail{margin-top:30px;padding:20px}.lab-audit-trail>summary{font-weight:700;cursor:pointer;color:var(--green);font-size:17px}.lab-audit-trail>.table-wrap{margin-top:20px}.lab-entry{padding:25px;margin:25px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--lab-beige);border-left:5px solid var(--orange)}.lab-entry h2{margin:7px 0}.lab-entry p{font-size:16px}.lab-entry .button{white-space:nowrap}.lab-section .source-grid{grid-template-columns:repeat(2,minmax(0,1fr));font-size:14px}.lab-section .source-grid article{border-top:1px solid var(--line);padding:14px 0}.lab-section .source-grid p{margin:10px 0;font-size:13px}.lab-section .source-link{font-size:14px}.lab .button{font-size:15px}.lab .panel-head{padding:23px}.lab .panel-head h2{font-size:28px}.lab .panel-head p{font-size:15px}.sidebar nav a[data-nav="simulation"]{line-height:1.3}.lab-wallet-title h3{overflow-wrap:anywhere}
@media(min-width:1450px){.lab-main-grid{grid-template-columns:minmax(0,1fr) 330px}}
@media(max-width:1200px){.lab-main-grid{grid-template-columns:minmax(0,1fr) 265px;gap:16px}.lab-programme .lab-input-grid{grid-template-columns:1fr}.lab-wallet{padding:18px}.lab-wallet-title{display:block}.lab-wallet-title>span{display:none}.lab-wallet-big{font-size:24px}.lab-field{font-size:15px}.lab-state>.panel{padding:18px}.lab-ledger dd{font-size:18px}.lab-ledger-total dd{font-size:25px}}
@media(max-width:1000px){.lab-main-grid{grid-template-columns:minmax(0,1fr)}.lab-state{position:static}.lab-state>.panel{display:grid;grid-template-columns:1fr 2fr;gap:15px}.lab-state .lab-ledger{grid-row:span 3;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.lab-state-secondary{margin:0}.lab-how{display:none}.lab-toolbar>.lab-input-grid{grid-template-columns:1fr 1fr}.lab-toolbar>.lab-input-grid>.lab-field:first-child{grid-column:1/-1}.lab-programme .lab-input-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.lab-intro{padding:22px}.lab-intro h2{font-size:32px}.lab-intro-mark{display:none}.lab-household-grid{grid-template-columns:1fr}.lab-wallet-title{display:flex}.lab-wallet-title>span{display:block}.lab-wallet-big{font-size:29px}.lab-results-title{display:block}.lab-results-title .text-button{margin-top:12px}.lab-presets{grid-template-columns:1fr}.lab-input-grid,.lab-programme .lab-input-grid,.lab-toolbar>.lab-input-grid,.lab-info-grid,.lab-opinion{grid-template-columns:1fr}.lab-state>.panel{display:block}.lab-state .lab-ledger{display:block}.lab-tabs{margin-top:10px}.lab-section .panel-head{display:block}.lab-section .panel-head .tag{display:inline-block;margin-top:10px}.lab-entry{display:block}.lab-entry .button{margin-top:18px;white-space:normal}.lab-audit summary{display:block}.lab-audit summary em{display:inline-block;margin-top:8px}.lab .lab-field{font-size:16px}.lab-section .source-grid{grid-template-columns:1fr}.lab-section .lab-programme{padding:20px}.lab-transfer,.lab-reform-editor{padding:20px}.lab-household-editor{margin:15px;padding:15px}.lab-field input,.lab-field select{font-size:17px}.lab-state-head h2{font-size:28px}.lab-toolbar{padding:18px}.lab-intro p{font-size:16px}}
@media print{.sidebar,.topbar,.lab-tabs,.lab-toolbar,.lab-workbench,.lab-how,.lab-audit-trail,.lab-entry{display:none}.workspace{margin:0}.lab-main-grid,.lab-household-grid{display:block}.lab-wallet{break-inside:avoid;margin:20px 0}.lab-state{position:static}.lab-state>.panel{background:white;color:black}.lab-state h2,.lab-state dd,.lab-state dt,.lab-state .mini-label{color:black}}
.lab-live-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;position:sticky;top:0;z-index:15;background:#fffefcf5;backdrop-filter:blur(8px);border:1px solid var(--line);border-bottom:3px solid var(--orange);border-radius:6px;padding:14px 18px;margin-bottom:22px;box-shadow:0 4px 12px #002e1d0c}.lab-live-results small{display:block;font-size:12px;color:var(--muted);line-height:1.5}.lab-live-results strong{display:block;font-size:18px;font-variant-numeric:tabular-nums;color:var(--green)}.lab-live-results .rise{color:#a24317}.lab .lab-wallet-details,.lab .lab-preset span{font-size:15px}.lab-entry .mini-label{font-size:14px}@media(max-width:700px){.lab-live-results{grid-template-columns:1fr 1fr;padding:10px 12px;gap:8px}.lab-live-results strong{font-size:16px}.lab-live-results small{font-size:11px}.lab-live-results>div:first-child{border-bottom:1px solid var(--line)}}
