@font-face{font-family:Libre Franklin;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/61b2b84ab35dead5-s.574b9b5f.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/eba33977c8ed1a9d-s.c95e6cf0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6a1997311f9003a9-s.62b69f7d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2245c258b0d2c062-s.88d56c3c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a4bb24664ac8500-s.p.12264977.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin Fallback;src:local(Arial);ascent-override:92.61%;descent-override:23.58%;line-gap-override:0.0%;size-adjust:104.31%}.libre_franklin_fe77169-module__I9zv6W__className{font-family:Libre Franklin,Libre Franklin Fallback;font-style:normal}.libre_franklin_fe77169-module__I9zv6W__variable{--font-libre-franklin:"Libre Franklin","Libre Franklin Fallback"}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/20aee433927f7d4b-s.a2c089c6.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/256e1f7f180674ba-s.afa27594.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/be3bf58b83159894-s.7b13a9eb.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/753b6407f468151f-s.504826d2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/292081311a6a8abc-s.2a17492d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/68d403cf9f2c68c5-s.p.f9f15f61.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.source_serif_4_880bd459-module__KbmBwW__className{font-family:"Source Serif 4","Source Serif 4 Fallback";font-style:normal}.source_serif_4_880bd459-module__KbmBwW__variable{--font-source-serif:"Source Serif 4","Source Serif 4 Fallback"}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-libre-franklin),-apple-system,BlinkMacSystemFont,sans-serif;color:#121212;-webkit-font-smoothing:antialiased;background:#fff;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 20px}header{border-bottom:1px solid #e2e2e2;margin-bottom:40px;padding:12px 0}.header-inner{justify-content:space-between;align-items:center;display:flex}.section-label{text-transform:uppercase;letter-spacing:.05em;color:#666;font-size:11px;font-weight:700;text-decoration:none}.section-label:hover{color:#333}.nav-links{gap:20px;display:flex}.nav-links a{color:#666;font-size:13px;text-decoration:none;transition:color .15s}.nav-links a:hover{color:#121212}.date{color:#666;font-size:13px}.hero{text-align:center;max-width:720px;margin:0 auto 50px}h1{font-family:var(--font-source-serif),Georgia,serif;letter-spacing:-.02em;margin-bottom:20px;font-size:3rem;font-weight:700;line-height:1.1}.dek{color:#555;margin-bottom:15px;font-size:1.25rem;line-height:1.5}.byline{color:#666;font-size:.875rem}.byline a{color:#666}.balance-section{z-index:100;background:#fff;border-bottom:1px solid #e2e2e2;margin-bottom:40px;padding:20px 0;position:sticky;top:0}.balance-container{max-width:800px;margin:0 auto}.balance-header{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.balance-title{font-family:var(--font-source-serif),Georgia,serif;font-size:1rem;font-weight:600}.balance-amount{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.balance-amount.surplus{color:#0a6640}.balance-amount.deficit{color:#c62828}.balance-amount.balanced{color:#121212}.balance-bar-container{background:#f0f0f0;border-radius:4px;height:8px;position:relative;overflow:visible}.balance-bar{border-radius:4px;height:100%;transition:all .3s;position:absolute}.balance-bar.revenue{background:#0a6640;left:0}.balance-bar.spending{background:#c62828;right:0}.balance-labels{color:#666;justify-content:space-between;margin-top:8px;font-size:.8125rem;display:flex}.balance-labels span{align-items:center;gap:6px;display:flex}.dot{border-radius:50%;width:8px;height:8px}.dot.revenue{background:#0a6640}.dot.spending{background:#c62828}.balance-status{text-align:center;color:#666;margin-top:12px;font-size:.875rem}.budget-grid{grid-template-columns:1fr 1fr;gap:60px;margin-bottom:60px;display:grid}@media (max-width:900px){.budget-grid{grid-template-columns:1fr;gap:40px}h1{font-size:2.25rem}}.column-header{border-bottom:2px solid #121212;justify-content:space-between;align-items:baseline;margin-bottom:20px;padding-bottom:12px;display:flex}.column-header h2{font-family:var(--font-source-serif),Georgia,serif;font-size:1.25rem;font-weight:700}.column-total{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:700}.revenue-col .column-total{color:#0a6640}.spending-col .column-total{color:#c62828}.category{border-bottom:1px solid #e2e2e2;padding:16px 0}.category:last-child{border-bottom:none}.category-main{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.category-info{flex:1;padding-right:20px}.category-name{margin-bottom:2px;font-size:.9375rem;font-weight:600}.category-description{color:#666;font-size:.8125rem;line-height:1.4}.current-rate{color:#333;background:#f5f5f5;border-radius:3px;margin-top:4px;padding:2px 6px;font-size:.75rem;font-weight:500;display:inline-block}.category-values{text-align:right;min-width:100px}.category-amount{font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:600}.revenue-col .category-amount{color:#0a6640}.spending-col .category-amount{color:#c62828}.category-change{color:#666;margin-top:2px;font-size:.75rem}.category-change.positive{color:#0a6640}.category-change.negative{color:#c62828}.slider-row{align-items:center;gap:12px;display:flex}.slider-label{color:#999;font-variant-numeric:tabular-nums;min-width:45px;font-size:.75rem}.slider-label:last-child{text-align:right}.slider{-webkit-appearance:none;cursor:pointer;background:#e2e2e2;border-radius:2px;outline:none;flex:1;height:4px}.slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#121212;border:2px solid #fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;box-shadow:0 1px 3px #0000004d}.slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider::-moz-range-thumb{cursor:pointer;background:#121212;border:2px solid #fff;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0000004d}.income-tax-section{background:#fafafa;border:1px solid #e8e8e8;border-radius:6px;margin-top:8px;padding:12px}.bracket-header{color:#333;text-transform:uppercase;letter-spacing:.03em;margin-bottom:10px;font-size:.75rem;font-weight:600}.bracket-row{border-bottom:1px solid #e8e8e8;justify-content:space-between;align-items:center;padding:8px 0;display:flex}.bracket-row:last-child{border-bottom:none}.bracket-info{flex:1}.bracket-range{color:#333;font-size:.8125rem;font-weight:500}.bracket-filers{color:#666;font-size:11px}.bracket-controls{align-items:center;gap:8px;display:flex}.bracket-rate{text-align:right;color:#0a6640;min-width:55px;font-size:.875rem;font-weight:600}.bracket-slider{-webkit-appearance:none;cursor:pointer;background:#ddd;border-radius:2px;outline:none;width:100px;height:3px}.bracket-slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#0a6640;border:2px solid #fff;border-radius:50%;width:12px;height:12px;box-shadow:0 1px 2px #0003}.bracket-slider::-moz-range-thumb{cursor:pointer;background:#0a6640;border:2px solid #fff;border-radius:50%;width:12px;height:12px}.bracket-revenue{color:#666;text-align:right;min-width:60px;font-size:.75rem}.bracket-note{color:#888;margin-top:8px;font-size:.7rem;font-style:italic}.hypothetical-header{color:#7b5e00;border-top:1px dashed #ccc;margin-top:16px;padding-top:12px}.bracket-row.hypothetical{background:#fffbeb;border-bottom:1px solid #f0e6c8;margin:0 -12px;padding:8px 12px}.bracket-row.hypothetical .bracket-range{color:#7b5e00}.bracket-row.hypothetical .bracket-range:after{content:" (add surtax)";color:#a08840;font-size:.7rem;font-weight:400}.hypothetical-slider::-webkit-slider-thumb{background:#d4a000!important}.hypothetical-slider::-moz-range-thumb{background:#d4a000!important}.bracket-row.hypothetical .bracket-rate{color:#7b5e00}.policy-section{margin-top:20px}.policy-category{margin-bottom:24px}.policy-category-header{color:#333;border-bottom:1px solid #e2e2e2;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;font-size:.875rem;font-weight:700;display:flex}.policy-category-header .emoji{font-size:1.1rem}.policy-item{cursor:pointer;background:#fafafa;border:1px solid #e8e8e8;border-radius:8px;align-items:flex-start;margin-bottom:8px;padding:12px;transition:all .15s;display:flex}.policy-item:hover{background:#f0f0f0;border-color:#ddd}.policy-item.enabled{background:#f0fdf4;border-color:#86efac}.policy-item.enabled.cut{background:#fef2f2;border-color:#fca5a5}.policy-toggle{border:2px solid #ccc;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-top:2px;margin-right:12px;transition:all .15s;display:flex}.policy-item.enabled .policy-toggle{background:#0a6640;border-color:#0a6640}.policy-item.enabled.cut .policy-toggle{background:#c62828;border-color:#c62828}.policy-toggle:after{content:"";opacity:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E") 50%/contain no-repeat;width:10px;height:10px;transition:opacity .15s}.policy-item.enabled .policy-toggle:after{opacity:1}.policy-content{flex:1}.policy-name{color:#333;margin-bottom:2px;font-size:.875rem;font-weight:600}.policy-description{color:#666;font-size:.75rem;line-height:1.4}.policy-cost{border-radius:4px;flex-shrink:0;margin-left:12px;padding:4px 8px;font-size:.875rem;font-weight:700}.policy-cost.increase{color:#c62828;background:#fef2f2}.policy-cost.savings{color:#0a6640;background:#f0fdf4}.spending-summary{background:#f5f5f5;border-radius:8px;margin-top:20px;padding:16px}.spending-summary-row{justify-content:space-between;padding:6px 0;font-size:.875rem;display:flex}.spending-summary-row.total{border-top:2px solid #333;margin-top:8px;padding-top:12px;font-size:1rem;font-weight:700}.spending-summary-row .amount{font-variant-numeric:tabular-nums;font-weight:600}.spending-summary-row .amount.negative{color:#0a6640}.spending-summary-row .amount.positive{color:#c62828}.fixed-costs-note{color:#888;margin-top:12px;font-size:.75rem;font-style:italic}.tradeoffs-section{border-top:1px solid #e2e2e2;max-width:720px;margin:0 auto 60px;padding-top:40px}.tradeoffs-section h3{font-family:var(--font-source-serif),Georgia,serif;margin-bottom:20px;font-size:1.5rem;font-weight:700}.tradeoff-item{background:#fafafa;border-left:3px solid #121212;margin-bottom:12px;padding:16px 20px;font-size:.9375rem;line-height:1.5}.tradeoff-item.warning{background:#fef5f5;border-left-color:#c62828}.tradeoff-item.positive{background:#f5faf7;border-left-color:#0a6640}.tradeoff-item strong{font-weight:600}.empty-tradeoffs{color:#666;font-style:italic}.reset-container{text-align:center;margin-bottom:60px}.reset-btn,.publish-btn{font-family:var(--font-libre-franklin),sans-serif;cursor:pointer;background:#fff;border:1px solid #121212;margin:0 8px;padding:12px 28px;font-size:.875rem;font-weight:600;transition:all .15s}.reset-btn:hover{color:#fff;background:#121212}.publish-btn{color:#fff;background:#0a6640;border-color:#0a6640}.publish-btn:hover{background:#085534}.methodology{border-top:1px solid #e2e2e2;max-width:720px;margin:0 auto 80px;padding-top:40px}.methodology h3{font-family:var(--font-source-serif),Georgia,serif;margin-bottom:12px;font-size:1.125rem;font-weight:700}.methodology p{color:#555;margin-bottom:12px;font-size:.875rem;line-height:1.7}.methodology a{color:#326891}.methodology ul{color:#555;margin:12px 0 12px 20px;font-size:.875rem;line-height:1.8}.source-list{color:#666;margin-top:20px;font-size:.8125rem}.source-list strong{color:#333;font-weight:600}footer{text-align:center;color:#666;border-top:1px solid #e2e2e2;padding:30px 0;font-size:.8125rem}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;width:90%;max-width:480px;max-height:90vh;padding:32px;overflow-y:auto}.modal h2{font-family:var(--font-source-serif),Georgia,serif;margin-bottom:20px;font-size:1.5rem}.modal-field{margin-bottom:20px}.modal-field label{margin-bottom:6px;font-size:.875rem;font-weight:600;display:block}.modal-field input{border:1px solid #ddd;border-radius:6px;width:100%;padding:12px;font-family:inherit;font-size:1rem}.modal-field input:focus{border-color:#0a6640;outline:none}.modal-buttons{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.modal-cancel{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:10px 20px;font-family:inherit}.modal-submit{color:#fff;cursor:pointer;background:#0a6640;border:none;border-radius:6px;padding:10px 20px;font-family:inherit;font-weight:600}.modal-submit:disabled{cursor:not-allowed;background:#ccc}.gallery-header{text-align:center;max-width:720px;margin:0 auto 40px}.gallery-header h1{margin-bottom:12px}.gallery-header p{color:#666}.budget-gallery{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:60px;display:grid}.budget-card{color:inherit;background:#fff;border:1px solid #e2e2e2;border-radius:12px;padding:24px;text-decoration:none;transition:all .15s;display:block}.budget-card:hover{border-color:#999;box-shadow:0 4px 12px #0000001a}.budget-card-title{font-family:var(--font-source-serif),Georgia,serif;margin-bottom:8px;font-size:1.25rem;font-weight:700}.budget-card-author{color:#666;margin-bottom:16px;font-size:.875rem}.budget-card-balance{margin-bottom:4px;font-size:1.5rem;font-weight:700}.budget-card-balance.surplus{color:#0a6640}.budget-card-balance.deficit{color:#c62828}.budget-card-balance.balanced{color:#121212}.budget-card-details{color:#666;justify-content:space-between;font-size:.8125rem;display:flex}.budget-card-date{color:#999;margin-top:12px;font-size:.75rem}.empty-gallery{text-align:center;color:#666;padding:60px 20px}.empty-gallery p{margin-bottom:20px}.view-mode .slider,.view-mode .bracket-slider,.view-mode .policy-item{pointer-events:none;opacity:.8}.view-mode .policy-item{cursor:default}.view-banner{text-align:center;background:#f0f0f0;border-radius:8px;margin-bottom:40px;padding:16px}.view-banner p{margin-bottom:12px;font-size:.9375rem}.create-btn{color:#fff;background:#0a6640;border-radius:6px;padding:10px 24px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-block}.create-btn:hover{background:#085534}
