/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.lowercase{text-transform:lowercase}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#f2f3f5;--color-surface:#fff;--color-surface-elevated:#fff;--color-text-primary:#0f1513;--color-text-secondary:#6a736f;--color-accent:#0c9466;--color-income:#12a150;--color-expense:#e5484d;--color-transfer:#2f7cf6;--color-danger:#e5484d;--color-focus:#0c9466;--hairline:var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){:root{--hairline:color-mix(in srgb, var(--color-text-primary) 8%, transparent)}}:root{--fill:var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){:root{--fill:color-mix(in srgb, var(--color-text-primary) 5%, transparent)}}:root{--fill-strong:var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){:root{--fill-strong:color-mix(in srgb, var(--color-text-primary) 10%, transparent)}}:root{--glass:var(--color-surface)}@supports (color:color-mix(in lab, red, red)){:root{--glass:color-mix(in srgb, var(--color-surface) 74%, transparent)}}:root{--segment-active:var(--color-surface);--on-accent:#fff;--glass-blur:blur(28px) saturate(1.8);--shadow-float:0 1px 2px #0000000a, 0 18px 48px -18px #00000038;--radius-small:14px;--radius-medium:22px;--radius-large:32px;--radius-round:999px;--motion-fast:.14s;--motion-normal:.22s;--motion-slow:.42s;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-sheet:cubic-bezier(.32, .72, 0, 1);--ease-spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017 19.4%, 1.067, 1.089 24.6%, 1.085 27.5%, 1.058 31.3%, 1.004 39.3%, .986 43.6%, .994 54.6%, 1.001 66.5%, 1);--font-rounded:ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--color-background-dark:#0b0c0e;--color-surface-dark:#17191c;--color-surface-elevated-dark:#202327;--color-text-primary-dark:#f4f5f6;--color-text-secondary-dark:#9ba3a0;--color-accent-dark:#34d399;--color-income-dark:#4ade80;--color-expense-dark:#ff6b6b;--color-transfer-dark:#6aa8ff;--color-danger-dark:#ff6b6b;--color-focus-dark:#34d399;--segment-active-dark:#3a3f45}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:var(--color-background-dark);--color-surface:var(--color-surface-dark);--color-surface-elevated:var(--color-surface-elevated-dark);--color-text-primary:var(--color-text-primary-dark);--color-text-secondary:var(--color-text-secondary-dark);--color-accent:var(--color-accent-dark);--color-income:var(--color-income-dark);--color-expense:var(--color-expense-dark);--color-transfer:var(--color-transfer-dark);--color-danger:var(--color-danger-dark);--color-focus:var(--color-focus-dark);--segment-active:var(--segment-active-dark);--on-accent:#04170f}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:var(--color-background-dark);--color-surface:var(--color-surface-dark);--color-surface-elevated:var(--color-surface-elevated-dark);--color-text-primary:var(--color-text-primary-dark);--color-text-secondary:var(--color-text-secondary-dark);--color-accent:var(--color-accent-dark);--color-income:var(--color-income-dark);--color-expense:var(--color-expense-dark);--color-transfer:var(--color-transfer-dark);--color-danger:var(--color-danger-dark);--color-focus:var(--color-focus-dark);--segment-active:var(--segment-active-dark);--on-accent:#04170f}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none;font:100%/1.5 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}body{background:radial-gradient(120% 50% at 50% -12%, var(--color-accent), transparent 70%) no-repeat, var(--color-background);min-height:100dvh;margin:0}@supports (color:color-mix(in lab, red, red)){body{background:radial-gradient(120% 50% at 50% -12%, color-mix(in srgb, var(--color-accent) 16%, transparent), transparent 70%) no-repeat, var(--color-background)}}body{color:var(--color-text-primary);font:inherit;font-variant-numeric:tabular-nums;transition:background-color var(--motion-slow) var(--ease-out), color var(--motion-slow) var(--ease-out)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.shell{width:min(26rem,100%);padding-top:max(clamp(1.5rem, 8vh, 4rem), env(safe-area-inset-top,0px));padding-right:max(1rem, env(safe-area-inset-right,0px));padding-bottom:max(1.5rem, env(safe-area-inset-bottom,0px));padding-left:max(1rem, env(safe-area-inset-left,0px));margin-inline:auto}.mark{border-radius:.95rem;width:3.5rem;height:3.5rem;margin:0 auto 1.1rem;display:block;box-shadow:0 10px 24px #0d74534d}.shell h1{font-family:var(--font-rounded);letter-spacing:-.03em;text-align:center;margin:0;font-size:clamp(2rem,8vw,2.75rem);font-weight:700;line-height:1.05}.slogan{text-align:center;letter-spacing:-.01em;margin:.5rem 0 0;font-size:1.125rem;font-weight:560;line-height:1.35}.privacy{color:var(--color-text-secondary);letter-spacing:.01em;margin:.75rem 0 0;font-size:.875rem;line-height:1.4}.status{border:1px solid var(--hairline);border-radius:var(--radius-large);background:var(--color-surface);box-shadow:var(--shadow-float);margin-top:1.75rem;padding:1.5rem 1.35rem 1.35rem}.panel-body{opacity:1;transition:opacity var(--motion-normal) var(--ease-out), transform var(--motion-slow) var(--ease-spring);transform:scale(1)}@starting-style{.panel-body{opacity:0;transform:translateY(8px)scale(.98)}}.status h2{letter-spacing:-.02em;margin:0;font-size:1.375rem;font-weight:700;line-height:1.25}.lede{color:var(--color-text-secondary);margin:.75rem 0 0;line-height:1.45}.form{gap:.75rem;min-width:0;margin-top:1.25rem;display:grid}.form label{min-width:0;color:var(--color-text-secondary);letter-spacing:.01em;gap:.4rem;font-size:.875rem;font-weight:560;display:grid}.form input,.form select{border-radius:var(--radius-small);background:var(--fill);width:100%;min-width:0;min-height:3.125rem;color:var(--color-text-primary);font:inherit;cursor:text;transition:background-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-normal) var(--ease-out);border:1px solid #0000;padding:.7rem 1rem;font-size:1rem;line-height:1.4}.form select,.settings-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a9490' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 9.5 5 5 5-5'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.25rem}.form input:focus,.form select:focus{background-color:var(--color-surface);box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px var(--color-accent);outline:none}@supports (color:color-mix(in lab, red, red)){.form input:focus,.form select:focus{box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px color-mix(in srgb, var(--color-accent) 18%, transparent)}}.button{border-radius:var(--radius-round);background:var(--color-accent);border:0;min-height:3.25rem;padding:.8rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.button{background:color-mix(in srgb, var(--color-accent) 11%, transparent)}}.button{color:var(--color-accent);font:inherit;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:transform var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);font-size:1.0625rem;font-weight:600;line-height:1.3}.button-passkey{justify-content:center;align-items:center;gap:.55rem;display:inline-flex}.button-primary{background:var(--color-accent);box-shadow:none;color:#fff}.button:active{transform:scale(.96)}.button:disabled{opacity:.55}.button:disabled:active{transform:none}@media (hover:hover) and (pointer:fine){.button:hover{background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.button:hover{background:color-mix(in srgb, var(--color-accent) 18%, transparent)}}.button-primary:hover{background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.button-primary:hover{background:color-mix(in srgb, var(--color-accent) 82%, #000)}}}.form-error{animation:rise-in var(--motion-normal) var(--ease-out)}.status .form-error{color:var(--color-danger);overflow-wrap:anywhere;margin:1rem 0 0;line-height:1.45}.notice{color:var(--color-text-secondary);margin:1rem 0 0;line-height:1.45}.recovery-code{color:var(--color-text-primary);letter-spacing:.04em;-webkit-user-select:text;user-select:text;flex-wrap:wrap;margin:1rem 0 0;font-family:ui-monospace,monospace;font-size:1rem;line-height:1.6;display:flex}.recovery-group{white-space:nowrap}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .button-primary{color:#04170f}}:root[data-theme=dark] .button-primary{color:#04170f}.ledger-list{gap:.5rem;min-width:0;margin:1rem 0 0;padding:0;list-style:none;display:grid}.ledger-row{justify-content:space-between;align-items:baseline;gap:.75rem;min-width:0;display:flex}.ledger-name{overflow-wrap:anywhere;min-width:0}.ledger-meta{color:var(--color-text-secondary);flex-shrink:0;font-size:.875rem}.ledger-amount{font-variant-numeric:tabular-nums;flex-shrink:0}.ledger-amount-income{color:var(--color-income)}.ledger-amount-expense{color:var(--color-expense)}.banner{color:var(--color-danger);margin:1rem 0 0;line-height:1.45}.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}.text-button{color:var(--color-accent);font:inherit;cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:.35rem 0;font-size:.875rem;font-weight:600}.vault-bar{justify-content:center;align-items:center;gap:1.25rem;min-width:0;min-height:2.75rem;display:flex;position:relative}.vault-bar .text-button{color:var(--color-text-secondary);font-size:.8125rem;font-weight:560}.board{min-width:0}.shell:has(.coin-board){height:100dvh;padding-bottom:max(.6rem, env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.shell:has(.coin-board) .board-screen,.shell:has(.coin-board) .view-pane{flex-direction:column;flex:1;min-height:0;display:flex}.view-pane.is-next{animation:view-in-next .2s var(--ease-out)}.view-pane.is-prev{animation:view-in-prev .2s var(--ease-out)}@keyframes view-in-next{0%{opacity:0;transform:translate(18px)}}@keyframes view-in-prev{0%{opacity:0;transform:translate(-18px)}}.coin-board{flex-direction:column;flex:1;gap:.55rem;min-height:0;display:flex}.summary-line,.arrange-bar{border:1px solid var(--hairline);border-radius:var(--radius-medium);background:var(--color-surface);min-width:0;min-height:3.1rem;box-shadow:var(--shadow-float);flex:none;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.summary-line{width:100%;color:var(--color-text-primary);font:inherit;text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;padding:.35rem .9rem .45rem;position:relative;overflow:hidden}.summary-line:active{transform:scale(.99)}.summary-line.is-exact{flex-wrap:wrap;row-gap:0;height:3.1rem;padding-block:.25rem .35rem}.summary-total{flex:0 auto;min-width:0;display:block}.summary-figure{font-family:var(--font-rounded);letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.25rem,5.8vw,1.5rem);font-weight:700;line-height:1.15;display:block;overflow:hidden}.summary-flow{font-family:var(--font-rounded);letter-spacing:-.02em;white-space:nowrap;flex:none;gap:.65rem;margin-left:auto;font-size:.875rem;font-weight:700;display:flex}.is-exact .summary-figure{font-size:1.125rem;line-height:1.2}.is-exact .summary-flow{font-size:.8125rem;line-height:1.2}.summary-flow>span{align-items:center;gap:.05rem;display:inline-flex}.summary-share{width:100%;height:3px;position:absolute;bottom:0;left:0;right:0}.summary-share-track{fill:var(--color-income)}@supports (color:color-mix(in lab, red, red)){.summary-share-track{fill:color-mix(in srgb, var(--color-income) 30%, transparent)}}.summary-share-fill{fill:var(--color-expense)}.summary-share-fill.is-over{fill:#ef8a00}.summary-spent{color:var(--color-expense)}.summary-earned{color:var(--color-income)}.arrange-bar{color:var(--color-text-secondary);animation:rise-in var(--motion-normal) var(--ease-spring);padding:.35rem .35rem .35rem .9rem;font-size:.8125rem;line-height:1.3}.arrange-bar .button{flex:none;min-height:2.4rem;padding:.4rem 1.1rem;font-size:.9375rem}.icon{width:1.5rem;height:1.5rem;display:block}.lane{border:1px solid var(--hairline);border-radius:var(--radius-large);background:var(--glass);flex-direction:column;flex:none;min-width:0;margin:0 -.35rem;padding:.5rem .3rem .8rem;display:flex;position:relative}.lane-fill{flex:1;min-height:0}.lane-income{background:linear-gradient(160deg, var(--color-income), var(--color-income))}@supports (color:color-mix(in lab, red, red)){.lane-income{background:linear-gradient(160deg, color-mix(in srgb, var(--color-income) 13%, var(--color-surface)), color-mix(in srgb, var(--color-income) 4%, var(--color-surface)))}}.lane-accounts{background:linear-gradient(160deg, var(--color-transfer), var(--color-transfer))}@supports (color:color-mix(in lab, red, red)){.lane-accounts{background:linear-gradient(160deg, color-mix(in srgb, var(--color-transfer) 13%, var(--color-surface)), color-mix(in srgb, var(--color-transfer) 4%, var(--color-surface)))}}.lane-pages{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;flex:1;min-height:0;display:flex;overflow:auto hidden}.lane-pages::-webkit-scrollbar{display:none}.lane-page{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:.55rem .15rem;min-width:0;display:grid;position:relative}.lane-page.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lane-page.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lane-cell{min-width:0;display:grid}.lane-dots{justify-content:center;display:flex;position:absolute;bottom:.1rem;left:0;right:0}.lane-dot{cursor:pointer;background:0 0;border:0;width:1.1rem;height:.7rem;padding:0;position:relative}.lane-dot:before{border-radius:var(--radius-round);background:var(--color-text-primary);width:.36rem;height:.36rem;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.lane-dot:before{background:color-mix(in srgb, var(--color-text-primary) 22%, transparent)}}.lane-dot:before{content:"";transition:width var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out);transform:translate(-50%,-50%)}.lane-dot[aria-current=page]:before{background:var(--color-text-primary);width:.85rem}.token-income{--face-from:#5fdd92;--face-to:#11a052}.token-account{--face-from:#52c2ff;--face-to:#1769d6}.token-expense,.token-expense.tone-0{--face-from:#ff9268;--face-to:#ee4b3b}.token-expense.tone-1{--face-from:#ffc95e;--face-to:#ef8a00}.token-expense.tone-2{--face-from:#ff86bd;--face-to:#d42a72}.token-expense.tone-3{--face-from:#bba2ff;--face-to:#6b3fe0}.token-expense.tone-4{--face-from:#5fe3d3;--face-to:#0e9a8c}.token-expense.tone-5{--face-from:#bde66a;--face-to:#5c9c12}.token{--coin:3.25rem;min-width:0;color:var(--color-text-primary);font:inherit;text-align:center;touch-action:pan-x;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:opacity var(--motion-normal) var(--ease-out), transform var(--motion-slow) var(--ease-spring);background:0 0;border:0;padding:0;display:grid;position:relative}@starting-style{.token{opacity:0;transform:scale(.6)}}.token-add,.token-body{grid-template-rows:auto var(--coin) auto;justify-items:center;gap:.2rem}.token-body{width:100%;min-width:0;color:inherit;touch-action:pan-x;cursor:pointer;-webkit-touch-callout:none;background:0 0;border:0;margin:0;padding:0;font-family:inherit;display:grid}.token.is-lifted{opacity:.25}.token-face{width:var(--coin);height:var(--coin);border-radius:var(--radius-round);pointer-events:none;background:radial-gradient(circle at 32% 22%, #ffffff61, transparent 48%), linear-gradient(155deg, var(--face-from), var(--face-to));box-shadow:inset 0 1px 0 #fff6, inset 0 -3px 6px #0000001a, 0 10px 18px -12px var(--face-to);color:#fff;transition:transform var(--motion-normal) var(--ease-spring), box-shadow var(--motion-normal) var(--ease-out);border:0;place-items:center;line-height:0;display:grid;position:relative}.token-face .icon{width:1.5rem;height:1.5rem}.token-add .token-face{border:1px solid var(--hairline);background:var(--fill);box-shadow:none;color:var(--color-text-secondary)}.token-armed .token-face,.token-hot .token-face{box-shadow:0 0 0 3px var(--color-background), 0 0 0 5px var(--face-to)}.token-hot .token-face{transform:scale(1.12)}.token-name,.token-balance{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.token-name{letter-spacing:-.02em;font-size:.72rem;font-weight:600;line-height:1.2}.token-add .token-name{color:var(--color-text-secondary);font-weight:500}.token-balance{min-height:.8rem;font-family:var(--font-rounded);letter-spacing:-.02em;font-size:.66rem;font-weight:650;line-height:1.2}.token-income .token-balance{color:var(--color-income)}.token-account .token-balance{color:var(--color-text-primary)}.token-expense .token-balance,.token-account.token-negative .token-balance{color:var(--color-expense)}.token-ghost{--coin:3.25rem;z-index:40;width:var(--coin);pointer-events:none;position:fixed;top:0;left:0}.token-ghost .token-face{box-shadow:inset 0 1px 0 #fff6, 0 18px 30px -12px var(--face-to);transform:scale(1.1)}.token:active .token-face,.token-body:active .token-face{transform:scale(.92)}.token-delete{z-index:2;top:.9rem;left:calc(50% - var(--coin) / 2 - .4rem);border:2px solid var(--color-surface);border-radius:var(--radius-round);background:var(--color-text-primary);place-items:center;width:1.5rem;height:1.5rem;padding:0;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.token-delete{background:color-mix(in srgb, var(--color-text-primary) 70%, var(--color-surface))}}.token-delete{color:var(--color-surface);cursor:pointer;animation:badge-in var(--motion-normal) var(--ease-spring)}@keyframes badge-in{0%{opacity:0;transform:scale(.4)}}@keyframes coin-jiggle{0%{transform:rotate(-2.4deg)}to{transform:rotate(2.4deg)}}.name-field{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:.65rem}.name-field-title{grid-column:1/-1}.name-preview{line-height:0;display:block}.name-field .name-preview .token-face{width:3.125rem;height:3.125rem}.name-preview .icon{width:1.35rem;height:1.35rem}.icon-picker{border:0;grid-template-columns:repeat(auto-fill,minmax(2.4rem,1fr));justify-items:center;gap:.45rem .35rem;margin:0;padding:0;display:grid}.icon-picker .icon-option .token-face{opacity:.42;width:2.4rem;height:2.4rem}.icon-option .icon{width:1.15rem;height:1.15rem}.icon-option:has(input:checked) .token-face{opacity:1;box-shadow:0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-text-primary)}.icon-option:has(input:focus-visible) .token-face{outline:2px solid var(--color-focus);outline-offset:5px}.icon-group{color:var(--color-text-secondary);letter-spacing:.05em;text-transform:uppercase;margin:0 0 .4rem;padding:0;font-size:.75rem;font-weight:650}.icon-picker+.icon-picker{margin-top:.35rem}.board-toast{z-index:20;bottom:max(1rem, calc(env(safe-area-inset-bottom,0px) + .6rem));border:1px solid var(--hairline);border-radius:var(--radius-round);background:var(--color-surface);width:max-content;max-width:min(24rem,100vw - 2rem);box-shadow:var(--shadow-float), 0 14px 32px -14px #0006;animation:toast-in var(--motion-slow) var(--ease-spring);align-items:center;gap:.6rem;padding:.4rem .4rem .4rem .55rem;font-size:.875rem;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,1rem)scale(.96)}}.board-toast-text{min-width:0;line-height:1.2;display:grid}.board-toast-text strong{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.board-toast-text span{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.board-toast .text-button{border-radius:var(--radius-round);background:var(--color-accent);padding:.55rem .95rem}@supports (color:color-mix(in lab, red, red)){.board-toast .text-button{background:color-mix(in srgb, var(--color-accent) 12%, transparent)}}.undo-timer{font-variant-numeric:tabular-nums;flex:none;place-items:center;width:2.1rem;height:2.1rem;font-size:.8rem;font-weight:700;display:grid;position:relative}.undo-timer svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.undo-track,.undo-ring{fill:none;stroke-width:3px}.undo-track{stroke:var(--fill)}.undo-ring{stroke:var(--color-accent);stroke-dasharray:94.25;stroke-linecap:round;animation:6s linear forwards undo-countdown}@keyframes undo-countdown{to{stroke-dashoffset:94.25px}}.amount-readout{font-family:var(--font-rounded);letter-spacing:-.04em;text-align:center;font-variant-numeric:tabular-nums;margin:.15rem 0 .35rem;font-size:clamp(2.75rem,12vw,3.5rem);font-weight:650;line-height:1.05}.amount-readout span{color:var(--color-text-secondary);letter-spacing:.04em;font-size:1rem;font-weight:560}.amount-readout.is-empty{color:var(--color-text-secondary)}@supports (color:color-mix(in lab, red, red)){.amount-readout.is-empty{color:color-mix(in srgb, var(--color-text-secondary) 60%, transparent)}}.sheet-balance{color:var(--color-text-secondary);text-align:center;margin:.1rem 0 0;font-size:.8125rem}.arm-hint{border-color:var(--color-transfer);padding-left:1rem}@supports (color:color-mix(in lab, red, red)){.arm-hint{border-color:color-mix(in srgb, var(--color-transfer) 45%, transparent)}}.entry-meta{grid-template-columns:minmax(0,1fr) auto minmax(0,9.5rem);gap:.5rem;display:grid}.sheet-caption{color:var(--color-text-primary);letter-spacing:-.02em;text-align:center;margin:.15rem 0 0;font-size:1.05rem;font-weight:650}.pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.pad-key{background:var(--fill);min-height:3.4rem;color:var(--color-text-primary);font:inherit;font-family:var(--font-rounded);touch-action:manipulation;transition:transform var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out);border:0;border-radius:1.1rem;font-size:1.6rem;font-weight:500}.pad-key:active{background:var(--fill-strong);transform:scale(.94)}.sheet-scrim{z-index:45;width:100%;height:100%;animation:fade-in var(--motion-normal) var(--ease-out);transition:opacity .26s var(--ease-out);background:#0000004d;border:0;margin:0;padding:0;display:block;position:fixed;top:0;left:0}.sheet-scrim.is-closing{opacity:0;pointer-events:none}.sheet{z-index:46;right:0;bottom:max(.5rem, env(safe-area-inset-bottom,0px));border:1px solid var(--hairline);border-radius:var(--radius-large);background:var(--color-surface);width:min(26rem,100% - 1rem);max-height:min(86dvh,40rem);animation:sheet-in .34s var(--ease-sheet);transition:transform .3s var(--ease-sheet);flex-direction:column;margin:0 auto;padding:0 0 .35rem;display:flex;position:fixed;left:0;overflow:hidden;box-shadow:0 16px 40px -20px #00000059}.sheet.is-dragging{transition:none}.sheet:focus{outline:none}.sheet.is-closing{pointer-events:none;transition:transform .26s var(--ease-in);transform:translateY(calc(100% + 2rem))}.sheet-handle{z-index:1;cursor:grab;touch-action:none;flex:none;place-items:center;height:1.4rem;margin:0;display:grid;position:relative}.sheet-body{overscroll-behavior:contain;scrollbar-color:var(--color-text-secondary) transparent;min-height:0;max-height:calc(min(86dvh,40rem) - 2.2rem);margin:0 .4rem;padding:0 .7rem .75rem;overflow:auto}@supports (color:color-mix(in lab, red, red)){.sheet-body{scrollbar-color:color-mix(in srgb, var(--color-text-secondary) 45%, transparent) transparent}}.sheet-body{scrollbar-width:thin}.sheet-body::-webkit-scrollbar{width:8px}.sheet-body::-webkit-scrollbar-thumb{background:var(--color-text-secondary);border:2px solid #0000;border-radius:999px}@supports (color:color-mix(in lab, red, red)){.sheet-body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-text-secondary) 45%, transparent)}}.sheet-body::-webkit-scrollbar-thumb{background-clip:padding-box}.sheet-titlebar{flex:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.15rem 1.1rem .6rem;display:flex}.sheet-titlebar h3{min-width:0;margin:0}.sheet-done{flex:none;min-height:2.4rem;padding:.35rem 1rem;font-size:.9375rem}.sheet h3{letter-spacing:-.02em;margin:.75rem 0 0;font-size:1.35rem;font-weight:650;line-height:1.15}.sheet h3#sheet-title{color:var(--color-text-secondary);letter-spacing:.06em;text-align:center;text-transform:uppercase;margin:.65rem 0 0;font-size:.75rem;font-weight:650;line-height:1.2}.sheet-grabber{border-radius:var(--radius-round);background:var(--color-text-secondary);width:2.25rem;height:.3rem}@supports (color:color-mix(in lab, red, red)){.sheet-grabber{background:color-mix(in srgb, var(--color-text-secondary) 45%, transparent)}}@keyframes sheet-in{0%{transform:translateY(calc(100% + 2rem))}to{transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}}.drawer{z-index:46;overscroll-behavior:contain;width:min(26rem,100% - .75rem);padding:max(1rem, env(safe-area-inset-top,0px)) 1rem max(1.5rem, env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));border-right:1px solid var(--hairline);border-radius:0 var(--radius-large) var(--radius-large) 0;background:var(--color-surface);touch-action:pan-y;animation:drawer-in .44s var(--ease-out);transition:transform .32s var(--ease-out);position:fixed;top:0;bottom:0;left:max(0px,50% - 13rem);overflow-y:auto;box-shadow:12px 0 32px -18px #0006}.drawer.is-dragging{transition:none}.drawer.is-closing{pointer-events:none;transition:transform .26s var(--ease-in);transform:translate(calc(-100% - 2rem))}@keyframes drawer-in{0%{transform:translate(calc(-100% - 2rem))}}.drawer h3{letter-spacing:-.03em;margin:0;font-size:1.75rem;font-weight:700;line-height:1.15}.settings-sheet{background:var(--color-background)}.settings-head{justify-content:space-between;align-items:center;margin-top:.25rem;display:flex}.settings-sheet .settings-head h3{margin:0}.settings-close{border:1px solid var(--hairline);border-radius:var(--radius-round);background:var(--glass);width:2.875rem;height:2.875rem;color:var(--color-text-primary);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out);flex:none;place-items:center;padding:0;display:grid}.settings-close:active{transform:scale(.9)}.settings-close .icon{width:1.3rem;height:1.3rem}.settings-group{margin-top:1.35rem}.settings-group h4{color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .4rem 1rem;font-size:.75rem;font-weight:600}.settings-rows{border-radius:var(--radius-medium);background:var(--color-surface);margin:0;padding:0;list-style:none;overflow:hidden}.settings-rows>li+li{box-shadow:inset 3.6rem 1px 0 var(--color-surface), inset 0 1px 0 var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){.settings-rows>li+li{box-shadow:inset 3.6rem 1px 0 var(--color-surface), inset 0 1px 0 color-mix(in srgb, var(--color-text-primary) 9%, transparent)}}.settings-row{width:100%;min-height:2.875rem;color:var(--color-text-primary);font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.45rem .9rem;font-size:1rem;display:grid}button.settings-row:active,label.settings-row:active{background:var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){button.settings-row:active,label.settings-row:active{background:color-mix(in srgb, var(--color-text-primary) 6%, transparent)}}.settings-row:disabled{opacity:.6}.settings-icon{color:#fff;border-radius:.6rem;place-items:center;width:1.875rem;height:1.875rem;display:grid;box-shadow:inset 0 1px #ffffff40}.settings-icon .icon{width:1.15rem;height:1.15rem}.tint-blue{background:#2f7cf6}.tint-green{background:#1fae5b}.tint-gray{background:#8a9490}.tint-orange{background:#f08a00}.tint-purple{background:#8b5cf6}.tint-slate{background:#5b6b73}.tint-teal{background:#0f9c8f}.tint-indigo{background:#4f5bd5}.tint-red{background:#e5484d}.settings-label{text-wrap:balance;min-width:0;line-height:1.25}.settings-danger{color:var(--color-danger)}.settings-value{min-width:0;color:var(--color-text-secondary);text-align:right;text-wrap:balance;font-size:.9375rem;line-height:1.25}.settings-chevron{color:var(--color-text-secondary)}@supports (color:color-mix(in lab, red, red)){.settings-chevron{color:color-mix(in srgb, var(--color-text-secondary) 70%, transparent)}}.settings-chevron .icon{width:1.1rem;height:1.1rem}.settings-select{max-width:100%;color:var(--color-text-secondary);font:inherit;text-align:right;text-align-last:right;appearance:none;background-color:#0000;background-position:100%;border:0;padding:.25rem 1.35rem .25rem 0;font-size:.9375rem}.settings-expand{transition:opacity var(--motion-normal) var(--ease-out), transform var(--motion-normal) var(--ease-out);padding:.25rem .9rem 1rem}@starting-style{.settings-expand{opacity:0;transform:translateY(-6px)}}.settings-note{color:var(--color-text-secondary);margin:.45rem 1rem 0;font-size:.75rem;line-height:1.4}.settings-toast{z-index:3;bottom:max(1rem, env(safe-area-inset-bottom,0px));border-radius:var(--radius-small);background:var(--color-text-primary);box-shadow:var(--shadow-float);color:var(--color-background);text-align:center;animation:rise-in var(--motion-normal) var(--ease-out);margin:1rem 0 0;padding:.75rem 1rem;font-size:.875rem;line-height:1.4;position:sticky}.settings-toast.is-error{background:var(--color-danger);color:#fff}.button-danger{background:var(--color-danger);color:#fff;border-color:#0000}@media (prefers-contrast:more){.status,.form input,.form select,.button,.token-face,.pad-key{border-color:var(--color-text-primary)}}@media (prefers-reduced-transparency:reduce){.lane,.history-card,.analytics,.pager-tabs{background:var(--color-surface)}}.shell:has(.board){padding-top:max(.75rem, env(safe-area-inset-top,0px))}.shell:has(.board) .mark,.shell:has(.board) h1,.shell:has(.board) .slogan,.shell:has(.board) .privacy{display:none}.shell:has(.board) .status{box-shadow:none;background:0 0;border:0;margin-top:0;padding:0}.shell:has(.board) .notice{text-align:center;margin:2.25rem 0 0;font-size:.75rem;line-height:1.4}@media (prefers-reduced-motion:reduce){.sheet.is-closing,.drawer.is-closing,.token.token-hot .token-face,.board .token-ghost .token-face,.token:active .token-face,.token-body:active .token-face{transform:none}}.choice{gap:.6rem;margin-top:1.25rem;display:grid}.steps{border-top:1px solid var(--color-text-primary);gap:.75rem;margin:1.25rem 0 0;padding:1rem 0 0;display:grid}@supports (color:color-mix(in lab, red, red)){.steps{border-top:1px solid color-mix(in srgb, var(--color-text-primary) 8%, transparent)}}.steps{list-style:none}.step{color:var(--color-text-secondary);grid-template-columns:auto 1fr;align-items:start;gap:.75rem;font-size:.875rem;line-height:1.4;display:grid}.steps strong{color:var(--color-text-primary);font-weight:620}.step-icon{color:#fff;border-radius:.55rem;place-items:center;width:1.9rem;height:1.9rem;display:grid}.step-icon .icon{width:1.1rem;height:1.1rem}.login-steps{grid-template-columns:repeat(3,1fr);gap:.35rem;margin:.75rem 0 .25rem;padding:0;list-style:none;display:grid}.login-step{border-top:3px solid var(--color-text-primary);justify-items:center;gap:.3rem;padding-top:.45rem;display:grid}@supports (color:color-mix(in lab, red, red)){.login-step{border-top:3px solid color-mix(in srgb, var(--color-text-primary) 10%, transparent)}}.login-step{color:var(--color-text-secondary);text-align:center;font-size:.75rem}.login-step-num{background:var(--color-text-primary);border-radius:50%;place-items:center;width:1.4rem;height:1.4rem;display:grid}@supports (color:color-mix(in lab, red, red)){.login-step-num{background:color-mix(in srgb, var(--color-text-primary) 8%, transparent)}}.login-step-num{font-size:.72rem;font-weight:700}.login-step.is-current,.login-step.is-done{border-top-color:var(--color-accent);color:var(--color-text-primary);font-weight:600}.login-step.is-current .login-step-num,.login-step.is-done .login-step-num{background:var(--color-accent);color:#fff}.login-links{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.badge{background:var(--color-text-primary);border-radius:999px;margin-left:.35rem;padding:.15rem .5rem;display:inline-block}@supports (color:color-mix(in lab, red, red)){.badge{background:color-mix(in srgb, var(--color-text-primary) 8%, transparent)}}.badge{color:var(--color-text-secondary);letter-spacing:0;vertical-align:middle;font-size:.75rem;font-weight:600}.unlock-account{color:var(--color-text-secondary);justify-content:center;align-items:center;gap:.35rem;margin:0;font-size:.8rem;display:flex}.unlock-account .icon{width:.95rem;height:.95rem}.hint{color:var(--color-text-secondary);margin:0;font-size:.875rem;line-height:1.4}.panel-body>.form{margin-top:1rem}.panel-body>.text-button{margin-top:.5rem}.switch{background:var(--color-text-primary);border-radius:1rem;flex:none;width:3.1rem;height:1.9rem;margin:0;position:relative}@supports (color:color-mix(in lab, red, red)){.switch{background:color-mix(in srgb, var(--color-text-primary) 16%, transparent)}}.switch{cursor:pointer;appearance:none;transition:background var(--motion-normal) var(--ease-out)}.switch:after{content:"";width:1.6rem;height:1.6rem;transition:transform var(--motion-normal) var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:.15rem;left:.15rem;box-shadow:0 2px 5px #00000038}.switch:checked{background:var(--color-income)}.switch:checked:after{transform:translate(1.2rem)}.privacy-text{color:var(--color-text-secondary);gap:.6rem;padding:.25rem 1rem 1rem 3.4rem;font-size:.875rem;line-height:1.45;display:grid}.privacy-text p{margin:0}.privacy-text strong{color:var(--color-text-primary)}.archive-zone{gap:.5rem;margin-top:.25rem;display:grid}.sheet-note{color:var(--color-text-secondary);margin:0;font-size:.8125rem;line-height:1.4}.text-danger{color:var(--color-expense)}.insecure-tips{color:var(--color-text-secondary);gap:.6rem;margin:1rem 0 0;padding-left:1.1rem;font-size:.875rem;line-height:1.45;list-style:outside;display:grid}.insecure-tips a{color:var(--color-income);font-weight:600}.insecure-tips code{overflow-wrap:anywhere;font-size:.8125rem}.pager{align-items:center;gap:.4rem;margin:0 0 .85rem;display:flex}.pager-tabs{border:1px solid var(--hairline);border-radius:var(--radius-round);background:var(--glass);flex:1;gap:.25rem;min-width:0;padding:.25rem;display:flex}.pager-item{white-space:nowrap;text-overflow:ellipsis;border-radius:var(--radius-round);min-width:0;min-height:2.25rem;color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;flex:auto;padding:.2rem .55rem;font-size:clamp(.8125rem,3.4vw,.875rem);font-weight:650;overflow:hidden}.pager-item.is-current{background:var(--segment-active);color:var(--color-text-primary);box-shadow:0 4px 14px #00000014}.pager-button,.period-step{border:1px solid var(--hairline);border-radius:var(--radius-round);background:var(--glass);width:2.875rem;height:2.875rem;color:var(--color-text-primary);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out), background-color var(--motion-fast) var(--ease-out), opacity var(--motion-fast) var(--ease-out);flex:none;place-items:center;padding:0;display:grid}.pager-button:active,.period-step:active{transform:scale(.9)}.pager-button .icon,.period-step .icon{width:1.3rem;height:1.3rem}.sync-status{flex:none;position:relative}.sync-light{--light:var(--color-text-secondary);color:var(--light);position:relative}.sync-light:after{border:2px solid var(--color-surface);background:var(--light);content:"";border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:.45rem;right:.45rem}.sync-light.is-local:after{display:none}.sync-light.is-synced{--light:var(--color-income);border-color:var(--light)}@supports (color:color-mix(in lab, red, red)){.sync-light.is-synced{border-color:color-mix(in srgb, var(--light) 35%, transparent)}}.sync-light.is-synced{background:var(--light)}@supports (color:color-mix(in lab, red, red)){.sync-light.is-synced{background:color-mix(in srgb, var(--light) 10%, var(--glass))}}.sync-light.is-syncing{--light:var(--color-transfer)}.sync-light.is-offline,.sync-light.is-error{--light:var(--color-expense);border-color:var(--light)}@supports (color:color-mix(in lab, red, red)){.sync-light.is-offline,.sync-light.is-error{border-color:color-mix(in srgb, var(--light) 35%, transparent)}}.sync-light.is-offline,.sync-light.is-error{background:var(--light)}@supports (color:color-mix(in lab, red, red)){.sync-light.is-offline,.sync-light.is-error{background:color-mix(in srgb, var(--light) 10%, var(--glass))}}.sync-light.is-offline:after{animation:1.6s ease-in-out infinite sync-pulse}@keyframes sync-spin{to{transform:rotate(360deg)}}@keyframes sync-pulse{50%{opacity:.35}}.sync-hint{z-index:30;border:1px solid var(--hairline);border-radius:var(--radius-medium);background:var(--color-surface);width:min(16rem,80vw);box-shadow:var(--shadow-float);color:var(--color-text-primary);animation:rise-in var(--motion-normal) var(--ease-spring);margin:0;padding:.6rem .8rem;font-size:.8125rem;line-height:1.35;position:absolute;top:calc(100% + .5rem);right:0}@media (width<=359px){.pager{gap:.3rem}.pager-button{width:2.5rem;height:2.5rem}.pager-tabs{gap:.125rem;padding:.1875rem}.pager-item{letter-spacing:-.01em;min-height:2rem;padding-inline:.25rem;font-size:.75rem}}.period-bar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.4rem;margin:0 0 .85rem;display:grid}.period-step:disabled{opacity:.35;cursor:default}.period-step:disabled:active{transform:none}.period-trigger{border:1px solid var(--hairline);border-radius:var(--radius-round);background:var(--color-surface);min-width:0;height:2.875rem;color:var(--color-text-primary);font:inherit;letter-spacing:-.01em;cursor:pointer;transition:transform var(--motion-fast) var(--ease-out);justify-content:center;align-items:center;gap:.45rem;padding:0 1rem;font-size:1rem;font-weight:650;display:flex}.period-trigger:active{transform:scale(.97)}.period-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.period-trigger .icon{width:1.1rem;height:1.1rem;color:var(--color-text-secondary);flex:none}.period-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin-top:1rem;display:grid}.period-preset{border-radius:var(--radius-small);background:var(--fill);min-width:0;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;transition:transform var(--motion-fast) var(--ease-out);border:1px solid #0000;gap:.15rem;padding:.7rem .85rem;display:grid}.period-preset:last-child{grid-column:1/-1}.period-preset:active{transform:scale(.97)}.period-preset span{font-size:.9375rem;font-weight:650}.period-preset small{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.period-preset.is-current{border-color:var(--color-accent);background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.period-preset.is-current{background:color-mix(in srgb, var(--color-accent) 12%, var(--color-surface))}}.period-custom{gap:.6rem;margin-top:.45rem;display:grid}.period-custom-toggle{padding-right:2.5rem;position:relative}.period-custom-toggle .icon{width:1.1rem;height:1.1rem;color:var(--color-text-secondary);transition:transform var(--motion-normal) var(--ease-out);position:absolute;top:50%;right:.85rem;transform:translateY(-50%)}.period-custom-body{animation:rise-in var(--motion-normal) var(--ease-out);gap:.6rem;display:grid}.period-custom-hint{color:var(--color-text-secondary);text-align:center;margin:0;font-size:.8125rem}.field{min-width:0;color:var(--color-text-secondary);letter-spacing:.01em;gap:.4rem;font-size:.875rem;font-weight:560;display:grid}.date-field{border-radius:var(--radius-small);background:var(--fill);width:100%;min-width:0;min-height:3.125rem;color:var(--color-text-primary);font:inherit;letter-spacing:normal;text-align:left;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out), box-shadow var(--motion-normal) var(--ease-out);border:1px solid #0000;align-items:center;gap:.55rem;padding:.7rem 1rem;font-size:1rem;font-weight:500;line-height:1.4;display:flex}.date-field .icon{width:1.15rem;height:1.15rem;color:var(--color-text-secondary);flex:none}.date-field span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.date-field:focus-visible,.date-field[aria-expanded=true]{background-color:var(--color-surface);box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px var(--color-accent);outline:none}@supports (color:color-mix(in lab, red, red)){.date-field:focus-visible,.date-field[aria-expanded=true]{box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px color-mix(in srgb, var(--color-accent) 18%, transparent)}}.date-field:disabled{cursor:default;opacity:.45}.date-scrim{z-index:60;animation:fade-in var(--motion-normal) var(--ease-out);transition:opacity .26s var(--ease-out);background:#00000059;border:0;margin:0;padding:0;position:fixed;inset:0}.date-dialog{z-index:61;right:0;bottom:max(.5rem, env(safe-area-inset-bottom,0px));border:1px solid var(--hairline);border-radius:var(--radius-large);background:var(--color-surface);width:min(23rem,100% - 1rem);animation:sheet-in .34s var(--ease-sheet);transition:transform .26s var(--ease-in);margin:0 auto;padding:1rem .9rem .6rem;position:fixed;left:0;box-shadow:0 16px 40px -20px #00000073}.date-dialog:focus{outline:none}.date-scrim.is-closing{opacity:0;pointer-events:none}.date-dialog.is-closing{pointer-events:none;transform:translateY(calc(100% + 2rem))}.date-dialog-title{color:var(--color-text-secondary);letter-spacing:.06em;text-align:center;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:650}.date-dialog-actions{justify-content:flex-end;gap:1.25rem;padding:.35rem .4rem 0;display:flex}.date-dialog-actions .text-button:first-child{margin-right:auto}.date-dialog-actions .text-button:disabled{opacity:.4}.calendar{-webkit-user-select:none;user-select:none;gap:.4rem;display:grid}.calendar-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.35rem;display:grid}.calendar-step{border-radius:var(--radius-round);background:var(--fill);width:2.5rem;height:2.5rem;color:var(--color-text-primary);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out);border:0;place-items:center;padding:0;display:grid}.calendar-step:active{transform:scale(.9)}.calendar-step:disabled{cursor:default;opacity:.3}.calendar-step .icon{width:1.15rem;height:1.15rem}.calendar-title{border-radius:var(--radius-round);min-height:2.5rem;color:var(--color-text-primary);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.3rem;padding:0 .6rem;font-size:1rem;font-weight:650;display:inline-flex}.calendar-title .icon{width:1rem;height:1rem;color:var(--color-text-secondary);transition:transform var(--motion-normal) var(--ease-out)}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));row-gap:.15rem;display:grid}.calendar-weekday{color:var(--color-text-secondary);letter-spacing:.04em;text-align:center;text-transform:uppercase;padding:.2rem 0 .3rem;font-size:.6875rem;font-weight:650}.calendar-day{min-width:0;height:2.6rem;color:var(--color-text-primary);font:inherit;font-family:var(--font-rounded);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:.9375rem;font-weight:560;display:grid}.calendar-day-num{border-radius:var(--radius-round);width:2.4rem;height:2.4rem;transition:background-color var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);place-items:center;display:grid}.calendar-day:active .calendar-day-num{transform:scale(.9)}.calendar-day.is-outside{color:var(--color-text-secondary)}@supports (color:color-mix(in lab, red, red)){.calendar-day.is-outside{color:color-mix(in srgb, var(--color-text-secondary) 65%, transparent)}}.calendar-day.is-today .calendar-day-num{box-shadow:inset 0 0 0 1.5px var(--color-accent);color:var(--color-accent);font-weight:700}.calendar-day.is-between{background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.calendar-day.is-between{background:color-mix(in srgb, var(--color-accent) 14%, transparent)}}.calendar-day.is-start{background:linear-gradient(to right, transparent 50%, var(--color-accent) 50%)}@supports (color:color-mix(in lab, red, red)){.calendar-day.is-start{background:linear-gradient(to right, transparent 50%, color-mix(in srgb, var(--color-accent) 14%, transparent) 50%)}}.calendar-day.is-end{background:linear-gradient(to left, transparent 50%, var(--color-accent) 50%)}@supports (color:color-mix(in lab, red, red)){.calendar-day.is-end{background:linear-gradient(to left, transparent 50%, color-mix(in srgb, var(--color-accent) 14%, transparent) 50%)}}.calendar-day.is-selected .calendar-day-num{background:var(--color-accent);box-shadow:none;color:var(--on-accent);font-weight:700}.calendar-day:disabled{cursor:default;opacity:.3}.calendar-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;padding:.25rem 0;display:grid}.calendar-month{border-radius:var(--radius-small);background:var(--fill);min-height:3rem;color:var(--color-text-primary);font:inherit;cursor:pointer;border:1px solid #0000;padding:.3rem;font-size:.875rem;font-weight:600}.calendar-month.is-current{border-color:var(--color-accent);background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.calendar-month.is-current{background:color-mix(in srgb, var(--color-accent) 12%, var(--color-surface))}}.calendar-month:disabled{cursor:default;opacity:.35}.coach{color:var(--color-text-secondary);text-align:center;margin:.4rem .2rem .2rem;font-size:.875rem;line-height:1.45}.quick-amounts{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.quick-amount{border-radius:var(--radius-round);background:var(--fill);min-height:2rem;color:var(--color-text-primary);font:inherit;border:0;padding:.2rem .8rem;font-weight:650}.coin-palette{border:0;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;display:flex}.coin-swatch{border-radius:var(--radius-round);cursor:pointer;width:1.75rem;height:1.75rem;transition:transform var(--motion-fast) var(--ease-out);border:0;padding:0}.coin-swatch:active{transform:scale(.9)}.coin-swatch.is-chosen{box-shadow:0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-text-primary)}.coin-swatch-auto{background:conic-gradient(#ee4b3b,#ef8a00,#5c9c12,#0e9a8c,#1769d6,#6b3fe0,#ee4b3b)}.remove-sheet .sheet-body{text-align:center;justify-items:center}.remove-choices{gap:.5rem;width:100%;margin-top:.5rem;display:grid}.sheet-remove{justify-self:center;margin-top:.75rem}.coin-swatch[data-color=\#ee4b3b]{background:#ee4b3b}.coin-swatch[data-color=\#ef8a00]{background:#ef8a00}.coin-swatch[data-color=\#d42a72]{background:#d42a72}.coin-swatch[data-color=\#6b3fe0]{background:#6b3fe0}.coin-swatch[data-color=\#0e9a8c]{background:#0e9a8c}.coin-swatch[data-color=\#5c9c12]{background:#5c9c12}.coin-swatch[data-color=\#1769d6]{background:#1769d6}.coin-swatch[data-color=\#11a052]{background:#11a052}.coin-c0{--face-from:#ff9268;--face-to:#ee4b3b}.coin-c1{--face-from:#ffc95e;--face-to:#ef8a00}.coin-c2{--face-from:#ff86bd;--face-to:#d42a72}.coin-c3{--face-from:#bba2ff;--face-to:#6b3fe0}.coin-c4{--face-from:#5fe3d3;--face-to:#0e9a8c}.coin-c5{--face-from:#bde66a;--face-to:#5c9c12}.coin-c6{--face-from:#52c2ff;--face-to:#1769d6}.coin-c7{--face-from:#5fdd92;--face-to:#11a052}.budget-0{--progress:0%;--ring:var(--color-income)}.budget-1{--progress:10%;--ring:var(--color-income)}.budget-2{--progress:20%;--ring:var(--color-income)}.budget-3{--progress:30%;--ring:var(--color-income)}.budget-4{--progress:40%;--ring:var(--color-income)}.budget-5{--progress:50%;--ring:var(--color-income)}.budget-6{--progress:60%;--ring:var(--color-income)}.budget-7{--progress:70%;--ring:var(--color-income)}.budget-8{--progress:80%;--ring:#ef8a00}.budget-9{--progress:90%;--ring:#ef8a00}.budget-10{--progress:100%;--ring:#ef8a00}.budget-over{--progress:100%;--ring:var(--color-expense)}.goal-0{--progress:0%;--ring:#f5b400}.goal-1{--progress:10%;--ring:#f5b400}.goal-2{--progress:20%;--ring:#f5b400}.goal-3{--progress:30%;--ring:#f5b400}.goal-4{--progress:40%;--ring:#f5b400}.goal-5{--progress:50%;--ring:#f5b400}.goal-6{--progress:60%;--ring:#f5b400}.goal-7{--progress:70%;--ring:#f5b400}.goal-8{--progress:80%;--ring:#f5b400}.goal-9{--progress:90%;--ring:#f5b400}.goal-done{--progress:100%;--ring:var(--color-income)}.token[class*=budget-] .token-face:after,.token[class*=goal-] .token-face:after{border-radius:inherit;background:conic-gradient(var(--ring) var(--progress), transparent 0);content:"";pointer-events:none;position:absolute;inset:-5px;-webkit-mask:radial-gradient(circle,#0000 64%,#000 66%);mask:radial-gradient(circle,#0000 64%,#000 66%)}.history,.analytics{gap:.75rem;display:grid}.history-card,.analytics{border:1px solid var(--hairline);border-radius:var(--radius-medium);background:var(--glass);padding:.9rem}.history-card h3,.analytics h3,.history-card-head h3{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.8125rem;font-weight:700}.history-card-head{justify-content:space-between;align-items:center;display:flex}.history-filters{gap:.5rem;min-width:0;display:grid}.history-filters input{border-radius:var(--radius-small);background:var(--fill);width:100%;min-width:0;min-height:2.5rem;color:var(--color-text-primary);font:inherit;border:0;padding:.4rem .85rem;font-size:.875rem}.chip-row{scrollbar-width:none;overscroll-behavior-x:contain;border:0;gap:.35rem;min-width:0;margin:0;padding:0;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.filter-chip{border:1px solid var(--hairline);border-radius:var(--radius-round);min-height:2.1rem;color:var(--color-text-secondary);font:inherit;white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);background:0 0;flex:none;align-items:center;gap:.35rem;padding:.2rem .85rem;font-size:.8125rem;font-weight:600;display:inline-flex}.filter-chip:active{transform:scale(.95)}.filter-chip.is-current{background:var(--color-text-primary);color:var(--color-background);border-color:#0000}.filter-chip .icon{width:.95rem;height:.95rem}.history-list{margin:.55rem 0 0;padding:0;list-style:none;display:grid}.history-row{width:100%;min-height:3rem;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.35rem 0;display:flex}.history-row span{flex:1;min-width:0;display:grid}.history-row strong,.history-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-row small,.recurring-row small{color:var(--color-text-secondary);font-size:.75rem}.history-row b{font-variant-numeric:tabular-nums;flex-shrink:0}.history-dot{border-radius:var(--radius-round);flex:none;width:.5rem;height:.5rem}.history-dot-expense{background:var(--color-expense)}.history-dot-income{background:var(--color-income)}.history-dot-transfer{background:var(--color-transfer)}.history-day{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.history-card .history-day h3{letter-spacing:-.01em;text-transform:none;font-size:.875rem}.history-day span{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:600}.history-summary{color:var(--color-text-secondary);flex-wrap:wrap;gap:.35rem .9rem;margin:0;padding:0 .25rem;font-size:.8125rem;font-weight:600;display:flex}.history-empty{text-align:center;padding:2rem 1rem}.recurring-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem .75rem;padding:.55rem 0;display:grid}.recurring-row+.recurring-row{border-top:1px solid var(--hairline)}.recurring-main,.recurring-amount{min-width:0;display:grid}.recurring-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recurring-amount{text-align:right}.due-badge{border-radius:var(--radius-round);background:var(--color-expense);margin-right:.35rem;padding:0 .4rem}@supports (color:color-mix(in lab, red, red)){.due-badge{background:color-mix(in srgb, var(--color-expense) 16%, transparent)}}.due-badge{color:var(--color-expense);font-style:normal;font-weight:650}.history-actions{grid-column:1/-1;gap:.4rem;display:flex}.chip-button{border-radius:var(--radius-round);background:var(--fill);min-height:2rem;color:var(--color-text-primary);font:inherit;cursor:pointer;border:0;padding:.2rem .85rem;font-size:.8125rem;font-weight:650}.chip-button.is-primary{background:var(--color-accent);color:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip-button.is-primary{color:#04170f}}:root[data-theme=dark] .chip-button.is-primary{color:#04170f}.chip-button.is-danger{color:var(--color-danger);background:0 0;margin-left:auto}.chip-button:disabled{opacity:.55}.chip-button:active{transform:scale(.96)}.swipe-row{position:relative;overflow:hidden}.swipe-delete{border-radius:var(--radius-small);background:var(--color-danger);color:#fff;width:5rem;font:inherit;border:0;font-weight:700;position:absolute;top:.35rem;bottom:.35rem;right:0}.history .history-card{background:var(--color-surface)}.swipe-row .history-row{background:var(--color-surface);transition:transform var(--motion-normal) var(--ease-out);position:relative}.swipe-row.is-open .history-row{transform:translate(-5.2rem)}.donut{flex:none;width:7.5rem;height:7.5rem;transform:rotate(-90deg)}.analytics-switch{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;min-width:0;margin:0;padding:0;display:grid}.analytics-tile{border-radius:var(--radius-small);background:var(--fill);min-width:0;color:var(--color-text-secondary);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);border:1px solid #0000;gap:.1rem;padding:.55rem .7rem;display:grid}.analytics-tile span{letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:650}.analytics-tile strong{font-family:var(--font-rounded);letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:1.15rem;font-weight:700;overflow:hidden}.analytics-tile.is-current{border-color:var(--hairline);background:var(--color-surface);box-shadow:var(--shadow-float);color:var(--color-text-primary)}.analytics-net{color:var(--color-text-secondary);flex-wrap:wrap;align-items:baseline;gap:.2rem .5rem;margin:-.2rem .2rem 0;font-size:.8125rem;display:flex}.analytics-net b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.analytics-saved{color:var(--color-income);margin-left:auto;font-weight:650}.analytics-hero{align-items:center;gap:1rem;display:flex}.analytics-facts{flex:1;gap:.55rem;min-width:0;margin:0;display:grid}.analytics-facts dt{color:var(--color-text-secondary);font-size:.6875rem;font-weight:600}.analytics-facts dd{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.9375rem;font-weight:650;overflow:hidden}.analytics-facts dd.is-good{color:var(--color-income)}.analytics-facts dd.is-bad{color:var(--color-expense)}.analytics-more{justify-self:start;margin:-.4rem 0 0 1.45rem}.page-swipe{touch-action:pan-y}.page-swipe.is-settling{transition:transform .26s var(--ease-spring), opacity .2s var(--ease-out)}.page-swipe.is-enter-next{animation:page-enter-next .3s var(--ease-out)}.page-swipe.is-enter-prev{animation:page-enter-prev .3s var(--ease-out)}@keyframes page-enter-next{0%{opacity:.2;transform:translate(48px)}}@keyframes page-enter-prev{0%{opacity:.2;transform:translate(-48px)}}.donut-track,.donut-arc{fill:none;stroke-width:10px}.donut-arc{transition:stroke-dasharray var(--motion-slow) var(--ease-out), stroke-dashoffset var(--motion-slow) var(--ease-out)}.donut-track{stroke:var(--fill-strong)}.donut-arc{stroke-linecap:butt}.analytics-list{color:var(--color-text-secondary);font-size:.8125rem}.analytics-empty{text-align:center;padding:2rem 0}.analytics-list{gap:.15rem;margin:.2rem 0 0;padding:0;list-style:none;display:grid}.analytics-row{border-radius:var(--radius-small);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.3rem .55rem;padding:.45rem .2rem;display:grid}.analytics-row:disabled{cursor:default}.analytics-row:not(:disabled):active{background:var(--fill)}.analytics-name{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.analytics-share{font-variant-numeric:tabular-nums}.analytics-row b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.analytics-bar{grid-column:2/-1;width:100%;height:4px}.analytics-bar-track{fill:var(--fill-strong)}@media (hover:hover) and (pointer:fine){.analytics-row:not(:disabled):hover{background:var(--fill)}}.swatch{border-radius:var(--radius-round);width:.7rem;height:.7rem}.swatch-0{background:#ee4b3b}.swatch-1{background:#ef8a00}.swatch-2{background:#d42a72}.swatch-3{background:#6b3fe0}.swatch-4{background:#0e9a8c}.swatch-5{background:#5c9c12}.swatch-6{background:#1769d6}.swatch-7{background:#11a052}.swatch-none{background:#8a9490}.ledger-amount-transfer{color:var(--color-transfer)}.analytics-stack{gap:.75rem;min-width:0;display:grid}.analytics-card-head{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.65rem;display:flex}.analytics-card-head .hint{margin:0}.trend-legend{color:var(--color-text-secondary);align-items:center;gap:.3rem;font-size:.75rem;display:inline-flex}.trend-dot{border-radius:var(--radius-round);width:.5rem;height:.5rem;margin-left:.3rem;display:inline-block}.trend-income{background:var(--color-income);fill:var(--color-income)}.trend-expense{background:var(--color-expense);fill:var(--color-expense)}.trend-chart{grid-template-columns:repeat(6,minmax(0,1fr));gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.trend-month{border-radius:var(--radius-small);width:100%;color:var(--color-text-secondary);font:inherit;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-items:center;gap:.3rem;padding:.45rem .2rem .35rem;font-size:.75rem;font-weight:600;display:grid}.trend-month svg{width:70%;height:4rem;display:block}.trend-month.is-current{border-color:var(--hairline);background:var(--fill);color:var(--color-text-primary)}.budget-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.budget-row{--meter:var(--color-income);gap:.35rem;min-width:0;display:grid}.budget-row.is-warn{--meter:#ef8a00}.budget-row.is-over{--meter:var(--color-expense)}.budget-row.is-goal{--meter:#f5b400}.budget-row-head{justify-content:space-between;align-items:baseline;gap:.5rem;min-width:0;font-size:.9375rem;display:flex}.budget-row-head span{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.budget-row-head b{font-family:var(--font-rounded);flex:none;font-weight:700}.budget-row-head small{color:var(--color-text-secondary);font-weight:600}.budget-meter{width:100%;height:.4rem;display:block}.budget-meter-track{fill:var(--fill)}.budget-meter-fill{fill:var(--meter)}.budget-row p{color:var(--color-text-secondary);margin:0;font-size:.8125rem;line-height:1.4}.budget-row.is-over p{color:var(--color-expense)}.settings-warn{color:#ef8a00}.file-pick{border:1.5px dashed var(--hairline-strong,var(--hairline));border-radius:var(--radius-small);background:var(--fill);min-height:3.25rem;color:var(--color-accent);text-align:center;cursor:pointer;place-items:center;padding:.7rem 1rem;font-weight:600;display:grid;position:relative}.file-pick span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.file-pick input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-pick:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.import-fallback,.goal-fields,.import-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.import-preview{margin:0}.import-preview div{border-radius:var(--radius-small);background:var(--fill);gap:.15rem;padding:.5rem .65rem;display:grid}.import-preview div:first-child{grid-column:1/-1}.import-preview dt{color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:650}.import-preview dd{font-family:var(--font-rounded);margin:0;font-size:1rem;font-weight:700}.rate-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.rate-row input[aria-invalid=true]{box-shadow:0 0 0 1px var(--color-danger)}.archive-zone label{min-width:0;color:var(--color-text-secondary);gap:.4rem;font-size:.875rem;font-weight:560;display:grid}.archive-zone input{border-radius:var(--radius-small);background:var(--fill);width:100%;min-width:0;min-height:3.125rem;color:var(--color-text-primary);font:inherit;border:0;padding:.7rem 1rem;font-size:1rem}.archive-zone input:disabled{opacity:.5}.note-tag{background:var(--color-accent);border-radius:.3em;padding:0 .2em}@supports (color:color-mix(in lab, red, red)){.note-tag{background:color-mix(in srgb, var(--color-accent) 14%, transparent)}}.note-tag{color:var(--color-accent);font-weight:600}.tag-row .filter-chip{color:var(--color-accent)}.tag-row .filter-chip.is-current{background:var(--color-accent);color:#fff}.note-tag.is-chip{margin-left:.35em}.row-clip{vertical-align:-.15em;align-items:center;gap:.1rem;margin-left:.3em;font-style:normal;display:inline-flex}.row-clip .icon{width:.85rem;height:.85rem}.tag-picker{gap:.5rem;min-width:0;display:grid}.tag-line{scrollbar-width:none;border:0;gap:.4rem;min-width:0;margin:0 -.15rem;padding:.1rem .15rem;display:flex;overflow-x:auto}.tag-line::-webkit-scrollbar{display:none}.tag-line.is-wrap{flex-wrap:wrap;overflow:visible}.tag-chip{border:1px solid var(--hairline);border-radius:var(--radius-round);min-height:2.1rem;color:var(--color-accent);font:inherit;white-space:nowrap;touch-action:manipulation;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out), color var(--motion-fast) var(--ease-out), transform var(--motion-fast) var(--ease-out);background:0 0;flex:none;align-items:center;gap:.3rem;padding:.2rem .8rem;font-size:.8125rem;font-weight:600;display:inline-flex}.tag-chip:active{transform:scale(.95)}.tag-chip:disabled{opacity:.45;cursor:default}.tag-chip .icon{width:.9rem;height:.9rem}.tag-chip.is-on{background:var(--color-accent);color:var(--color-background);border-color:#0000}.tag-chip.is-repeat{background:var(--fill);color:var(--color-text-primary);border-color:#0000}.tag-chip.is-add{color:var(--color-text-secondary);border-style:dashed}.tag-chip.is-add.is-open{color:var(--color-text-primary);border-style:solid}.tag-chip.is-lookalike{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.tag-chip.is-lookalike{border-color:color-mix(in srgb, var(--color-accent) 45%, transparent)}}.tag-chip.is-lookalike{background:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.tag-chip.is-lookalike{background:color-mix(in srgb, var(--color-accent) 8%, transparent)}}.tag-chip.is-create{background:var(--color-accent);border-color:#0000}@supports (color:color-mix(in lab, red, red)){.tag-chip.is-create{background:color-mix(in srgb, var(--color-accent) 13%, transparent)}}.tag-search{gap:.5rem;display:grid}.tag-search-field{position:relative}.tag-search-field .icon{width:1.1rem;height:1.1rem;color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.tag-search-field input{min-height:2.75rem;padding-left:2.5rem}.tag-empty{color:var(--color-text-secondary);padding:.45rem .2rem;font-size:.8125rem}.attach-button{border-radius:var(--radius-small);background:var(--fill);width:3.125rem;height:3.125rem;color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out);place-items:center;position:relative}.attach-button:active{background:var(--fill-strong)}.attach-button:focus-within{box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.attach-button:focus-within{box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px color-mix(in srgb, var(--color-accent) 18%, transparent)}}.attach-button.is-working{opacity:.6;cursor:progress}.attach-button.is-disabled{opacity:.45;cursor:default}.attach-button>input{clip-path:inset(50%);opacity:0;border:0;width:1px;min-width:0;height:1px;min-height:0;margin:-1px;padding:0;position:absolute;overflow:hidden}.attach-button .icon{width:1.3rem;height:1.3rem}.attach-count{border-radius:var(--radius-round);background:var(--color-accent);min-width:1rem;height:1rem;color:var(--color-background);letter-spacing:0;place-items:center;padding:0 .2rem;font-size:.6875rem;font-weight:700;display:grid;position:absolute;top:.3rem;right:.3rem}.attach-strip{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.attach-item{border-radius:var(--radius-small);background:var(--fill);animation:rise-in var(--motion-normal) var(--ease-out);align-items:center;gap:.6rem;padding:.35rem;display:flex}.attach-thumb{background:var(--fill-strong);width:2.75rem;height:2.75rem;color:var(--color-text-secondary);cursor:zoom-in;border:0;border-radius:.6rem;flex:none;place-items:center;padding:0;display:grid;overflow:hidden}.attach-thumb img{object-fit:cover;width:100%;height:100%;display:block}.attach-file{place-items:center;font-size:.625rem;font-weight:700;display:grid}.attach-file .icon{width:1.1rem;height:1.1rem}.attach-meta{min-width:0;color:var(--color-text-primary);flex:1;gap:.05rem;font-size:.875rem;font-weight:560;display:grid}.attach-meta>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attach-meta small{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.attach-remove{width:2.25rem;height:2.25rem;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.attach-remove .icon{width:1rem;height:1rem}.note-box{align-items:flex-start;gap:.5rem;display:flex}.note-box textarea{border-radius:var(--radius-small);background:var(--fill);min-width:0;min-height:3.125rem;max-height:10rem;color:var(--color-text-primary);font:inherit;letter-spacing:normal;field-sizing:content;resize:none;border:1px solid #0000;flex:1;padding:.7rem 1rem;font-size:1rem;font-weight:400;line-height:1.4}.note-box textarea:focus{background-color:var(--color-surface);box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px var(--color-accent);outline:none}@supports (color:color-mix(in lab, red, red)){.note-box textarea:focus{box-shadow:0 0 0 1px var(--color-accent), 0 0 0 5px color-mix(in srgb, var(--color-accent) 18%, transparent)}}.viewer{z-index:70;color:#fff;animation:fade-in var(--motion-normal) var(--ease-out);background:#000000e0;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid;position:fixed;inset:0}.viewer:focus{outline:none}.viewer-backdrop{cursor:zoom-out;background:0 0;border:0;padding:0;position:absolute;inset:0}.viewer-body{min-height:0;padding:max(1rem, env(safe-area-inset-top,0px)) 1rem .5rem;pointer-events:none;grid-template-columns:minmax(0,1fr);place-items:center;display:grid;position:relative}.viewer-image{object-fit:contain;pointer-events:auto;border-radius:.75rem;max-width:100%;max-height:calc(100dvh - 6.5rem)}.viewer-note{align-items:center;gap:.5rem;margin:0;font-size:.9375rem;display:flex}.viewer-bar{width:min(40rem,100%);padding:.75rem 1rem max(.75rem, env(safe-area-inset-bottom,0px));align-items:center;gap:.5rem;margin:0 auto;display:flex;position:relative}.viewer-name{text-overflow:ellipsis;white-space:nowrap;opacity:.8;flex:1;min-width:0;font-size:.875rem;overflow:hidden}.viewer-action{border-radius:var(--radius-round);color:#fff;min-height:2.5rem;font:inherit;cursor:pointer;background:#ffffff24;border:0;flex:none;align-items:center;gap:.35rem;padding:.4rem .9rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.viewer-action .icon{width:1rem;height:1rem}.tags-panel{gap:.6rem;display:grid}.tags-search{display:block;position:relative}.tags-search .icon{width:1.1rem;height:1.1rem;color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.tags-search input{border-radius:var(--radius-small);background:var(--fill);width:100%;min-height:2.75rem;color:var(--color-text-primary);font:inherit;border:1px solid #0000;padding:.55rem 1rem .55rem 2.5rem;font-size:1rem}.tags-search input:focus{background-color:var(--color-surface);box-shadow:0 0 0 1px var(--color-accent);outline:none}.tags-list{margin:0;padding:0;list-style:none;display:grid}.tags-item+.tags-item{border-top:1px solid var(--hairline)}.tags-row{width:100%;color:var(--color-text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.6rem .1rem;display:grid}.tags-row .icon{width:1rem;height:1rem;color:var(--color-text-secondary)}.tags-name{color:var(--color-accent);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:650;overflow:hidden}.tags-meta{min-width:0;color:var(--color-text-secondary);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.35;overflow:hidden}.tags-edit{gap:.5rem;padding:0 0 .8rem;display:grid}.tags-actions{align-items:center;gap:.5rem;display:flex}.chip-button.is-danger.is-armed{background:var(--color-danger);color:#fff}.tag-coverage-label{color:var(--color-text-secondary);font-size:.75rem;font-weight:600}.tag-coverage{width:100%;height:6px;margin-bottom:.55rem;display:block}.tag-coverage-fill{fill:var(--color-accent)}.tag-spend{gap:.1rem;margin:0;padding:0;list-style:none;display:grid}.tag-spend-row{border-radius:var(--radius-small);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1.4rem minmax(0,1fr) auto;align-items:center;gap:.25rem .55rem;padding:.5rem .2rem;display:grid}.tag-spend-row:active{background:var(--fill)}.tag-spend-rank{background:var(--fill);width:1.4rem;height:1.4rem;color:var(--color-text-secondary);border-radius:50%;place-items:center;font-size:.6875rem;font-weight:700;display:grid}.tag-spend li:first-child .tag-spend-rank{background:var(--color-accent);color:var(--color-background)}.tag-spend-main,.tag-spend-sum{gap:.05rem;min-width:0;display:grid}.tag-spend-main strong{color:var(--color-accent);text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:650;overflow:hidden}.tag-spend-main small,.tag-spend-sum small{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.tag-spend-sum{justify-items:end}.tag-spend-sum b{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.tag-spend-sum small.is-bad{color:var(--color-expense);font-weight:650}.tag-spend-sum small.is-good{color:var(--color-income);font-weight:650}.tag-spend-sum small.tag-spend-new{color:var(--color-transfer);font-weight:650}.tag-spend-row .analytics-bar{grid-column:2/-1}.tag-spend-more{justify-self:start;margin:.2rem 0 .4rem 2.15rem}@media (hover:hover) and (pointer:fine){.tag-spend-row:hover{background:var(--fill)}}.tag-merges{border-radius:var(--radius-small);background:var(--color-accent);gap:.5rem;padding:.75rem;display:grid}@supports (color:color-mix(in lab, red, red)){.tag-merges{background:color-mix(in srgb, var(--color-accent) 9%, transparent)}}.tag-merges h5{color:var(--color-text-primary);align-items:center;gap:.4rem;margin:0;font-size:.875rem;font-weight:650;display:flex}.tag-merges h5 .icon{width:1rem;height:1rem;color:var(--color-accent)}.tag-merges ul{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.tag-merge{gap:.4rem;display:grid}.tag-merge+.tag-merge{border-top:1px solid var(--hairline);padding-top:.65rem}.tag-merge-pair{color:var(--color-text-secondary);flex-wrap:wrap;align-items:baseline;gap:.15rem .4rem;margin:0;font-size:.9375rem;display:flex}.tag-merge-from{color:var(--color-text-secondary);text-decoration:line-through}@supports (color:color-mix(in lab, red, red)){.tag-merge-from{-webkit-text-decoration-color:color-mix(in srgb, currentColor 50%, transparent);-webkit-text-decoration-color:color-mix(in srgb, currentColor 50%, transparent);-webkit-text-decoration-color:color-mix(in srgb, currentColor 50%, transparent);text-decoration-color:color-mix(in srgb, currentColor 50%, transparent)}}.tag-merge-to{color:var(--color-accent);font-weight:650}.tag-merge small{flex-basis:100%;font-size:.75rem}.tag-merge .chip-button.is-danger,.tag-merge .chip-button{margin-left:0}.flow-icon{width:.95rem;height:.95rem}.delete-icon{stroke-width:3px;width:.9rem;height:.9rem}.is-syncing .sync-icon{animation:1s linear infinite sync-spin}.remove-face{width:3.5rem;height:3.5rem}.coin-face{pointer-events:auto}.token-account .coin-face,.token-income .coin-face,.is-arranging .coin-face{touch-action:none}.is-arranging .coin-face{animation:.15s ease-in-out infinite alternate coin-jiggle}.is-arranging .lane-cell:nth-child(2n) .coin-face{animation-duration:.17s;animation-delay:-.07s}.is-arranging .lane-cell:nth-child(3n) .coin-face{animation-duration:.19s;animation-direction:alternate-reverse}@media (prefers-reduced-motion:reduce){.is-syncing .sync-icon,.is-arranging .lane-cell .coin-face,.sync-light.is-offline:after{animation:none}.is-arranging .lane-cell .coin-face{outline:2px dashed var(--color-text-primary)}@supports (color:color-mix(in lab, red, red)){.is-arranging .lane-cell .coin-face{outline:2px dashed color-mix(in srgb, var(--color-text-primary) 35%, transparent)}}.is-arranging .lane-cell .coin-face{outline-offset:3px}}.passkey-icon{flex:none;width:1.45rem;height:1.45rem}.period-custom-toggle[aria-expanded=true] .icon{transform:translateY(-50%)rotate(180deg)}.calendar-title[aria-expanded=true] .icon{transform:rotate(180deg)}.haptic-switch{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:-100px;overflow:hidden}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
