@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.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:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/26daee0352f50a5f-s.p.2e115y8-hourl.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:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.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:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_393ea356-module__W0Viyq__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_393ea356-module__W0Viyq__variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/481eac7be1c268b7-s.p.1shg3f9j2jih-.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:Schibsted Grotesk;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/31a9145ccb84606d-s.p.3j3x29wbycqkn.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:Schibsted Grotesk Fallback;src:local(Arial);ascent-override:93.46%;descent-override:24.67%;line-gap-override:0.0%;size-adjust:104.49%}.schibsted_grotesk_d0f3d90e-module__i13efW__className{font-family:Schibsted Grotesk,Schibsted Grotesk Fallback;font-style:normal}.schibsted_grotesk_d0f3d90e-module__i13efW__variable{--font-body:"Schibsted Grotesk", "Schibsted Grotesk Fallback"}
@font-face{font-family:Spline Sans Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/5e60c3e60a629e0e-s.p.185vq78hrw2dq.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:Spline Sans Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/d2d62b05021c6286-s.p.2d9e_tvweuz-y.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:Spline Sans Mono Fallback;src:local(Arial);ascent-override:71.59%;descent-override:17.57%;line-gap-override:0.0%;size-adjust:134.59%}.spline_sans_mono_b9d1b705-module__CcQfMq__className{font-family:Spline Sans Mono,Spline Sans Mono Fallback;font-style:normal}.spline_sans_mono_b9d1b705-module__CcQfMq__variable{--font-mono:"Spline Sans Mono", "Spline Sans Mono Fallback"}
*{box-sizing:border-box;margin:0;padding:0}:root{--paper:#f4f6f1;--surface:#fff;--surface-2:#eef1ea;--ink:#182420;--ink-soft:#3d4f45;--muted-c:#67796d;--line:#e1e6dd;--line-strong:#c8d2c6;--brand:#0e5741;--brand-hover:#0b4735;--brand-deep:#0b3227;--brand-deeper:#082a1f;--brand-tint:#e7efe9;--credit:#157a4a;--credit-tint:#e3f1e7;--debit:#b23a2e;--debit-tint:#f9eae7;--gold:#a97e17;--gold-tint:#f8f0da;--info:#33588f;--info-tint:#e7edf7;--radius:12px;--radius-s:8px;--shadow-1:0 1px 2px #1824200d, 0 6px 20px #1824200d;--shadow-2:0 8px 40px #18242029;--sans:var(--font-body,system-ui, sans-serif);--disp:var(--font-display,var(--sans));--mono:var(--font-mono,ui-monospace, "SF Mono", monospace)}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);background:var(--paper);color:var(--ink);font-size:15.5px;line-height:1.55}h1,h2,h3{font-family:var(--disp);letter-spacing:-.01em;font-weight:640;line-height:1.2}h1{margin-bottom:1rem;font-size:1.7rem}a{color:var(--brand);-webkit-text-decoration-color:color-mix(in srgb, var(--brand) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--brand) 35%, transparent);text-underline-offset:3px}a:hover{color:var(--brand-hover)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}::selection{background:var(--brand-tint)}form{flex-direction:column;gap:.9rem;margin:1rem 0;display:flex}label{color:var(--ink-soft);flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500;display:flex}input,select,textarea{border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:.95rem;font-family:var(--sans);padding:.55rem .75rem;transition:border-color .12s,box-shadow .12s}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 14%, transparent);outline:none}input[type=number]{font-family:var(--mono);font-variant-numeric:tabular-nums}button{border-radius:var(--radius-s);background:var(--brand);color:#f4f9f4;font-size:.95rem;font-weight:600;font-family:var(--sans);cursor:pointer;border:1px solid #0000;padding:.6rem 1.1rem;transition:background .12s,transform .12s}button:hover:not(:disabled){background:var(--brand-hover)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.55;cursor:default}.linklike{color:var(--brand);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--brand) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--brand) 35%, transparent);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:500}.linklike:hover{color:var(--brand-hover);background:0 0}.danger-btn{background:var(--debit);color:#fff}.danger-btn:hover:not(:disabled){background:#9a2f24}.muted{color:var(--muted-c)}.error{color:var(--debit);font-size:.92rem}.ok{color:var(--credit);font-size:.92rem}.spacer{flex:1}.big{font-size:1.45rem;font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:600}.accent{color:var(--brand)}.brand{font-family:var(--disp);color:inherit;letter-spacing:-.01em;font-size:1.12rem;font-weight:700;text-decoration:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1);margin:1.25rem 0;padding:1.35rem 1.5rem}.card h2{margin-bottom:.7rem;font-size:1.02rem}.card.danger{border-color:color-mix(in srgb, var(--debit) 45%, var(--line))}.rows,.sessions{flex-direction:column;list-style:none;display:flex}.rows li,.sessions li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 0;font-size:.95rem;display:flex}.rows li:last-child,.sessions li:last-child{border-bottom:none;padding-bottom:0}.rows li:first-child,.sessions li:first-child{padding-top:0}.rows strong,.stat strong{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.sessions{margin-bottom:1rem}.stat-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.25rem 0;display:grid}.stat{flex-direction:column;gap:.35rem;margin:0;display:flex}.stat>.muted{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.stat-hero{background:var(--brand-deep);border-color:var(--brand-deep);color:#eef5ee}.stat-hero>.muted{color:#9dbcab}.stat-hero .big{color:#fff;font-size:1.7rem}.badge{font-size:.72rem;font-family:var(--mono);letter-spacing:.02em;background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.12rem .55rem;display:inline-block}.badge-processing,.badge-uploaded,.badge-parsed{background:var(--info-tint);color:var(--info);border-color:color-mix(in srgb, var(--info) 25%, transparent)}.badge-reconciled{background:var(--credit-tint);color:var(--credit);border-color:color-mix(in srgb, var(--credit) 25%, transparent)}.badge-needs_review{background:var(--gold-tint);color:var(--gold);border-color:color-mix(in srgb, var(--gold) 30%, transparent)}.badge-failed{background:var(--debit-tint);color:var(--debit);border-color:color-mix(in srgb, var(--debit) 25%, transparent)}.banner{border-bottom:1px solid #0000;padding:10px 24px;font-size:14px}.warn-banner{background:var(--gold-tint);color:#7a5a10;border-color:color-mix(in srgb, var(--gold) 35%, transparent)}.error-banner{background:var(--debit-tint);color:#8c2d23;border-color:color-mix(in srgb, var(--debit) 30%, transparent)}.banner a{color:inherit;font-weight:600}table{border-collapse:collapse;width:100%}th{text-align:left;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted-c);border-bottom:1px solid var(--line-strong);padding:.35rem .5rem;font-size:.7rem;font-weight:600}td{border-bottom:1px solid var(--line);padding:.45rem .5rem;font-size:.92rem}tr:last-child>td{border-bottom:none}.review-table input{width:100%}.review-add{gap:.5rem;margin-top:.75rem;display:flex}.bar-row{grid-template-columns:64px 1fr 140px;align-items:center;gap:.8rem;margin:.55rem 0;font-size:.9rem;display:grid}.bar-row>span:last-child{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}.bar{background:var(--surface-2);border-radius:5px;height:10px;overflow:hidden}.bar-fill{border-radius:5px;height:100%;transition:width .4s}.ok-bg{background:var(--credit)}.err-bg{background:var(--debit)}.modal-backdrop,.modal-overlay{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b1a1473;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{width:calc(100% - 32px);max-width:440px;box-shadow:var(--shadow-2);max-height:85vh;margin:16px;overflow-y:auto}.dropzone{border:2px dashed var(--line-strong);text-align:center;background:var(--surface);padding:2.2rem 1rem;transition:border-color .12s,background .12s}.dropzone-active{border-color:var(--brand);background:var(--brand-tint)}.filters{flex-wrap:wrap;align-items:flex-end;gap:.6rem;display:flex}.inline-form{flex-flow:wrap;align-items:flex-end;gap:.8rem}.inline-form label{flex:140px}.inline-form button{flex:none}.auth-card{background:var(--surface);border:1px solid var(--line);max-width:420px;box-shadow:var(--shadow-1);border-radius:14px;margin:9vh auto;padding:2rem 2.1rem 2.2rem}.auth-card:before{content:"PlusCash";font-family:var(--disp);color:var(--brand);margin-bottom:1.4rem;font-size:1.05rem;font-weight:700;display:block}.auth-card h1{margin-bottom:.4rem;font-size:1.35rem}.shell{min-height:100vh;display:flex}.sidebar{background:var(--brand-deep);color:#cfe0d3;scrollbar-width:thin;flex-direction:column;flex:0 0 236px;width:236px;height:100vh;padding:1.1rem .85rem 1.25rem;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{font-family:var(--disp);color:#fff;align-items:center;gap:.55rem;padding:.25rem .55rem 1rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.sidebar-brand .mark{width:26px;height:26px;color:var(--brand-deep);background:#e8f3ea;border-radius:7px;justify-content:center;align-items:center;font-size:1.05rem;font-weight:700;line-height:1;display:inline-flex}.side-group{font-family:var(--mono);text-transform:uppercase;letter-spacing:.16em;color:#7fa18c;padding:1.05rem .6rem .35rem;font-size:.62rem;font-weight:600}.side-link{color:#cfe0d3;border-radius:8px;align-items:center;gap:.6rem;padding:.42rem .6rem;font-size:.92rem;font-weight:480;line-height:1.3;text-decoration:none;transition:background .1s,color .1s;display:flex}.side-link svg{opacity:.75;flex:none}.side-link:hover{color:#fff;background:#ffffff12}.side-link.active{color:#fff;background:#e8f3ea24;font-weight:600}.side-link.active svg{opacity:1}.sidebar-foot{font-family:var(--mono);color:#6d8f7c;letter-spacing:.06em;margin-top:auto;padding:1.2rem .6rem 0;font-size:.66rem}.main-col{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:20;align-items:center;gap:.9rem;padding:.7rem 1.6rem;display:flex;position:sticky;top:0}.topbar select{max-width:280px;padding:.42rem .65rem;font-size:.9rem}.topbar .user-email{font-size:.85rem}.menu-btn{border:1px solid var(--line-strong);color:var(--ink);border-radius:var(--radius-s);background:0 0;padding:.35rem .55rem;line-height:1;display:none}.menu-btn:hover:not(:disabled){background:var(--surface)}.page{width:100%;max-width:1060px;margin:0 auto;padding:1.75rem 1.6rem 3rem}.page-loading{min-height:60vh;color:var(--muted-c);font-family:var(--mono);letter-spacing:.08em;justify-content:center;align-items:center;font-size:.85rem;display:flex}@media (max-width:900px){.sidebar{z-index:60;box-shadow:none;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-2);transform:translate(0)}.sidebar-backdrop{z-index:55;background:#0b1a1466;position:fixed;inset:0}.menu-btn{display:inline-flex}.topbar{padding:.6rem 1rem}.topbar .user-email{display:none}.page{padding:1.25rem 1rem 2.5rem}}.landing{max-width:1120px;margin:0 auto;padding:0 1.5rem}.landing-nav{align-items:center;gap:1.2rem;padding:1.1rem 0;display:flex}.landing-nav a{font-size:.95rem;font-weight:500;text-decoration:none}.landing-nav .brand{align-items:center;gap:.5rem;font-size:1.2rem;display:flex}.landing-nav .brand .mark{background:var(--brand);color:#f2f8f2;border-radius:7px;justify-content:center;align-items:center;width:27px;height:27px;font-size:1.05rem;font-weight:700;line-height:1;display:inline-flex}.cta{background:var(--brand);color:#f4f9f4;border-radius:10px;padding:.75rem 1.4rem;font-weight:600;text-decoration:none;transition:background .12s,transform .12s;display:inline-block}.cta:hover{background:var(--brand-hover);color:#fff}.cta:active{transform:translateY(1px)}.cta-small{background:var(--brand);color:#f4f9f4;border-radius:8px;padding:.45rem .95rem;font-size:.9rem;font-weight:600;text-decoration:none}.cta-small:hover{background:var(--brand-hover);color:#fff}.cta-ghost{color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:10px;padding:.75rem 1.1rem;font-weight:500;text-decoration:none;transition:border-color .12s,color .12s;display:inline-block}.cta-ghost:hover{border-color:var(--brand);color:var(--brand)}.hero{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:3rem;padding:3.2rem 0 4rem;display:grid}.hero-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.18em;color:var(--brand);margin-bottom:1rem;font-size:.72rem;font-weight:600}.hero h1{letter-spacing:-.025em;margin-bottom:1.1rem;font-size:clamp(2.1rem,4.6vw,3.15rem);font-weight:700;line-height:1.08}.hero h1 em{color:var(--brand);font-style:normal}.hero .sub{color:var(--ink-soft);max-width:46ch;margin-bottom:1.7rem;font-size:1.08rem}.hero-ctas{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.hero-note{color:var(--muted-c);margin-top:.85rem;font-size:.85rem}.demo{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);border-radius:16px;font-size:.86rem;overflow:hidden}.demo-head{border-bottom:1px solid var(--line);background:var(--surface-2);font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:.6rem;padding:.7rem 1rem;font-size:.74rem;display:flex}.demo-head .dot{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.demo-head .file{margin-left:.3rem}.demo-head .badge{margin-left:auto}.demo-rows{padding:.4rem 0;list-style:none}.demo-row{border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);opacity:0;animation:.42s forwards demo-row-in;animation-delay:calc(var(--i) * .34s + .2s);grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:.7rem;padding:.52rem 1rem;display:grid;transform:translateY(6px)}.demo-row:last-child{border-bottom:none}.demo-date{font-family:var(--mono);color:var(--muted-c);font-size:.72rem}.demo-desc{white-space:nowrap;text-overflow:ellipsis;color:var(--ink-soft);overflow:hidden}.demo-amount{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:600}.demo-amount.neg{color:var(--debit)}.demo-amount.pos{color:var(--credit)}.chip{font-family:var(--mono);background:var(--brand-tint);color:var(--brand);border:1px solid color-mix(in srgb, var(--brand) 22%, transparent);white-space:nowrap;opacity:0;animation:.26s cubic-bezier(.34,1.4,.64,1) forwards chip-in;animation-delay:calc(var(--i) * .34s + .62s);border-radius:999px;justify-self:end;padding:.1rem .5rem;font-size:.66rem;transform:scale(.75)}.chip.t-neutral{background:var(--surface-2);color:var(--muted-c);border-color:var(--line-strong)}.chip.t-gold{background:var(--gold-tint);color:var(--gold);border-color:color-mix(in srgb, var(--gold) 30%, transparent)}.demo-foot{border-top:1px solid var(--line);background:var(--brand-deep);color:#dcebe0;font-family:var(--mono);opacity:0;align-items:center;gap:.55rem;padding:.75rem 1rem;font-size:.78rem;animation:.5s 2.6s forwards demo-row-in;display:flex}.demo-foot .check{color:#7fd6a5;font-weight:700}.demo-foot strong{color:#fff;font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}@keyframes demo-row-in{to{opacity:1;transform:translateY(0)}}@keyframes chip-in{to{opacity:1;transform:scale(1)}}.l-section{border-top:1px solid var(--line);padding:3.4rem 0}.l-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.18em;color:var(--brand);margin-bottom:.6rem;font-size:.7rem;font-weight:600}.l-section>h2{letter-spacing:-.02em;max-width:30ch;margin-bottom:.5rem;font-size:clamp(1.5rem,2.6vw,2rem)}.l-lead{color:var(--ink-soft);max-width:58ch;margin-bottom:2rem}.features{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;display:grid}.feature{flex-direction:column;gap:.75rem;margin:0;padding:1.6rem;display:flex}.feature-art{background:var(--brand-tint);width:54px;height:54px;color:var(--brand);border-radius:13px;justify-content:center;align-items:center;display:flex}.feature h3{font-size:1.08rem}.feature p{color:var(--ink-soft);font-size:.94rem}.banks{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.55rem .9rem;font-size:.82rem;display:flex}.banks span{border:1px solid var(--line-strong);background:var(--surface);border-radius:999px;padding:.32rem .75rem}.banks-note{color:var(--muted-c);margin-top:1rem;font-size:.88rem}.pricing-wrap{justify-content:center;display:flex}.receipt{background:var(--surface);border:1px solid var(--line);width:100%;max-width:460px;box-shadow:var(--shadow-1);font-family:var(--mono);border-radius:14px;padding:1.9rem 2rem;font-size:.9rem}.receipt h3{font-family:var(--disp);margin-bottom:.25rem;font-size:1.2rem}.receipt .receipt-sub{color:var(--muted-c);margin-bottom:1.2rem;font-size:.8rem}.receipt ul{border-top:1px dashed var(--line-strong);border-bottom:1px dashed var(--line-strong);flex-direction:column;gap:.55rem;margin-bottom:1rem;padding:.9rem 0;list-style:none;display:flex}.receipt li{color:var(--ink-soft);gap:.6rem;font-size:.84rem;display:flex}.receipt li:before{content:"✓";color:var(--credit);font-weight:700}.receipt .total{justify-content:space-between;align-items:baseline;margin-bottom:1.4rem;display:flex}.receipt .total .amount{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.receipt .total .amount small{color:var(--muted-c);font-size:.85rem;font-weight:400}.receipt .cta{text-align:center;font-family:var(--sans);display:block}.receipt .receipt-note{text-align:center;color:var(--muted-c);margin-top:.9rem;font-size:.76rem}.faq{max-width:720px}.faq details{border-bottom:1px solid var(--line);padding:.9rem 0}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--mono);color:var(--brand);font-size:1.15rem;transition:transform .15s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--ink-soft);max-width:62ch;padding-top:.6rem}.l-final{text-align:center;padding:4rem 0}.l-final h2{letter-spacing:-.02em;margin-bottom:.6rem;font-size:clamp(1.6rem,3vw,2.2rem)}.l-final p{color:var(--ink-soft);margin-bottom:1.6rem}.landing-footer{border-top:1px solid var(--line);color:var(--muted-c);padding:2rem 0 2.5rem;font-size:.88rem}.landing-footer a{color:var(--ink-soft)}@media (max-width:640px){.demo-row{grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr) auto;row-gap:.2rem}.demo-row .chip{grid-area:2/2;justify-self:start}.demo-row .demo-amount{grid-area:1/3}.demo-head{gap:.4rem;font-size:.68rem}.demo-head .badge{padding:.1rem .4rem;font-size:.6rem}}@media (max-width:860px){.hero{grid-template-columns:1fr;gap:2.2rem;padding:2rem 0 3rem}.features{grid-template-columns:1fr}.landing-nav .login-link{display:none}}.legal-header,.legal-body{font-size:.95rem;line-height:1.65}.legal-body h2{margin:1.4rem 0 .5rem;font-size:1.05rem}.legal-body h2:first-child{margin-top:0}.legal-body ul{margin:.5rem 0;padding-left:1.3rem}.legal-body p{margin:.5rem 0}.landing>h1{margin-top:1.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:.01ms!important}}.toolbar{z-index:15;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem .6rem;margin:0 0 1.1rem;padding:.65rem 0 .75rem;display:flex;position:sticky;top:53px}.toolbar input,.toolbar select{padding:.42rem .6rem;font-size:.875rem}.toolbar .grow{flex:11rem;min-width:9rem}.toolbar-add{white-space:nowrap;margin-left:auto;padding:.45rem .9rem;font-size:.875rem}.seg{background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;display:inline-flex;overflow:hidden}.seg button{color:var(--ink-soft);background:0 0;border:0;border-radius:0;padding:.42rem .9rem;font-size:.85rem;font-weight:500}.seg button:hover:not(:disabled){background:var(--surface-2)}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true],.seg button[aria-pressed=true]:hover:not(:disabled){background:var(--brand);color:#fff}.ledger{margin:0;padding:0 0 2rem;list-style:none}.ledger-day{color:var(--muted-c);letter-spacing:.08em;text-transform:uppercase;align-items:baseline;gap:.7rem;margin:1.2rem 0 .25rem;font-size:.72rem;font-weight:600;display:flex}.ledger-day .rule{border-top:1px solid var(--line);flex:1}.ledger-day .amount-day{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none;font-size:.8rem}.ledger-line{cursor:pointer;border-radius:var(--radius-s);grid-template-columns:1.35rem minmax(0,1fr) auto;align-items:center;gap:0 .6rem;padding:.5rem .45rem;display:grid}.ledger-line:hover,.ledger-row.open .ledger-line{background:var(--surface)}.ledger-line .tick{opacity:0;transition:opacity .12s}.ledger-line:hover .tick,.ledger-line:focus-within .tick,.ledger-line .tick:checked,.ledger.has-selection .tick{opacity:1}.ledger-main{flex-direction:column;gap:.12rem;min-width:0;display:flex}.ledger-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.ledger-sub{color:var(--muted-c);flex-wrap:wrap;align-items:center;gap:.3rem .55rem;min-width:0;font-size:.78rem;display:flex}.ledger-sub .src{text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.ledger-sub .acct,.ledger-sub .detail{white-space:nowrap;text-overflow:ellipsis;max-width:18rem;overflow:hidden}.amount{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;font-weight:550}.amount.pos{color:var(--credit)}.amount.neg{color:var(--debit)}.tr-mark{color:var(--info);font-family:var(--sans)}.ledger-line.static{cursor:default}.ledger-line.static:hover{background:0 0}.ledger-line.no-tick{grid-template-columns:minmax(0,1fr) auto}.ledger-sub .bar{flex:8rem;max-width:16rem;display:block}.warn-bg{background:var(--gold)}.chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:.32rem;max-width:16rem;padding:.06rem .55rem;font-size:.74rem;display:inline-flex;overflow:hidden}.chip .dot{border-radius:50%;flex:none;width:.5rem;height:.5rem}.chip-empty{border-style:dashed;border-color:color-mix(in srgb, var(--gold) 55%, transparent);background:var(--gold-tint);color:var(--gold)}.chip-act{color:inherit;background:0 0;border:0;border-radius:3px;padding:0 .15rem;font-size:.78rem;font-weight:700;line-height:1}.chip-act:hover:not(:disabled){background:color-mix(in srgb, var(--gold) 18%, transparent)}.ledger-expand{background:var(--surface-2);border-radius:var(--radius-s);cursor:default;margin:.15rem 0 .5rem 1.95rem;padding:.75rem .95rem;font-size:.85rem}.ledger-expand .raw{font-family:var(--mono);color:var(--ink-soft);overflow-wrap:anywhere;margin-bottom:.4rem;font-size:.76rem}.expand-actions{flex-wrap:wrap;align-items:flex-end;gap:.8rem;margin-top:.6rem;display:flex}.expand-actions label{font-size:.78rem}.linklike.danger{color:var(--debit);-webkit-text-decoration-color:color-mix(in srgb, var(--debit) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--debit) 35%, transparent)}.bulkbar{z-index:60;background:var(--brand-deep);color:#fff;box-shadow:var(--shadow-2);border-radius:999px;flex-wrap:wrap;align-items:center;gap:.6rem;max-width:min(92vw,46rem);padding:.55rem .9rem;display:flex;position:fixed;bottom:1.1rem;left:50%;transform:translate(-50%)}.bulkbar .linklike{color:#fff;text-decoration-color:#ffffff73}.bulkbar select{padding:.35rem .5rem;font-size:.85rem}.bulkbar button:not(.linklike){background:var(--brand);padding:.4rem .85rem;font-size:.85rem}.load-more{background:var(--surface);border:1px dashed var(--line-strong);width:100%;color:var(--ink-soft);border-radius:var(--radius-s);margin-top:.4rem;padding:.55rem;font-size:.875rem;display:block}.load-more:hover:not(:disabled){background:var(--surface-2)}.empty-state{text-align:center;color:var(--muted-c);padding:3rem 1rem}.empty-state p:first-child{color:var(--ink-soft);margin-bottom:.5rem;font-weight:600}.skeleton-row{justify-content:space-between;gap:2rem;padding:.7rem .45rem;list-style:none;display:flex}.skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, #fff 45%, var(--surface-2) 65%);background-size:200% 100%;border-radius:6px;flex:auto;max-width:26rem;height:.95rem;animation:1.3s linear infinite shimmer;display:inline-block}.skeleton.s-amount{flex:0 0 6rem;max-width:6rem}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}@media (max-width:900px){.toolbar{position:static}.ledger-line{padding:.55rem .2rem}.ledger-line .tick{opacity:1}.ledger-expand{margin-left:0}.ledger-sub .acct,.ledger-sub .detail{max-width:9rem}}
