.spending{background:var(--color-bg);color:var(--color-text);flex-direction:column;min-height:100%;font-size:16px;display:flex}.spending button,.spending input,.spending select{font-size:1rem}.spending button{cursor:pointer;touch-action:manipulation}.spending :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.spending .page{flex-direction:column;flex:1;gap:1rem;padding:.9rem 1rem 1.25rem;display:flex}.spending .page-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.spending .brand-button{appearance:none;border-radius:var(--radius-sm);min-height:44px;color:var(--color-text);background:0 0;border:none;align-items:center;gap:.35rem;margin:-.2rem -.3rem;padding:.2rem .3rem;display:flex}.spending .brand{text-align:left;flex-direction:column;gap:.1rem;display:flex}.spending .brand-title{margin:0;font-size:1.3rem;font-weight:700;line-height:1.25}.spending .brand-sub{color:var(--color-text-muted);letter-spacing:.02em;margin:0;font-size:.8rem;font-weight:600}.spending .chevron{color:var(--color-text-muted)}.spending .settings-link{appearance:none;border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text-muted);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex;font-size:1.2rem!important}.spending .card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.spending .prompt{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:.78rem;font-weight:700}.spending .btn{appearance:none;border-radius:var(--radius-sm);background:var(--color-surface-alt);color:var(--color-text);border:none;min-height:44px;padding:.7rem 1rem;font-weight:600;transition:background-color .15s,transform 50ms;font-size:.95rem!important}.spending .btn:active{transform:scale(.98)}.spending .btn-primary{background:var(--color-accent);color:var(--color-accent-contrast)}.spending .btn-ghost{color:var(--color-text-muted);background:0 0}.spending .btn-danger{background:var(--color-danger);color:var(--color-danger-contrast)}.spending .btn-small{min-height:36px;padding:.4rem .7rem;font-size:.85rem!important}.spending .link-btn{appearance:none;min-height:36px;color:var(--color-accent);white-space:nowrap;background:0 0;border:0;padding:.4rem 0;font-weight:600;font-size:.85rem!important}.spending .muted{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.45}.spending .segmented{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt);gap:.2rem;padding:.2rem;display:flex}.spending .segment{appearance:none;color:var(--color-text-muted);border-radius:calc(var(--radius-sm) - .15rem);background:0 0;border:0;flex:1;min-height:40px;padding:.45rem;font-weight:600;font-size:.9rem!important}.spending .segment.active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.spending .segmented.small .segment{min-height:34px;padding:.3rem;font-size:.82rem!important}.spending .field{flex-direction:column;gap:.3rem;min-width:0;display:flex}.spending .field-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.72rem;font-weight:600}.spending .input{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;color:var(--color-text);font-variant-numeric:tabular-nums;padding:.65rem .75rem}.spending .input:disabled{background:var(--color-surface-alt);color:var(--color-text-muted)}.spending .money-input{position:relative}.spending .money-input span{color:var(--color-text-muted);pointer-events:none;font-variant-numeric:tabular-nums;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.spending .money-input .input{text-align:right;padding-left:1.7rem}.spending .money-input.big span{font-size:1.6rem;left:.9rem}.spending .money-input.big .input{text-align:left;padding:.55rem .9rem .55rem 2.4rem;font-weight:700;font-size:2rem!important}.spending .form-error{color:var(--color-danger);margin:0;font-size:.82rem}.spending .hint{color:var(--color-text-muted);margin:0;font-size:.76rem;line-height:1.45}.spending .month-nav{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.spending .nav-arrow{appearance:none;border-radius:var(--radius-sm);width:44px;height:44px;color:var(--color-text);background:0 0;border:0;flex-shrink:0;line-height:1;font-size:1.35rem!important}.spending .nav-arrow:disabled{opacity:.25;cursor:not-allowed}.spending .nav-title{text-align:center;flex-direction:column;align-items:center;gap:.1rem;display:flex}.spending .nav-title strong{font-size:1.05rem}.spending .nav-title span{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.spending .summary{flex-direction:column;gap:.7rem;padding:.9rem .95rem;display:flex}.spending .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.spending .stat{flex-direction:column;gap:.15rem;min-width:0;display:flex}.spending .stat small{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.spending .stat b{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:1.25rem;overflow:hidden}.spending .stat b.pos{color:var(--color-accent)}.spending .stat b.neg{color:var(--color-danger)}.spending .summary-line{color:var(--color-text-muted);border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;margin:0;padding-top:.6rem;font-size:.8rem;line-height:1.45}.spending .summary-line b{color:var(--color-text);font-weight:600}.spending .accounts{flex-direction:column;display:flex}.spending .acct{border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.2rem .75rem;padding:.6rem .95rem;display:grid}.spending .acct:first-child{border-top:0}.spending .acct span{font-size:.9rem;font-weight:600}.spending .acct b{white-space:nowrap;font-size:.98rem}.spending .acct .bar{grid-column:1/-1;margin-top:.2rem}.spending .acct small{color:var(--color-text-muted);grid-column:1/-1;font-size:.74rem}.spending .acct.total{background:var(--color-surface-alt);border-radius:0 0 var(--radius-md) var(--radius-md)}.spending .acct.total span{font-weight:700}.spending .acct-head{justify-content:space-between;align-items:baseline;padding:.7rem .95rem .1rem;display:flex}.spending .section{flex-direction:column;gap:.55rem;padding:.85rem .95rem .95rem;display:flex}.spending .section-head{justify-content:space-between;align-items:baseline;gap:.5rem;min-height:28px;display:flex}.spending .section-head .total{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.85rem}.spending .cat-list{flex-direction:column;margin:0 -.95rem;display:flex}.spending .cat-row{appearance:none;color:var(--color-text);text-align:left;background:0 0;border:0;flex-direction:column;gap:.35rem;width:100%;min-height:48px;padding:.55rem .95rem;display:flex}.spending .cat-row:not(:disabled):hover{background:var(--color-surface-alt)}.spending .cat-row:disabled{cursor:default}.spending .cat-row.active{background:color-mix(in srgb, var(--color-accent) 9%, transparent)}.spending .cat-row.zero{color:var(--color-text-muted)}.spending .cat-top{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.spending .cat-name{min-width:0;font-size:.92rem;font-weight:600;line-height:1.3}.spending .cat-nums{color:var(--color-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem}.spending .cat-nums b{color:var(--color-text);font-size:.95rem;font-weight:700}.spending .cat-row.zero .cat-nums b{color:var(--color-text-muted);font-weight:500}.spending .bar{background:var(--color-surface-alt);border-radius:999px;height:7px;overflow:hidden}.spending .bar span{border-radius:inherit;background:var(--color-accent);height:100%;transition:width .3s;display:block}.spending .bar.over span{background:var(--color-warning)}.spending .bar.soft span{background:color-mix(in srgb, var(--color-accent) 40%, var(--color-surface-alt))}.spending .bar.card span{background:var(--color-text-muted)}.spending .cat-sub{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.76rem}.spending .cat-sub.over{color:var(--color-warning);font-weight:600}.spending .up-list{flex-direction:column;margin:0 -.95rem -.95rem;display:flex}.spending .up{border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;grid-template-columns:3.6rem minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.55rem .95rem;display:grid}.spending .up-date{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.74rem;font-weight:700;line-height:1.2}.spending .up-name{flex-direction:column;min-width:0;display:flex}.spending .up-name strong{font-size:.9rem;font-weight:600}.spending .up-name small{color:var(--color-text-muted);font-size:.74rem}.spending .up-amt{white-space:nowrap;font-size:.9rem;font-weight:600}.spending .up-amt.in{color:var(--color-accent)}.spending .up-amt.move{color:var(--color-text-muted);font-weight:500}.spending .filter-chip{appearance:none;background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent);border:0;border-radius:999px;align-items:center;gap:.35rem;min-height:32px;padding:.3rem .6rem;font-weight:600;display:inline-flex;font-size:.78rem!important}.spending .entry-list{flex-direction:column;margin:0 -.95rem -.95rem;display:flex}.spending .entry-day{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border-top:1px solid var(--color-border);padding:.7rem .95rem .3rem;font-size:.7rem;font-weight:700}.spending .entry{appearance:none;color:var(--color-text);text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;width:100%;min-height:50px;padding:.5rem .95rem;display:grid}.spending .entry:hover{background:var(--color-surface-alt)}.spending .entry-name{flex-direction:column;gap:.1rem;min-width:0;display:flex}.spending .entry-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:600;overflow:hidden}.spending .entry-name small{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.spending .entry-amt{font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:.05rem;display:flex}.spending .entry-amt b{font-size:.95rem;font-weight:600}.spending .entry-amt small{color:var(--color-text-muted);font-size:.72rem}.spending .entry-amt.in b{color:var(--color-accent)}.spending .entry-amt.move b{color:var(--color-text-muted);font-weight:500}.spending .tag{text-transform:uppercase;letter-spacing:.04em;background:var(--color-surface-alt);color:var(--color-text-muted);vertical-align:.12em;border-radius:999px;margin-left:.35rem;padding:.05rem .35rem;font-size:.6rem;font-weight:700;display:inline-block}.spending .tag.fx{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent)}.spending .entry-actions{justify-content:flex-end;gap:.5rem;padding:0 .95rem .6rem;display:flex}.spending .confirm-row{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-danger) 9%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin:0 .95rem .6rem;padding:.6rem .7rem;display:flex}.spending .confirm-row p{flex:9rem;margin:0;font-size:.85rem;line-height:1.4}.spending .confirm-row div{gap:.4rem;display:flex}.spending .more-row{border-top:1px solid var(--color-border);padding:.6rem .95rem .8rem}.spending .sub-head{align-items:center;gap:.25rem;margin-left:-.6rem;display:flex}.spending .sub-head h2{margin:0;font-size:1.15rem}.spending .form{flex-direction:column;gap:.9rem;padding:.95rem;display:flex}.spending .chips{flex-wrap:wrap;gap:.4rem;display:flex}.spending .chip{appearance:none;border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);border-radius:999px;align-items:center;gap:.35rem;min-height:40px;padding:.45rem .75rem;font-weight:600;display:inline-flex;font-size:.86rem!important}.spending .chip small{opacity:.8;font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:500}.spending .chip[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.spending .chip:active{transform:scale(.97)}.spending .amount-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.5rem;display:grid}.spending .cur-select{appearance:none;border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);border-radius:var(--radius-sm);min-width:4.2rem;min-height:44px;padding:0 .8rem;font-weight:700}.spending .fx-box{border-radius:var(--radius-sm);background:var(--color-surface-alt);flex-direction:column;gap:.4rem;padding:.7rem;display:flex}.spending .fx-box .input{background:var(--color-surface)}.spending .two-btn{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem;display:grid}.spending .move-row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:.4rem;display:grid}.spending .move-row .arrow{color:var(--color-text-muted);padding-bottom:.7rem}.spending .ytable-wrap{border-top:1px solid var(--color-border);scrollbar-width:thin;margin:0 -.95rem -.95rem;overflow-x:auto}.spending .ytable{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;font-size:.78rem}.spending .ytable th,.spending .ytable td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--color-border);padding:.42rem .55rem}.spending .ytable th:first-child,.spending .ytable td:first-child{background:var(--color-surface);text-align:left;text-overflow:ellipsis;z-index:1;max-width:8.5rem;box-shadow:1px 0 0 var(--color-border);font-weight:500;position:sticky;left:0;overflow:hidden}.spending .ytable thead th{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:700}.spending .ytable thead button{appearance:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;min-height:32px;text-decoration:underline;-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border);text-underline-offset:3px;background:0 0;border:0;padding:.3rem .1rem}.spending .ytable .cur{background:color-mix(in srgb, var(--color-accent) 7%, var(--color-surface))}.spending .ytable .ygrp td{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);border-bottom:0;padding-top:.75rem;font-size:.66rem;font-weight:700}.spending .ytable .tot td{font-weight:700}.spending .ytable .zero{color:var(--color-text-muted);opacity:.6}.spending .ytable .pos{color:var(--color-accent)}.spending .ytable .neg{color:var(--color-danger)}.spending .ytable .sumcol{border-left:1px solid var(--color-border);font-weight:600}.spending .ybars{grid-template-columns:repeat(var(--n,9), minmax(0, 1fr));align-items:end;gap:.3rem;display:grid}.spending .ybar{appearance:none;color:var(--color-text);border-radius:var(--radius-sm);background:0 0;border:0;flex-direction:column;align-items:center;gap:.3rem;min-width:0;padding:.2rem 0 0;display:flex}.spending .ybar:hover{background:var(--color-surface-alt)}.spending .ybar-track{flex-direction:column;justify-content:flex-end;width:70%;max-width:22px;height:170px;display:flex;position:relative}.spending .ybar-track .sp{background:var(--color-accent);border-radius:3px;width:100%;display:block}.spending .ybar-track .sp.over{background:var(--color-warning)}.spending .ybar-track .inc{background:var(--color-text);height:2px;position:absolute;left:-4px;right:-4px}.spending .ybar small{color:var(--color-text-muted);font-size:.68rem;font-weight:600}.spending .ybar.cur small{color:var(--color-accent)}.spending .legend{color:var(--color-text-muted);flex-wrap:wrap;gap:.35rem .9rem;font-size:.72rem;display:flex}.spending .legend span{align-items:center;gap:.35rem;display:inline-flex}.spending .legend i{display:inline-block}.spending .lg-sp{background:var(--color-accent);border-radius:2px;width:10px;height:10px}.spending .lg-over{background:var(--color-warning);border-radius:2px;width:10px;height:10px}.spending .lg-in{background:var(--color-text);width:12px;height:2px}.spending .avg-list{font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) auto;gap:.4rem .75rem;margin:0;font-size:.88rem;display:grid}.spending .avg-list dt{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.spending .avg-list dd{text-align:right;margin:0;font-weight:600}.spending .set-rows{flex-direction:column;margin:0 -1rem;display:flex}.spending .set-row{border-top:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 7.4rem;align-items:center;gap:.6rem;padding:.45rem 1rem;display:grid}.spending .set-row:first-child{border-top:0}.spending .set-row label,.spending .set-row>span{min-width:0;font-size:.9rem;line-height:1.3}.spending .set-row .input{padding-top:.5rem;padding-bottom:.5rem}.spending .set-row small{color:var(--color-text-muted);font-size:.72rem;display:block}.spending .pay-row{border-top:1px solid var(--color-border);grid-template-columns:2.6rem minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.4rem 1rem;display:grid}.spending .pay-row b{color:var(--color-text-muted);text-transform:uppercase;font-size:.8rem}.spending .pay-row .input{padding-top:.45rem;padding-bottom:.45rem}.spending .pay-row .moved{color:var(--color-warning);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem;font-weight:700}.spending .inline-field{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.spending .inline-field .input{width:5rem}.spending label.check{align-items:center;gap:.6rem;min-height:44px;font-size:.9rem;display:flex}.spending label.check input{width:1.25rem;height:1.25rem;accent-color:var(--color-accent)}.spending .rep-row{appearance:none;border:0;border-top:1px solid var(--color-border);color:var(--color-text);text-align:left;font-variant-numeric:tabular-nums;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem;width:100%;min-height:52px;padding:.55rem 1rem;display:grid}.spending .rep-row:hover{background:var(--color-surface-alt)}.spending .rep-row strong{font-size:.92rem;font-weight:600;display:block}.spending .rep-row small{color:var(--color-text-muted);font-size:.75rem}.spending .rep-row>span:last-child{white-space:nowrap;font-size:.9rem;font-weight:600}.spending .lock-note{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-warning) 12%, transparent);margin:0;padding:.55rem .65rem;font-size:.8rem;line-height:1.45}.spending .bottom{z-index:35;background:linear-gradient(to bottom, transparent, var(--color-bg) 30%);flex-direction:column;gap:.5rem;padding:.6rem 1rem 1.3rem;display:flex;position:sticky;bottom:0}.spending .toast{border-radius:var(--radius-md);background:var(--color-text);color:var(--color-bg);box-shadow:var(--shadow-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .5rem .5rem .9rem;font-size:.86rem;display:flex}.spending .toast button{appearance:none;color:var(--color-bg);text-underline-offset:3px;background:0 0;border:0;min-height:40px;padding:.5rem .7rem;font-weight:700;text-decoration:underline;font-size:.86rem!important}@media (prefers-reduced-motion:reduce){.spending *,.spending :before,.spending :after{transition:none!important;animation:none!important}}.spending .opening{border-bottom:1px solid var(--color-border);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:.75rem;padding-bottom:.6rem;display:flex}.spending .opening span{color:var(--color-text-muted);font-size:.85rem}.spending .opening b{font-size:1.05rem}.spending .sum-line{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0;font-size:.78rem;line-height:1.55}.spending .sum-line b{color:var(--color-text);white-space:nowrap;font-weight:600}.spending .check-card{border-color:color-mix(in srgb, var(--color-warning) 45%, var(--color-border));background:color-mix(in srgb, var(--color-warning) 6%, var(--color-surface));flex-direction:column;gap:.5rem;padding:.75rem .95rem;display:flex}.spending .check-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem;display:grid}.spending .check-row strong{font-size:.92rem;display:block}.spending .check-row small{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.76rem}.spending .tag.check{background:color-mix(in srgb, var(--color-warning) 18%, transparent);color:var(--color-warning)}.spending .tag.adj{background:color-mix(in srgb, var(--color-danger) 12%, transparent);color:var(--color-danger)}.spending .grp{flex-direction:column;display:flex}.spending .grp+.grp{margin-top:.35rem}.spending .grp-head{border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.55rem 0 .25rem;display:flex}.spending .grp:first-child .grp-head{border-top:0;padding-top:.1rem}.spending .grp-head b{text-transform:uppercase;letter-spacing:.03em;font-size:.82rem}.spending .grp-head span{color:var(--color-text-muted);white-space:nowrap;font-size:.8rem}.spending .grp-head span strong{color:var(--color-text);font-size:.9rem}.spending .delta{font-weight:600}.spending .delta.up{color:var(--color-warning)}.spending .delta.down{color:var(--color-accent)}.spending .bar{position:relative;overflow:visible}.spending .grp .cat-row{padding-inline:0}.spending .grp .cat-row:not(:disabled):hover{background:0 0}.spending .grp .cat-row:not(:disabled):hover .cat-name{text-underline-offset:3px;text-decoration:underline}.spending .grp .cat-row.active{background:0 0}.spending .grp .cat-row.active .cat-name{color:var(--color-accent)}.spending .bar em{background:var(--color-text);opacity:.5;border-radius:1px;width:2px;position:absolute;top:-3px;bottom:-3px}.spending .cat-row.adj .bar span{background:var(--color-danger)}.spending .chip-group{flex-direction:column;gap:.3rem;display:flex}.spending .chip-group+.chip-group{margin-top:.45rem}.spending .chip-group-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem;font-weight:700}.spending .ref-row{border-radius:var(--radius-sm);background:var(--color-surface-alt);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;padding:.6rem .75rem;display:flex}.spending .ref-row span{color:var(--color-text-muted);font-size:.88rem}.spending .ref-row b{font-size:1.05rem}.spending .diff-line{font-variant-numeric:tabular-nums;min-height:1.4rem;margin:0;font-size:.88rem;font-weight:600}.spending .diff-line.up{color:var(--color-warning)}.spending .diff-line.down{color:var(--color-accent)}.spending .diff-line.same{color:var(--color-text-muted);font-weight:500}.spending .bank-block{border-top:1px solid var(--color-border);flex-direction:column;gap:.4rem;padding-top:.8rem;display:flex}.spending .bank-block:first-of-type{border-top:0;padding-top:0}.spending .bank-block .logged{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.spending .ed-group{border-top:1px solid var(--color-border);margin:0 -1rem}.spending .ed-group:first-of-type{border-top:0}.spending .ed-group-head{align-items:center;gap:.4rem;padding:.65rem .5rem .4rem 1rem;display:flex}.spending .ed-group-copy{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.spending .ed-group-title{align-items:center;gap:.45rem;min-width:0;display:flex}.spending .ed-group-title b{text-overflow:ellipsis;min-width:0;font-size:.9rem;overflow:hidden}.spending .ed-group-meta{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.76rem}.spending .ed-group-actions{flex:none;align-items:center;gap:.1rem;display:flex}.spending .ed-group-head form{display:contents}.spending .icon-btn{appearance:none;border-radius:var(--radius-sm);width:40px;height:40px;color:var(--color-text-muted);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex;font-size:.95rem!important}.spending .icon-btn:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text)}.spending .icon-btn:disabled{opacity:.3;cursor:not-allowed}.spending .ed-cat{appearance:none;color:var(--color-text);text-align:left;font-variant-numeric:tabular-nums;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;width:100%;min-height:46px;padding:.5rem 1rem;display:grid}.spending .ed-cat:hover{background:var(--color-surface-alt)}.spending .ed-cat span:first-child{text-overflow:ellipsis;min-width:0;font-size:.92rem;overflow:hidden}.spending .ed-cat small{color:var(--color-text-muted);font-size:.76rem}.spending .category-limit{background:var(--color-surface-alt);white-space:nowrap;border-radius:999px;padding:.15rem .45rem;font-weight:700;font-size:.68rem!important}.spending .ed-cat .chev{color:var(--color-text-muted)}.spending .ed-cat-reorder{cursor:default}.spending .ed-cat-reorder:hover{background:0 0}.spending .category-reorder-actions{align-items:center;gap:.1rem;display:flex}.spending .category-reorder-actions form{display:contents}.spending .ed-panel{border-radius:var(--radius-sm);background:var(--color-surface-alt);flex-direction:column;gap:.6rem;margin:.1rem .75rem .6rem;padding:.75rem;display:flex}.spending .ed-panel .input{background:var(--color-surface)}.spending .ed-panel .row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem;display:grid}.spending .ed-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.spending .ed-actions div{gap:.4rem;display:flex}.spending .ed-add{padding:.2rem 1rem .6rem}.spending .ed-footer{border-top:1px solid var(--color-border);gap:.5rem;margin:0 -1rem;padding:.7rem 1rem 0;display:flex}.spending .ed-footer .btn{flex:1}.spending .danger-text{color:var(--color-danger)!important}.spending select.input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--color-text-muted) 50%), linear-gradient(135deg, var(--color-text-muted) 50%, transparent 50%);background-position:calc(100% - 1rem),calc(100% - .65rem);background-repeat:no-repeat;background-size:.35rem .35rem;padding-right:2.2rem}.spending .ytable tr.gsub td:first-child{color:var(--color-text-muted);padding-left:1.1rem}.spending .ytable tr.gtot td{font-weight:700}.spending .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.spending .dot.sav{background:var(--color-text-muted);opacity:.6}.spending .dot.adj{background:var(--color-danger)}.spending .dot.left{background:color-mix(in srgb, var(--color-accent) 30%, transparent);box-shadow:inset 0 0 0 1px var(--color-accent)}.spending .flow{padding:0}.spending .flow-btn{appearance:none;color:var(--color-text);text-align:left;border-radius:var(--radius-md);background:0 0;border:0;flex-direction:column;gap:.75rem;width:100%;padding:.9rem .95rem .75rem;display:flex}.spending .flow-btn .stat b{font-size:1.15rem}.spending .flow-btn .stat:last-child b{font-size:1.4rem;line-height:1.1}.spending .flow-bar{background:var(--color-surface-alt);border-radius:6px;gap:2px;height:18px;display:flex;position:relative;overflow:hidden}.spending .seg{min-width:3px;height:100%;transition:width .3s;display:block}.spending .seg.sav{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--color-text-muted) 70%, transparent) 0 3px, transparent 3px 6px)}.spending .seg.adj{background:var(--color-danger)}.spending .seg.left{background:color-mix(in srgb, var(--color-accent) 22%, transparent)}.spending .flow-bar .had{background:var(--color-danger);width:2px;position:absolute;top:0;bottom:0}.spending .flow-legend{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.3rem .75rem;font-size:.74rem;display:flex}.spending .flow-legend>span{align-items:center;gap:.3rem;display:inline-flex}.spending .flow-legend .caret{margin-left:auto;font-size:.85rem}.spending .flow-ledger{border-top:1px solid var(--color-border);margin:0;padding:.7rem .95rem .9rem}.spending .flow-ledger dt.seg-row{align-items:center;gap:.45rem;font-size:.8rem;display:flex}.spending .flow-ledger dd.seg-row{color:var(--color-text-muted);font-size:.8rem}.spending .flow-ledger dt.total+dd.total+dt.seg-row,.spending .flow-ledger dd.total+dt.seg-row{margin-top:.4rem}.spending .check-strip{appearance:none;border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-warning) 45%, var(--color-border));background:color-mix(in srgb, var(--color-warning) 7%, var(--color-surface));width:100%;color:var(--color-text);text-align:left;align-items:center;gap:.6rem;min-height:48px;padding:.55rem .9rem;display:flex;font-size:.92rem!important}.spending .check-strip b{font-variant-numeric:tabular-nums;margin-left:auto}.spending .check-strip .tag{margin-left:0}.spending .chev{color:var(--color-text-muted)}.spending .acct-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto;display:grid;overflow:hidden}.spending .acct-tile{border-left:1px solid var(--color-border);flex-direction:column;gap:.1rem;min-width:0;padding:.6rem .75rem;display:flex}.spending .acct-tile:first-child{border-left:0}.spending .acct-tile small{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-size:.66rem;font-weight:700}.spending .acct-tile b{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:.98rem;overflow:hidden}.spending .mini-bar{background:var(--color-surface-alt);border-radius:99px;height:4px;margin-top:.25rem;display:block;overflow:hidden}.spending .mini-bar span{background:var(--color-accent);height:100%;display:block}.spending .acct-check{appearance:none;border:0;border-left:1px solid var(--color-border);color:var(--color-accent);background:0 0;width:44px;font-weight:700;font-size:1.1rem!important}.spending .section-head .key{color:var(--color-text-muted);gap:.6rem;font-size:.7rem;display:inline-flex}.spending .key span{align-items:center;gap:.25rem;display:inline-flex}.spending .k-fill{background:var(--color-text-muted);border-radius:4px;width:12px;height:7px;display:inline-block}.spending .k-tick{background:var(--color-text);border-radius:1px;width:2px;height:11px;display:inline-block}.spending .k-limit{border-left:2px dashed var(--color-text-muted);width:0;height:11px;display:inline-block}.spending .key-note{color:var(--color-text-muted);text-align:right;margin:-.45rem 0 0;font-size:.7rem}.spending .grp-list{flex-direction:column;display:flex}.spending .grp-btn{appearance:none;border:0;border-top:1px solid var(--color-border);color:var(--color-text);text-align:left;background:0 0;align-items:center;gap:.45rem;width:100%;min-height:44px;padding:.55rem 0 .3rem;display:flex}.spending .grp:first-child .grp-btn{border-top:0}.spending .grp-btn b{text-transform:uppercase;letter-spacing:.04em;font-size:.78rem}.spending .grp-btn strong{font-variant-numeric:tabular-nums;margin-left:auto;font-size:.95rem}.spending .grp-btn .caret{color:var(--color-text-muted);text-align:center;width:.8rem;font-size:.8rem}.spending .chip-d{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:.1rem .4rem;font-size:.68rem;font-weight:700}.spending .chip-d.up{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning)}.spending .chip-d.down{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent)}.spending .chip-d.same{background:var(--color-surface-alt);color:var(--color-text-muted)}.spending .cat2{appearance:none;color:var(--color-text);text-align:left;background:0 0;border:0;flex-direction:column;gap:.35rem;width:100%;min-height:48px;padding:.45rem 0 .5rem;display:flex}.spending .cat2-top{align-items:center;gap:.45rem;min-width:0;display:flex}.spending .cat2-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.spending .cat2-top b{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:.92rem}.spending .cat2-top b.is-over{color:var(--color-warning)}.spending .cat2.zero .cat2-name,.spending .cat2.zero .cat2-top b{color:var(--color-text-muted);font-weight:500}.spending .cat2[aria-expanded=true] .cat2-name{color:var(--color-accent)}.spending .cat2-bottom{grid-template-columns:minmax(0,1fr) 4.4rem;align-items:center;gap:.6rem;display:grid}.spending .bullet{background:var(--color-surface-alt);border-radius:999px;height:8px;position:relative}.spending .bullet .fill{border-radius:999px;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.spending .bullet .fill.over{background:var(--color-warning);border-radius:0 999px 999px 0}.spending .bullet .limit{border-left:2px dashed var(--color-text-muted);width:0;position:absolute;top:-4px;bottom:-4px;transform:translate(-1px)}.spending .bullet .tick{background:var(--color-text);border-radius:1px;width:2px;position:absolute;top:-4px;bottom:-4px;transform:translate(-1px)}.spending .lim{color:var(--color-text-muted);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.72rem}.spending .lim.over{color:var(--color-warning);font-weight:700}.spending .cat-detail{border-radius:var(--radius-sm);background:var(--color-surface-alt);flex-direction:column;gap:.75rem;margin:0 0 .6rem;padding:.75rem;display:flex}.spending .mini-stats{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.5rem;display:grid}.spending .mini-stats>div{flex-direction:column;gap:.1rem;min-width:0;display:flex}.spending .mini-stats small{text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.03em;font-size:.64rem;font-weight:700}.spending .mini-stats b{font-variant-numeric:tabular-nums;font-size:.95rem}.spending .mini-stats span{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.spending .mini-stats span.over{color:var(--color-warning);font-weight:700}.spending .mini-stats .link-btn{align-self:flex-start;min-height:28px;padding:0}.spending .spark-wrap{flex-direction:column;gap:.25rem;display:flex}.spending .spark{border-bottom:1px solid var(--color-border);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:.4rem;height:56px;display:grid;position:relative}.spending .spark-col{justify-content:center;align-items:flex-end;height:100%;display:flex}.spending .spark-col i{background:color-mix(in srgb, var(--color-text-muted) 38%, transparent);border-radius:3px 3px 0 0;width:62%;max-width:24px;display:block}.spending .spark-limit{border-top:1.5px dashed var(--color-text-muted);height:0;position:absolute;left:0;right:0}.spending .spark-labels{text-align:center;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.4rem;display:grid}.spending .spark-labels small{color:var(--color-text-muted);font-size:.64rem}.spending .spark-labels small.now{color:var(--color-text);font-weight:700}.spending .mini-entries{flex-direction:column;gap:.3rem;margin:0;padding:0;font-size:.82rem;list-style:none;display:flex}.spending .mini-entries li{font-variant-numeric:tabular-nums;grid-template-columns:3.2rem minmax(0,1fr) auto;gap:.5rem;display:grid}.spending .mini-entries li span:first-child{color:var(--color-text-muted)}.spending .mini-entries li span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spending .up-row{scrollbar-width:none;gap:.5rem;margin:0 -.95rem;padding:0 .95rem .2rem;display:flex;overflow-x:auto}.spending .up-chip{border-radius:var(--radius-sm);background:var(--color-surface-alt);font-variant-numeric:tabular-nums;flex-direction:column;flex:none;gap:.05rem;min-width:6.5rem;padding:.5rem .75rem;display:flex}.spending .up-chip small{color:var(--color-text-muted);text-transform:uppercase;font-size:.66rem;font-weight:700}.spending .up-chip b{font-size:.85rem;font-weight:600}.spending .up-chip span{font-size:.85rem}.spending .up-chip.in span{color:var(--color-accent);font-weight:600}.spending .entry-name strong .dot{vertical-align:.08em;margin-right:.4rem}.spending .ybar-track .stack{border-radius:3px;flex-direction:column-reverse;width:100%;display:flex;overflow:hidden}.spending .ybar-track .stack i{width:100%;display:block}.spending .avg-list dt{align-items:center;display:flex}.spending .reorder-btn{width:36px;height:36px;margin:-.35rem -.4rem -.35rem 0}.spending .reorder-btn.on{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent)}.spending .key-row{flex-wrap:wrap;justify-content:space-between;gap:.2rem .75rem;margin:0 0 .35rem;display:flex}.spending .key-row .key-note{text-align:left;margin:0}.spending .key-row .key{color:var(--color-text-muted);gap:.6rem;font-size:.7rem;display:inline-flex}.spending .reorder{flex-direction:column;gap:.6rem;display:flex}.spending .reorder>.btn{align-self:flex-end}.spending .reorder-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.spending .reorder-list li{border-radius:var(--radius-sm);background:var(--color-surface-alt);align-items:center;gap:.5rem;min-height:48px;padding:0 .25rem 0 .2rem;transition:transform .15s;display:flex}.spending .reorder-list li.dragging{z-index:2;box-shadow:var(--shadow-md);background:var(--color-surface);outline:1px solid var(--color-border);transition:none;position:relative}.spending .reorder-list li b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;overflow:hidden}.spending .reorder-list .rl-total{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-left:auto;padding-right:.25rem;font-size:.85rem}.spending .drag-handle{width:32px;height:44px;color:var(--color-text-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:1.1rem;display:inline-flex}.spending .reorder-list.locked .drag-handle{opacity:.25;cursor:default}.spending .reorder-list.locked .rl-total{padding-right:.6rem}.spending .wf{border-top:1px solid var(--color-border);flex-direction:column;gap:.15rem;padding:.8rem .95rem .95rem;display:flex}.spending .wf-row{font-variant-numeric:tabular-nums;grid-template-columns:7.4rem minmax(0,1fr) 4.6rem;align-items:center;gap:.6rem;min-height:30px;display:grid}.spending .wf-label{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.45rem;font-size:.84rem;display:flex;overflow:hidden}.spending .wf-sign{background:var(--color-surface-alt);width:18px;height:18px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:800;display:inline-flex}.spending .wf-sign.plus{background:color-mix(in srgb, var(--color-accent) 16%, transparent);color:var(--color-accent)}.spending .wf-sign.minus{background:color-mix(in srgb, var(--color-warning) 16%, transparent);color:var(--color-warning)}.spending .wf-sign.eq{background:var(--color-accent);color:var(--color-accent-contrast)}.spending .wf-track{background:var(--color-surface-alt);border-radius:4px;height:12px;position:relative;overflow:hidden}.spending .wf-bar{display:block;position:absolute;top:0;bottom:0}.spending .wf-bar.base{background:color-mix(in srgb, var(--color-text-muted) 55%, transparent)}.spending .wf-bar.plus{background:var(--color-accent)}.spending .wf-bar.sav{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--color-text-muted) 75%, transparent) 0 3px, transparent 3px 6px)}.spending .wf-bar.adj{background:var(--color-danger)}.spending .wf-bar.left{background:color-mix(in srgb, var(--color-accent) 45%, transparent);box-shadow:inset 0 0 0 1px var(--color-accent);border-radius:4px}.spending .wf-amt{text-align:right;white-space:nowrap;font-size:.9rem;font-weight:600}.spending .wf-sub{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.2rem .7rem;padding:.1rem 0 .35rem 1.65rem;font-size:.72rem;display:flex}.spending .wf-sub span{align-items:center;gap:.3rem;display:inline-flex}.spending .wf-sub b{color:var(--color-text);font-weight:600}.spending .wf-total{border-top:1px dashed var(--color-border);margin-top:.35rem;padding-top:.5rem}.spending .wf-total .wf-label{color:var(--color-text);font-size:.9rem;font-weight:700}.spending .wf-total .wf-amt{font-size:1.05rem;font-weight:800}.spending .wf-amt.pos{color:var(--color-accent)}.spending .wf-amt.neg{color:var(--color-danger)}.spending .up-chip{gap:.2rem;min-width:7.6rem}.spending .up-when{color:var(--color-accent);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-style:normal;font-weight:700}.spending .up-chip:not(.in) .up-when{color:var(--color-text)}.spending .up-foot{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.spending .up-foot small{color:var(--color-text-muted);text-transform:none;font-size:.68rem;font-weight:500}.spending .cmp-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.1rem 0 .55rem;display:flex}.spending .cmp-select{appearance:none;border:1px solid var(--color-border);background-color:var(--color-surface-alt);min-height:36px;color:var(--color-text);background-image:linear-gradient(45deg, transparent 50%, var(--color-text-muted) 50%), linear-gradient(135deg, var(--color-text-muted) 50%, transparent 50%);background-position:calc(100% - .85rem) 55%,calc(100% - .55rem) 55%;background-repeat:no-repeat;background-size:.3rem .3rem;border-radius:999px;padding:.35rem 1.7rem .35rem .75rem;font-weight:600;font-size:.85rem!important}.spending .cmp-vs{color:var(--color-text-muted);font-size:.8rem}.spending .cmp-bar .link-btn{min-height:36px;margin-left:auto;padding:0 .2rem}.spending .spark-col.cmp i{background:var(--color-text);opacity:.55}.spending .spark-labels small.cmp{color:var(--color-text)}.spending .ytable td.worse{color:var(--color-warning-text)}.spending .ytable td.better{color:var(--color-accent)}.spending .ytable td.neg{color:var(--color-danger)}.spending .tone-key{color:var(--color-text-muted);flex-wrap:wrap;gap:.2rem .8rem;margin-top:-.3rem;font-size:.7rem;display:flex}.spending .tone-key .worse{color:var(--color-warning-text);font-weight:700}.spending .tone-key .better{color:var(--color-accent);font-weight:700}.spending .view-toggle{width:10.5rem}.spending .cal{flex-direction:column;gap:.3rem;display:flex}.spending .cal-head,.spending .cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.spending .cal-head span{text-align:center;color:var(--color-text-muted);font-size:.66rem;font-weight:700}.spending .cal-cell{appearance:none;aspect-ratio:1/1.08;min-width:0;color:var(--color-text);background:color-mix(in srgb, var(--spending-group-1) var(--heat,0%), var(--color-surface-alt));font-variant-numeric:tabular-nums;border:0;border-radius:7px;flex-direction:column;justify-content:space-between;align-items:center;padding:3px 2px;display:flex;position:relative}.spending .cal-cell.blank{background:0 0}.spending .cal-cell.future{box-shadow:inset 0 0 0 1px var(--color-border);color:var(--color-text-muted);background:0 0}.spending .cal-cell.today{box-shadow:inset 0 0 0 2px var(--color-text)}.spending .cal-cell.sel{outline:2px solid var(--color-accent);outline-offset:1px;z-index:1}.spending .cal-cell:disabled{cursor:default}.spending .cal-num{font-size:.7rem;font-weight:700;line-height:1}.spending .cal-amt{white-space:nowrap;font-size:.6rem;font-weight:600;line-height:1}.spending .cal-marks{gap:2px;height:5px;display:flex}.spending .m-in,.spending .m-check{border-radius:50%;width:5px;height:5px;display:inline-block}.spending .m-in{background:var(--color-accent)}.spending .m-check{background:var(--color-warning)}.spending .cal-key{color:var(--color-text-muted);flex-wrap:wrap;gap:.2rem .8rem;margin-top:.2rem;font-size:.68rem;display:flex}.spending .cal-key span{align-items:center;gap:.3rem;display:inline-flex}.spending .k-heat{background:linear-gradient(90deg, var(--color-surface-alt), var(--spending-group-1));border-radius:3px;width:26px;height:8px;display:inline-block}.spending .cal-day-head{border-top:1px solid var(--color-border);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:.5rem;margin-top:.3rem;padding-top:.6rem;display:flex}.spending .cal-day-head b{font-size:.92rem}.spending .cal-day-head>span{color:var(--color-text-muted);gap:.6rem;font-size:.85rem;display:inline-flex}.spending .neg-t{color:var(--color-text);font-weight:600}.spending .pos-t{color:var(--color-accent);font-weight:600}.spending .cmp-select.late{border-color:color-mix(in srgb, var(--color-accent) 50%, var(--color-border))}.spending .cmp-select.a{border-color:var(--color-border)}.spending .k-bar{border-radius:4px;width:14px;height:7px;display:inline-block}.spending .k-bar.early{background:color-mix(in srgb, var(--color-text-muted) 42%, var(--color-surface-alt))}.spending .k-bar.late{background:var(--color-text-muted)}.spending .grp-btn .gt{font-variant-numeric:tabular-nums;align-items:baseline;gap:.5rem;margin-left:auto;display:inline-flex}.spending .grp-btn .gt em{color:var(--color-text-muted);font-size:.8rem;font-style:normal}.spending .grp-btn .gt strong{margin-left:0;font-size:.95rem}.spending .cat3{appearance:none;color:var(--color-text);text-align:left;background:0 0;border:0;flex-direction:column;gap:.3rem;width:100%;min-height:48px;padding:.5rem 0 .55rem;display:flex}.spending .cat3-top{align-items:center;gap:.45rem;min-width:0;display:flex}.spending .cat3-top .lim{margin-left:auto}.spending .cat3.zero .cat2-name{color:var(--color-text-muted);font-weight:500}.spending .cat3[aria-expanded=true] .cat2-name{color:var(--color-accent)}.spending .cat3-line{grid-template-columns:1.9rem minmax(0,1fr) 3.9rem;align-items:center;gap:.5rem;display:grid}.spending .cat3-line small{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.66rem;font-weight:700}.spending .cat3-line b{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.88rem}.spending .cat3-line b.early{color:var(--color-text-muted);font-weight:600}.spending .cat3-line b.is-over{color:var(--color-warning)}.spending .cat3-line .bullet{height:9px}.spending .bullet .fill.over.soft{background:color-mix(in srgb, var(--color-warning) 45%, var(--color-surface-alt))}.spending .mini-month{flex-direction:column;gap:.25rem;display:flex}.spending .mini-month>small{text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.03em;font-size:.64rem;font-weight:700}.spending .card-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.spending .card-head>div{min-width:0}.spending .card-head .btn{flex:none}.spending .pal-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.spending .pal-list form{min-width:0}.spending .pal{appearance:none;text-align:left;border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;color:var(--color-text);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem .5rem;padding:.7rem;display:grid}.spending .pal[aria-checked=true]{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.spending .pal-name{flex-direction:column;gap:.1rem;min-width:0;display:flex}.spending .pal-name b{font-size:.86rem}.spending .pal-tick{border:2px solid var(--color-border);width:22px;height:22px;color:var(--color-accent-contrast);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:inline-flex}.spending .pal[aria-checked=true] .pal-tick{background:var(--color-accent);border-color:var(--color-accent)}.spending .pal-preview{grid-column:1/-1;display:block}.spending .pal-bar{border-radius:4px;gap:2px;height:10px;display:flex;overflow:hidden}.spending .pal-bar i{height:100%;display:block}.spending .seg.uncat,.spending .dot.uncat{background:color-mix(in srgb, var(--color-text-muted) 55%, transparent)}.spending .uncat-head{cursor:default}.spending a.segment,.spending a.btn,.spending a.nav-arrow,.spending a.acct-check,.spending a.link-btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.spending a.segment{flex:1}.spending a.nav-arrow{color:var(--color-text)}.spending a.nav-arrow[aria-disabled=true]{opacity:.25;pointer-events:none}.spending a.check-strip{text-decoration:none}.spending a.acct-check{border-left:1px solid var(--color-border)}.spending .segment:disabled{cursor:default}.spending form.inline{display:contents}.spending .ensure-form{display:none}.spending .bottom a.btn{width:100%}.spending .entry-actions form,.spending .confirm-row form{margin:0}.spending .reorder-list li>form{display:contents}.spending .setup{flex-direction:column;gap:.9rem;padding:.95rem;display:flex}.spending .setup h1{margin:0;font-size:1.15rem}.spending .setup form{flex-direction:column;gap:.8rem;display:flex}.spending input[type=date]{appearance:none;min-width:0;max-width:100%}.spending .bottom{box-sizing:border-box;width:100%;max-width:30rem;padding-bottom:calc(1.3rem + env(safe-area-inset-bottom,0px));margin:0 auto}.spending .entries-empty{padding:.6rem .95rem .95rem}.spending .uncat-note{padding-bottom:.4rem}.spending .page{box-sizing:border-box;width:100%;min-width:0;min-height:0}.spending .form>form{flex-direction:column;gap:.9rem;display:flex}.spending .chip input[type=radio]{opacity:0;width:1px;height:1px;position:absolute}.spending .chip:has(input:checked){background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-contrast)}.spending .chip:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.spending .sub-head .nav-arrow{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.spending .field label.chip{text-transform:none;letter-spacing:normal;color:var(--color-text)}.spending .field label.chip:has(input:checked){color:var(--color-accent-contrast)}.spending .two-btn a.btn{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.spending .check-title{font-size:1.1rem}.spending .ytable thead a{appearance:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;min-height:32px;text-decoration:underline;-webkit-text-decoration-color:var(--color-border);text-decoration-color:var(--color-border);text-underline-offset:3px;background:0 0;border:0;align-items:center;padding:.3rem .1rem;display:inline-flex}.spending a.ybar{text-decoration:none}.spending.spending-settings{flex-direction:column;gap:.75rem;min-width:0;display:flex}.spending .set-row b{text-align:right;font-variant-numeric:tabular-nums}.spending .ed-panel form{flex-direction:column;gap:.6rem;display:flex}.spending .ed-actions form,.spending .confirm-row form,.spending .ed-group-head form{margin:0}.spending .ed-actions form,.spending .confirm-row div form{display:inline-flex}.spending .spending-edit-toast{bottom:max(1rem, env(safe-area-inset-bottom));z-index:20;max-width:30rem;margin-inline:auto;position:fixed;left:1rem;right:1rem}.spending a.ed-cat,.spending a.rep-row,.spending a.icon-btn{text-decoration:none}.spending a.btn[aria-disabled=true]{opacity:.4;pointer-events:none}.spending .two-btn .add-another{grid-area:1/1}.spending .two-btn.single{grid-template-columns:minmax(0,1fr)}.spending .accounts-card .account-setting-row{grid-template-columns:minmax(0,1fr) auto}.spending .accounts-card .account-setting-row>span:last-child{text-align:right}.spending .accounts-card .btn-small,.spending .accounts-card .link-btn,.spending .accounts-card .account-type-chip{min-height:44px}.spending .accounts-card .account-confirm{background:color-mix(in srgb, var(--color-danger) 9%, var(--color-surface-alt))}.spending .accounts-card .account-confirm p{margin:0;font-size:.82rem;line-height:1.4}.spending .account-detail,.spending .account-status,.spending .category-hint{color:var(--color-text-muted);margin:0;font-size:.76rem;line-height:1.45}.spending .currency-row{flex-direction:column;align-items:stretch;gap:.55rem;display:flex}.spending .currency-row>span{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.spending .currency-row .currency-value{text-align:right;font-variant-numeric:tabular-nums}.spending .currency-row .currency-value small{color:var(--color-text-muted);font-size:.72rem;font-weight:400;display:block}.spending .currency-row form{flex-direction:column;gap:.7rem;display:flex}.spending .currency-row form .btn{align-self:flex-start}.spending .acct-grid{scrollbar-width:thin;display:flex;overflow-x:auto}.spending .acct-grid .acct-tile{flex:1 0 6.2rem}.spending .acct-grid .acct-check{flex:0 0 44px}@media (orientation:landscape) and (height<=500px){.spending .bottom{background:0 0;width:auto;max-width:none;margin:0;padding:0;position:fixed;inset:.45rem 4rem auto auto}.spending .acct-grid .acct-tile{flex:1 0 4.4rem;padding:.55rem .45rem}.spending .acct-grid .acct-tile b{font-size:.88rem}.spending .bottom a.btn{width:auto;min-height:40px;padding-block:.3rem}.spending .bottom .toast{bottom:max(1rem, env(safe-area-inset-bottom,0px));max-width:30rem;margin-inline:auto;position:fixed;left:1rem;right:1rem}}
