:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#11182b;background:#eef0f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{background:#eef0f4;min-width:320px;margin:0;overflow-x:hidden}button,input,select{font:inherit}[data-bits-select-trigger]{justify-content:space-between;align-items:center;display:flex}button{cursor:pointer;border:0;justify-content:center;align-items:center;display:inline-flex}input,select{background:var(--field,#fff);color:var(--ink,#11182b);outline:1px solid var(--line,#11182b14);border:0;border-radius:16px;width:100%;min-height:3rem;padding:.8rem 1rem}input[type=color]{padding:.2rem}label{color:var(--muted,#596175);gap:.45rem;font-size:.85rem;font-weight:800;display:grid}form{gap:.85rem;display:grid}.bits-select-trigger{background:var(--field,#fff);border-radius:var(--radius-sm,.5rem);color:var(--ink,#11182b);outline:1px solid var(--line,#11182b14);text-align:left;border:0;justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-height:3rem;padding:.8rem 1rem;font-size:1rem;font-weight:700;display:inline-flex}.bits-select-trigger[data-placeholder=true]{color:var(--muted,#11182b80)}.bits-select-chevron{color:var(--muted,#11182b99);font-size:.95rem}.bits-select-content{background:var(--field,#fff);border:1px solid var(--line,#11182b29);border-radius:var(--radius-md,.75rem);min-width:var(--bits-floating-anchor-width);z-index:60;max-height:16rem;overflow:auto}.bits-select-viewport{padding:.25rem}.bits-select-item{color:var(--ink,#11182b);cursor:pointer;align-items:center;min-height:2.35rem;padding:.45rem .65rem;font-size:.95rem;font-weight:700;display:flex}.bits-select-item[data-highlighted]{background:var(--panel-hover,#11182b14)}.bits-select-item[data-disabled]{color:var(--muted,#11182b73);cursor:not-allowed}.phone-app{background:#fbfbfd;width:100%;min-height:100dvh;margin:0;position:relative;overflow:hidden}.screen{scrollbar-width:none;min-height:100dvh;padding:0 1rem 7.4rem;overflow-y:auto}.screen::-webkit-scrollbar{display:none}.hero-header,.screen-header,.stats-header,.section-heading,.button-row{align-items:center;display:flex}.hero-header{justify-content:space-between;gap:1rem;margin-bottom:2rem}.home-screen .hero-header{padding:1rem 0 0}.home-screen{padding-left:1rem;padding-right:1rem}.home-screen .hero-header,.home-screen .section-heading{padding-inline:0}.home-screen .round-actions button{box-shadow:none;background:0 0;border:0;width:2.75rem;height:2.75rem}.hero-header p,.hero-header h1,.section-heading h2,.mini-card h3,.transaction-row h3,.period-card h3,.form-card h2,.quick-menu h3{margin:0}.hero-header p{margin-bottom:.15rem;font-size:2rem;line-height:1.05}.hero-header h1{font-size:2.35rem;line-height:1}.round-actions{gap:.75rem;display:flex}.round-actions button,.circle-button,.stats-header button{aspect-ratio:1;color:#11182b;background:#ffffffeb;border-radius:999px;width:3.45rem;box-shadow:0 12px 30px #11182b14}.balance-card{color:#10162e;text-align:left;background:#bda7ff;border-radius:18px;gap:.35rem;width:100%;min-height:9.4rem;margin-bottom:1.85rem;padding:1.65rem;display:grid;position:relative;box-shadow:0 18px 38px #54419529}.balance-card span,.activity-topline span{color:#11182b9e;font-size:1rem;font-weight:700}.balance-card strong{font-size:2.25rem;line-height:1}.balance-card small{color:#11182b9e;font-size:.85rem;font-weight:700}.section-heading{justify-content:space-between;margin:1.3rem 0 .8rem}.home-screen .section-heading,.home-screen .transaction-list{padding-inline:0}.home-screen .balance-card,.home-screen .home-stat-grid,.home-screen .transaction-list,.home-screen .settings-list{margin-inline:0}.home-screen .settings-list{margin-top:1.6rem}.section-heading h2{font-size:1.45rem}.section-heading button,.section-heading span{color:#6d7280;background:0 0;padding:0;font-size:.95rem;font-weight:700}.payment-cards,.quick-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.mini-card,.quick-menu article,.empty-card,.transaction-row,.form-card{background:#fff;border-radius:20px;box-shadow:0 18px 38px #11182b0f}.mini-card{min-height:12.2rem;padding:1.15rem;display:grid}.mini-card span,.avatar,.quick-menu svg{background:#f4f5f8;border-radius:999px;justify-content:center;align-items:center;width:3.2rem;height:3.2rem;font-weight:900;display:flex}.mini-card span{color:var(--swatch)}.mini-card.accent-card span{background:#fff}.mini-card h3{align-self:end;font-size:1.25rem;line-height:1.05}.mini-card p{margin:.4rem 0 0;font-size:1.2rem;font-weight:900}.mini-card small{color:inherit;opacity:.72}.transaction-list,.period-stack{gap:.8rem;display:grid}.transaction-row{grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;padding:1rem;display:grid}.avatar{color:var(--ink,#11182b)}.transaction-row h3{font-size:1.05rem}.transaction-row p,.period-card p,.muted,.quick-menu p{color:var(--muted,#697083);margin:.25rem 0 0;font-size:.9rem;font-weight:700}.transaction-row strong{color:var(--olive,#4b5745);font-size:1.05rem}.transaction-row strong.negative{color:#e43b68}.empty-card{color:var(--muted,#697083);margin:0;padding:1.2rem;font-weight:800}.screen-header{justify-content:space-between;margin-bottom:1.45rem;padding-top:.9rem}.screen-header h1,.stats-header h1{margin:0;font-size:1.55rem}.header-spacer{width:2.75rem;height:2.75rem;display:inline-block}.form-card{margin-bottom:1rem;padding:1.1rem}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.entry-type-tabs{background:color-mix(in srgb, var(--ink) 6%, transparent);border:1px solid var(--line);border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.25rem;display:grid;position:relative;overflow:hidden}.entry-type-tabs:before{background:var(--primary);content:"";pointer-events:none;transform:translateX(calc(var(--active-index,0) * 100%));z-index:0;border-radius:999px;width:calc(50% - .375rem);transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;top:.25rem;bottom:.25rem;left:.25rem}.entry-type-tab{color:#3d465b;cursor:pointer;z-index:1;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:0;min-height:2.65rem;padding:.3rem .8rem;font-size:.95rem;font-weight:700;transition:color .22s;display:inline-flex;position:relative}.entry-type-tab[data-state=active]{color:#fff;background:0 0}.date-picker-field{background:var(--field,#fff);border:1px solid var(--line,#11182b14);border-radius:16px;align-items:center;gap:.2rem;min-height:3rem;padding:.35rem .5rem .35rem .7rem;display:flex}.date-picker-input{outline:0;flex:1;align-items:center;gap:.12rem;min-height:2.2rem;font-weight:700;display:inline-flex}.date-picker-literal,.date-picker-segment{color:var(--ink);font-size:1rem}.date-picker-literal{opacity:.72}.date-picker-segment{border-radius:6px;padding:.08rem .18rem}.date-picker-segment[data-focused]{background:color-mix(in srgb, var(--primary) 26%, transparent);outline:0}.date-picker-trigger{box-shadow:none;color:var(--muted);background:0 0;border:0;width:2rem;height:2rem;padding:0}.date-picker-content{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-md);z-index:90;border-radius:12px;padding:.75rem}.date-picker-calendar{gap:.5rem;display:grid}.date-picker-calendar-header{justify-content:space-between;align-items:center;display:flex}.date-picker-heading{font-size:.98rem;font-weight:700}.date-picker-nav-button{color:var(--ink);background:0 0;border:0;border-radius:8px;width:1.8rem;height:1.8rem;font-size:1.2rem}.date-picker-grid{border-collapse:collapse;width:100%}.date-picker-grid-row{height:2rem}.date-picker-head-cell{color:var(--muted);text-align:center;padding-bottom:.25rem;font-size:.75rem;font-weight:700}.date-picker-day{border-radius:8px;justify-content:center;align-items:center;width:1.85rem;height:1.85rem;margin:0 auto;font-size:.92rem;display:inline-flex}.date-picker-day[data-selected]{background:var(--primary);color:#fff}.date-picker-day[data-today]:not([data-selected]){border:1px solid var(--line)}.date-picker-day[data-outside-month]{opacity:.45}.primary-button,.form-card button:not(.entry-type-tab):not(.bits-select-trigger):not(.date-picker-trigger),.button-row button{background:var(--primary);color:#fff;border-radius:16px;gap:.45rem;min-height:3rem;padding:.8rem 1rem;font-weight:900}.form-card .ghost,.button-row .ghost{color:#11182b;background:#eef0f5}.button-row{gap:.65rem}.theme-toggle-button{justify-content:center;gap:.45rem}.settings-screen .theme-toggle-button,.settings-screen .button-row{margin-top:.75rem}.settings-shortcuts .button-row{margin-bottom:.75rem}.connection{color:#14532d;background:#dcfce7;border-radius:999px;padding:.5rem}.connection.offline{color:#991b1b;background:#fee2e2}.settings-screen .connection{margin-top:.45rem}.quick-menu article{background:#eee8ff;gap:.8rem;min-height:12rem;padding:1.2rem;display:grid}.settings-screen .quick-menu{gap:.85rem;margin-bottom:.85rem}.quick-menu svg{color:var(--ink);background:#fff;padding:.85rem}.stats-screen{color:#171a15;background:#d4d8c8}.stats-header{justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding:.9rem 1rem 0}.stats-header button{box-shadow:none;color:#b7b7bb;background:0 0;width:3rem;height:3rem;font-size:2.8rem}.stats-header h1{color:#d7d7dc;text-align:center;text-wrap:balance;flex:1;min-width:0;font-size:clamp(1.2rem,4.6vw,1.5rem);font-weight:500;line-height:1.25}.stats-controls{grid-template-columns:.95fr 1.65fr;gap:.8rem;margin-bottom:1rem;padding-inline:1rem;display:grid}.stats-select-trigger,.stats-tabs{background:#2f2f2f;border-radius:999px;min-height:3rem}.stats-select-trigger{color:#e6e6e8;outline:0;width:100%;padding-inline:1.1rem}.stats-tabs{grid-template-columns:repeat(3,minmax(0,1fr));padding:.25rem;display:grid;position:relative;overflow:hidden}.stats-tabs:before{background:var(--primary);content:"";pointer-events:none;transform:translateX(calc(var(--active-index,0) * 100%));z-index:0;border-radius:999px;width:calc(33.3333% - .166667rem);transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;top:.25rem;bottom:.25rem;left:.25rem}.stats-tabs button{color:#7e7e82;z-index:1;background:0 0;border-radius:999px;min-width:0;font-size:1rem;font-weight:700;transition:color .22s;position:relative}.month-rail{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:1rem;padding-inline:1rem;display:grid}.month-rail span{color:#6f6f73;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:clamp(.95rem,3.8vw,1.2rem);font-weight:800;overflow:hidden}.month-rail strong{color:#f2f2f5;white-space:nowrap;padding-inline:.55rem;font-size:clamp(1.4rem,5.5vw,2.05rem);line-height:1}.stat-ring-card{place-items:center;min-height:auto;margin:0 auto 1rem;display:grid}.ring-wrap{aspect-ratio:1;place-items:center;width:min(78vw,18rem);height:min(78vw,18rem);display:grid;position:relative}.ring-svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.ring-track,.ring-segment{fill:none;stroke-width:22px}.ring-segment{stroke-linecap:butt}.ring-wrap>div{text-align:center;gap:.2rem;width:100%;max-width:82%;display:grid;position:absolute}.ring-wrap strong{color:#eeeeef;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding-inline:.55rem;font-size:clamp(1.35rem,6.8vw,2.2rem);font-weight:600;line-height:1.05;overflow:hidden}.ring-wrap span{color:#c8c8cc;padding-inline:.4rem;font-size:clamp(.85rem,3.2vw,1rem);font-weight:600;line-height:1.15}.stat-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem;margin:0 0 1rem;padding-inline:1rem;display:grid}.stat-legend div{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;display:grid}.stat-legend span{background:var(--swatch);border-radius:999px;width:.8rem;height:.8rem}.stat-legend p,.stat-legend strong{color:#a9a9ad;min-width:0;margin:0;font-size:clamp(.84rem,2.8vw,1rem);font-weight:800}.stat-legend p{overflow-wrap:anywhere;white-space:normal;line-height:1.2}.stat-legend strong{font-variant-numeric:tabular-nums;text-align:right;justify-self:end}.history-pill{color:#bdbdc2;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:1px solid #68686c;min-height:2.45rem;margin:0 auto;padding:.2rem 1.1rem;font-size:.95rem;font-weight:900;display:flex}.review-top-transactions{margin:0 0 1rem;padding-inline:1rem}@media (width<=560px){.stats-controls{grid-template-columns:1fr}.ring-wrap{width:min(80vw,17rem);height:min(80vw,17rem)}.ring-wrap strong{font-size:clamp(1.25rem,7vw,2rem)}}.period-card{background:#ffffff12;border-radius:18px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.category-strip{flex-wrap:wrap;gap:.5rem;display:flex}.category-strip span{color:#d8d8dc;background:#ffffff14;border-radius:999px;padding:.45rem .65rem;font-size:.8rem;font-weight:800}.category-strip span:before{background:var(--swatch);content:"";border-radius:999px;width:.55rem;height:.55rem;margin-right:.35rem;display:inline-block}.bottom-nav{z-index:10;background:#fffffff2;border-radius:28px 28px 0 0;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;width:100%;max-width:none;height:5.5rem;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -14px 30px #11182b14}:is(.stats-screen+.bottom-nav,.phone-app:has(.stats-screen) .bottom-nav){background:color-mix(in srgb, var(--paper) 96%, transparent);box-shadow:none}.bottom-nav button{color:var(--ink);letter-spacing:0;background:0 0;place-items:center;gap:.22rem;width:100%;max-width:100%;height:3.5rem;margin:0 auto;font-size:.6rem;font-weight:900;display:grid;position:relative}.bottom-nav button svg{width:1.65rem;height:1.65rem}.bottom-nav button span{text-overflow:clip;white-space:normal;max-width:4.8rem;min-height:1.25rem;line-height:1.05;display:block;overflow:hidden}.phone-app:has(.stats-screen) .bottom-nav button.active{color:var(--primary)}.bottom-nav .fab{box-shadow:none;color:inherit;background:0 0;border:0;width:100%;height:3.5rem;margin-top:0}.bottom-nav .fab.active{color:var(--primary);background:0 0}.bottom-nav .fab span{color:inherit;font-size:inherit;max-width:4.8rem;position:static;top:auto;left:auto;transform:none}.bottom-nav .fab.active span{color:inherit}.phone-app:has(.stats-screen) .bottom-nav .fab{border-color:#0000}@media (width>=768px){body{padding:1.5rem 0}.phone-app{border-radius:36px;min-height:calc(100dvh - 3rem);box-shadow:0 35px 90px #11182b38}.screen{min-height:calc(100dvh - 3rem)}.bottom-nav{border-radius:28px;width:min(100%,430px);bottom:1.5rem}}@media (width<=380px){.screen{padding-inline:0}.hero-header h1{font-size:2rem}.hero-header p,.balance-card strong{font-size:1.75rem}.ring-wrap{width:18rem;height:18rem}.ring-wrap strong{font-size:1.9rem}.field-grid,.payment-cards,.quick-menu,.stat-legend{grid-template-columns:1fr}}:root{--ink:#18181b;--paper:#fafafa;--sage:#f4f4f5;--olive:#64748b;--olive-soft:#94a3b8;--sun:#f4f4f5;--coral:#2563eb;--primary:#2563eb;--primary-pressed:#1d4ed8;--panel:#fff;--field:#fff;--line:#18181b29;--muted:#18181b9e;--panel-hover:#18181b14;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--shadow-sm:0 1px 2px #18181b14;--shadow-md:0 10px 24px #18181b14}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f4f4f5;--paper:#09090b;--sage:#18181b;--olive:#52525b;--olive-soft:#3f3f46;--sun:#18181b;--coral:#60a5fa;--primary:#60a5fa;--primary-pressed:#3b82f6;--panel:#18181b;--field:#18181b;--line:#f4f4f52e;--muted:#f4f4f5b8;--panel-hover:#f4f4f524}body{background:var(--paper);color:var(--ink)}.desktop-app{display:none}.phone-app{background:var(--paper);box-shadow:var(--shadow-md)}.screen{background:var(--paper)}.round-actions button,.circle-button,.mini-card,.transaction-row,.form-card,.quick-menu article,.empty-card{box-shadow:var(--shadow-sm)}.round-actions button,.circle-button{background:var(--field);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink)}.plain-icon-button{box-shadow:none;color:var(--ink);background:0 0;border:0;place-items:center;width:2.75rem;height:2.75rem;display:inline-flex}.hero-header p{color:var(--muted);font-weight:300}.hero-header h1{color:var(--ink);font-weight:900}.balance-card{background:var(--sun);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--ink);min-height:12rem;padding:1.5rem 1.2rem}.balance-card span{color:var(--muted);text-transform:uppercase;font-size:.9rem;font-weight:900}.balance-card strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:3.1rem;font-weight:800}.balance-card small{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.personal-balance-card{background:var(--sage);margin-top:.85rem;margin-bottom:.85rem}.home-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:.85rem 0 1.35rem;display:grid}.home-stat-grid article{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);min-height:6.2rem;padding:1rem}.home-stat-grid article:nth-child(2),.home-stat-grid article:nth-child(3){background:var(--panel)}.home-stat-grid span,.home-stat-grid strong{display:block}.home-stat-grid span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:900}.home-stat-grid strong{overflow-wrap:anywhere;margin-top:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.45rem}.mini-card{background:var(--panel);border-radius:var(--radius-md);color:var(--ink);min-height:11rem}.mini-card.accent-card{background:var(--primary);color:#fff}.mini-card span,.avatar,.quick-menu svg{background:0 0;border:1px solid}.transaction-row,.form-card,.transaction-table-card,.settings-list,.quick-menu article{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md)}.form-card input,.form-card select,.form-card .bits-select-trigger,.transaction-table-card input,.transaction-table-card select,.transaction-table-card .bits-select-trigger,.settings-list input,.settings-list select,.settings-list .bits-select-trigger{background:var(--field);border:1px solid var(--line);color:var(--ink);outline:0}.form-card button:not(.entry-type-tab):not(.bits-select-trigger):not(.date-picker-trigger):not(.primary-button),.button-row button{background:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-sm);color:#fff}.primary-button{background:var(--primary);border:1px solid var(--primary);color:#fff;border-radius:999px;gap:.45rem;min-height:3rem;padding:.8rem 1rem;font-weight:900}.form-card .primary-button{border-radius:999px}.form-card button:not(.entry-type-tab):not(.bits-select-trigger):not(.date-picker-trigger):hover,.button-row button:hover,.primary-button:hover{background:var(--primary-pressed)}.form-card .ghost,.button-row .ghost{background:var(--field);border-color:var(--line);color:var(--ink)}.bottom-nav{background:color-mix(in srgb, var(--paper) 96%, transparent);border-top:1px solid var(--line);border-radius:1rem 1rem 0 0;box-shadow:0 -6px 20px #18181b14}.bottom-nav .fab{border-color:#0000}.bottom-nav button.active{color:var(--coral)}.stats-screen{background:var(--paper);color:var(--ink)}.stats-header button{background:var(--field);border:1px solid var(--line);color:var(--ink)}.stats-header h1,.month-rail strong{color:var(--ink)}.stats-header h1{color:var(--muted);font-size:clamp(1.2rem,4.6vw,1.5rem);font-weight:500;line-height:1.25}.stats-select-trigger,.stats-tabs{background:var(--field);border:1px solid var(--line);color:var(--ink);border-radius:999px}.stats-tabs button{color:var(--muted)}.stats-tabs button[data-state=active]{color:#fff;background:0 0}.ring-track{stroke:var(--line)}.ring-wrap strong,.ring-wrap span,.stat-legend p,.stat-legend strong,.history-pill{color:var(--ink)}.history-pill{border-color:var(--line);margin-bottom:.5rem}.transaction-table-card,.settings-list{margin-bottom:1rem;padding:1rem}.transaction-table-head,.transaction-table article,.transaction-table button{grid-template-columns:minmax(3.8rem,.85fr) minmax(0,1.45fr) minmax(0,.95fr) minmax(6.8rem,1fr);align-items:center;gap:.75rem;display:grid}.transaction-table-head{border-bottom:1px solid var(--line);color:var(--muted);text-transform:uppercase;padding-bottom:.65rem;font-size:.72rem;font-weight:900}.transaction-table article{border-bottom:1px solid var(--line);padding:.85rem 0}.transaction-table article:last-child{border-bottom:0}.transaction-table button{border:0;border-bottom:1px solid var(--line);color:inherit;text-align:left;background:0 0;width:100%;padding:.85rem 0}.transaction-table button:last-child{border-bottom:0}.transaction-table button:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.transaction-table strong,.transaction-table b,.settings-list strong,.settings-list b{color:var(--ink);font-size:.9rem}.transaction-table small,.settings-list small{color:var(--muted);margin-top:.15rem;font-size:.76rem;font-weight:800;display:block}.transaction-table span,.transaction-table time{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;font-weight:800;overflow:hidden}.transaction-table b{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.transaction-table-head span:last-child,.transaction-table button b,.transaction-table article b{text-align:right;justify-self:end}.transaction-table b.negative{color:#9c332b}.transaction-detail-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);margin-bottom:1rem;padding:.4rem 1rem;display:grid}.transaction-detail-row{border-bottom:1px solid var(--line);grid-template-columns:1fr;align-items:start;gap:.4rem;padding:.8rem 0;display:grid}.transaction-detail-row:last-child{border-bottom:0}.transaction-detail-row>span{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:800}.transaction-detail-row>strong{color:var(--ink);font-size:1rem;font-weight:800}.transaction-detail-row>strong.negative{color:#9c332b}.settings-list h2{margin:0 0 .75rem;font-size:1rem}.settings-list article{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.75rem 0;display:grid}.settings-list article>span{background:var(--swatch);border:1px solid color-mix(in srgb, var(--swatch) 58%, var(--line));box-shadow:0 0 0 2px var(--panel);border-radius:999px;width:.9rem;height:.9rem}.category-progress-list article{grid-template-columns:auto minmax(0,1fr);align-items:start}.category-progress-content{gap:.45rem;min-width:0;display:grid}.category-progress-head{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.5rem;display:grid}.category-progress-head b{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.84rem;font-weight:800}.category-progress-meter{background:color-mix(in srgb, var(--line) 72%, transparent);border-radius:999px;height:.44rem;position:relative;overflow:hidden}.category-progress-fill{background:var(--swatch);border-radius:inherit;transform-origin:0;width:100%;height:100%;transition:transform .28s;position:absolute;top:0;left:0}@media (width>=768px){body{background:var(--paper);padding:0}.phone-app{display:none}.desktop-app{background:var(--paper);color:var(--ink);grid-template-columns:13rem minmax(0,1fr);height:100dvh;min-height:100dvh;display:grid;overflow:hidden}.desktop-sidebar{background:var(--panel);border-right:1px solid var(--line);grid-template-rows:auto 1fr auto;padding:1.4rem;display:grid}.brand-mark{align-items:center;gap:.75rem;margin-bottom:2rem;font-weight:900;display:flex}.brand-mark span{background:var(--ink);color:var(--paper);border-radius:999px;justify-content:center;align-items:center;width:2.8rem;height:2.8rem;display:flex}.desktop-sidebar nav{align-content:start;gap:.2rem;display:grid}.desktop-sidebar a,.desktop-sidebar button,.sidebar-footer button,.desktop-filter-row button,.desktop-actions button,.desktop-card-head button,.add-desktop{color:var(--ink);background:0 0;border:0;border-radius:10px;justify-content:flex-start;align-items:center;gap:.6rem;width:100%;min-height:2.8rem;padding:.7rem .8rem;font-weight:700;text-decoration:none;display:inline-flex}.desktop-sidebar a.active,.desktop-sidebar a:hover,.sidebar-footer button,.add-desktop{background:var(--primary);border-color:var(--primary);color:var(--paper)}.desktop-sidebar nav a:not(.active):hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}.desktop-sidebar nav svg{color:inherit}.sidebar-footer{gap:.75rem;display:grid}.sidebar-footer span{color:#2e6b37;font-weight:900}.sidebar-footer span.offline{color:#9c332b}.desktop-main{align-content:start;gap:1rem;padding:1rem;display:grid;overflow:auto}.desktop-topbar,.desktop-card-head,.desktop-filter-row,.desktop-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.desktop-topbar,.desktop-filter-row{flex-wrap:wrap}.desktop-topbar h1{margin:0;font-size:2rem}.desktop-topbar p,.desktop-card-head p{color:var(--muted);margin:.2rem 0 0;font-weight:800}.desktop-actions,.desktop-filter-row{gap:.75rem}.desktop-action-badge{background:color-mix(in srgb, var(--ink) 7%, transparent);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);white-space:nowrap;align-items:center;gap:.55rem;min-height:2.8rem;padding:.7rem .9rem;font-weight:700;display:inline-flex}.desktop-grain-trigger{min-width:9.25rem}.desktop-search-control{align-items:center;gap:.45rem;display:inline-flex}.desktop-search-control.open{border:1px solid var(--line);padding-left:.55rem}.desktop-search-control input{color:var(--ink);background:0 0;border:0;outline:0;min-width:22rem;font-size:.9rem;font-weight:700}.desktop-actions button,.desktop-filter-row button,.desktop-card-head button{border-color:var(--line)}.desktop-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.desktop-kpis article,.desktop-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);padding:1rem}.desktop-kpis article{min-width:0}.desktop-kpis article:first-child,.desktop-kpis article:nth-child(2),.desktop-kpis article:nth-child(3),.desktop-kpis article:nth-child(4){background:var(--panel)}.desktop-kpis span{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:900}.desktop-kpis strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:.65rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.55rem,1.9vw,2.15rem);line-height:1.05;display:block;overflow:hidden}.desktop-kpis small{color:var(--muted);font-weight:800}.desktop-grid,.desktop-page-grid{grid-template-columns:1fr;gap:1rem;display:grid}.desktop-page-card{min-height:0}.desktop-theme-toggle{border-top:1px solid var(--line);gap:.65rem;margin-top:1rem;padding-top:1rem;display:grid}.desktop-theme-toggle h3{margin:0;font-size:1rem}.desktop-theme-toggle button{background:var(--field);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);justify-content:center;min-height:2.75rem;font-weight:800}.desktop-form-grid{border-top:1px solid var(--line);gap:.9rem;margin-top:1rem;padding-top:1rem;display:grid}.desktop-form-grid .bits-select-trigger,.desktop-inline-wizard .bits-select-trigger{width:100%}.desktop-card .button-row{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:.75rem;margin-top:.75rem;display:grid}.desktop-form-grid button:not(.entry-type-tab):not(.bits-select-trigger):not(.date-picker-trigger),.desktop-card .button-row button{background:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-sm);color:var(--paper);justify-content:center;min-height:2.9rem;padding:.7rem 1rem;font-weight:900}.desktop-form-grid .ghost,.desktop-card .button-row .ghost{border-color:var(--line);color:var(--ink);background:0 0}.desktop-inline-wizard{margin-top:.6rem}.desktop-inline-wizard-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.desktop-inline-wizard-actions .ghost{background:var(--field);border:1px solid var(--line);color:var(--ink)}.desktop-inline-wizard-actions .ghost:hover{background:color-mix(in srgb, var(--panel-hover) 55%, transparent)}.wide-card{min-height:14rem}.desktop-card h2{margin:0;font-size:1.1rem}.desktop-card select,.desktop-card .bits-select-trigger{border:1px solid var(--line);border-radius:var(--radius-sm);background:0 0;width:auto;min-height:2.5rem}.line-chart{border-bottom:1px solid var(--line);grid-template-columns:repeat(8,1fr);align-items:end;gap:.8rem;height:8rem;margin-top:1rem;display:grid}.line-chart span{background:var(--olive);height:var(--height);min-height:1rem}.line-chart span.latest{background:var(--coral)}.line-chart-axis{grid-template-columns:repeat(8,1fr);gap:.8rem;margin-top:.45rem;display:grid}.line-chart-axis span{color:var(--muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:800;overflow:hidden}.line-chart-legend{gap:1rem;margin-top:.75rem;display:flex}.line-chart-legend span{color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;font-weight:900;display:inline-flex}.line-chart-legend span:before{background:var(--olive);content:"";width:.62rem;height:.62rem;display:inline-block}.line-chart-legend span.current:before{background:var(--coral)}.desktop-stat-card{grid-row:auto}.desktop-ring{place-items:center;width:min(22rem,100%);margin:1.1rem auto;display:grid;position:relative}.desktop-ring svg{width:16rem;height:16rem}.desktop-ring>div{text-align:center;position:absolute}.desktop-ring span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900;display:block}.desktop-ring strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:2rem}.desktop-legend{flex-wrap:wrap;gap:.55rem;display:flex}.desktop-legend span{color:var(--muted);font-size:.8rem;font-weight:900}.desktop-legend span:before{background:var(--swatch);content:"";width:.65rem;height:.65rem;margin-right:.35rem;display:inline-block}.bar-chart{grid-template-columns:repeat(7,minmax(0,1fr));gap:.8rem;height:15rem;margin-top:1.4rem;display:grid}.bar-chart div{grid-template-rows:1fr auto auto;align-items:end;gap:.35rem;height:100%;display:grid}.bar-stack{background:var(--panel-hover);align-self:end;width:100%;height:100%;display:block;position:relative}.bar-stack i{width:100%;display:block;position:absolute}.bar-stack .bar-target{background:var(--line);height:100%;bottom:0}.bar-stack .bar-spent{background:var(--olive);height:var(--bar);bottom:0}.bar-chart span,.bar-chart small{text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:900;overflow:hidden}.bar-chart small{color:var(--muted);font-size:.68rem;font-weight:800}.bar-chart-legend{gap:1rem;margin-top:.65rem;display:flex}.bar-chart-legend span{color:var(--muted);align-items:center;gap:.35rem;font-size:.78rem;font-weight:900;display:inline-flex}.bar-chart-legend span:before{content:"";width:.62rem;height:.62rem;display:inline-block}.bar-chart-legend span.spent:before{background:var(--olive)}.bar-chart-legend span.target:before{background:var(--line)}.desktop-account-list,.desktop-table{gap:0;margin-top:1rem;display:grid}.desktop-account-list article,.desktop-account-list .desktop-account-row,.desktop-table article,.desktop-table-head{border-top:1px solid var(--line);align-items:center;gap:.8rem;padding:.8rem 0;display:grid}.desktop-account-list article{grid-template-columns:auto 1fr auto}.desktop-account-list .desktop-account-row{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border-bottom:0;border-left:0;border-right:0;border-radius:0;grid-template-columns:auto 1fr auto;width:100%}.desktop-account-list .desktop-account-row:hover{background:color-mix(in srgb, var(--panel-hover) 52%, transparent)}.desktop-account-list .desktop-account-row[aria-expanded=true]{background:color-mix(in srgb, var(--panel-hover) 72%, transparent)}.desktop-row-action{color:var(--muted);text-transform:uppercase;font-family:inherit;font-size:.82rem;font-weight:800}.desktop-row-editor{border-top:0;margin-top:.2rem;padding-top:.65rem;overflow:hidden}.entity-lead{align-items:center;gap:.55rem;display:flex}.entity-icon{place-items:center;width:1.15rem;height:1.15rem;font-size:1rem;display:inline-grid}.entity-lead>span:last-child{background:var(--swatch);border:1px solid color-mix(in srgb, var(--swatch) 58%, var(--line));box-shadow:0 0 0 2px var(--panel);border-radius:999px;width:.8rem;height:.8rem}.desktop-table article,.desktop-table-head{grid-template-columns:7rem 1.2fr 1fr 1fr auto;min-width:46rem}.desktop-transactions{grid-template-rows:auto 1fr;min-height:18rem;display:grid;overflow-x:auto}.desktop-transactions .desktop-table{align-content:start}.desktop-table-head{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.desktop-table b,.desktop-account-list b{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.desktop-table b.negative{color:#9c332b}}@media (width>=1120px){.desktop-app{grid-template-columns:16rem minmax(0,1fr)}.desktop-main{padding:1.4rem}.desktop-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.desktop-grid{grid-template-columns:minmax(0,2fr) minmax(18rem,.9fr)}.desktop-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-stat-card{grid-row:span 2}.desktop-ring svg{width:18rem;height:18rem}}.merchant-field{position:relative}.merchant-suggestions{background:var(--field);border:1px solid var(--line);z-index:30;max-height:14rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow-y:auto}.merchant-suggestions button{all:unset;border-bottom:1px solid var(--line);box-sizing:border-box;color:var(--ink);cursor:pointer;width:100%;padding:.75rem .85rem;font-size:.95rem;font-weight:700;display:block}.merchant-suggestions button:last-child{border-bottom:0}.merchant-suggestions button:hover{background:color-mix(in srgb, var(--primary) 18%, transparent)}.feedback-modal-backdrop{background:color-mix(in srgb, var(--ink) 42%, transparent);z-index:80;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.feedback-modal{background:var(--panel);border:1px solid var(--line);text-align:center;width:100%;max-width:22rem;padding:1rem;animation:.22s ease-out feedback-pop}.feedback-modal h3{margin:.2rem 0 .5rem;font-size:1.3rem}.feedback-modal p{color:var(--muted);margin:0 0 1rem;font-size:.95rem;font-weight:700}.feedback-icon{border:1px solid;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.2rem;font-weight:900;display:inline-flex}.feedback-modal.success .feedback-icon{color:#3f6941}.feedback-modal.error .feedback-icon{color:#9c332b}.feedback-modal button{background:var(--primary);border:1px solid var(--primary);color:#fff;width:100%;min-height:2.6rem;font-size:.95rem;font-weight:900}.auth-overlay{background:color-mix(in srgb, var(--ink) 72%, transparent);z-index:100;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.auth-card{background:var(--panel);border:1px solid var(--line);width:100%;max-width:24rem;padding:1rem}.auth-heading{cursor:pointer;text-align:left;background:0 0;border:0;outline:none;margin:0 0 .4rem;padding:0;font-size:1.5rem;font-weight:900}.auth-card p{color:var(--muted);margin:0 0 .9rem;font-size:.9rem;font-weight:700}.auth-card form{gap:.65rem;display:grid}.auth-card input{background:var(--field);border:1px solid var(--line);color:var(--ink);min-height:2.8rem;padding:.55rem .75rem}.auth-card button{background:var(--primary);border:1px solid var(--primary);color:#fff;min-height:2.8rem;font-weight:900}.auth-card .ghost-auth{background:var(--field);border:1px solid var(--line);color:var(--ink);width:100%;margin-top:.65rem;font-weight:800}.auth-error{color:#9c332b;font-size:.84rem;font-weight:800}.auth-unlock{color:var(--muted);text-align:center;margin-top:.55rem;font-size:.8rem;font-weight:700;display:block}.generated-api-key{gap:.55rem;margin-top:.65rem;display:grid}.generated-api-key p{color:var(--muted);margin:0;font-size:.8rem;font-weight:700}.generated-api-key input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.api-key-form{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.8rem}.search-screen-controls{grid-template-columns:1fr;gap:.7rem;margin-bottom:.75rem;display:grid}.search-screen-results{border-top:1px solid var(--line);gap:0;padding-top:.65rem;display:grid}.search-screen-results button{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;width:100%;padding:.75rem 0;display:grid}.search-screen-results button:last-child{border-bottom:0}.search-screen-results button:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.search-screen-results strong{color:var(--ink);font-size:.98rem;display:block}.search-screen-results small{color:var(--muted);margin-top:.2rem;font-size:.78rem;font-weight:700;display:block}.search-screen-results b{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.search-screen-results b.negative{color:#9c332b}@keyframes feedback-pop{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}:root[data-theme=dark] .feedback-modal{background:var(--panel);border-color:var(--line);color:var(--ink)}
