@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--paper-white:#fafafa;--ink-black:#1a1a1a;--receipt-blue:#1976d2;--warning-red:#d32f2f;--grid-ruling:#e0e0e0;--subtle-border:#d0d0d0;--hover-tint:#f0f0f0;--measure:60ch;scrollbar-color:var(--subtle-border) transparent;caret-color:var(--receipt-blue);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper-white:#1c1916;--ink-black:#f5f3f0;--receipt-blue:#60a5fa;--warning-red:#ef4444;--grid-ruling:#3c3835;--subtle-border:#52504c;--hover-tint:#28241f}}*,:before,:after{box-sizing:border-box}html{overflow-x:clip}body{-webkit-font-smoothing:antialiased;color:var(--ink-black);background:var(--paper-white);background-image:repeating-linear-gradient(0deg, var(--grid-ruling) 0px, var(--grid-ruling) 1px, transparent 1px, transparent 24px);min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.screen{max-width:800px;min-height:100vh;margin:0 auto;padding:24px 20px 80px}p{text-wrap:pretty}h1,h2,h3{text-wrap:balance}::selection{background:var(--receipt-blue);color:#fff}:focus-visible{outline:2px solid var(--receipt-blue);outline-offset:3px}a{color:var(--receipt-blue);text-underline-offset:.18em}.num{font-variant-numeric:tabular-nums}button,[role=button],summary,select,input[type=checkbox],input[type=radio]{min-height:44px}button{min-width:44px}input,select,textarea{font:inherit;font-size:max(1rem,16px)}img,video,canvas,svg{max-width:100%;height:auto}pre{overflow-x:auto}@media (width<=767px){.screen{padding:20px 16px 80px}}.mono{font-feature-settings:"tnum" 1;font-variant-numeric:tabular-nums;font-family:JetBrains Mono,SF Mono,Monaco,Courier New,monospace}.tab-bar{background:var(--paper-white);border-top:2px solid var(--receipt-blue);z-index:100;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 8px #0000000d}.tab-button{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-black);cursor:pointer;background:0 0;border:none;flex:1;padding:16px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;position:relative}.tab-button.active{color:var(--receipt-blue)}.tab-button.active:after{content:"";background:repeating-linear-gradient(90deg, var(--receipt-blue) 0, var(--receipt-blue) 4px, transparent 4px, transparent 8px);height:3px;position:absolute;bottom:0;left:0;right:0}.header-band{background:var(--receipt-blue);color:#fff;letter-spacing:.1em;text-transform:uppercase;text-align:center;margin:-24px -20px 24px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}@media (width>=768px){.header-band{margin:-24px -20px 32px;padding:14px 20px}}.tear-line{background:repeating-linear-gradient(90deg, var(--subtle-border) 0, var(--subtle-border) 4px, transparent 4px, transparent 8px);border:none;height:2px;margin:24px 0}.budget-section{margin-bottom:32px}.budget-header{border-bottom:1px solid var(--grid-ruling);justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 0;display:flex}.budget-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-black);font-size:11px;font-weight:700}.budget-amount{font-size:18px;font-weight:600}.budget-limit-edit{align-items:center;gap:12px;display:flex}.budget-input{border:1px solid var(--subtle-border);background:#fff;width:140px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:18px;font-weight:600}.budget-input:focus{border-color:var(--receipt-blue);outline:none}.edit-button{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink-black);color:var(--ink-black);cursor:pointer;background:0 0;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.remaining-display{border:2px solid var(--ink-black);text-align:center;background:#fff;margin:24px 0;padding:24px}.remaining-label{letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700}.remaining-amount{font-size:48px;font-weight:700;line-height:1}.remaining-amount.over-budget{color:var(--warning-red)}.remaining-amount.low-budget{color:#f57c00}.chart-section{margin-top:32px}.chart-header{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--grid-ruling);margin-bottom:16px;padding-bottom:8px;font-size:11px;font-weight:700}.chart-container{border:1px solid var(--subtle-border);background:#fff;padding:20px}.purchase-list{flex-direction:column;gap:0;display:flex}.purchase-item{border-bottom:1px solid var(--grid-ruling);grid-template-columns:1fr auto;align-items:start;gap:12px;padding:16px 0;display:grid}.purchase-item:last-child{border-bottom:none}.purchase-info{flex-direction:column;gap:4px;display:flex}.purchase-description{color:var(--ink-black);font-size:15px;font-weight:600}.purchase-meta{color:#666;gap:12px;font-size:12px;display:flex}.purchase-category{text-transform:uppercase;letter-spacing:.08em;background:var(--grid-ruling);border-radius:2px;padding:2px 6px;font-size:10px;font-weight:700}.purchase-actions{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.purchase-amount{font-size:18px;font-weight:700}.purchase-buttons{gap:8px;display:flex}.icon-button{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink-black);color:var(--ink-black);cursor:pointer;background:0 0;padding:4px 8px;font-size:10px;font-weight:700}.icon-button.delete{border-color:var(--warning-red);color:var(--warning-red)}.add-form{border:2px solid var(--ink-black);background:#fff;margin-bottom:32px;padding:24px}.form-header{letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--grid-ruling);margin-bottom:20px;padding-bottom:12px;font-size:13px;font-weight:700}.form-group{margin-bottom:16px}.form-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-black);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.form-input,.form-select{border:1px solid var(--subtle-border);background:var(--paper-white);width:100%;padding:10px 12px;font-family:inherit;font-size:16px}.form-input.mono{font-family:JetBrains Mono,monospace}.form-input:focus,.form-select:focus{border-color:var(--receipt-blue);background:#fff;outline:none}.form-actions{border-top:1px solid var(--grid-ruling);gap:12px;margin-top:20px;padding-top:20px;display:flex}.btn{letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;flex:1;padding:12px 20px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.btn-primary{background:var(--ink-black);color:#fff}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--ink-black);border:1px solid var(--ink-black);background:#fff}.empty-state{text-align:center;color:#666;padding:48px 24px}.empty-state-title{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:700}.empty-state-text{font-size:14px;line-height:1.5}.success-message{color:#fff;text-align:center;background:#4caf50;border-radius:2px;margin-bottom:20px;padding:12px 16px;font-size:13px;font-weight:600}@media (width<=767px){.remaining-amount{font-size:36px}.purchase-item{grid-template-columns:1fr}.purchase-actions{flex-direction:row;justify-content:space-between;align-items:center}.form-actions{flex-direction:column}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.tab-button,.edit-button,.icon-button,.btn,.form-input,.form-select,.budget-input{transition:all .15s ease-out}.tab-button:hover{background:var(--hover-tint)}.edit-button:hover,.icon-button:hover{background:var(--ink-black);color:#fff}.icon-button.delete:hover{background:var(--warning-red);color:#fff}.btn-primary:hover:not(:disabled){background:var(--receipt-blue)}.btn-secondary:hover{background:var(--hover-tint)}}@media (width<=480px){body,.container,[class*=container],section,header,footer,nav,main,article{padding-inline:max(1rem,16px)}}p,li,dt,dd,blockquote,figcaption,td,th{max-width:min(75ch,100%)}
