.public-budget-page .planner-input{display:block;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #d4b27645;border-radius:7px;background:#0e0f0e;color:#f0eadf;font:14px 'DM Sans',sans-serif;color-scheme:dark}.public-budget-page .planner-input:focus{outline:2px solid #d4b276;outline-offset:2px}.public-budget-page .allocation{grid-template-columns:42px minmax(0,1fr) 190px}.category-amount{display:grid;gap:6px;color:#aaa69e;font-size:11px}.public-budget-page .planner-note{margin:-3px 0 18px;color:#aaa69e;font-size:12px;line-height:1.7}.food-planner{margin-top:30px;padding:24px;border:1px solid #d4b27640;border-radius:12px;background:#151615}.food-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.food-heading>div{max-width:700px}.food-heading .section-title{margin:6px 0 12px}.planner-button{padding:11px 16px;border:1px solid #d4b27680;border-radius:7px;background:#d4b276;color:#171510;font:600 12px 'DM Sans',sans-serif;cursor:pointer;flex-shrink:0}.planner-button.secondary{background:transparent;color:#d4b276}.food-row{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 32px;align-items:end;gap:12px;padding:16px 0;border-bottom:1px solid #ffffff15}.food-row label,.food-line-total{display:grid;gap:8px;color:#aaa69e;font-size:11px}.food-line-total{align-self:center}.food-line-total output{color:#e5d0a6;font:500 15px 'Roboto Mono',monospace}.remove-food{height:44px;border:1px solid #ffffff25;border-radius:6px;background:transparent;color:#e4aca4;font-size:23px;cursor:pointer}.food-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:18px}.food-actions span,.food-actions p{color:#aaa69e;font-size:11px;margin:0}.food-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px 0;margin-top:18px;border-block:1px solid #ffffff15}.food-summary>div{display:grid;gap:8px}.food-summary span{color:#aaa69e;font-size:11px}.food-summary strong{color:#d4b276;font:500 18px 'Roboto Mono',monospace}.public-budget-page strong.over-budget{color:#f29488!important}button:focus-visible{outline:2px solid #f0d9ae;outline-offset:3px}@media(max-width:650px){.public-budget-page .allocation,.public-budget-page .allocation:nth-child(n){grid-template-columns:35px minmax(0,1fr)}.category-amount{grid-column:2}.food-planner{padding:16px}.food-heading{align-items:start;flex-direction:column;gap:0}.food-row{grid-template-columns:1fr 1fr 34px}.food-row label:first-child{grid-column:1/3}.food-row label:nth-child(2){grid-column:1}.food-row label:nth-child(3){grid-column:2}.food-line-total{grid-column:1/3}.remove-food{grid-column:3;grid-row:1/4;align-self:center}.food-summary{grid-template-columns:1fr;gap:18px}.food-actions .planner-button{width:100%}}

.public-budget-page .controls .planner-input{margin-top:16px}.public-budget-page .controls .range{display:block;height:7px;background:linear-gradient(to right,#d4b276 0%,#d4b276 var(--range-progress),#ffffff25 var(--range-progress),#ffffff25 100%)}.public-budget-page .controls .range-scale{margin-top:12px}.public-budget-page .controls .control-head{min-height:28px}.public-budget-page .controls .range:focus-visible{outline:2px solid #d4b276;outline-offset:6px}

.public-budget-page input[type="number"]{appearance:textfield;-moz-appearance:textfield}.public-budget-page input[type="number"]::-webkit-inner-spin-button,.public-budget-page input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

.planner-export{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:22px;border:1px solid #d4b27640;border-radius:12px;background:#151615}.planner-export .planner-note{margin-bottom:0}.export-buttons{display:flex;gap:10px;flex-wrap:wrap}#printReport{display:none}@media(max-width:650px){.planner-export{align-items:stretch;flex-direction:column;padding:16px}.export-buttons{flex-direction:column}}@media print{@page{size:A4;margin:15mm}body.public-budget-page{background:#fff!important;color:#111!important}.public-budget-page .bar,.public-budget-page .intro,.public-budget-page .footer,.public-budget-page .calculator>*{display:none!important}.public-budget-page .calculator{width:100%;padding:0;margin:0}.public-budget-page .calculator>#printReport{display:block!important;color:#111;font:11pt/1.5 Arial,sans-serif}#printReport h1{font-size:19pt;margin:0 0 20px}#printReport table{width:100%;border-collapse:collapse;table-layout:fixed}#printReport td{padding:7px;border-bottom:1px solid #ddd;overflow-wrap:anywhere}#printReport tr{break-inside:avoid}#printReport tr:has(td:only-child){font-weight:bold}#printReport tr:empty{height:16px}}
/* A quiet, illustrated report shared by print and Save PDF. */
@media print{
 @page{size:A4;margin:12mm}
 #printReport{--report-gold:#9c7247;--report-muted:#84756a}
 #printReport *{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-sizing:border-box}
 #printReport .report-header{display:flex;align-items:start;justify-content:space-between;padding:22px 24px;background:#f7f1eb;border-top:4px solid #ad8050;border-radius:0 0 12px 12px;margin-bottom:20px;break-inside:avoid}
 #printReport .report-brand{font-size:12px;letter-spacing:1.4px;font-weight:700;color:#8e643b}
 #printReport .report-brand span{font-size:8px;letter-spacing:1px;font-weight:400;color:#8b8177}
 #printReport h1{font-size:26px;line-height:1.2;margin:12px 0 7px;letter-spacing:-.6px;color:#322c30}
 #printReport .report-header p{margin:0;font-size:11px;color:var(--report-muted)}
 #printReport .report-meta{text-align:right;line-height:1.8;font-size:9px;color:var(--report-muted);white-space:nowrap}
 #printReport .report-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;break-inside:avoid;margin-bottom:22px}
 #printReport .report-stat{padding:14px 12px;background:#f8f6f3;border-radius:8px;min-width:0}
 #printReport .report-stat>span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:var(--report-muted)}
 #printReport .report-stat>strong{display:block;font-size:17px;margin-top:7px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
 #printReport .report-balance{background:#eef4ee;color:#466750}#printReport .report-over{background:#fbefed;color:#b14c43}
 #printReport .report-section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:20px 0 12px;break-after:avoid}
 #printReport .report-section-title h2{font:700 11px Arial,sans-serif;color:var(--report-gold);text-transform:uppercase;letter-spacing:1px;margin:0}
 #printReport .report-section-title>span{font-size:9px;color:var(--report-muted)}
 #printReport .report-category{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eee7de;break-inside:avoid}
 #printReport .report-icon{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border-radius:9px;background:#f7f1eb;color:var(--report-gold)}
 #printReport .report-icon svg{width:21px;height:21px}
 #printReport .report-category-copy{flex:1;min-width:0}#printReport .report-category h3{font:600 11px Arial,sans-serif;margin:0 0 3px}
 #printReport .report-category p{font-size:8px;color:var(--report-muted);margin:0}
 #printReport .report-category-value{text-align:right;max-width:30%;overflow-wrap:anywhere;font-size:12px}
 #printReport .report-category-value small{display:block;font-size:8px;color:var(--report-muted);margin-top:4px}
 #printReport .report-track{height:3px;background:#eee7de;border-radius:3px;margin-top:8px;overflow:hidden}#printReport .report-track i{display:block;height:100%;background:#c49c72}
 #printReport .report-menu{font-size:10px;table-layout:fixed;margin-top:5px}#printReport .report-menu th{padding:10px;text-align:right;background:#f7f1eb;font-size:9px;color:#79674f}
 #printReport .report-menu th:first-child{width:43%;text-align:left}#printReport .report-menu td{padding:9px 10px;text-align:right;border-bottom:1px solid #eee7de}#printReport .report-menu td:first-child{text-align:left;font-weight:400}
 #printReport .report-menu tfoot td{background:#f7f1eb;font-weight:700!important;color:#65523f}#printReport .report-menu thead{display:table-header-group}#printReport .report-menu tfoot{display:table-row-group}
 #printReport .report-menu-summary{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:var(--report-muted);padding:12px 0;break-inside:avoid}
 #printReport .report-footer{border-top:1px solid #eee7de;margin-top:12px;padding-top:10px;font-size:8px;line-height:1.6;color:#928579;break-inside:avoid}#printReport .report-footer p{margin:0 0 4px}#printReport .report-footer span{color:#a18463}
}
