:root{--bg:#fff;--surface:#fff;--surface-2:#f6f7f9;--text:#0f172a;--muted:#64748b;--border:#e7e9ee;--accent:#4f46e5;--accent-fg:#fff;--accent-soft:#eef0ff;--deposit:#047857;--withdrawal:#dc2626;--danger:#dc2626;--warn-bg:#fff6e0;--warn-fg:#8a5300;--chart-line:#4f46e5;--accent-border:#c9ccf8;--projected:#c7cbfb;--success-bg:#e6f6ef;--danger-bg:#fdecec;--danger-border:#f5c2c2;--danger-fg:#fff;--bar-bg:#ffffffeb;--tooltip-shadow:0 8px 24px #0f172a1a;--dialog-shadow:0 24px 64px #0f172a40;--backdrop:#0f172a59;--radius:14px;--shadow:0 1px 2px #0f172a0a, 0 2px 8px #0f172a0a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01";font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--bg:#0b0d12;--surface:#14171f;--surface-2:#1b1f29;--text:#e8eaf0;--muted:#949cb0;--border:#262b37;--accent:#8b87ff;--accent-fg:#0b0d12;--accent-soft:#23234a;--deposit:#34d399;--withdrawal:#f87171;--danger:#f87171;--warn-bg:#3a2c0c;--warn-fg:#f5c46b;--chart-line:#8b87ff;--accent-border:#4a47a8;--projected:#3b3a78;--success-bg:#0f3326;--danger-bg:#3a1618;--danger-border:#6b2a2d;--danger-fg:#0b0d12;--bar-bg:#0b0d12e6;--tooltip-shadow:0 8px 24px #00000080;--dialog-shadow:0 24px 64px #0009;--backdrop:#0009;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2,h3{letter-spacing:-.015em;margin:0;line-height:1.25}h1{font-size:1.6rem;font-weight:700}h2{font-size:1.05rem;font-weight:600}h3{font-size:.95rem;font-weight:600}a{color:inherit}input,select,button{font:inherit;color:inherit}input,select{border:1px solid var(--border);background:var(--surface);border-radius:10px;width:100%;min-height:42px;padding:.55rem .75rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{grid-template-columns:236px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:1.5rem;height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;align-items:center;gap:.6rem;padding:0 .5rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:var(--accent);width:30px;height:30px;color:var(--accent-fg);border-radius:9px;place-items:center;display:grid}.side-nav{flex-direction:column;gap:.15rem;display:flex}.side-nav a,.side-nav .side-link{color:var(--muted);border-radius:10px;align-items:center;gap:.75rem;padding:.6rem .75rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.side-nav .side-link{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:500}.side-nav .side-link[aria-pressed=true]{color:var(--accent)}.side-nav a:hover,.side-nav .side-link:hover{background:var(--surface-2);color:var(--text)}.side-nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.mobile-bar,.tab-bar{display:none}.container{width:100%;min-width:0;max-width:1080px;margin:0 auto;padding:2rem clamp(16px,4vw,40px) 4rem}@media (width<=860px){.shell{display:block}.sidebar{display:none}.mobile-bar{z-index:10;background:var(--bar-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);align-items:center;padding:.75rem 16px;display:flex;position:sticky;top:0}.mobile-bar .brand{padding:0}.tab-bar{z-index:10;padding:.35rem .25rem calc(.35rem + env(safe-area-inset-bottom));background:var(--bar-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--border);grid-template-columns:repeat(6,1fr);display:grid;position:fixed;inset:auto 0 0}.tab-bar a{color:var(--muted);flex-direction:column;align-items:center;gap:.15rem;padding:.35rem 0;font-size:.7rem;font-weight:500;text-decoration:none;display:flex}.tab-bar a.active{color:var(--accent);font-weight:600}.container{padding:1.25rem 16px calc(5.5rem + env(safe-area-inset-bottom))}}.page-head{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.page-head>input,form.page-head input{max-width:280px}.section{margin-top:2rem}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.section-head:has(.form-card){align-items:flex-start}.section-head .form-card{flex-basis:100%}.stack{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.stack>*{width:100%}.stack>.btn{width:auto}.intro{max-width:62ch;margin:0 0 1.25rem}.muted,.row-meta{color:var(--muted)}.row-meta{margin:0;font-size:.85rem}.empty{color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius);text-align:center;background:var(--surface-2);margin:0;padding:1.5rem}.error{color:var(--danger);margin:.5rem 0;font-size:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.grid-wide{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.hero{padding:.25rem 0 .5rem}.hero p{margin:0}.hero-label{color:var(--muted);font-size:.9rem;font-weight:500}.hero-amount{letter-spacing:-.03em;font-size:clamp(2.2rem,7vw,3rem);font-weight:700;line-height:1.1;margin:.15rem 0 .35rem!important}.hero-sub{color:var(--muted);flex-wrap:wrap;gap:.35rem 1.25rem;font-size:.9rem;display:flex}.hero-sub strong{color:var(--text);font-weight:600}.account-card{flex-direction:column;gap:.35rem;padding:1rem 1.1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.account-card:hover{border-color:var(--accent-border);transform:translateY(-1px)}.account-name{color:var(--muted);align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;display:flex}.account-card .money{letter-spacing:-.01em;font-size:1.3rem;font-weight:600}.swatch{border-radius:3px;flex:none;width:10px;height:10px}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.money-deposit{color:var(--deposit);font-weight:600}.money-withdrawal{color:var(--withdrawal);font-weight:600}.rows{margin:0;padding:0;list-style:none}.row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.85rem 1.1rem;display:flex}.row:first-child{border-top:0}.row-main{flex-direction:column;flex:180px;min-width:0;display:flex}.row-title{overflow-wrap:anywhere;align-items:center;gap:.5rem;font-weight:500;display:flex}.row-title a{text-decoration:none}.row-title a:hover{text-decoration:underline}.row-actions{gap:.25rem;display:flex}.badge{background:var(--surface-2);color:var(--muted);text-transform:capitalize;border-radius:999px;padding:.12rem .5rem;font-size:.72rem;font-weight:600}.badge-due{background:var(--warn-bg);color:var(--warn-fg)}.badge-confirmed{background:var(--success-bg);color:var(--deposit)}.goal{flex-direction:column;gap:.75rem;padding:1.1rem;display:flex}.goal-head{justify-content:space-between;gap:1rem;display:flex}.goal-head h3 a{text-decoration:none}.goal-pct{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.4rem;font-weight:700}.goal-met{color:var(--deposit)}.progress{background:var(--surface-2);border-radius:999px;height:8px;position:relative;overflow:hidden}.progress-projected,.progress-saved{border-radius:999px;position:absolute;inset:0 auto 0 0}.progress-projected{background:var(--projected)}.progress-saved{background:var(--accent)}.goal-stats{grid-template-columns:repeat(4,1fr);gap:.5rem;margin:0;display:grid}.goal-stats dt{color:var(--muted);font-size:.75rem}.goal-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:.9rem;font-weight:600}@media (width<=480px){.goal-stats{grid-template-columns:repeat(2,1fr)}}.goal-actions{gap:.25rem;margin-top:-.25rem;display:flex}.btn{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;min-height:40px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,filter .15s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-fg);box-shadow:0 1px 2px #4f46e540}.btn-primary:not(:disabled):hover{filter:brightness(1.08)}.btn-ghost{color:var(--muted)}.btn-ghost:not(:disabled):hover{color:var(--text);background:var(--surface-2)}.btn-sm{min-height:32px;padding:.3rem .65rem;font-size:.82rem}.form-card{width:100%;padding:1.1rem}.form-card-head{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.form{flex-direction:column;gap:.85rem;display:flex}.form-grid,.filters{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:.75rem;display:grid}.field{flex-direction:column;gap:.3rem;display:flex}.field>span{color:var(--muted);font-size:.8rem;font-weight:500}.form-actions{justify-content:flex-end;display:flex}.check{align-self:end;align-items:center;gap:.55rem;min-height:42px;font-weight:500;display:flex}.check input{width:18px;height:18px;min-height:0;accent-color:var(--accent)}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:11px;align-self:flex-start;padding:3px;display:inline-flex}.segmented input{opacity:0;width:1px;height:1px;position:absolute}.segmented span{cursor:pointer;color:var(--muted);border-radius:8px;padding:.35rem .9rem;font-size:.875rem;font-weight:600;display:block}.segmented input:checked+span{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.segmented input:focus-visible+span{outline:2px solid var(--accent)}.tabs{border-bottom:1px solid var(--border);gap:.25rem;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.55rem .8rem;font-weight:600}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.date-filter{border:1px solid var(--border);border-radius:var(--radius);min-width:0;margin:0;padding:.75rem 1rem 1rem}.date-filter legend{color:var(--muted);padding:0 .35rem;font-size:.8rem;font-weight:600}.date-presets{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.chip{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--muted);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-size:.85rem;font-weight:600}.chip:hover{color:var(--text)}.chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.overview-grid{grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:1.5rem;display:grid}.overview-grid>.chart{margin:0}.nw{padding:1.1rem 1.1rem 1rem;container-type:inline-size}.nw-body{grid-template-columns:minmax(0,1fr);justify-items:center;gap:1.25rem;margin-top:.75rem;display:grid}@container (width>=560px){.nw-body{grid-template-columns:180px minmax(0,520px);place-items:center start;gap:2.5rem;padding-left:.5rem}}.nw-donut{width:180px;height:180px;position:relative}.nw-donut svg{display:block;overflow:visible}.nw-slice{stroke:var(--surface);stroke-width:2px;cursor:pointer;transition:opacity .15s}.nw-donut svg:hover .nw-slice:not(.active),.nw-donut.has-active .nw-slice:not(.active){opacity:.35}.nw-center{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:0 32px;display:flex;position:absolute;inset:0}.nw-center strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}.nw-center span{color:var(--muted);font-size:.75rem}.nw-legend{gap:.1rem;width:100%;margin:0;padding:0;list-style:none;display:grid}.nw-legend li{cursor:default;border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:.6rem;padding:.35rem .5rem;font-size:.875rem;display:grid}.nw-legend li.active{background:var(--surface-2)}.nw-legend .nw-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.nw-legend .nw-name a{text-decoration:none}.nw-legend .nw-name a:hover{text-decoration:underline}.nw-legend .nw-kind{color:var(--muted);font-size:.72rem;display:block}.nw-legend .nw-pct{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;min-width:3.2em;font-size:.8rem}.nw-legend .money{font-variant-numeric:tabular-nums;font-weight:600}.asset-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:11px;flex:none;place-items:center;display:grid}.asset-icon svg{width:20px;height:20px}.asset-value{text-align:right}.asset-value .money{font-weight:600;display:block}.asset-value small{color:var(--muted);font-size:.75rem}.excluded .money{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}.chart{margin:1.25rem 0 0;padding:1.1rem 1.1rem .5rem}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.25rem;display:flex}.chart-legend{color:var(--muted);gap:1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.chart-legend li{align-items:center;gap:.4rem;display:flex}.chart-body{position:relative}.chart-body svg[role=img]{touch-action:pan-y;display:block}.chart-body svg[role=img]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.chart-grid{stroke:var(--border);stroke-width:1px}.chart-axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.chart-line{fill:none;stroke:var(--chart-line);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart-line-projected{stroke-dasharray:6 5;stroke-linecap:butt}.chart-area{fill:var(--chart-line);opacity:.08}.chart-dot{fill:var(--chart-line);stroke:var(--surface);stroke-width:2px}.chart-today{stroke:var(--muted);stroke-width:1px;opacity:.5}.chart-crosshair{stroke:var(--muted);stroke-width:1px}.chart-tooltip{background:var(--surface);border:1px solid var(--border);min-width:170px;max-width:260px;box-shadow:var(--tooltip-shadow);pointer-events:none;z-index:1;border-radius:10px;padding:.55rem .75rem;font-size:.82rem;position:absolute;top:0;transform:translate(-50%)}.chart-tooltip p{margin:0}.chart-tooltip-date{color:var(--muted);margin-bottom:.25rem!important}.chart-tooltip-row{align-items:center;gap:.4rem;display:flex}.chart-tooltip-row strong{font-variant-numeric:tabular-nums}.chart-tooltip-row span{color:var(--muted)}.chart-tooltip-items{border-top:1px solid var(--border);margin:.4rem 0 0;padding:.4rem 0 0;list-style:none}.splash{background:var(--bg);min-height:100vh}.signin{background:radial-gradient(circle at 50% 0%, var(--accent-soft), var(--bg) 60%);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.signin-card{text-align:center;flex-direction:column;align-items:center;gap:.6rem;width:100%;max-width:380px;padding:2rem 1.75rem;display:flex}.signin-card h1{font-size:1.35rem}.signin-card p{margin:0}.signin-mark{border-radius:13px;width:44px;height:44px;margin-bottom:.5rem}.signin-error{background:var(--danger-bg);width:100%;color:var(--danger);border-radius:10px;padding:.55rem .75rem;font-size:.875rem}.btn-google{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);box-shadow:var(--shadow);gap:.6rem;margin-top:.75rem}.btn-google:hover{background:var(--surface-2)}.avatar{object-fit:cover;background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.user-menu{border-top:1px solid var(--border);align-items:center;gap:.6rem;margin-top:auto;padding:.75rem .5rem 0;display:flex}.user-menu-text{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.user-menu-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.user-menu-text span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.icon-btn{min-width:36px;min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.mobile-user{margin-left:auto;padding:0}.page-head-split{justify-content:space-between}.show-mobile{display:none!important}@media (width<=860px){.hide-mobile{display:none!important}.show-mobile{display:grid!important}}.fab{right:18px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:11;background:var(--accent);width:56px;height:56px;color:var(--accent-fg);cursor:pointer;border:0;border-radius:18px;place-items:center;position:fixed;box-shadow:0 8px 24px #4f46e559}.btn-danger{color:var(--danger);border-color:var(--danger-border);background:var(--surface)}.btn-danger:not(:disabled):hover{background:var(--danger-bg)}.empty-action{justify-content:center;margin-top:.75rem;display:flex}.sheet{background:var(--surface);width:min(560px,100vw - 32px);max-height:min(88vh,760px);color:var(--text);box-shadow:var(--dialog-shadow);border:0;border-radius:18px;padding:0}.sheet::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sheet[open]{animation:.18s ease-out sheet-in}@keyframes sheet-in{0%{opacity:0;transform:translateY(12px)}}.sheet-head{z-index:1;background:var(--surface);justify-content:space-between;align-items:center;padding:1rem 1rem .5rem 1.25rem;display:flex;position:sticky;top:0}.sheet-body{padding:.25rem 1.25rem 1.25rem}@media (width<=860px){.sheet{width:100vw;max-width:100vw;padding-bottom:env(safe-area-inset-bottom);border-radius:20px 20px 0 0;margin:auto 0 0}@keyframes sheet-in{0%{opacity:.4;transform:translateY(40px)}}}@media (prefers-reduced-motion:reduce){.sheet[open]{animation:none}}.stat-row{grid-template-columns:repeat(3,1fr);margin-bottom:1rem;display:grid}.stat-row>div{flex-direction:column;gap:.15rem;min-width:0;padding:.85rem 1.1rem;display:flex}.stat-row>div+div{border-left:1px solid var(--border)}.stat-row>div>span{color:var(--muted);font-size:.78rem}.stat-row strong{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}@media (width<=480px){.stat-row>div{padding:.7rem .75rem}.stat-row strong{font-size:.92rem}}.toolbar{flex-direction:column;gap:.6rem;margin-bottom:1.25rem;display:flex}.search{display:block;position:relative}.search svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:.8rem;transform:translateY(-50%)}.search input{background:var(--surface-2);border-color:#0000;border-radius:12px;padding-left:2.4rem}.search input:focus{background:var(--surface)}.chip-row{scrollbar-width:none;align-items:center;gap:.4rem;margin:0 -2px;padding:2px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip-row .chip{white-space:nowrap;flex:none;align-items:center;gap:.4rem;display:inline-flex}.chip-sep{background:var(--border);flex:none;width:1px;height:20px;margin:0 .2rem}.segmented-lg{width:100%;max-width:360px;margin-bottom:1rem;display:flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:.4rem .9rem;font-size:.875rem;font-weight:600}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.feed{flex-direction:column;gap:1.1rem;display:flex}.feed-day-head{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:baseline;padding:0 .25rem .4rem;font-size:.8rem;font-weight:600;display:flex}.feed-day-head .money{text-transform:none;letter-spacing:0;font-size:.82rem}.feed-items{margin:0;padding:0;list-style:none;overflow:hidden}.feed-item+.feed-item{border-top:1px solid var(--border)}.feed-row{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.8rem;width:100%;padding:.75rem 1rem;display:flex}button.feed-row:hover,.feed-text-btn:hover{background:var(--surface-2)}div.feed-row{cursor:default}.feed-text{flex-direction:column;flex:1;min-width:0;display:flex}.feed-text-btn{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;margin:-.25rem -.4rem;padding:.25rem .4rem}.feed-title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.feed-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.35rem;font-size:.8rem;display:flex;overflow:hidden}.feed-row>.money,.feed-end .money{font-size:.95rem}.feed-end{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.feed-details{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.1rem 1rem .85rem 4.3rem;font-size:.85rem;display:flex}.feed-details a{color:var(--text)}.feed-item.open{background:var(--surface-2)}.muted-item .feed-title,.muted-item .money{color:var(--muted)}.date-badge{border:1px solid var(--border);background:var(--surface);border-radius:11px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:44px;height:46px;line-height:1.05;display:flex}.date-badge span{text-transform:uppercase;color:var(--accent);letter-spacing:.04em;font-size:.66rem;font-weight:700}.date-badge strong{font-size:1.1rem;font-weight:700}.goal-rows{margin:0;padding:0;list-style:none}.goal-rows li+li{border-top:1px solid var(--border)}.goal-row{flex-direction:column;gap:.45rem;padding:.85rem 1.1rem;text-decoration:none;display:flex}.goal-row:hover{background:var(--surface-2)}.goal-row-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.goal-row-name{min-width:0;font-weight:500}.goal-row-top strong{font-variant-numeric:tabular-nums}.sheet .form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}@media (width<=860px){.container:has(.fab){padding-bottom:calc(10rem + env(safe-area-inset-bottom))}}.side-nav-secondary{margin-top:auto}.side-nav-secondary+.user-menu{margin-top:.5rem}.mobile-hide{margin-left:auto;display:flex}.mobile-hide .icon-btn[aria-pressed=true]{color:var(--accent)}.mobile-bell+.mobile-user{margin-left:.25rem}.mobile-bell.active{color:var(--accent)}.settings{flex-direction:column;gap:1rem;max-width:640px;display:flex}.settings-card{flex-direction:column;gap:.9rem;padding:1.25rem;display:flex}.settings-head{align-items:center;gap:.75rem;display:flex}.settings-head>div{flex:1}.settings-head p{margin:0;font-size:.875rem}.settings-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.settings-steps ol{color:var(--muted);margin:0 0 .75rem;padding-left:1.2rem}.settings-note{margin:0;font-size:.82rem}.settings-ok{color:var(--deposit);font-size:.875rem;font-weight:500}.settings code{background:var(--surface-2);border-radius:6px;padding:.1rem .35rem;font-size:.85em}.settings-card .check{align-self:flex-start;min-height:0}.feed-sub .swatch{border-radius:50%;width:8px;height:8px}.form-hint{margin:0;font-size:.82rem}.repeat-mark{color:var(--accent);font-weight:700}.repeat-badge{background:var(--accent-soft);width:44px;height:46px;color:var(--accent);border-radius:11px;flex:none;place-items:center;font-size:1.3rem;font-weight:700;display:grid}.show-more{margin:.5rem auto 0;display:flex}.hero-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.currency-toggle{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px;display:inline-flex}.currency-toggle button{min-width:36px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;font-weight:700}.currency-toggle button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow)}.rate-footer{border-top:1px solid var(--border);color:var(--muted);text-align:center;margin-top:2.5rem;padding-top:1rem;font-size:.75rem}.asset-summary .row{flex-wrap:nowrap}.asset-summary .row-main{flex:1 1 0}.tag{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .55rem;font-size:.8rem;font-weight:600;display:inline-flex}.tag button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0 .1rem;font-size:1rem;line-height:1}.tag-sm{padding:.05rem .45rem;font-size:.72rem}.feed-tags{flex-wrap:wrap;gap:.25rem;margin-top:.3rem;display:flex}.tag-box{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:42px;padding:.35rem .5rem;display:flex}.tag-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tag-box input{background:0 0;border:0;flex:1;min-width:120px;min-height:0;padding:.2rem;box-shadow:none!important}.tag-suggestions{flex-wrap:wrap;gap:.35rem;margin-top:.4rem;display:flex}.tag-suggestion{border:1px dashed var(--accent);background:var(--surface);cursor:pointer}.currency-row{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:-.25rem 0 .75rem;font-size:.875rem;display:flex}.currency-row .currency-toggle button{padding:0 .75rem;font-size:.8rem}.currency-toggle button:disabled{opacity:.5;cursor:wait}.confirm{background:var(--surface);width:min(400px,100vw - 32px);color:var(--text);box-shadow:var(--dialog-shadow);border:0;border-radius:18px;padding:0}.confirm::backdrop{background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.confirm[open]{animation:.15s ease-out confirm-in}@keyframes confirm-in{0%{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.confirm[open]{animation:none}}.confirm-body{padding:1.4rem 1.4rem 1.1rem}.confirm-body h2{margin-bottom:.5rem;font-size:1.1rem}.confirm-body p{color:var(--muted);white-space:pre-line;margin:0;font-size:.92rem}.confirm-actions{justify-content:flex-end;gap:.5rem;margin-top:1.25rem;display:flex}.btn-danger-solid{background:var(--danger);color:var(--danger-fg)}.btn-danger-solid:hover{filter:brightness(1.08)}.section-actions{align-items:center;gap:.5rem;display:flex}.transfer-mark{color:var(--accent);margin-right:.35rem;font-weight:600}.goal-monthly{background:var(--accent-soft);border-radius:10px;margin:0;padding:.55rem .75rem;font-size:.9rem}.goal-monthly strong{color:var(--accent);font-variant-numeric:tabular-nums}.goal-monthly span{color:var(--muted)}.chart-switch{flex-direction:column;gap:.6rem;min-width:0;display:flex}.chart-switch>.segmented{align-self:flex-start}.chart-switch>.chart{margin:0}.chart-summary{margin:0;font-size:.875rem;font-weight:600}.chart-summary .muted{font-weight:400}.chart-note,.chart-empty{margin:.25rem 0 .5rem;font-size:.78rem}.chart-tooltip-items strong{font-variant-numeric:tabular-nums}.settings-icon{background:var(--accent);width:22px;height:22px;color:var(--accent-fg);border-radius:50%;flex:none;place-items:center;display:grid}.account-emoji{flex:none;font-size:.95em;line-height:1}.emoji-button{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-size:1.5rem;line-height:1;display:grid}.emoji-button-empty{color:var(--muted);background:0 0;border-style:dashed;font-size:1.1rem}.emoji-picker{flex-direction:column;gap:.75rem;display:flex}.emoji-grid{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:.35rem;display:grid}.emoji-option{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;height:42px;font-size:1.35rem;line-height:1}.emoji-option.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.emoji-none{color:var(--muted);grid-column:span 2;font-size:.85rem}.emoji-custom{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.emoji-custom input{max-width:180px}.sinpe-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.sinpe-status strong{color:var(--text);font-weight:600}.sinpe-status .btn{margin-left:auto}.sinpe-dot{background:var(--deposit);width:8px;height:8px;box-shadow:0 0 0 3px var(--success-bg);border-radius:50%}.sinpe-warning{background:var(--warn-bg);color:var(--warn-fg);border-radius:10px;margin:0;padding:.5rem .75rem;font-size:.82rem}.sinpe-steps{margin:0;padding-left:1.2rem;font-size:.85rem}.sinpe-list{margin:0;padding:0;list-style:none}.sinpe-row{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.85rem 1rem;display:grid}.sinpe-row:first-child{border-top:0}.sinpe-row.fresh{background:var(--success-bg)}.sinpe-row.validated .sinpe-main{opacity:.6}.sinpe-row .error{grid-column:1/-1}.sinpe-time{color:var(--muted);font-variant-numeric:tabular-nums;min-width:3.6rem;font-size:.8rem}.sinpe-main{flex-direction:column;min-width:0;display:flex}.sinpe-amount{font-variant-numeric:tabular-nums;font-size:1.15rem}.sinpe-sender{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.sinpe-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.sinpe-validated{color:var(--deposit);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;font-size:.85rem;font-weight:600}.sinpe-other details summary{cursor:pointer;flex-direction:column;display:flex}.sinpe-other pre{background:var(--surface-2);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:300px;margin:.5rem 0 0;padding:.6rem;font-size:.75rem;overflow:auto}.link-btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}
