:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6eedf;--fg:#2a2118;--muted:#6b5a47;--line:#bf8a50;--surface:#d49a5e;--accent:#3a7d44;--on-accent:#f6eedf;--neg:#c2461f;--warn:#8a5a00;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--tab-h:56px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--fg);margin:0}body{-webkit-text-size-adjust:100%;min-height:100dvh;font:17px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif}body.no-scroll{overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}.view{padding:calc(var(--sat) + 16px) 20px calc(var(--tab-h) + var(--sab) + 32px);max-width:560px;margin:0 auto}.page-title{letter-spacing:-.02em;margin:8px 0 16px;font-size:30px}.section{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:28px 0 8px;font-size:13px;font-weight:600}.empty{color:var(--muted);padding:24px 0}.hero{padding:24px 0 20px}.label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:13px;font-weight:600}.balance{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--accent);margin:2px 0 0;font-size:clamp(48px,17vw,72px);font-weight:800;line-height:1.05}.balance.neg{color:var(--neg)}.actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.actions .primary{grid-column:1/-1;min-height:60px;font-size:20px}.actions .wide{grid-column:1/-1}.btn{border:1.5px solid var(--line);min-height:52px;color:var(--fg);background:0 0;border-radius:16px;justify-content:center;align-items:center;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn.danger{color:var(--neg);border-color:var(--neg);width:100%;margin-top:10px}.link{color:var(--accent);background:0 0;border:0;min-height:44px;padding:0;font-weight:600}.icon-btn{min-width:48px;min-height:48px;color:var(--muted);background:0 0;border:0;font-size:18px}.list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line)}.row{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:64px;padding:8px 0;display:flex}.row-main{flex-direction:column;min-width:0;display:flex}.row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.row-sub{color:var(--muted);font-size:14px}.row-amt{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.row-amt.pos{color:var(--accent)}.row-amt.neg{color:var(--neg)}.field{margin:0 0 16px;display:block}.field>span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field input,.search,.select,.add-row input,.budget{border:1.5px solid var(--line);background:var(--surface);appearance:none;border-radius:14px;width:100%;min-height:52px;padding:0 14px;font-size:17px}.field.big input{font-variant-numeric:tabular-nums;min-height:68px;font-size:34px;font-weight:700}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}.search,.select{margin-bottom:10px}.error{color:var(--neg);margin:0 0 12px;font-weight:600}.warn{color:var(--warn);border:1.5px solid var(--warn);border-radius:14px;margin:0 0 12px;padding:12px 14px;font-weight:600}.hint{color:var(--muted);margin:0 0 12px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips.scroll{scrollbar-width:none;flex-wrap:nowrap;margin-bottom:10px;overflow-x:auto}.chip{border:1.5px solid var(--line);white-space:nowrap;background:0 0;border-radius:22px;min-height:44px;padding:0 16px}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.seg{background:var(--surface);border-radius:14px;grid-template-columns:repeat(3,1fr);margin-bottom:16px;padding:4px;display:grid}.seg button{background:0 0;border:0;border-radius:10px;min-height:44px;font-weight:600}.seg button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.cat-row{grid-template-columns:1fr 120px 48px;align-items:center;gap:8px;padding:4px 0;display:grid}.cat-name{font-weight:600}.budget{text-align:right;min-height:44px}.add-row{grid-template-columns:1fr auto;gap:8px;margin-top:16px;display:grid}.sheet{z-index:50;background:var(--bg);-webkit-overflow-scrolling:touch;position:fixed;inset:0;overflow-y:auto}.sheet-body{max-width:560px;padding:calc(var(--sat) + 8px) 20px calc(var(--sab) + 32px);margin:0 auto}.sheet-head{grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:12px;display:grid}.sheet-head h2{margin:0;font-size:17px}.receipt{border-radius:14px;width:100%;margin-bottom:16px}#f-save{bottom:calc(var(--sab) + 8px);width:100%;min-height:56px;box-shadow:0 -12px 16px -4px var(--bg);font-size:18px;position:sticky}.month-nav{text-align:center;grid-template-columns:48px 1fr 48px;align-items:center;margin-bottom:8px;display:grid}.month-nav h1{text-transform:capitalize;margin:0;font-size:20px}.month-nav .icon-btn{color:var(--accent);font-size:28px}.month-nav .icon-btn:disabled{color:var(--line)}.balance.small{font-size:40px}#month-total{color:var(--fg)}.delta{color:var(--muted);margin:6px 0 0}.delta.neg{color:var(--neg)}.delta.pos{color:var(--accent)}.cats{margin:0;padding:0;list-style:none}.cat{border-bottom:1px solid var(--line);padding:12px 0}.cat-top{justify-content:space-between;font-weight:600;display:flex}.cat-amt{font-variant-numeric:tabular-nums}.bar{background:var(--surface);border-radius:5px;height:10px;margin:8px 0 4px;position:relative}.bar span{background:var(--accent);border-radius:5px;height:100%;display:block}.bar span.over{background:var(--neg)}.bar i{background:var(--fg);opacity:.5;width:2px;height:16px;position:absolute;top:-3px}.budget-line{color:var(--muted);font-size:14px}.budget-line.neg{color:var(--neg);font-weight:600}.ks-result{min-height:28px;margin:0 0 16px;font-size:19px;font-weight:700}.ks-result.pos{color:var(--accent)}.ks-result.neg{color:var(--neg)}.wide-btn{width:100%;margin-bottom:10px}.big-pick{min-height:96px;margin-bottom:16px;font-size:20px}.big-pick[aria-disabled=true]{opacity:.5;pointer-events:none}.status{color:var(--muted);margin-top:16px;font-weight:600}.notice{background:var(--surface);border-radius:14px;margin:0 0 12px;padding:12px 14px;font-weight:600}.items{border:1.5px solid var(--line);border-radius:14px;margin:0 0 16px;padding:8px 14px}.items summary{align-items:center;min-height:44px;font-weight:600;display:flex}.items ul{margin:0;padding:0;list-style:none}.items li{border-top:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;padding:6px 0;display:flex}.items li span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.items .warn{margin:8px 0}.stack{gap:10px;display:grid}.msg{margin:12px 0 0;font-weight:600}.msg.pos{color:var(--accent)}.msg.neg{color:var(--neg)}.banner{border:1.5px solid var(--warn);color:var(--warn);border-radius:14px;margin:0 0 8px;padding:14px 16px;font-weight:600;text-decoration:none;display:block}.tabbar{z-index:10;padding-bottom:var(--sab);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:var(--tab-h);color:var(--muted);justify-content:center;align-items:center;font-size:13px;font-weight:600;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--accent)}
