.manual-card-entry{container-type:inline-size;margin-top:12px;border:1px solid rgba(142,213,255,.25);border-radius:11px;background:#8ed5ff09}.manual-card-entry>summary{display:grid;min-height:48px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:9px 11px;color:var(--accent-strong);font-size:var(--type-support);font-weight:750;cursor:pointer;list-style-position:inside}.manual-card-entry>summary::marker{color:var(--accent)}.manual-card-entry>summary small{min-width:0;color:var(--muted);font-size:var(--type-helper);font-weight:500;line-height:1.45;word-break:keep-all}.manual-card-entry[open]>summary{border-bottom:1px solid rgba(64,83,111,.58);background:#8ed5ff09}.manual-card-entry-form{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);gap:9px;padding:11px}.manual-card-entry-form label{display:grid;min-width:0;gap:4px}.manual-card-entry-form label>span{color:var(--muted-strong);font-size:var(--type-helper);font-weight:700}.manual-card-entry-form input,.manual-card-entry-form select{width:100%;min-width:0;min-height:44px;padding-top:8px;padding-bottom:8px;font-size:max(16px,var(--type-support))}.manual-card-entry-amount{position:relative}.manual-card-entry-amount input{padding-right:30px;text-align:right}.manual-card-entry-amount>small{position:absolute;right:10px;bottom:13px;color:var(--muted);font-size:var(--type-helper);pointer-events:none}.manual-card-entry-duplicate,.manual-card-entry-error{margin:0;padding:8px 9px;border-radius:8px;font-size:var(--type-helper);line-height:1.5;word-break:keep-all}.manual-card-entry-duplicate{border:1px solid rgba(242,201,119,.35);color:#ffe0a0;background:#f2c97712}.manual-card-entry-error{border:1px solid rgba(255,159,159,.34);color:#ffbcbc;background:#ff9f9f0f}.manual-card-entry-actions{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:9px;padding-top:2px}.manual-card-entry-actions>span{min-width:0;overflow:hidden;color:var(--muted);font-size:var(--type-helper);text-overflow:ellipsis;white-space:nowrap}.manual-card-entry-actions button{min-width:126px;min-height:44px;flex:none}@container (min-width: 420px){.manual-card-entry-form{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-card-entry-merchant,.manual-card-entry-amount,.manual-card-entry-duplicate,.manual-card-entry-error,.manual-card-entry-actions{grid-column:1 / -1}}@container (min-width: 720px){.manual-card-entry-form{grid-template-columns:repeat(12,minmax(0,1fr))}.manual-card-entry-form label{grid-column:span 3}.manual-card-entry-date{grid-column:span 3!important}.manual-card-entry-merchant{grid-column:span 5!important}.manual-card-entry-amount{grid-column:span 4!important}.manual-card-entry-duplicate,.manual-card-entry-error,.manual-card-entry-actions{grid-column:1 / -1}}@media(max-width:420px){.manual-card-entry>summary{grid-template-columns:minmax(0,1fr);gap:2px}.manual-card-entry-actions{align-items:stretch;flex-direction:column}.manual-card-entry-actions>span{width:100%;white-space:normal}.manual-card-entry-actions button{width:100%}}.auth-shell{position:relative;isolation:isolate;display:grid;min-width:320px;min-height:100dvh;place-items:center;overflow:hidden;padding:calc(24px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));color:var(--text, #f5f8fc);background:radial-gradient(circle at 50% 12%,rgba(142,213,255,.1),transparent 36%),var(--canvas, #0d1524);font-family:var(--font-ui, "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", system-ui, sans-serif)}.auth-shell:before{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;content:"";opacity:.18;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 31px,rgba(142,213,255,.12) 31px,rgba(142,213,255,.12) 32px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 76%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 76%,transparent)}.auth-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-card{position:relative;width:min(100%,420px);padding:28px 26px 24px 34px;overflow:hidden;border:1px solid var(--line, #2a3b56);border-radius:18px;background:var(--surface, #162238);box-shadow:0 24px 64px #0107125c;animation:auth-card-enter .24s ease-out both}.auth-card:before{position:absolute;top:0;bottom:0;left:12px;width:5px;content:"";background:radial-gradient(circle,var(--accent, #8ed5ff) 0 2px,transparent 2.5px) 50% 8px / 5px 18px repeat-y;opacity:.58}.auth-brand{display:flex;align-items:center;gap:11px}.auth-mark{display:grid;width:42px;height:42px;flex:none;place-items:center;border:1px solid rgba(142,213,255,.42);border-radius:12px;color:var(--accent-strong, #c3ecff);background:#8ed5ff14}.auth-mark svg{width:31px;height:31px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.auth-kicker,.auth-name,.auth-heading p,.auth-help,.auth-error,.auth-private-note,.auth-card--checking p{margin:0}.auth-kicker{color:var(--muted, #aab9ca);font-size:12px;font-weight:600;letter-spacing:.02em}.auth-name{margin-top:1px;color:var(--text, #f5f8fc);font-size:16px;font-weight:750;letter-spacing:-.02em}.auth-heading{margin-top:28px}.auth-heading h1{margin:0;color:var(--text, #f5f8fc);font-size:clamp(25px,8vw,30px);font-weight:760;letter-spacing:-.045em;line-height:1.2}.auth-heading p{max-width:33ch;margin-top:9px;color:var(--muted-strong, #c9d5e1);font-size:14px;line-height:1.55}.auth-form{display:grid;gap:15px;margin-top:26px}.auth-field{display:grid;gap:7px}.auth-field label{color:var(--muted-strong, #c9d5e1);font-size:13px;font-weight:700}.auth-field input{width:100%;min-width:0;min-height:50px;padding:12px 13px;border:1px solid var(--line-strong, #40536f);border-radius:11px;outline:none;color:var(--text, #f5f8fc);background:var(--surface-quiet, #111d30);font:inherit;font-size:16px;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.auth-field input:hover:not(:disabled){border-color:#58708f}.auth-field input:focus-visible{border-color:var(--accent, #8ed5ff);outline:3px solid var(--focus, #fff2b8);outline-offset:2px;box-shadow:0 0 0 5px #8ed5ff1a}.auth-field input[aria-invalid=true]{border-color:var(--danger, #ff7f8b)}.auth-field input:disabled{cursor:wait;opacity:.65}.auth-help{margin-top:-4px;color:var(--muted, #aab9ca);font-size:12px;line-height:1.45}.auth-error{margin-top:-4px;padding:9px 10px;border:1px solid rgba(255,127,139,.36);border-radius:9px;color:var(--danger-soft, #ffd0d4);background:#ff7f8b14;font-size:13px;font-weight:600;line-height:1.45}.auth-submit{display:inline-flex;width:100%;min-height:50px;align-items:center;justify-content:center;gap:9px;margin-top:2px;padding:12px 16px;border:0;border-radius:11px;color:var(--accent-ink, #082033);background:var(--accent, #8ed5ff);box-shadow:0 8px 22px #2177aa2e;font:inherit;font-size:15px;font-weight:780;cursor:pointer;transition:transform .12s ease,background .12s ease,box-shadow .12s ease}.auth-submit:hover:not(:disabled){background:var(--accent-strong, #c3ecff);box-shadow:0 10px 26px #2177aa3d}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:focus-visible{outline:3px solid var(--focus, #fff2b8);outline-offset:3px}.auth-submit:disabled{cursor:wait;opacity:.72}.auth-private-note{margin-top:20px;padding-top:15px;border-top:1px solid var(--line, #2a3b56);color:var(--muted, #aab9ca);font-size:12px;line-height:1.45}.auth-spinner{width:16px;height:16px;flex:none;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:auth-spin .7s linear infinite}.auth-card--checking{display:flex;min-height:164px;align-items:center;justify-content:center;gap:12px;color:var(--muted-strong, #c9d5e1)}.auth-card--checking:before{opacity:.34}.auth-spinner--large{width:20px;height:20px;color:var(--accent, #8ed5ff)}@keyframes auth-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-spin{to{transform:rotate(360deg)}}@media(max-width:359px){.auth-shell{padding-right:12px;padding-left:12px}.auth-card{padding:23px 18px 21px 27px;border-radius:15px}.auth-card:before{left:9px}}@media(prefers-reduced-motion:reduce){.auth-card,.auth-spinner{animation:none}.auth-field input,.auth-submit{transition:none}}:root{color-scheme:dark;--canvas: #0d1524;--surface: #162238;--surface-raised: #1d2b43;--surface-quiet: #111d30;--line: #2a3b56;--line-strong: #40536f;--text: #f5f8fc;--muted: #aab9ca;--muted-strong: #c9d5e1;--accent: #8ed5ff;--accent-strong: #c3ecff;--accent-ink: #082033;--positive: #78d7aa;--positive-soft: #c4f1d9;--positive-tint: rgba(120, 215, 170, .12);--expense: #ff98a3;--expense-soft: #ffd0d4;--expense-tint: rgba(255, 152, 163, .12);--kind-fixed: #f2c977;--kind-variable: #bcb5ff;--method-card: #c1b9ff;--method-transfer: #86d3f8;--danger: #ff7f8b;--danger-soft: #ffd0d4;--focus: #fff2b8;--chart-axis: #aab9ca;--chart-grid: #334660;--chart-card: #a9a4ff;--font-ui: "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--type-helper: 13px;--type-support: 14px;--type-item: 16px;--type-heading: 20px;--type-amount-inline: 16px;--type-amount-hero: 32px;--shadow: 0 12px 28px rgba(1, 7, 18, .22)}*{box-sizing:border-box}html{background:var(--canvas);-webkit-text-size-adjust:100%}body{min-width:320px;margin:0;overflow-x:hidden;background:var(--canvas);color:var(--text);font-family:var(--font-ui);font-size:var(--type-item);font-weight:400;line-height:1.5}button,input,select,textarea{font:inherit}button{border:0;color:inherit;background:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.55}button:not(:disabled):active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}input,select{width:100%;min-height:48px;padding:11px 12px;border:1px solid var(--line-strong);border-radius:10px;color:var(--text);background:var(--surface-quiet);font-size:max(16px,var(--type-item))}select{color:var(--text);background-color:var(--surface-quiet)}input::placeholder{color:#8294aa}input[aria-invalid=true]{border-color:var(--danger)}input[type=checkbox]{width:20px;height:20px;min-height:0;padding:0;accent-color:var(--accent)}strong,.value,.month-overview-amount,.month-equation dd,.section-total strong,.group-total strong,.row-amount,.timeline-amount,.confirmation-metrics strong{font-variant-numeric:tabular-nums}.app{position:relative;width:min(100%,560px);min-height:100dvh;margin:0 auto;padding-bottom:calc(84px + env(safe-area-inset-bottom));font-size:var(--type-item)}.app[data-type-helper=compact]{--type-helper: 12px}.app[data-type-helper=standard]{--type-helper: 13px}.app[data-type-helper=large]{--type-helper: 14px}.app[data-type-item=compact]{--type-item: 14px;--type-support: 13px}.app[data-type-item=standard]{--type-item: 16px;--type-support: 14px}.app[data-type-item=large]{--type-item: 18px;--type-support: 16px}.app[data-type-heading=compact]{--type-heading: 18px}.app[data-type-heading=standard]{--type-heading: 20px}.app[data-type-heading=large]{--type-heading: 22px}.app[data-type-amount=compact]{--type-amount-inline: 14px;--type-amount-hero: 28px}.app[data-type-amount=standard]{--type-amount-inline: 16px;--type-amount-hero: 32px}.app[data-type-amount=large]{--type-amount-inline: 18px;--type-amount-hero: 36px}.app--setup{padding-bottom:env(safe-area-inset-bottom)}.app-rail{display:contents}.skip-link{position:fixed;top:8px;left:12px;z-index:100;padding:10px 12px;border-radius:9px;color:var(--accent-ink);background:var(--accent);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}header{position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(64,83,111,.72);background:#0d1524f0;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.month-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center}.header-title{min-width:0;text-align:center}.header-title-meta{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:center;gap:3px 5px}.app-version{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:.015em;line-height:1;opacity:.72}.sync-chip{display:inline-flex;min-width:0;max-width:100%;min-height:18px;align-items:center;gap:4px;padding:2px 6px;overflow:hidden;border:1px solid rgba(142,213,255,.34);border-radius:999px;color:var(--accent-strong);background:#8ed5ff14;font-size:10px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.sync-chip>span{width:6px;height:6px;flex:none;border-radius:999px;background:currentColor}.sync-chip[data-tone=connected]{border-color:#78d7aa6b;color:var(--positive-soft);background:#78d7aa17}.sync-chip[data-tone=offline]{border-color:#f2c9776b;color:#f8d99b;background:#f2c97714}.sync-chip[data-tone=attention]{border-color:#ff7f8b70;color:var(--danger-soft);background:#ff7f8b17}.sync-chip[data-tone=working]>span{animation:sync-pulse 1.4s ease-in-out infinite}.header-title p,.eyebrow,.section-kicker{display:block;margin:0;color:var(--muted);font-size:var(--type-helper);font-weight:600;letter-spacing:0}.header-title h1{margin:1px 0 0;color:var(--text);font:inherit;font-size:var(--type-heading);font-weight:700;letter-spacing:-.02em}.month-switcher{display:grid;width:44px;height:44px;place-items:center;border-radius:10px;color:var(--text);font-size:28px;line-height:1}.month-switcher:not(:disabled):hover{background:#ffffff0f}main{padding:20px 16px;scroll-margin-top:84px}.app-status,.inline-status{margin:0 0 12px;padding:10px 12px;border:1px solid rgba(142,213,255,.4);border-radius:10px;color:var(--accent-strong);background:#8ed5ff17;font-size:var(--type-support);line-height:1.45}.inline-status{margin:12px 0}.tabbar{position:fixed;z-index:12;right:0;bottom:0;left:0;display:flex;width:min(100%,560px);min-height:calc(68px + env(safe-area-inset-bottom));margin:0 auto;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line-strong);background:#162238fa;box-shadow:0 -12px 30px #0107122e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.tabbar button{display:grid;flex:1;min-width:0;min-height:52px;place-content:center;gap:3px;border-radius:10px;color:var(--muted);font-size:var(--type-helper);font-weight:600}.tabbar svg{width:20px;height:20px;margin:0 auto}.tabbar button:not(:disabled):hover{color:var(--text);background:#ffffff0f}.tabbar button.active{color:var(--accent-strong);background:#8ed5ff1f}.tabbar button:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.tabbar button.active:focus-visible{outline-color:#fff}.app-update{position:fixed;z-index:14;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));left:16px;display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px 8px 14px;border:1px solid rgba(142,213,255,.48);border-radius:12px;color:var(--text);background:var(--surface-raised);box-shadow:var(--shadow);font-size:var(--type-support);font-weight:600}.app-update button{min-height:36px;flex:none;padding:7px 10px;border-radius:8px;color:var(--accent-ink);background:var(--accent);font-size:var(--type-support);font-weight:700}.app--setup .app-update{bottom:calc(16px + env(safe-area-inset-bottom))}.btn-primary,.btn-plain,.btn-danger{min-height:48px;padding:11px 14px;border-radius:11px;font-size:max(16px,var(--type-item));font-weight:700;line-height:1.25}.btn-primary{color:var(--accent-ink);background:var(--accent)}.btn-primary:not(:disabled):hover{background:#b4e4ff}.btn-plain{border:1px solid var(--line-strong);color:var(--text);background:#ffffff05}.btn-plain:not(:disabled):hover{border-color:var(--muted);background:#ffffff0f}.btn-income{border-color:#78d7aa94;color:var(--positive-soft);background:var(--positive-tint)}.btn-income:not(:disabled):hover{border-color:var(--positive);background:#78d7aa33}.btn-danger{border:1px solid rgba(255,127,139,.76);color:var(--danger-soft);background:#ff7f8b12}.btn-danger:not(:disabled):hover{background:#ff7f8b29}.wide-action{width:100%}.month-screen,.cashflow-screen,.trends-screen,.month-context,.month-primary,.ledger-board{display:grid;gap:12px}.ledger-flow-lane,.ledger-flow-lane-sections{display:contents}.ledger-flow-lane-head,.month-ledger-heading,.desktop-entry-dock,.desktop-schedule-link{display:none}.month-overview{--overview-accent: var(--accent);--overview-tint: rgba(142, 213, 255, .12);--overview-border: var(--line-strong);padding:20px;border:1px solid var(--overview-border);border-radius:16px;background:linear-gradient(135deg,var(--overview-tint),var(--surface) 62%);box-shadow:var(--shadow)}.month-overview--positive{--overview-accent: var(--positive);--overview-tint: var(--positive-tint);--overview-border: rgba(120, 215, 170, .48)}.month-overview--negative{--overview-accent: var(--expense);--overview-tint: var(--expense-tint);--overview-border: rgba(255, 152, 163, .48)}.month-overview h2{margin:4px 0 0;color:var(--text);font-size:var(--type-heading);font-weight:700;letter-spacing:-.025em}.month-overview-amount{margin:7px 0 12px;color:var(--overview-accent);font-size:var(--type-amount-hero);font-weight:700;letter-spacing:-.05em;line-height:1.15;overflow-wrap:anywhere}.neg{color:var(--danger)}.month-health{display:flex;min-height:38px;align-items:center;gap:8px;margin:0 0 18px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;color:var(--muted-strong);background:#ffffff06;font-size:var(--type-support);font-weight:600;line-height:1.35}.month-health-mark{display:grid;width:20px;height:20px;flex:none;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:var(--type-helper);font-weight:800;line-height:1}.month-health--positive{color:var(--positive-soft);border-color:#78d7aa61;background:#78d7aa14}.month-health--negative{color:var(--danger-soft);border-color:#ff7f8b6b;background:#ff7f8b14}.month-health--balanced{color:var(--accent-strong);border-color:#8ed5ff61;background:#8ed5ff14}.month-equation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid var(--line)}.month-equation div{min-width:0;padding-top:12px}.month-equation div+div{padding-left:12px;border-left:1px solid var(--line)}.month-equation dt{color:var(--muted);font-size:var(--type-helper);font-weight:500}.month-equation dd{margin:3px 0 0;color:var(--text);font-size:var(--type-amount-inline);font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}.month-equation .equation-carryover dd{color:var(--accent-strong)}.month-equation .equation-income dd{color:var(--positive-soft)}.month-equation .equation-expense dd{color:var(--expense-soft)}.quick-record{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.quick-record-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.quick-record-head>p{margin:0;color:var(--muted-strong);font-size:var(--type-support);font-weight:600}.quick-record-intent{flex:none;padding:3px 6px;border:1px solid rgba(188,181,255,.5);border-radius:999px;color:var(--kind-variable);background:#bcb5ff1a;font-size:var(--type-helper);font-weight:700;line-height:1.2}.quick-record-intent--fixed{border-color:#f2c97785;color:var(--kind-fixed);background:#f2c9771a}.quick-record-kind{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:8px}.quick-record-kind>span{color:var(--muted);font-size:var(--type-helper);font-weight:700}.quick-record-kind>div,.quick-record-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-kind-button{min-height:44px;border:1px solid var(--line-strong);border-radius:9px;color:var(--muted-strong);background:#ffffff05;font-size:var(--type-support);font-weight:700}.quick-kind-button--variable[aria-pressed=true]{border-color:#bcb5ffb8;color:#ddd9ff;background:#bcb5ff24}.quick-kind-button--fixed[aria-pressed=true]{border-color:#f2c977b3;color:#ffe7a4;background:#f2c97721}.quick-kind-button:not(:disabled):hover{border-color:var(--muted);background:#ffffff0f}.quick-record .btn-primary,.quick-record .btn-plain{min-width:0}.attention-callout{display:flex;width:100%;min-height:52px;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(142,213,255,.35);border-radius:12px;color:var(--text);background:#8ed5ff14;text-align:left}.attention-callout .sub{min-width:0;color:var(--muted-strong);font-size:var(--type-support)}.attention-arrow{margin-left:auto;color:var(--accent);font-size:24px;line-height:1}.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.kpis--two{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{min-width:0;padding:14px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.kpi .label{color:var(--muted);font-size:var(--type-helper);font-weight:500;line-height:1.4}.kpi .value{margin-top:6px;color:var(--text);font-size:var(--type-amount-inline);font-weight:700;letter-spacing:-.025em;overflow-wrap:anywhere}.section{--ledger-amount-track: minmax(124px, .78fr);--row-meta-track: clamp(58px, 17vw, 76px);--row-amount-track: clamp(84px, 24vw, 104px);--section-accent: var(--accent);--section-tint: rgba(142, 213, 255, .12);--section-group-tint: rgba(142, 213, 255, .055);--entry-amount: var(--accent-strong);--kind-accent: var(--accent);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface);scroll-margin-top:84px}.settings-disclosure>summary,.card-total-disclosure>summary,.form-disclosure>summary{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.section--expense{--section-accent: var(--expense);--section-tint: var(--expense-tint);--section-group-tint: rgba(255, 152, 163, .055);--entry-amount: var(--expense-soft)}.section--income{--section-accent: var(--positive);--section-tint: var(--positive-tint);--section-group-tint: rgba(120, 215, 170, .055);--entry-amount: var(--positive-soft)}.section--fixed{--kind-accent: var(--kind-fixed)}.section--variable{--kind-accent: var(--kind-variable)}.section>summary{display:grid;min-height:62px;grid-template-columns:minmax(0,1fr) var(--ledger-amount-track);align-items:center;column-gap:10px;padding:9px 14px 9px 11px;border-inline-start:3px solid var(--section-accent);color:var(--text);background:linear-gradient(90deg,var(--section-tint),transparent 74%);cursor:pointer;list-style:none}.section>summary::-webkit-details-marker,.settings-disclosure>summary::-webkit-details-marker,.card-total-disclosure>summary::-webkit-details-marker,.form-disclosure>summary::-webkit-details-marker{display:none}.settings-disclosure>summary:after,.card-total-disclosure>summary:after,.form-disclosure>summary:after{flex:none;content:"⌄";color:var(--muted);font-size:16px;transition:transform .16s ease}.settings-disclosure[open]>summary:after,.card-total-disclosure[open]>summary:after,.form-disclosure[open]>summary:after{transform:rotate(180deg)}.section-title{display:grid;min-width:0;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:7px}.section-disclosure-icon{color:var(--section-accent);font-size:17px;line-height:1;transition:transform .16s ease}.section[open] .section-disclosure-icon{transform:rotate(180deg)}.section-title-copy{display:grid;min-width:0;gap:2px}.section-level-label,.group-level-label,.total-caption{color:var(--muted);font-size:var(--type-helper);font-weight:600;line-height:1.1}.section-level-label{color:var(--kind-accent)}.section-title-text{color:var(--text);font-size:var(--type-item);font-weight:700;overflow-wrap:anywhere}.section-total,.group-total{display:flex;min-width:0;align-items:baseline;justify-content:flex-end;gap:6px;text-align:right;white-space:nowrap}.section-total strong{color:var(--section-accent);font-size:var(--type-amount-inline);font-weight:700;letter-spacing:-.025em}.group-head{display:flex;min-height:40px;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--type-support);font-weight:600}.payment-bucket{--payment-accent: var(--section-accent);--payment-tint: var(--section-group-tint)}.payment-bucket--transfer{--payment-accent: var(--method-transfer);--payment-tint: rgba(134, 211, 248, .14)}.payment-bucket--card{--payment-accent: var(--method-card);--payment-tint: rgba(193, 185, 255, .16)}.payment-bucket--income{--payment-accent: var(--positive);--payment-tint: var(--positive-tint)}.payment-bucket+.payment-bucket .payment-bucket-head{border-top:9px solid var(--surface-quiet)}.payment-bucket-head{display:grid;min-height:42px;grid-template-columns:minmax(0,1fr) var(--ledger-amount-track);align-items:center;column-gap:10px;padding:6px 14px 6px 11px;border-top:1px solid var(--line);border-inline-start:3px solid var(--payment-accent);background:linear-gradient(90deg,var(--payment-tint),transparent 78%)}.payment-bucket-head h5{display:flex;min-width:0;align-items:center;gap:8px;margin:0;color:var(--text);font-size:var(--type-item);font-weight:700;line-height:1.25}.payment-bucket-head h5>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-bucket-icon{display:grid;width:22px;height:22px;flex:none;place-items:center;border:1px solid var(--payment-accent);border-radius:7px;color:var(--payment-accent);font-size:15px;font-weight:700;line-height:1}.payment-bucket-total{display:flex;min-width:0;align-items:baseline;justify-content:flex-end;gap:6px;text-align:right;white-space:nowrap}.payment-bucket-total strong{color:var(--payment-accent);font-size:var(--type-amount-inline);font-weight:700;letter-spacing:-.02em}.section .group-head{--method-accent: var(--section-accent);--method-tint: var(--section-group-tint);--method-halo: rgba(142, 213, 255, .16);display:grid;min-height:50px;grid-template-columns:minmax(0,1fr) var(--ledger-amount-track);align-items:center;column-gap:10px;padding:8px 14px;border-top:1px solid var(--line);color:var(--muted-strong);background:linear-gradient(90deg,var(--method-tint),transparent 76%)}.payment-bucket .group-head{min-height:42px;padding-top:6px;padding-bottom:6px}.section .group-head--card{--method-accent: var(--method-card);--method-tint: rgba(193, 185, 255, .09);--method-halo: rgba(193, 185, 255, .18)}.section .group-head--transfer{--method-accent: var(--method-transfer);--method-tint: rgba(134, 211, 248, .08);--method-halo: rgba(134, 211, 248, .16)}.group-name{display:grid;min-width:0;grid-template-columns:6px minmax(0,1fr);align-items:center;column-gap:7px;row-gap:2px}.group-name:before{width:6px;height:6px;grid-row:1 / span 2;border-radius:999px;background:var(--method-accent);box-shadow:0 0 0 3px var(--method-halo);content:""}.group-level-label,.group-name-text{grid-column:2}.section .group-head .group-level-label{color:var(--method-accent)}.group-name-text{min-width:0;color:var(--text);font-size:var(--type-support);font-weight:700;overflow-wrap:anywhere}.group-total strong{color:var(--method-accent);font-size:var(--type-amount-inline);font-weight:700;letter-spacing:-.02em}.row{position:relative;display:grid;width:100%;min-height:48px;grid-template-columns:4px minmax(0,1fr) var(--row-meta-track) var(--row-amount-track);align-items:center;column-gap:5px;padding:2px 12px;border-top:1px solid rgba(42,59,86,.78);color:var(--text);text-align:left}.row:not(.row--auto):has(.row-edit-hit:hover){background:#ffffff09}.row-edit-hit{position:absolute;z-index:1;top:2px;right:2px;bottom:2px;left:2px;border-radius:8px}.row-edit-hit:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.row:before{position:relative;z-index:2;width:4px;height:4px;grid-column:1;align-self:center;border-radius:999px;background:var(--section-accent);content:"";opacity:.72;pointer-events:none}.row-name{position:relative;z-index:2;display:flex;min-width:0;grid-column:2;align-items:center;gap:6px;overflow:hidden;pointer-events:none;color:var(--text);font-size:clamp(13px,var(--type-support),15px);line-height:1.25}.row-name-text{width:auto;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-meta-cell{position:relative;z-index:2;display:flex;min-width:0;grid-column:3;align-items:center;pointer-events:none}.row-inline-note{display:inline-flex;width:100%;min-width:0;height:20px;flex:none;align-items:center;justify-content:center;padding:2px 4px;border-radius:6px;font-size:clamp(11px,var(--type-helper),12px);font-weight:700;line-height:1;white-space:nowrap}.row-category,.row-source{position:relative;display:inline-flex;min-width:0;max-width:78px;height:18px;flex:0 1 auto;align-items:center;gap:0;padding:0 0 0 8px;overflow:hidden;border:0;border-radius:0;color:#b9c5d2;background:transparent;box-shadow:none;font-size:clamp(10px,var(--type-helper),11px);font-weight:650;letter-spacing:.01em;line-height:1;white-space:nowrap}.row-category:before,.row-source:before{position:absolute;top:50%;left:1px;width:3px;height:3px;border-radius:999px;background:currentColor;content:"";opacity:.58;transform:translateY(-50%)}.row-category-mark{display:none}.row-category-text,.row-source-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-category,.row-source{min-height:20px;height:auto;line-height:1.25}.row-category-text,.row-source-text{display:block;max-width:100%;flex:1 1 auto;padding-block:1px;line-height:1.25}.row-source{color:var(--positive-soft)}.row-source:before{left:1px;width:4px;height:4px;border-radius:999px;background:var(--positive);opacity:.86}.row-inline-note{height:auto;justify-content:flex-end;padding:0;border-radius:0;color:var(--muted);background:transparent;font-weight:600}.row-inline-note--memo{position:relative;padding-right:8px}.row-inline-note--memo:after{position:absolute;top:3px;right:3px;width:3px;height:3px;border-radius:999px;background:var(--section-accent);content:""}.row-confirm-control,.row-input-action{position:relative;z-index:3;width:100%;min-width:0;min-height:44px;grid-column:3}.row-confirm-control{display:flex;align-items:center;justify-content:center;gap:5px;color:#ffe7a4;font-size:clamp(11px,var(--type-helper),12px);font-weight:700;line-height:1;cursor:pointer}.row-confirm-control input{width:18px;height:18px;flex:none;accent-color:var(--positive)}.row-confirm-control:focus-within{outline:2px solid var(--focus);outline-offset:-2px;border-radius:7px}.row-confirm-control input:focus-visible{outline:0}.row-confirm-control[data-confirmed]{color:var(--positive-soft)}.row-confirm-control[data-pending]{color:var(--muted);cursor:wait}.row-input-action{display:inline-flex;align-items:center;justify-content:center;gap:1px;color:var(--danger-soft);font-size:clamp(11px,var(--type-helper),12px);font-weight:750;letter-spacing:-.04em;text-decoration-line:underline;text-decoration-style:dashed;text-decoration-thickness:1px;text-underline-offset:4px;white-space:nowrap}.row-input-action:not(:disabled):hover{color:#fff}.row-input-action:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:7px}.row-amount{position:relative;z-index:2;grid-column:4;align-self:center;min-width:0;color:var(--entry-amount);font-size:clamp(13px,var(--type-amount-inline),15px);font-weight:600;line-height:1.4;letter-spacing:-.02em;text-align:right;white-space:nowrap;pointer-events:none}.row--auto{background:var(--surface-quiet)}.row--auto .row-amount{color:var(--muted)}.sub{color:var(--muted);font-size:var(--type-helper)}.badge,.chip{display:inline-flex;flex:none;align-items:center;min-height:22px;padding:3px 7px;border-radius:999px;font-size:var(--type-helper);font-weight:600;line-height:1.2}.badge{color:#fff3f4;background:#b94758}.badge.warn{color:#1f1a08;background:#f4d378}.chip{color:var(--muted-strong);background:#2c3c55}.add-btn{width:100%;min-height:48px;padding:10px 14px;border-top:1px solid var(--line);color:var(--accent-strong);font-size:var(--type-item);font-weight:700;text-align:left}.add-btn:not(:disabled):hover{background:#8ed5ff14}.card-total{display:grid;min-height:56px;grid-template-columns:minmax(0,1fr) var(--ledger-amount-track);align-items:center;column-gap:10px;padding:5px 14px;border-top:1px dashed rgba(64,83,111,.92);background:#ffffff05}.card-total>*{min-width:0}.card-total-label{display:grid;gap:2px;color:var(--muted-strong);font-size:min(var(--type-support),14px);font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-total-label>span:first-child{color:var(--section-accent);font-size:var(--type-helper);font-weight:700}.entry-group--card .card-total-label>span:first-child,.card-total-disclosure .card-total-label>span:first-child{color:var(--method-card)}.card-total input{min-height:44px;padding:8px 10px;color:var(--text);font-size:max(16px,var(--type-support));line-height:1.25;text-align:right;font-variant-numeric:tabular-nums}.card-total-status{margin:0;padding:7px 14px 9px;border-top:1px solid rgba(42,59,86,.62);color:var(--muted-strong);background:#ffffff06;font-size:var(--type-helper);font-weight:600;line-height:1.45}.card-total-status--success{color:var(--positive-soft);background:#78d7aa12}.card-total-status--warning{color:var(--danger-soft);background:#ff7f8b14}.card-total-status--pending{color:var(--accent-strong);background:#8ed5ff12}.card-total-disclosure{border-top:1px solid var(--line)}.card-total-disclosure>summary{padding:0 14px;color:var(--muted-strong);font-size:var(--type-support);font-weight:600}.sheet-backdrop{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;background:#030812b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet{position:fixed;z-index:21;right:0;bottom:var(--sheet-keyboard-offset, 0px);left:0;width:min(100%,560px);max-height:min(88dvh,760px,calc(var(--sheet-viewport-height, 100dvh) - 12px - env(safe-area-inset-top)));margin:0 auto;overflow-y:auto;overscroll-behavior:contain;padding:18px 16px max(16px,calc(12px + env(safe-area-inset-bottom)));border:1px solid var(--line-strong);border-bottom:0;border-radius:18px 18px 0 0;background:var(--surface-raised);box-shadow:0 -20px 55px #00000061;animation:sheet-in .18s ease-out}.sheet-header{display:flex;min-height:48px;align-items:start;justify-content:space-between;gap:12px;margin-bottom:16px}.sheet h2{margin:2px 0 0;color:var(--text);font-size:var(--type-heading);font-weight:700;letter-spacing:-.025em;overflow-wrap:anywhere}.sheet-entry-intent{margin:4px 0 0;color:var(--accent-strong);font-size:var(--type-helper);font-weight:600;line-height:1.35}.sheet-entry-intent--recurring{color:var(--positive-soft)}.sheet-close{display:grid;width:44px;height:44px;flex:none;place-items:center;border:1px solid var(--line-strong);border-radius:50%;color:var(--muted-strong);font-size:26px;line-height:1}.sheet-close:not(:disabled):hover{color:var(--text);background:#ffffff0f}.sheet .field{margin-bottom:14px}.sheet .field>label{display:block;margin-bottom:6px;color:var(--muted-strong);font-size:var(--type-support);font-weight:600}.sheet .entry-primary-field>input,.sheet .entry-primary-field>select{min-height:52px}.sheet .amount-field>input{min-height:56px;font-size:max(20px,var(--type-item));font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.field-hint{margin:5px 0 0;color:var(--muted);font-size:var(--type-helper)}.notification-import{margin-top:9px}.notification-import-trigger{display:flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px 7px 11px;border:1px solid rgba(142,213,255,.42);border-radius:10px;color:var(--muted-strong);background:#8ed5ff11;text-align:left}.notification-import-trigger:not(:disabled):hover{border-color:var(--accent);background:#8ed5ff1c}.notification-import-trigger>span:first-child{display:grid;min-width:0;gap:1px}.notification-import-trigger strong{color:var(--accent-strong);font-size:var(--type-support);font-weight:700}.notification-import-trigger small{color:var(--muted);font-size:var(--type-helper);font-weight:500}.notification-import-action{flex:none;padding:4px 6px;border:1px solid rgba(142,213,255,.36);border-radius:6px;color:var(--accent-strong);font-size:var(--type-helper);font-weight:700;white-space:nowrap}.notification-import-panel{display:grid;gap:8px;margin-top:7px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#03081229}.notification-import-panel-intro{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:var(--type-helper);line-height:1.35}.notification-clipboard-read{min-height:32px;flex:none;padding:5px 7px;border:1px solid rgba(142,213,255,.36);border-radius:7px;color:var(--accent-strong);background:#8ed5ff12;font-size:var(--type-helper);font-weight:700;white-space:nowrap}.notification-import-panel>label{color:var(--muted-strong);font-size:var(--type-helper);font-weight:700}.notification-import-panel textarea{width:100%;min-height:68px;padding:9px 10px;border:1px solid var(--line-strong);border-radius:8px;color:var(--text);background:var(--surface-quiet);font-size:max(16px,var(--type-item));line-height:1.4;resize:vertical}.notification-import-help,.notification-import-privacy,.notification-import-choice p,.notification-import-applied{margin:0;font-size:var(--type-helper);line-height:1.4}.notification-import-help{color:var(--muted)}.notification-import-help--warning{color:var(--danger-soft)}.notification-import-privacy{color:var(--muted)}.notification-import-result{display:flex;min-height:50px;align-items:center;justify-content:space-between;gap:9px;padding:7px 8px 7px 10px;border:1px solid rgba(120,215,170,.48);border-radius:8px;background:#78d7aa14}.notification-import-result>span{display:grid;min-width:0;gap:1px}.notification-import-result strong{color:var(--positive-soft);font-size:var(--type-support);font-variant-numeric:tabular-nums}.notification-import-result small{color:var(--muted-strong);font-size:var(--type-helper);line-height:1.3}.notification-import-result button,.notification-import-choice button{min-height:38px;flex:none;padding:6px 8px;border:1px solid rgba(120,215,170,.56);border-radius:7px;color:var(--positive-soft);background:#78d7aa1a;font-size:var(--type-helper);font-weight:700;white-space:nowrap}.notification-import-result--review{border-color:#f4d3788f;background:#f4d37814}.notification-import-result--review strong{color:#ffe7a4}.notification-import-result--review button{border-color:#f4d378a8;color:#ffe7a4;background:#f4d3781a}.notification-import-choice{display:grid;gap:7px}.notification-import-choice p{color:var(--muted-strong)}.notification-import-choice>div{display:flex;flex-wrap:wrap;gap:6px}.notification-import-choice button{min-height:36px}.notification-import-applied{margin-top:7px;color:var(--positive-soft)}.amount-pending-option{display:flex!important;min-height:44px;align-items:center;gap:9px;margin:8px 0 0!important;padding:7px 9px;border:1px solid var(--line);border-radius:9px;color:var(--muted-strong)!important;background:#ffffff05;font-size:var(--type-support)!important;cursor:pointer}.amount-pending-option input{width:20px;height:20px;flex:none}.amount-pending-option>span,.entry-options label>span{display:grid;gap:1px;min-width:0}.amount-pending-option strong,.entry-options label strong{color:var(--muted-strong);font-size:inherit;font-weight:700}.amount-pending-option small,.entry-options label small{color:var(--muted);font-size:var(--type-helper);font-weight:500;line-height:1.3}.form-disclosure{margin-top:18px;border:1px solid var(--line);border-radius:12px}.form-disclosure>summary{padding:0 12px;color:var(--muted-strong);font-size:var(--type-support);font-weight:600}.form-disclosure .field{margin:0 12px 14px}.form-disclosure .field:first-of-type{margin-top:2px}.entry-options{display:grid;gap:6px;margin:2px 12px 12px;padding:10px;border:1px solid var(--line);border-radius:10px}.entry-options legend{padding:0 4px;color:var(--muted);font-size:var(--type-helper);font-weight:600}.entry-options label{display:flex;min-height:48px;align-items:center;gap:9px;color:var(--muted-strong);font-size:var(--type-support);cursor:pointer}.entry-options input{flex:none}.entry-recurrence-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.entry-recurrence-choice button{display:grid;min-height:58px;min-width:0;align-content:center;gap:2px;padding:7px 8px;border:1px solid var(--line-strong);border-radius:9px;color:var(--muted-strong);background:#ffffff05;text-align:left}.entry-recurrence-choice button strong{font-size:var(--type-support);font-weight:700}.entry-recurrence-choice button small{color:var(--muted);font-size:var(--type-helper);font-weight:500;line-height:1.25}.entry-recurrence-choice button[aria-checked=true]{border-color:#8ed5ffa3;color:var(--accent-strong);background:#8ed5ff1a}.entry-recurrence-choice button:last-child[aria-checked=true]{border-color:#78d7aa9e;color:var(--positive-soft);background:#78d7aa1a}.entry-recurrence-choice button[aria-checked=true] small{color:inherit;opacity:.82}.entry-recurrence-choice button:not(:disabled):hover{border-color:var(--muted);background:#ffffff0e}.entry-option-help{margin:1px 0 0;color:var(--accent-strong);font-size:var(--type-helper);font-weight:600;line-height:1.35}.form-error{margin:4px 0 0;color:var(--danger-soft);font-size:var(--type-support)}.field-error{margin:6px 0 0;color:var(--danger-soft);font-size:var(--type-helper);font-weight:600;line-height:1.4}.sheet input,.sheet select,.sheet textarea,.sheet summary{scroll-margin-top:24px;scroll-margin-bottom:112px}.actions{display:flex;gap:8px;margin-top:20px}.actions button{flex:1;min-width:0}.sheet-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:sticky;z-index:1;bottom:0;margin:20px -16px -16px;padding:12px 16px max(16px,calc(12px + env(safe-area-inset-bottom)));border-top:1px solid var(--line);background:var(--surface-raised)}.sheet-actions button{flex:initial}.sheet-actions .btn-danger{order:2;grid-column:1 / -1}.timeline-card{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.timeline-toolbar{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);color:var(--muted);background:var(--surface-quiet);font-size:var(--type-helper);font-weight:600;line-height:1.35}.timeline-toolbar>span{min-width:0}.timeline-toolbar button{min-height:36px;flex:none;padding:7px 9px;border:1px solid var(--line-strong);border-radius:8px;color:var(--accent-strong);font-size:var(--type-helper);font-weight:700}.timeline-toolbar button[aria-pressed=true]{border-color:#78d7aa80;color:var(--positive-soft)}.timeline-item{display:grid;min-height:62px;grid-template-columns:22px 44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid rgba(42,59,86,.78);cursor:pointer}.timeline-item:first-child{border-top:0}.timeline-item:hover{background:#ffffff09}.timeline-item .day{color:var(--accent-strong);font-size:var(--type-support);font-weight:700}.timeline-label{min-width:0;color:var(--text);font-size:var(--type-item);overflow-wrap:anywhere}.timeline-amount{color:var(--text);font-size:var(--type-amount-inline);font-weight:600;text-align:right}.timeline-amount>span{display:block}.timeline-item.paid{opacity:.62}.timeline-item.paid .timeline-label,.timeline-item.paid .timeline-amount>span:first-child{text-decoration:line-through}.pay-check{width:22px!important;height:22px!important;min-height:0!important}.empty{padding:32px 18px;color:var(--muted);font-size:var(--type-support);line-height:1.6;text-align:center}.timeline-help{margin:0;color:var(--muted);font-size:var(--type-helper);line-height:1.65}.empty-state{display:flex;min-height:min(60dvh,500px);flex-direction:column;align-items:center;justify-content:center;padding:20px 4px 40px;text-align:center}.empty-state-mark{position:relative;display:grid;width:72px;height:72px;place-items:center;margin-bottom:18px;border:1px solid rgba(142,213,255,.46);border-radius:18px;color:var(--accent);background:#8ed5ff14}.empty-state-mark svg{width:40px;height:40px}.empty-state-dot{position:absolute;top:9px;right:9px;width:7px;height:7px;border-radius:999px;background:var(--positive);box-shadow:0 0 0 4px #78d7aa1f}.empty-state h2{max-width:320px;margin:6px 0 8px;color:var(--text);font-size:max(28px,var(--type-heading));font-weight:700;letter-spacing:-.04em;line-height:1.25;text-wrap:balance}.empty-state-copy{max-width:320px;margin:0;color:var(--muted);font-size:var(--type-support);line-height:1.65}.empty-state-actions{display:grid;width:min(100%,320px);gap:8px;margin-top:24px}.empty-state-actions button{width:100%}.settings-stack{display:grid;width:min(100%,760px);gap:10px}.back-button{display:inline-flex;width:fit-content;min-height:44px;align-items:center;gap:5px;padding:8px 2px;color:var(--muted-strong);font-size:var(--type-support);font-weight:600}.back-button span{color:var(--accent);font-size:24px;line-height:1}.settings-block,.danger-zone{padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.settings-current{border-color:#8ed5ff7a}.settings-block h2,.danger-zone h2{margin:2px 0 6px;color:var(--text);font-size:var(--type-heading);font-weight:700;letter-spacing:-.025em}.settings-note{margin:0;color:var(--muted);font-size:var(--type-support);line-height:1.5}.settings-note strong{color:var(--muted-strong)}.settings-current .wide-action,.danger-zone .wide-action{width:fit-content;min-width:154px;margin-top:12px}.settings-stack .btn-primary,.settings-stack .btn-plain,.settings-stack .btn-danger{min-height:44px;padding:9px 12px;font-size:max(14px,var(--type-support))}.settings-stack .add-btn{min-height:44px}.settings-stack input,.settings-stack select{min-height:44px;padding:9px 10px}.typography-block{border-color:#a9a4ff80}.type-scale-list{display:grid;gap:6px;margin-top:12px}.type-scale-control{display:grid;min-width:0;margin:0;grid-template-columns:minmax(76px,102px) minmax(174px,1fr);align-items:center;gap:8px;padding:6px 7px;border:1px solid var(--line);border-radius:10px}.type-scale-label{display:grid;max-width:100%;gap:1px;padding-left:2px;color:var(--muted-strong);font-size:var(--type-support);font-weight:700}.type-scale-label small{color:var(--muted);font-size:11px;font-weight:500;line-height:1.3}.type-scale-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.type-scale-options button{min-width:0;min-height:44px;padding:7px 4px;border:1px solid var(--line-strong);border-radius:9px;color:var(--muted-strong);background:var(--surface-quiet);font-size:var(--type-support);font-weight:700}.type-scale-options button:not(:disabled):hover{border-color:var(--accent);color:var(--text)}.type-scale-options button[aria-pressed=true]{border-color:var(--accent);color:var(--accent-ink);background:var(--accent)}.type-scale-status{margin:12px 0 0;color:#baf0d7;font-size:var(--type-support)}.category-settings-block{border-color:#8ed5ff61}.category-settings-disclosure>summary{min-height:58px}.category-settings-disclosure>summary:after{margin-left:7px;color:var(--muted);content:"⌄";font-size:16px;transition:transform .16s ease-out}.category-settings-disclosure[open]>summary:after{transform:rotate(180deg)}.category-settings-content>.settings-note{margin:10px 0 0}.category-flow-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:10px;padding:4px;border:1px solid var(--line);border-radius:11px;background:#03081224}.category-flow-switch-option{--category-flow-color: var(--expense);--category-flow-tint: var(--expense-tint);display:grid;min-width:0;min-height:44px;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 9px;border:1px solid transparent;border-radius:8px;color:var(--muted-strong);font-size:var(--type-support);font-weight:700;text-align:left}.category-flow-switch-option--income{--category-flow-color: var(--positive);--category-flow-tint: var(--positive-tint)}.category-flow-switch-option:not(:disabled):hover{background:#ffffff09}.category-flow-switch-option[aria-pressed=true]{border-color:var(--category-flow-color);color:var(--text);background:var(--category-flow-tint)}.category-flow-switch-mark{width:5px;height:22px;border-radius:999px;background:var(--category-flow-color)}.category-flow-switch-option>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-flow-switch-option strong{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;color:var(--category-flow-color);background:#03081233;font-size:var(--type-helper)}@media(max-width:420px){.category-flow-switch{grid-template-columns:minmax(0,1fr)}}.category-settings-panel{margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0308121a}.category-settings-panel--expense{box-shadow:inset 3px 0 #ff98a3a3}.category-settings-panel--income{box-shadow:inset 3px 0 #78d7aaa3}.category-flow-note{margin:0;color:var(--muted);font-size:var(--type-helper);line-height:1.45}.category-settings-count{display:inline-flex;min-width:38px;min-height:24px;flex:none;align-items:center;justify-content:center;margin-top:1px;padding:3px 7px;border:1px solid rgba(142,213,255,.28);border-radius:999px;color:var(--accent-strong);background:#8ed5ff0f;font-size:var(--type-helper);font-weight:700}.category-settings-status{margin:10px 0 0;padding:8px 9px;border:1px solid rgba(120,215,170,.34);border-radius:9px;color:#baf0d7;background:#78d7aa12;font-size:var(--type-support);line-height:1.5}.category-settings-status--error{border-color:#ff7f8b75;color:var(--danger-soft);background:#ff7f8b14}.category-settings-list{display:grid;max-height:272px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px;margin:10px 0 0;overflow-x:hidden;overflow-y:auto;padding:1px 4px 1px 1px;list-style:none;scrollbar-gutter:stable;scrollbar-color:rgba(142,213,255,.3) transparent;scrollbar-width:thin}.category-settings-row{display:grid;min-width:0;min-height:50px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 4px;border:1px solid var(--line);border-radius:9px;background:#03081221}.category-settings-row>input{width:100%;min-width:0;min-height:42px;padding:6px 8px}.category-settings-remove{min-width:44px;min-height:44px;padding:6px;border-radius:8px;color:var(--danger-soft);font-size:var(--type-support);font-weight:650}.category-settings-remove:not(:disabled):hover{background:#ff7f8b1a}.category-settings-empty{margin:14px 0 0;padding:14px;border:1px dashed var(--line-strong);border-radius:10px;color:var(--muted);font-size:var(--type-support);line-height:1.55;text-align:center}.category-settings-add{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:10px}.category-settings-add input{min-width:0}.category-settings-add button{min-width:72px}.category-settings-help{margin:8px 2px 0;color:var(--muted);font-size:var(--type-helper);line-height:1.55}@media(max-width:359px){.category-settings-list{grid-template-columns:minmax(0,1fr)}.category-settings-remove{min-width:44px;padding-right:4px;padding-left:4px}}.settings-disclosure{padding:0}.settings-disclosure>summary{padding:11px 14px}.settings-disclosure>summary>span:first-child{display:grid;gap:2px;min-width:0}.settings-disclosure-title{color:var(--text);font-size:var(--type-item);font-weight:700}.settings-disclosure-meta{margin-left:auto;color:var(--accent-strong);font-size:var(--type-amount-inline);font-weight:600}.settings-disclosure-content{padding:0 14px 14px;border-top:1px solid var(--line)}.settings-disclosure-content .save-hint{margin-top:11px}.save-hint{width:fit-content;margin:0 0 8px;padding:4px 7px;border-radius:999px;color:#baf0d7;background:#78d7aa1f;font-size:var(--type-helper);font-weight:600}.method-status-error{margin:12px 0;padding:9px 10px;border:1px solid rgba(255,127,139,.46);border-radius:9px;color:var(--danger-soft);background:#ff7f8b14;font-weight:600}.method-list{display:grid;gap:8px;margin-top:11px}.method-editor{min-width:0;margin:0;padding:8px;border:1px solid var(--line);border-radius:11px}.method-editor legend{max-width:100%;padding:0 4px;color:var(--muted-strong);font-size:var(--type-support);font-weight:600;overflow-wrap:anywhere}.method-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px}.method-fields label{min-width:0}.method-fields label>span{display:block;margin:0 0 5px 2px;color:var(--muted);font-size:var(--type-helper);font-weight:600}.method-fields input,.method-fields select{min-width:0}.method-remove{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:5px;padding:8px 9px;border:1px solid rgba(255,127,139,.52);border-radius:9px;color:var(--danger-soft);font-size:var(--type-support);font-weight:600}.method-remove:not(:disabled):hover{background:#ff7f8b1f}.method-remove>span:first-child{font-size:20px;line-height:0}.method-add{margin-top:9px;padding-left:0;border-top:0}.transfer-block{border-color:#8ed5ff75}.transfer-route{display:grid;grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr);align-items:stretch;gap:8px;margin:12px 0;padding:9px;border:1px solid rgba(142,213,255,.28);border-radius:14px;background:linear-gradient(110deg,#8ed5ff1a,#78d7aa0f)}.transfer-route>div{display:grid;min-width:0;align-content:center;gap:2px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#0d1728b8}.transfer-route span{color:var(--muted);font-size:var(--type-helper)}.transfer-route strong{color:var(--text);font-size:var(--type-item);overflow-wrap:anywhere}.transfer-route>.sync-route-server{position:relative;display:flex;min-width:0;align-items:center;align-self:center;flex-direction:column;gap:0;padding:7px 4px;border-color:#8ed5ff75;color:var(--accent-strong);background:#8ed5ff17;text-align:center}.sync-route-server>span{color:var(--accent)!important;font-size:16px!important;font-weight:800;line-height:1}.sync-route-server>strong{margin-top:3px;color:var(--accent-strong);font-size:11px;letter-spacing:.02em}.sync-route-server>small{color:var(--muted);font-size:9px;line-height:1.25;white-space:nowrap}.transfer-route-arrow{display:inline-flex;width:34px;height:34px;align-self:center;align-items:center;justify-content:center;border:1px solid rgba(142,213,255,.45);border-radius:999px;color:var(--accent)!important;background:#0d1728eb;font-size:18px!important;font-weight:800}.transfer-lead{max-width:62ch}.sync-account-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:9px 10px 9px 12px;border:1px solid var(--line);border-radius:11px;background:#03081229}.sync-account-row>div{display:grid;min-width:0;gap:1px}.sync-account-row span{color:var(--muted);font-size:var(--type-helper)}.sync-account-row strong{overflow:hidden;color:var(--text);font-size:var(--type-support);text-overflow:ellipsis;white-space:nowrap}.sync-logout-button{min-width:76px;min-height:40px;flex:none;padding:7px 10px;border-radius:9px;color:var(--muted-strong);font-size:var(--type-support);font-weight:650}.sync-logout-button:not(:disabled):hover{background:#ffffff0f}.sync-session-list{display:grid;gap:6px;margin-top:8px}.sync-session-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#0308121f}.sync-session-row>div{display:grid;min-width:0;gap:1px}.sync-session-row strong{color:var(--text);font-size:var(--type-support);overflow-wrap:anywhere}.sync-session-row span{color:var(--muted);font-size:var(--type-helper);overflow-wrap:anywhere}.sync-session-row button{min-height:36px;flex:none;padding:6px 9px;font-size:var(--type-helper)}.sync-status-panel{--sync-tone: var(--accent);--sync-tone-soft: var(--accent-strong);display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:8px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--sync-tone) 46%,transparent);border-radius:12px;background:color-mix(in srgb,var(--sync-tone) 9%,transparent)}.sync-status-panel[data-tone=connected]{--sync-tone: var(--positive);--sync-tone-soft: var(--positive-soft)}.sync-status-panel[data-tone=offline]{--sync-tone: var(--kind-fixed);--sync-tone-soft: #f8d99b}.sync-status-panel[data-tone=attention]{--sync-tone: var(--danger);--sync-tone-soft: var(--danger-soft)}.sync-status-mark{width:12px;height:12px;border:3px solid color-mix(in srgb,var(--sync-tone) 28%,transparent);border-radius:999px;background:var(--sync-tone);box-shadow:0 0 0 3px color-mix(in srgb,var(--sync-tone) 10%,transparent)}.sync-status-panel[data-tone=working] .sync-status-mark{animation:sync-pulse 1.4s ease-in-out infinite}.sync-status-copy{display:grid;min-width:0;gap:1px}.sync-status-copy strong{color:var(--sync-tone-soft);font-size:var(--type-support);line-height:1.4;overflow-wrap:anywhere}.sync-status-copy span{color:var(--muted);font-size:var(--type-helper);line-height:1.4;overflow-wrap:anywhere}.sync-action-error{margin:8px 0 0;padding:8px 10px;border:1px solid rgba(255,127,139,.42);border-radius:9px;color:var(--danger-soft);background:#ff7f8b12;font-size:var(--type-support);line-height:1.5}.sync-primary-actions{display:grid;margin-top:8px}.sync-primary-actions button{min-width:0}.sync-conflict-panel{margin-top:10px;padding:11px;border:1px solid rgba(255,127,139,.48);border-radius:12px;background:#ff7f8b12}.sync-conflict-panel .section-kicker{color:#ffabb4}.sync-conflict-panel h3{margin:2px 0 0;color:var(--text);font-size:var(--type-item);line-height:1.35}.sync-conflict-panel>p:not(.section-kicker){margin:7px 0 0;color:var(--muted-strong);font-size:var(--type-support);line-height:1.55}.sync-conflict-comparison{display:grid;min-width:0;gap:1px;margin-top:10px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:9px;background:#0000002e}.sync-conflict-comparison-head,.sync-conflict-comparison-row{display:grid;min-width:0;grid-template-columns:minmax(68px,.65fr) minmax(0,1fr) minmax(0,1fr);gap:1px}.sync-conflict-comparison-head>*,.sync-conflict-comparison-row>*{min-width:0;padding:6px 7px;overflow-wrap:anywhere}.sync-conflict-comparison-head strong{color:var(--muted-strong);background:#ffffff0b;font-size:var(--type-helper)}.sync-conflict-comparison-row span{color:var(--text);background:#ffffff05;font-size:var(--type-helper);line-height:1.4}.sync-conflict-comparison-row span:first-child{color:var(--muted)}.sync-conflict-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.sync-conflict-actions button{min-width:0;padding-right:9px;padding-left:9px;line-height:1.35}.sync-conflict-actions--single{grid-template-columns:minmax(0,1fr)}.sync-local-note{margin:10px 1px 0;color:var(--muted);font-size:var(--type-helper);line-height:1.5}.manual-backup-panel{margin-top:14px;padding:12px;border:1px dashed var(--line-strong);border-radius:12px;background:#0308121f}.manual-backup-panel h3{margin:2px 0 0;color:var(--text);font-size:var(--type-item);line-height:1.4}.manual-backup-panel>p:not(.section-kicker,.transfer-safety-note,.transfer-action-error){margin:7px 0 0;color:var(--muted);font-size:var(--type-helper);line-height:1.55}.transfer-steps{display:grid;gap:7px;margin:13px 0 0;padding:0;counter-reset:transfer-step;list-style:none}.transfer-steps li{display:grid;grid-template-columns:25px minmax(0,1fr);gap:2px 8px;align-items:center;counter-increment:transfer-step}.transfer-steps li:before{grid-row:1 / span 2;content:counter(transfer-step);display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;border:1px solid rgba(142,213,255,.38);border-radius:8px;color:var(--accent);background:#8ed5ff14;font-size:var(--type-helper);font-weight:800}.transfer-steps strong{color:var(--muted-strong);font-size:var(--type-support)}.transfer-steps span{color:var(--muted);font-size:var(--type-helper)}.transfer-history{display:flex;flex-wrap:wrap;gap:5px 12px;margin-top:13px;color:var(--muted);font-size:var(--type-helper)}.backup-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.backup-actions button{min-width:0}.transfer-safety-note{margin:10px 0 0;padding:9px 10px;border-left:3px solid rgba(255,184,108,.72);border-radius:0 9px 9px 0;color:var(--muted);background:#ffb86c0f;font-size:var(--type-helper);line-height:1.5}.import-recovery{display:grid;gap:7px;margin-top:12px;padding:10px;border:1px solid rgba(255,184,108,.38);border-radius:11px;background:#ffb86c0f}.import-recovery>div:first-child{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px}.import-recovery strong{color:#ffd7ad;font-size:var(--type-support)}.import-recovery span,.import-recovery p{color:var(--muted);font-size:var(--type-helper)}.import-recovery p{margin:0;line-height:1.45}.import-recovery-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.import-recovery-actions button{min-width:0}.import-recovery-actions .btn-danger{grid-column:1 / -1}.transfer-action-error{margin:10px 0 0;color:var(--danger-soft);font-size:var(--type-support);font-weight:600;line-height:1.45}.transfer-inspection{margin:12px 0 0;padding:10px;border:1px solid rgba(120,215,170,.35);border-radius:10px;color:var(--muted-strong);background:#78d7aa12;font-size:var(--type-support);line-height:1.5}.transfer-inspection--older,.transfer-inspection--concurrent,.transfer-inspection--different-ledger,.transfer-inspection--invalid{border-color:#ff7f8b70;color:var(--danger-soft);background:#ff7f8b14}.transfer-inspection--legacy{border-color:#ffb86c70;color:#ffd7ad;background:#ffb86c12}.transfer-recovery-copy{margin-top:12px}@media(max-width:420px){.transfer-route{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr);gap:5px;padding:7px}.transfer-route>div{padding:8px 7px}.transfer-route>.sync-route-server{padding:7px 3px}.sync-conflict-actions,.manual-backup-panel .backup-actions{grid-template-columns:minmax(0,1fr)}}@media(max-width:359px){.sync-chip{padding-right:4px;padding-left:4px;font-size:9px}.sync-account-row{align-items:stretch;flex-direction:column;gap:5px}.sync-logout-button{align-self:flex-end}}.danger-zone{border-color:#ff7f8b7a;background:#ff7f8b0d}.danger-zone .eyebrow{color:#ffabb4}.confirmation-sheet{max-width:560px}.confirmation-copy{margin:0;color:var(--muted-strong);font-size:var(--type-support);line-height:1.65}.confirmation-copy strong{color:var(--text);overflow-wrap:anywhere}.confirmation-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.confirmation-metrics span{padding:7px 9px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:var(--type-support)}.confirmation-metrics strong{color:var(--text)}.chart-box{overflow:hidden;margin:0;padding:16px 8px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.chart-box figcaption{margin:0 8px 10px;color:var(--muted-strong);font-size:var(--type-item);font-weight:700}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes sync-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.38;transform:scale(.82)}}@media(min-width:768px){.app{width:min(calc(100% - 48px),880px)}main{padding:24px}.tabbar{width:min(calc(100% - 48px),880px)}.month-context,.month-primary,.ledger-board{gap:14px}}@media(min-width:960px){.app:not(.app--setup){display:grid;width:min(calc(100% - 48px),1480px);grid-template-columns:184px minmax(0,1fr);align-items:start;gap:24px;padding:24px 0 32px}.app--setup{width:min(calc(100% - 48px),960px)}.app:not(.app--setup) .app-rail{position:sticky;top:24px;display:grid;align-self:start;gap:12px}.app:not(.app--setup) .app-rail header{position:static;padding:14px 10px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(35,54,83,.72),var(--surface));box-shadow:0 14px 32px #01071229}.app:not(.app--setup) .month-nav{grid-template-columns:34px minmax(0,1fr) 34px}.app:not(.app--setup) .month-switcher{width:34px;height:34px;font-size:24px}.app:not(.app--setup) .header-title{text-align:left}.app:not(.app--setup) .header-title-meta{justify-content:flex-start}.app:not(.app--setup) .header-title h1{font-size:max(18px,var(--type-heading))}.app:not(.app--setup) .tabbar{position:static;display:grid;width:100%;min-height:0;margin:0;padding:8px;border:1px solid var(--line);border-radius:16px;background:#162238db;box-shadow:0 14px 32px #01071229}.app:not(.app--setup) .tabbar button{display:grid;grid-template-columns:20px minmax(0,1fr);min-height:46px;align-items:center;gap:10px;padding:7px 9px;text-align:left}.app:not(.app--setup) .tabbar svg{margin:0}.app:not(.app--setup)>main{min-width:0;padding:0 0 32px}.app:not(.app--setup)>main:focus{outline:none}.app-update{right:24px;bottom:24px;left:auto;width:min(360px,calc(100% - 48px))}.month-screen{gap:16px}.month-context{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px}.month-primary{container:month-primary / inline-size;gap:16px}.ledger-board{gap:14px}.month-overview{padding:18px 20px}.quick-record{display:none}.month-ledger-heading{display:flex;min-height:50px;align-items:end;justify-content:space-between;gap:18px;padding:2px 2px 0}.month-ledger-heading h2{margin:3px 0 0;color:var(--text);font-size:max(22px,var(--type-heading));font-weight:700;letter-spacing:-.03em}.month-ledger-heading>p{max-width:280px;margin:0 0 2px;color:var(--muted);font-size:var(--type-support);line-height:1.45;text-align:right}.desktop-entry-dock{position:relative;display:block;width:min(100%,880px);justify-self:start;overflow:hidden;border:1px solid rgba(142,213,255,.42);border-radius:16px;background:var(--surface);box-shadow:0 16px 34px #01071229}.desktop-entry-composer{display:grid;min-width:0;grid-template-columns:minmax(250px,.82fr) minmax(0,1.18fr)}.desktop-entry-destination{min-width:0;margin:0;padding:16px;border:0;border-right:1px solid rgba(142,213,255,.18);background:linear-gradient(145deg,#8ed5ff16,#0308121f)}.desktop-entry-destination-legend{padding:0;color:var(--text);font-size:max(15px,var(--type-support));font-weight:800;letter-spacing:-.025em}.desktop-entry-destination-help{margin:3px 0 0;color:var(--muted);font-size:var(--type-helper);line-height:1.35}.desktop-entry-destination-grid{display:grid;min-width:0;grid-template-columns:58px repeat(2,minmax(0,1fr));align-items:center;gap:7px;margin-top:12px}.desktop-entry-destination-corner{display:grid;min-height:26px;place-items:center;color:var(--muted);font-size:11px;font-weight:700}.desktop-entry-destination-corner:after{content:"주기"}.desktop-entry-destination-axis{min-width:0;padding:3px 4px;border-bottom:2px solid currentcolor;font-size:var(--type-helper);font-weight:800;text-align:center}.desktop-entry-destination-axis--expense{color:var(--expense)}.desktop-entry-destination-axis--income{color:var(--positive)}.desktop-entry-destination-row{color:var(--muted-strong);font-size:11px;font-weight:700;line-height:1.25;text-align:left}.desktop-entry-destination-choice{position:relative;display:flex;min-width:0;min-height:68px;align-items:center;padding:8px 9px;overflow:hidden;border:1px solid var(--line-strong);border-radius:10px;background:#040c1957;cursor:pointer}.desktop-entry-destination-choice:not(.is-selected):hover{background:#ffffff0b}.desktop-entry-destination-choice:has(.desktop-entry-destination-radio:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.desktop-entry-destination-choice.is-selected[data-flow=expense]{border-color:var(--expense);background:linear-gradient(145deg,#ff98a333,#ff98a313)}.desktop-entry-destination-choice.is-selected[data-flow=income]{border-color:var(--positive);background:linear-gradient(145deg,#78d7aa33,#78d7aa13)}.desktop-entry-destination-choice.is-selected:after{position:absolute;top:5px;right:6px;color:var(--text);content:"✓";font-size:11px;font-weight:900}.desktop-entry-destination-radio{position:absolute;width:1px;height:1px;min-height:0;opacity:0;pointer-events:none}.desktop-entry-destination-copy{display:grid;min-width:0;gap:2px}.desktop-entry-destination-copy strong{min-width:0;color:var(--text);font-size:min(var(--type-support),14px);font-weight:800;letter-spacing:-.025em;white-space:nowrap}.desktop-entry-destination-copy small{color:var(--muted);font-size:11px;font-weight:600;line-height:1.25}.desktop-entry-destination-summary{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:3px 7px;margin:12px 0 0;padding-top:10px;border-top:1px solid rgba(142,213,255,.15)}.desktop-entry-destination-summary span{color:var(--muted);font-size:11px;font-weight:700}.desktop-entry-destination-summary strong{color:var(--accent-strong);font-size:var(--type-support);font-weight:800}.desktop-entry-destination-summary small{grid-column:1 / -1;color:var(--muted-strong);font-size:11px;line-height:1.35}.desktop-entry-workspace{display:grid;min-width:0;align-content:start;gap:11px;padding:14px 16px}.desktop-entry-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:34px;align-items:center;gap:10px;padding-bottom:9px;border-bottom:1px solid rgba(142,213,255,.16)}.desktop-entry-title{display:inline-flex;min-width:0;align-items:center;gap:7px;margin:0;color:var(--text);font-size:max(15px,var(--type-support));font-weight:800;letter-spacing:-.025em;white-space:nowrap}.desktop-entry-mark{display:grid;width:18px;height:18px;flex:none;place-items:center;border:1px solid rgba(142,213,255,.52);border-radius:5px;color:var(--accent-ink);background:var(--accent);font-size:15px;font-weight:800;line-height:1}.desktop-entry-form{display:grid;min-width:0;gap:9px}.desktop-entry-form-row{display:grid;min-width:0;gap:8px}.desktop-entry-form-row--primary{grid-template-columns:minmax(0,1fr)}.desktop-entry-form-row--secondary{grid-template-columns:minmax(112px,.78fr) minmax(142px,1fr) auto;align-items:end}.desktop-entry-field{display:grid;min-width:0;gap:5px}.desktop-entry-field>span{color:var(--muted);font-size:var(--type-helper);font-weight:700}.desktop-entry-field input,.desktop-entry-field select{width:100%;min-height:46px;padding:9px 10px;font-size:max(16px,var(--type-support))}.desktop-entry-amount input{font-variant-numeric:tabular-nums;text-align:right}.desktop-entry-repeat{display:inline-flex;min-height:34px;align-items:center;gap:7px;padding:5px 8px;border:1px solid var(--line-strong);border-radius:8px;color:var(--muted-strong);background:#ffffff06;font-size:var(--type-helper);font-weight:700;white-space:nowrap}.desktop-entry-repeat input{width:15px;height:15px;flex:none}.desktop-entry-actions{display:flex;align-items:center;justify-content:end;gap:8px;white-space:nowrap}.desktop-entry-shortcut{color:var(--muted);font-size:var(--type-helper);font-weight:700;font-variant-numeric:tabular-nums}.desktop-entry-save{min-height:46px;padding:9px 14px;border-radius:10px;color:var(--accent-ink);background:var(--accent);font-size:var(--type-support);font-weight:800;white-space:nowrap}.desktop-entry-save:not(:disabled):hover{background:#b4e4ff}.desktop-entry-footer{display:flex;min-width:0;min-height:34px;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.desktop-entry-message{min-width:0;margin:0 1px;color:var(--muted);font-size:var(--type-helper);line-height:1.4}.desktop-entry-message--error{color:var(--danger-soft)!important}.desktop-entry-detail{min-height:34px;flex:none;padding:5px 2px;color:var(--accent-strong);font-size:var(--type-helper);font-weight:700}.desktop-entry-detail:not(:disabled):hover{color:#d5f1ff;text-decoration:underline;text-underline-offset:3px}.ledger-board--lanes{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}.ledger-flow-lane{--lane-accent: var(--accent);--lane-tint: rgba(142, 213, 255, .08);display:grid;min-width:0;gap:10px;padding:10px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(150deg,var(--lane-tint),rgba(22,34,56,.68) 32%,rgba(17,29,48,.8));box-shadow:0 12px 28px #0107121f}.ledger-flow-lane--expense{--lane-accent: var(--expense);--lane-tint: rgba(255, 152, 163, .1)}.ledger-flow-lane--income{--lane-accent: var(--positive);--lane-tint: rgba(120, 215, 170, .1)}.ledger-flow-lane-head{display:flex;min-width:0;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:3px 4px 5px}.ledger-flow-lane-title{display:flex;min-width:0;align-items:center;gap:9px}.ledger-flow-lane-mark{width:4px;height:30px;flex:none;border-radius:999px;background:var(--lane-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--lane-accent) 13%,transparent)}.ledger-flow-lane-kicker{margin:0;color:var(--muted);font-size:11px;font-weight:650;line-height:1.1}.ledger-flow-lane-title h3{margin:2px 0 0;color:var(--text);font-size:max(18px,var(--type-item));font-weight:800;letter-spacing:-.03em;line-height:1.2}.ledger-flow-lane-summary{display:flex;flex:none;align-items:center;gap:12px;margin:0}.ledger-flow-lane-summary>div{display:grid;gap:1px;text-align:right}.ledger-flow-lane-summary dt{color:var(--muted);font-size:10px;font-weight:650}.ledger-flow-lane-summary dd{margin:0;color:var(--muted-strong);font-size:var(--type-support);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.ledger-flow-lane-total dd{color:var(--lane-accent)}.ledger-flow-lane-sections{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}.ledger-flow-lane .section{--ledger-amount-track: minmax(108px, 128px);--row-meta-track: minmax(60px, 68px);--row-amount-track: minmax(96px, 108px);min-width:0}.ledger-flow-lane .row{column-gap:6px;padding-right:12px;padding-left:12px}.ledger-flow-lane .row-category,.ledger-flow-lane .row-source{max-width:68px}@container month-primary (min-width: 720px){.ledger-flow-lane-sections{grid-template-columns:repeat(2,minmax(0,1fr))}}@container month-primary (max-width: 720px){.desktop-entry-composer{grid-template-columns:minmax(0,1fr)}.desktop-entry-destination{border-right:0;border-bottom:1px solid rgba(142,213,255,.18)}.desktop-entry-destination-grid{grid-template-columns:68px repeat(2,minmax(0,1fr))}.desktop-entry-destination-choice{min-height:60px}}.desktop-schedule-link{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid rgba(188,181,255,.42);border-radius:14px;color:var(--text);background:linear-gradient(135deg,#bcb5ff1f,#bcb5ff09);text-align:left}.desktop-schedule-link>span:first-child{display:grid;gap:3px}.desktop-schedule-link strong{color:#e1ddff;font-size:var(--type-support)}.desktop-schedule-link small{color:var(--muted-strong);font-size:var(--type-helper)}.desktop-schedule-link>span:last-child{color:var(--kind-variable);font-size:24px;line-height:1}.desktop-schedule-link:not(:disabled):hover{border-color:var(--kind-variable);background:#bcb5ff29}.section{--ledger-amount-track: minmax(150px, 220px);--row-meta-track: minmax(76px, 100px);--row-amount-track: minmax(134px, 160px)}.section>summary,.payment-bucket-head,.section .group-head,.row,.card-total{padding-right:16px;padding-left:16px}.row{min-height:50px;column-gap:8px}.row-category,.row-source{width:100%;max-width:72px}.row .row-state{letter-spacing:-.03em}.sheet{right:24px;bottom:max(24px,var(--sheet-keyboard-offset, 0px));left:24px;width:min(calc(100% - 48px),860px);max-height:calc(100dvh - 48px);padding:22px;border-bottom:1px solid var(--line-strong);border-radius:18px;box-shadow:0 20px 64px #0000006b}.sheet-header{margin-bottom:18px}.entry-sheet-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.entry-sheet-form>.entry-name-field,.entry-sheet-form>.form-error,.entry-sheet-form>.entry-sheet-details,.entry-sheet-form>.sheet-actions{grid-column:1 / -1}.entry-sheet-details[open]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.entry-sheet-details[open]>summary,.entry-sheet-details[open]>.entry-options{grid-column:1 / -1}.sheet-actions{margin:20px -22px -22px;padding:12px 22px 22px}}@media(min-width:1180px){.settings-stack{width:min(100%,1040px);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px}.settings-current{grid-column:1;grid-row:1}.transfer-block{grid-column:2;grid-row:1 / span 2}.typography-block{grid-column:1;grid-row:2}.danger-zone{grid-column:1;grid-row:3}.category-settings-block{grid-column:2;grid-row:3}.method-settings-disclosure{grid-column:1 / -1;grid-row:4}}@media(min-width:1440px){.month-screen{grid-template-areas:"primary context";grid-template-columns:minmax(0,1fr) 316px;align-items:start;gap:20px}.month-primary{grid-area:primary}.month-context{position:sticky;top:24px;display:grid;grid-area:context;grid-template-columns:1fr;gap:12px}.month-overview{padding:18px}.month-health{margin-bottom:16px}.month-equation div+div{padding-left:9px}.month-equation dd{font-size:min(var(--type-amount-inline),14px);overflow-wrap:normal;white-space:nowrap}.month-primary>.desktop-entry-dock{width:min(100%,880px)}}@media(hover:hover){.timeline-item:hover{background:#ffffff09}}@media(max-width:359px){main{padding-right:12px;padding-left:12px}header{padding-right:12px;padding-left:12px}.month-overview{padding:16px}.month-overview-amount{font-size:var(--type-amount-hero)}.month-equation div+div{padding-left:8px}.month-equation dd{font-size:min(14px,var(--type-amount-inline));letter-spacing:-.04em;white-space:nowrap}.section{--ledger-amount-track: minmax(116px, .78fr)}.section>summary,.payment-bucket-head,.section .group-head,.row,.card-total{column-gap:8px}.app[data-type-amount=large] .total-caption{display:none}.method-fields{grid-template-columns:1fr}.settings-block,.danger-zone{padding:14px}.settings-disclosure{padding:0}.settings-disclosure>summary{padding:14px}.settings-disclosure-content{padding-right:14px;padding-left:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.section--combined{--kind-accent: var(--section-accent)}.row{grid-template-columns:40px minmax(0,1fr) var(--row-meta-track) var(--row-amount-track);column-gap:3px;padding-right:10px;padding-left:6px}.row:before{display:none}.row:not(:has(.row-drag-handle)):before{display:block;width:4px;height:4px;grid-column:1;justify-self:center}.row-drag-handle{position:relative;z-index:4;display:grid;width:40px;min-height:44px;grid-column:1;place-items:center;border-radius:8px;color:var(--muted);font-size:20px;line-height:1;cursor:grab;touch-action:none}.row-drag-handle:active{cursor:grabbing}.row-drag-handle:hover{color:var(--muted-strong);background:#ffffff0b}.row-drag-handle:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.row--dragging{z-index:0;background:transparent;box-shadow:none;opacity:0;-webkit-user-select:none;user-select:none}.entry-drag-overlay{display:grid;width:min(360px,calc(100vw - 24px));min-height:52px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:9px 12px;border:1px solid rgba(142,213,255,.64);border-radius:12px;color:var(--text);background:linear-gradient(145deg,#233653fc,#162238fc);box-shadow:0 18px 44px #01071275,inset 3px 0 0 var(--accent);font-family:var(--font-ui);pointer-events:none;-webkit-user-select:none;user-select:none}.entry-drag-overlay>span{display:grid;min-width:0;gap:2px}.entry-drag-overlay small{overflow:hidden;color:var(--accent-strong);font-size:11px;font-weight:650;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.entry-drag-overlay strong{overflow:hidden;color:var(--text);font-size:var(--type-support);font-weight:750;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.entry-drag-overlay b{color:var(--accent-strong);font-size:var(--type-support);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}.row-name{grid-column:2}.row-property{display:inline-flex;width:100%;min-width:0;align-items:center;justify-content:flex-end;gap:5px;color:var(--muted);font-size:clamp(10px,var(--type-helper),12px);font-weight:650;line-height:1.2;white-space:nowrap}.row-property:before{width:5px;height:5px;flex:none;border-radius:1px;background:currentColor;content:"";transform:rotate(45deg);opacity:.82}.row-property--fixed{color:var(--kind-fixed)}.row-property--variable{color:var(--kind-variable)}.row-property--once{color:#ffd58a}.row-property--installment{color:var(--method-card)}.entry-group+.entry-group{border-top:8px solid var(--surface-quiet)}.method-add-btn{display:flex;width:100%;min-height:42px;align-items:center;gap:5px;padding:7px 12px 7px 46px;border-top:1px dashed rgba(64,83,111,.74);color:var(--muted-strong);font-size:var(--type-support);font-weight:700;text-align:left}.method-add-btn>span:first-child{color:var(--method-accent, var(--accent));font-size:17px}.method-add-btn:hover{color:var(--text);background:#ffffff09}.method-add-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-3px}.method-add-btn--income{--method-accent: var(--positive);padding-left:46px}.card-reconciliation{background:#c1b9ff06}.card-reconciliation-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;border-top:1px solid rgba(42,59,86,.58);background:#2a3b56b3}.card-reconciliation-metrics>div{display:grid;min-width:0;gap:2px;padding:7px 8px;background:var(--surface);text-align:right}.card-reconciliation-metrics dt{color:var(--muted);font-size:min(var(--type-helper),11px);font-weight:600;white-space:nowrap}.card-reconciliation-metrics dd{min-width:0;margin:0;overflow:hidden;color:var(--muted-strong);font-size:min(var(--type-support),13px);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.card-reconciliation-metrics [data-alert] dt,.card-reconciliation-metrics [data-alert] dd{color:#ffe0a0}.month-ledger-heading-actions{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:10px}.month-ledger-heading-actions>p{max-width:280px;margin:0;color:var(--muted);font-size:var(--type-support);line-height:1.45;text-align:right}.month-ledger-entry-toggle{min-height:44px;flex:none;padding:8px 11px;border:1px solid var(--line-strong);border-radius:9px;color:var(--muted-strong);background:#ffffff06;font-size:var(--type-helper);font-weight:750;white-space:nowrap}.month-ledger-entry-toggle:hover{color:var(--text);background:#ffffff0f}.month-ledger-entry-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.desktop-entry-dock[hidden]{display:none}.sheet--entry{display:flex;width:min(100%,520px);max-height:min(92dvh,720px,calc(var(--sheet-viewport-height, 100dvh) - 12px - env(safe-area-inset-top)));flex-direction:column;overflow:hidden;padding:16px 14px max(14px,calc(10px + env(safe-area-inset-bottom)))}.sheet--entry .sheet-header{min-height:0;flex:none;margin-bottom:12px}.sheet--entry .sheet-close{width:42px;height:42px}.entry-sheet-form{display:flex;min-height:0;flex:1;flex-direction:column}.reauthentication-form{display:grid;gap:14px;margin-top:18px}.reauthentication-form .actions{margin-top:4px}.entry-sheet-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 2px}.entry-sheet-primary-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 10px}.sheet--entry .field{min-width:0;margin-bottom:10px}.sheet--entry .field>label{margin-bottom:5px}.sheet--entry .entry-primary-field>input,.sheet--entry .entry-primary-field>select,.sheet--entry .amount-field>input{min-height:48px}.sheet--entry .amount-field>input{font-size:max(18px,var(--type-item))}.entry-sheet-assists{display:grid;gap:8px;margin-bottom:10px}.entry-sheet-assists .notification-import,.entry-sheet-assists .amount-pending-option{margin-top:0!important}.entry-sheet-details{margin-top:8px}.entry-sheet-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;padding:0 10px}.entry-sheet-detail-grid>.field:first-child,.entry-sheet-detail-grid>.field:last-child{grid-column:1 / -1}.sheet--entry .entry-options{margin-bottom:10px}.sheet--entry .sheet-actions{position:static;flex:none;margin-top:10px}@media(min-width:960px){.ledger-flow-lane-sections{grid-template-columns:minmax(0,1fr)}@container month-primary (min-width: 720px){.ledger-flow-lane-sections{grid-template-columns:minmax(0,1fr)}}.ledger-flow-lane .section{--ledger-amount-track: minmax(150px, 190px);--row-meta-track: minmax(86px, 104px);--row-amount-track: minmax(126px, 150px)}.ledger-flow-lane .row{grid-template-columns:34px minmax(0,1fr) var(--row-meta-track) var(--row-amount-track);padding-right:16px;padding-left:10px}.ledger-flow-lane .row-drag-handle{width:34px}.method-add-btn{padding-left:52px}.card-reconciliation-metrics{grid-template-columns:repeat(3,minmax(130px,1fr))}.sheet--entry{right:24px;bottom:max(24px,var(--sheet-keyboard-offset, 0px));left:24px;width:min(calc(100% - 48px),760px);max-height:min(720px,calc(var(--sheet-viewport-height, 100dvh) - 48px));padding:18px 20px}.sheet--entry .sheet-header{margin-bottom:12px}.sheet--entry .entry-sheet-form{display:flex;grid-template-columns:none}.entry-sheet-primary-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:0 12px}.entry-name-field{grid-column:span 4}.entry-amount-field{grid-column:span 3}.entry-kind-field{grid-column:span 2}.entry-method-field{grid-column:span 3}.sheet--entry .entry-primary-field>input,.sheet--entry .entry-primary-field>select,.sheet--entry .amount-field>input{min-height:44px}.entry-sheet-assists{grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);align-items:start;gap:10px}.entry-sheet-detail-grid{grid-template-columns:minmax(135px,1.2fr) minmax(90px,.55fr) minmax(105px,.65fr) minmax(160px,1.3fr);gap:0 12px;padding:0 12px}.entry-sheet-detail-grid>.field:first-child,.entry-sheet-detail-grid>.field:last-child{grid-column:auto}.sheet--entry .entry-options{grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr);align-items:start;gap:6px 12px}.sheet--entry .entry-options legend{grid-column:1 / -1}.sheet--entry .entry-recurrence-choice{grid-row:2 / span 3;grid-column:1}.sheet--entry .entry-option-help{grid-column:1}.sheet--entry .entry-options>label{min-height:40px;grid-column:2}.sheet--entry .entry-options:not(:has(>label)){grid-template-columns:minmax(230px,330px)}.sheet--entry .entry-options:not(:has(>label)) .entry-recurrence-choice{grid-row:2}.sheet--entry .sheet-actions{display:flex;margin:10px -20px -18px;padding:10px 20px 18px}.sheet--entry .sheet-actions .btn-danger{order:0;grid-column:auto;margin-right:auto}}@media(max-width:520px){.month-ledger-heading-actions>p{display:none}.card-reconciliation-metrics dt{font-size:9px}.card-reconciliation-metrics dd{font-size:11px}}.expense-sort-bar{display:grid;min-width:0;grid-template-areas:"rule label select" "rule description select";grid-template-columns:3px minmax(0,1fr) auto;align-items:center;column-gap:9px;row-gap:2px;padding:8px 12px;border-top:1px solid rgba(64,83,111,.7);border-bottom:1px solid rgba(64,83,111,.62);background:#111d3094}.expense-sort-split-rule{width:3px;height:30px;grid-area:rule;align-self:center;border-radius:999px;background:linear-gradient(to bottom,var(--method-transfer) 0 46%,transparent 46% 54%,var(--method-card) 54% 100%)}.expense-sort-label{min-width:0;grid-area:label;color:var(--muted-strong);font-size:var(--type-helper);font-weight:750;line-height:1.15}.expense-sort-bar>p{min-width:0;grid-area:description;margin:0;overflow:hidden;color:var(--muted);font-size:min(var(--type-helper),12px);font-weight:500;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.expense-sort-select{width:auto;min-width:152px;min-height:44px;grid-area:select;padding:8px 30px 8px 10px;border-color:#8ed5ff57;border-radius:9px;color:var(--text);background-color:var(--surface-quiet);font-size:max(16px,var(--type-support));font-weight:650}.expense-sort-select:hover{border-color:#c1b9ff9e}@media(min-width:960px){.expense-sort-bar{padding-top:7px;padding-bottom:7px}.expense-sort-select{min-width:142px;min-height:36px;padding-top:6px;padding-bottom:6px;font-size:var(--type-support)}}@media(max-width:520px){.expense-sort-bar{grid-template-areas:"rule label select" "rule description description";row-gap:4px;padding-right:10px;padding-left:10px}.expense-sort-split-rule{height:38px}.expense-sort-select{min-width:148px}.expense-sort-bar>p{display:-webkit-box;overflow:hidden;white-space:normal;word-break:keep-all;-webkit-box-orient:vertical;-webkit-line-clamp:2}}.expense-payment-grid,.income-kind-grid{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}.expense-payment-grid>*,.income-kind-grid>*,.expense-payment-panel,.income-kind-panel{min-width:0}.expense-payment-panel,.income-kind-panel{display:grid;align-content:start}.income-kind-panel--fixed{--payment-accent: var(--kind-fixed);--payment-tint: rgba(242, 201, 119, .1)}.income-kind-panel--variable{--payment-accent: var(--positive);--payment-tint: var(--positive-tint)}[data-dnd-group]{position:relative}[data-dnd-group][data-dnd-over]{background:color-mix(in srgb,var(--method-accent, var(--accent)) 7%,transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--method-accent, var(--accent)) 54%,transparent)}[data-dnd-group][data-dnd-empty]{min-height:88px}@media(min-width:960px){@container month-primary (min-width: 720px){.expense-payment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.income-kind-grid{grid-template-columns:repeat(2,minmax(300px,1fr));gap:12px}.expense-payment-grid{--ledger-amount-track: minmax(94px, 104px);--row-meta-track: minmax(50px, 58px);--row-amount-track: minmax(88px, 100px)}.income-kind-grid{--ledger-amount-track: minmax(96px, 112px);--row-meta-track: minmax(56px, 64px);--row-amount-track: minmax(94px, 104px)}.expense-payment-grid .row{grid-template-columns:30px minmax(0,1fr) var(--row-meta-track) var(--row-amount-track);column-gap:4px;padding-right:10px;padding-left:5px}.expense-payment-grid .row-drag-handle{width:30px}.expense-payment-grid .method-add-btn{padding-left:40px}.expense-payment-grid .row-name{gap:4px}.expense-payment-grid .row-category{max-width:60px}.expense-payment-grid .row[data-name-density=long] .row-category{max-width:46px}.expense-payment-grid .row-property{gap:3px;font-size:clamp(10px,var(--type-helper),11px)}.expense-payment-grid .card-reconciliation-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.expense-payment-grid>.payment-bucket,.expense-payment-panel,.income-kind-panel{overflow:hidden;border:1px solid rgba(64,83,111,.74);border-radius:13px;background:#111d3057}.expense-payment-grid>.payment-bucket+.payment-bucket .payment-bucket-head,.expense-payment-grid>.payment-bucket .payment-bucket-head:first-child,.income-kind-grid>.payment-bucket .payment-bucket-head{border-top-width:0}}}.row-category,.row-source{width:fit-content;max-width:min(82px,100%)}@media(max-width:520px){.row--income .row-name{gap:4px}.row--income .row-category,.row--income .row-source{max-width:min(64px,34%)}}.sheet--entry .entry-sheet-details[open]{grid-template-columns:minmax(0,1fr)}.sheet--entry .entry-sheet-details[open]>.entry-sheet-detail-grid,.sheet--entry .entry-sheet-details[open]>.entry-options{grid-column:1 / -1}.sheet--entry .entry-sheet-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;padding:4px 12px 2px}.sheet--entry .entry-sheet-detail-grid>.entry-detail-field{display:grid;min-width:0;grid-template-rows:20px 44px auto;align-content:start;margin:0}.sheet--entry .entry-detail-field--category,.sheet--entry .entry-detail-field--memo{grid-column:1 / -1}.sheet--entry .entry-sheet-detail-grid--income>.entry-detail-field--due-day{grid-column:auto}.sheet--entry .entry-detail-field>label{display:flex;min-width:0;min-height:20px;align-items:flex-start;margin:0;overflow-wrap:normal;line-height:1.25;white-space:nowrap;word-break:keep-all}.sheet--entry .entry-detail-field>input,.sheet--entry .entry-detail-field>select{width:100%;height:44px;min-height:44px}.sheet--entry .entry-detail-field>.field-error{align-self:start;margin-top:5px}.sheet--entry .entry-options{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:9px;margin:4px 12px 12px;padding:10px}.sheet--entry .entry-options legend{max-width:100%;padding:0 4px;line-height:1.25;white-space:nowrap;word-break:keep-all}.sheet--entry .entry-recurrence-choice{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px}.sheet--entry .entry-recurrence-choice button{min-width:0;min-height:66px;grid-template-rows:auto auto;align-content:center;gap:3px;padding:9px 10px}.sheet--entry .entry-recurrence-choice button strong,.sheet--entry .entry-recurrence-choice button small,.sheet--entry .entry-option-row strong,.sheet--entry .entry-option-row small,.sheet--entry .entry-option-help{overflow-wrap:normal;word-break:keep-all;text-wrap:pretty}.sheet--entry .entry-recurrence-choice button strong,.sheet--entry .entry-option-row strong{line-height:1.35}.sheet--entry .entry-recurrence-choice button small,.sheet--entry .entry-option-row small{line-height:1.4}.sheet--entry .entry-option-help{margin:0 2px}.sheet--entry .entry-option-list{display:grid;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#0308121f}.sheet--entry .entry-options .entry-option-row{display:grid;width:100%;min-width:0;min-height:54px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;padding:7px 9px;color:var(--muted-strong);cursor:pointer}.sheet--entry .entry-option-row+.entry-option-row{border-top:1px solid var(--line)}.sheet--entry .entry-option-row:hover{background:#ffffff09}.sheet--entry .entry-option-row:focus-within{background:#8ed5ff0e}.sheet--entry .entry-option-row>input[type=checkbox]{width:20px;height:20px;margin:1px 0 0}.sheet--entry .entry-option-row>span{display:grid;width:100%;min-width:0;align-content:start;gap:1px}@media(min-width:960px){.sheet--entry .entry-sheet-detail-grid.entry-sheet-detail-grid--income{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet--entry .entry-sheet-detail-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.sheet--entry .entry-sheet-detail-grid>.entry-detail-field--category{grid-column:span 3}.sheet--entry .entry-sheet-detail-grid>.entry-detail-field--due-day{grid-column:span 2}.sheet--entry .entry-sheet-detail-grid>.entry-detail-field--installments{grid-column:span 2}.sheet--entry .entry-sheet-detail-grid>.entry-detail-field--memo{grid-column:span 5}.sheet--entry .entry-sheet-detail-grid.entry-sheet-detail-grid--income>.entry-detail-field--due-day,.sheet--entry .entry-sheet-detail-grid.entry-sheet-detail-grid--income>.entry-detail-field--installments{grid-column:auto}.sheet--entry .entry-sheet-detail-grid.entry-sheet-detail-grid--income>.entry-detail-field--memo{grid-column:1 / -1}.sheet--entry .entry-options:has(.entry-option-list){grid-template-columns:minmax(260px,.92fr) minmax(0,1.08fr);gap:8px 14px}.sheet--entry .entry-options:has(.entry-option-list) legend{grid-column:1 / -1}.sheet--entry .entry-options:has(.entry-option-list) .entry-recurrence-choice{grid-row:2;grid-column:1}.sheet--entry .entry-options:has(.entry-option-list) .entry-option-help{grid-row:3;grid-column:1}.sheet--entry .entry-options:has(.entry-option-list) .entry-option-list{grid-row:2 / span 2;grid-column:2}.sheet--entry .entry-options:not(:has(.entry-option-list)) .entry-recurrence-choice{width:min(100%,520px);grid-column:1 / -1}.sheet--entry .entry-options:not(:has(.entry-option-list)) .entry-option-help{grid-column:1 / -1}}@media(max-width:359px){.sheet--entry .entry-sheet-detail-grid{grid-template-columns:minmax(0,1fr)}.sheet--entry .entry-detail-field{grid-column:1}.sheet--entry .entry-recurrence-choice{grid-template-columns:minmax(0,1fr)}}.trends-screen{display:grid;min-width:0;gap:16px}.trend-loading{margin:24px 0;color:var(--muted);text-align:center}.trend-hero{position:relative;top:auto;z-index:auto;display:grid;gap:16px;padding:18px;border:1px solid rgba(142,213,255,.28);border-radius:16px;background:radial-gradient(circle at 100% 0,rgba(142,213,255,.13),transparent 42%),var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.trend-hero-copy{min-width:0}.trend-hero-copy h2{margin:5px 0 3px;font-size:calc(var(--type-heading) + 4px);line-height:1.25;letter-spacing:-.025em;text-wrap:balance}.trend-hero-copy p,.trend-card-note,.trend-insight-card p,.trend-quality-copy p,.trend-chart-note,.trend-source-note{margin:0;color:var(--muted);font-size:var(--type-support);line-height:1.55;text-wrap:pretty}.trend-period-controls{display:grid;width:min(100%,450px);min-width:0;gap:7px}.trend-range{display:grid;min-width:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#03081242}.trend-period-navigation{display:grid;min-width:0;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;padding:4px;border:1px solid rgba(142,213,255,.2);border-radius:12px;background:#8ed5ff0e}.trend-range button{min-width:0;min-height:44px;padding:7px 5px;border-radius:8px;color:var(--muted-strong);font-size:var(--type-helper);font-weight:700;white-space:nowrap}.trend-range button:not(:disabled):hover{color:var(--text);background:#ffffff0b}.trend-range button[aria-pressed=true]{color:var(--accent-ink);background:var(--accent);box-shadow:0 5px 14px #030f1a38}.trend-period-navigation>button{min-width:0;min-height:44px;padding:0;border-radius:8px;color:var(--accent-soft);background:#ffffff0a;font-size:23px;line-height:1}.trend-period-navigation>button:not(:disabled):hover{background:#ffffff14}.trend-period-select{display:block;min-width:0}.trend-period-select select{min-height:44px;padding:7px 36px 7px 12px;border-color:transparent;background-color:var(--surface-quiet);font-size:max(16px,var(--type-support));font-weight:750;text-align:center;text-align-last:center;font-variant-numeric:tabular-nums}.trend-plan-grid,.trend-chart-grid{display:grid;min-width:0;gap:12px}.trend-structure-card,.trend-insight-card,.trend-quality{min-width:0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.trend-card-head{display:flex;min-width:0;align-items:start;justify-content:space-between;gap:12px}.trend-card-head>div{display:grid;min-width:0;gap:3px}.trend-card-head>div>strong{font-size:var(--type-amount-hero);line-height:1.2;letter-spacing:-.035em}.trend-card-head>span:last-child{flex:none;padding:4px 7px;border-radius:999px;color:var(--muted);background:#ffffff0b;font-size:var(--type-helper);white-space:nowrap}.trend-card-label{display:block;color:var(--muted-strong);font-size:var(--type-support);font-weight:700}.trend-pressure-track{display:flex;height:13px;margin:18px 0 13px;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:var(--surface-quiet)}.trend-pressure-fixed{background:var(--kind-fixed)}.trend-pressure-variable{background:var(--kind-variable)}.trend-pressure-legend{display:grid;gap:8px;margin:0}.trend-pressure-legend>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid rgba(64,83,111,.62);border-radius:10px;background:#0308122e}.trend-pressure-legend dt,.trend-pressure-legend dd{display:flex;min-width:0;align-items:center;gap:7px;margin:0}.trend-pressure-legend dt{color:var(--muted-strong);font-size:var(--type-support);font-weight:650}.trend-pressure-legend dd{flex:none}.trend-pressure-legend dd strong{font-size:var(--type-amount-inline)}.trend-pressure-legend dd span{color:var(--muted);font-size:var(--type-helper);font-variant-numeric:tabular-nums}.trend-swatch{display:inline-block;width:9px;height:9px;flex:none;border-radius:3px}.trend-swatch-fixed{background:var(--kind-fixed)}.trend-swatch-variable{background:var(--kind-variable)}.trend-swatch-income{background:var(--positive)}.trend-swatch-expense{background:var(--expense)}.trend-swatch-balance{border-radius:999px;background:var(--accent)}.trend-card-note{margin-top:12px}.trend-insight-card{display:flex;min-height:174px;flex-direction:column;align-items:flex-start}.trend-insight-card>strong{margin-top:8px;font-size:calc(var(--type-amount-hero) - 2px);line-height:1.2;letter-spacing:-.025em}.trend-insight-card p{margin-top:auto;padding-top:14px}.trend-insight-card p b{color:var(--text);font-weight:700;overflow-wrap:anywhere}.trend-delta-up{color:var(--expense-soft)}.trend-delta-down{color:var(--positive-soft)}.trend-delta-neutral{color:var(--muted-strong)}.trend-delta-rate{margin-top:3px;color:var(--muted);font-size:var(--type-support);font-variant-numeric:tabular-nums}.trend-carry-card{border-color:#bcb5ff57}.trend-quality{display:grid;gap:14px;border-color:#f2c97747;background:#f2c9770b}.trend-quality-copy h3{margin:3px 0 2px;font-size:var(--type-heading);line-height:1.3}.trend-quality-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.trend-quality-metrics>div{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:6px;padding:9px 10px;border:1px solid rgba(242,201,119,.22);border-radius:9px;background:#0d15246b}.trend-quality-metrics dt{min-width:0;color:var(--muted-strong);font-size:var(--type-helper)}.trend-quality-metrics dd{margin:0;color:var(--kind-fixed);font-weight:750;font-variant-numeric:tabular-nums}.chart-box{min-width:0;overflow:hidden;margin:0;padding:16px 8px 11px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.chart-box figcaption{display:flex;min-width:0;flex-direction:column;gap:2px;margin:0 10px 10px;color:var(--muted-strong)}.chart-box figcaption strong{color:var(--text);font-size:var(--type-item);line-height:1.35}.chart-box figcaption small{color:var(--muted);font-size:var(--type-helper);font-weight:500;line-height:1.45}.trend-chart-canvas{position:relative;min-width:0}.trend-axis-label{display:flex;width:100%;height:100%;min-width:0;align-items:center;justify-content:flex-end;color:var(--chart-axis);font-family:var(--font-ui);font-size:var(--type-helper);line-height:1;pointer-events:none}.trend-axis-label>span{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trend-axis-label--selected{color:var(--text);font-weight:800;text-decoration:underline}.trend-axis-tick:focus{outline:none}.trend-axis-tick:focus-visible .trend-axis-label{border-radius:4px;outline:2px solid var(--focus);outline-offset:-2px}.trend-monthly-canvas{height:250px}.trend-inline-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin:-2px 10px 3px;color:var(--muted-strong);font-size:var(--type-helper)}.trend-inline-legend span{display:inline-flex;align-items:center;gap:5px}.trend-inline-legend i{margin:0}.trend-chart-empty{display:grid;min-height:150px;margin:0 10px;place-items:center;color:var(--muted);font-size:var(--type-support);text-align:center}.trend-chart-note{margin:5px 10px 1px;padding-top:9px;border-top:1px solid rgba(64,83,111,.52)}.trend-drilldown-caption{gap:10px!important}.trend-drilldown-caption>span:first-child{display:grid;min-width:0;gap:2px}.trend-category-select{display:grid;min-width:0;gap:4px}.trend-category-select>span{color:var(--muted);font-size:var(--type-helper);font-weight:600}.trend-category-select select{min-height:42px;padding:8px 36px 8px 10px}.trend-selection-summary{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:10px;margin:0 10px 5px;padding:8px 10px;border-radius:9px;color:var(--muted-strong);background:#bcb5ff14;font-size:var(--type-support)}.trend-selection-summary strong{min-width:0;overflow-wrap:anywhere}.trend-selection-summary span{flex:none;font-variant-numeric:tabular-nums}.trend-source-note{padding:2px 4px 8px}@media(min-width:768px){.trend-hero{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:20px}.trend-period-controls{width:450px}.trend-quality{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);align-items:center}.trend-quality-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.trend-quality-metrics>div{display:grid;justify-items:start;gap:2px}.trend-quality-metrics dd{font-size:var(--type-heading)}.trend-drilldown-caption{flex-direction:row!important;align-items:end;justify-content:space-between}.trend-category-select{width:min(210px,42%);flex:none}}@media(min-width:768px){.trend-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-structure-card{grid-column:1 / -1}.trend-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-cashflow-chart,.trend-monthly-chart{grid-column:1 / -1}}@media(min-width:1180px){.trend-plan-grid{grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,1fr))}.trend-structure-card{grid-column:auto}.trend-insight-card{min-height:100%}.trend-cashflow-chart,.trend-monthly-chart{grid-column:auto}}@media(max-width:420px){.trend-range{grid-template-columns:repeat(6,minmax(0,1fr))}.trend-range button:nth-child(-n+3){grid-column:span 2}.trend-range button:nth-child(n+4){grid-column:span 3}.trend-card-head{display:grid}.trend-card-head>span:last-child{width:fit-content}.trend-pressure-legend dd{display:grid;justify-items:end;gap:0}.trend-pressure-legend dd strong{font-size:var(--type-support)}.trend-quality-metrics{grid-template-columns:minmax(0,1fr)}.trend-selection-summary{align-items:start;flex-direction:column;gap:1px}}.card-transactions-screen{display:grid;width:min(100%,1120px);min-width:0;gap:14px}.card-import-hero,.card-import-panel,.card-detail-panel{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 12px 30px #01071221}.card-import-hero{position:relative;z-index:auto;top:auto;display:grid;gap:16px;padding:18px;overflow:hidden;border-color:#c1b9ff57;background:radial-gradient(circle at 92% 4%,rgba(193,185,255,.16),transparent 38%),linear-gradient(145deg,#8ed5ff13,#162238f2 48%);-webkit-backdrop-filter:none;backdrop-filter:none}.card-import-hero>*{position:relative;min-width:0}.card-import-hero h2{max-width:640px;margin:3px 0 6px;color:var(--text);font-size:max(22px,var(--type-heading));font-weight:750;letter-spacing:-.035em;line-height:1.3;text-wrap:balance;word-break:keep-all}.card-import-hero p,.card-import-help,.card-import-empty{margin:0;color:var(--muted);font-size:var(--type-support);line-height:1.6;word-break:keep-all}.card-import-warning{margin:12px 0 0;padding:9px 10px;border:1px solid rgba(242,201,119,.34);border-radius:9px;color:#ffe0a0;background:#f2c97712;font-size:var(--type-helper);line-height:1.5}.card-import-context{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card-import-context label{display:grid;min-width:0;gap:5px}.card-import-context label>span{color:var(--muted-strong);font-size:var(--type-helper);font-weight:700}.card-import-context select{min-width:0;min-height:44px;padding-top:8px;padding-bottom:8px}.card-import-panel,.card-detail-panel{padding:16px}.card-import-panel-head,.card-detail-head,.card-import-preview-title,.card-import-confirm-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.card-import-panel-head>div,.card-detail-head>div{min-width:0}.card-import-panel h3,.card-detail-panel h3{margin:2px 0 0;color:var(--text);font-size:var(--type-heading);font-weight:750;letter-spacing:-.025em;line-height:1.3}.card-file-button{position:relative;flex:none}.card-file-button input{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card-file-button span{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:9px 12px;border:1px solid rgba(142,213,255,.54);border-radius:10px;color:var(--accent-strong);background:#8ed5ff14;font-size:var(--type-support);font-weight:750;cursor:pointer}.card-file-button:hover span{border-color:var(--accent);background:#8ed5ff24}.card-file-button input:focus-visible+span{outline:3px solid var(--focus);outline-offset:3px}.card-file-button input:disabled+span{cursor:not-allowed;opacity:.55}.card-import-help,.card-import-empty{margin-top:14px;padding:14px;border:1px dashed rgba(64,83,111,.76);border-radius:10px;background:#03081221;text-align:center}.card-import-preview{display:grid;gap:11px;margin-top:14px;padding:12px;border:1px solid rgba(193,185,255,.3);border-radius:11px;background:#c1b9ff0b}.card-import-preview-title strong{min-width:0;overflow:hidden;color:var(--muted-strong);font-size:var(--type-support);text-overflow:ellipsis;white-space:nowrap}.card-import-preview-title span{flex:none;padding:3px 7px;border-radius:999px;color:var(--method-card);background:#c1b9ff1c;font-size:var(--type-helper);font-weight:700}.card-import-preview-metrics,.card-detail-totals,.card-statement-summary dl{display:grid;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid rgba(64,83,111,.64);border-radius:9px;background:#40536f9e}.card-import-preview-metrics>div,.card-detail-totals>div,.card-statement-summary dl>div{display:grid;min-width:0;gap:2px;padding:8px;background:var(--surface-quiet)}.card-import-preview-metrics dt,.card-detail-totals dt,.card-statement-summary dt{color:var(--muted);font-size:min(var(--type-helper),11px);font-weight:650;line-height:1.2}.card-import-preview-metrics dd,.card-detail-totals dd,.card-statement-summary dd{min-width:0;margin:0;overflow:hidden;color:var(--muted-strong);font-size:min(var(--type-amount-inline),14px);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.025em;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.card-import-preview-metrics>div:last-child dd,.card-detail-totals>div:last-child dd,.card-statement-summary dl>div:last-child dd{color:var(--accent-strong)}.card-import-warnings{display:grid;gap:4px;margin:0;padding:9px 10px 9px 28px;border-radius:9px;color:#ffe0a0;background:#f2c97714;font-size:var(--type-helper);line-height:1.5}.card-import-confirm-row{align-items:end}.card-import-confirm-row p{min-width:0;margin:0;color:var(--muted);font-size:var(--type-helper);line-height:1.5}.card-import-confirm-row p strong{color:var(--muted-strong)}.card-import-confirm-row button{min-width:150px;flex:none}.card-detail-head{align-items:end;margin-bottom:14px}.card-detail-totals{width:min(100%,390px);flex:none}.card-detail-totals>div{text-align:right}.card-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-3px 0 10px;padding:8px 10px;border:1px solid rgba(242,201,119,.18);border-radius:9px;color:var(--muted);background:#f2c97709;font-size:var(--type-helper);line-height:1.45}.card-detail-actions button{flex:none;min-height:38px;padding:7px 9px;border:1px solid rgba(255,159,159,.36);border-radius:8px;color:#ffbcbc;font-size:var(--type-helper);font-weight:700}.card-detail-actions button:hover{background:#ff9f9f14}.card-detail-toolbar{display:grid;min-width:0;gap:8px;margin-bottom:10px;padding:8px;border:1px solid rgba(64,83,111,.62);border-radius:11px;background:#111d309e}.card-detail-toolbar>div{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.card-detail-toolbar button{min-width:0;min-height:42px;padding:8px 10px;border:1px solid transparent;border-radius:9px;color:var(--muted-strong);font-size:var(--type-support);font-weight:700}.card-detail-toolbar button:hover{background:#ffffff0b}.card-detail-toolbar button[aria-pressed=true]{border-color:#8ed5ff75;color:var(--accent-strong);background:#8ed5ff1a}.card-detail-toolbar label{min-width:0}.card-detail-toolbar input{min-width:0;min-height:42px;padding-top:8px;padding-bottom:8px}.card-transaction-list{display:grid;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:#03081221}.card-transaction-row{display:grid;min-width:0;min-height:72px;grid-template-areas:"date merchant amount" "date category category";grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:8px 10px}.card-transaction-row+.card-transaction-row{border-top:1px solid rgba(42,59,86,.76)}.card-transaction-row:hover{background:#ffffff06}.card-transaction-date{display:grid;min-width:0;grid-area:date;align-self:stretch;align-content:center;gap:1px;padding-right:7px;border-right:1px solid rgba(64,83,111,.48)}.card-transaction-date span{color:var(--muted-strong);font-size:var(--type-helper);font-weight:700;font-variant-numeric:tabular-nums}.card-transaction-date small{color:var(--method-card);font-size:10px;font-weight:650;line-height:1.25}.card-transaction-merchant{min-width:0;grid-area:merchant;overflow:hidden;color:var(--text);font-size:var(--type-support);text-overflow:ellipsis;white-space:nowrap}.card-transaction-classification{display:grid;min-width:0;grid-area:category;grid-template-columns:minmax(0,1fr) 82px;gap:5px}.card-transaction-category,.card-transaction-kind{min-width:0}.card-transaction-category select,.card-transaction-kind select{min-width:0;min-height:40px;padding:7px 30px 7px 8px;font-size:max(16px,var(--type-support))}.card-transaction-amount{min-width:0;grid-area:amount;color:var(--accent-strong);font-size:min(var(--type-amount-inline),15px);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.025em;text-align:right;white-space:nowrap}.card-statement-summary{display:grid;gap:7px;padding:8px 10px 10px;border-top:1px solid rgba(193,185,255,.22);border-bottom:1px solid rgba(42,59,86,.58);background:#c1b9ff09}.card-statement-summary dl>div{padding:6px 7px;text-align:right}.card-statement-summary button{display:flex;width:100%;min-height:40px;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid rgba(193,185,255,.32);border-radius:8px;color:var(--method-card);background:#c1b9ff0e;font-size:var(--type-helper);font-weight:700;text-align:left}.card-statement-summary button:hover{border-color:var(--method-card);background:#c1b9ff1c}.card-statement-summary button span{flex:none;font-size:20px;line-height:1}.tabbar button>span{overflow:hidden;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}@media(min-width:768px){.card-import-hero{grid-template-columns:minmax(0,1fr) minmax(280px,340px);align-items:end;padding:20px}.card-detail-toolbar{grid-template-columns:auto minmax(220px,340px);align-items:center;justify-content:space-between}.card-detail-toolbar>div{width:240px}.card-transaction-row{min-height:58px;grid-template-areas:"date merchant category amount";grid-template-columns:66px minmax(140px,1fr) minmax(220px,260px) minmax(100px,122px);gap:10px;padding:7px 12px}.card-transaction-date{align-self:center}.card-transaction-category select,.card-transaction-kind select{min-height:42px}}@media(min-width:1180px){.card-transactions-screen{grid-template-areas:"hero hero" "import detail";grid-template-columns:minmax(300px,350px) minmax(0,1fr);align-items:start}.card-import-hero{grid-area:hero}.card-import-panel{position:sticky;top:24px;grid-area:import}.card-detail-panel{grid-area:detail}.card-import-confirm-row{align-items:stretch;flex-direction:column}.card-import-confirm-row button{width:100%;min-width:0}}@media(max-width:520px){.card-import-hero,.card-import-panel,.card-detail-panel{border-radius:12px}.card-import-hero,.card-import-panel,.card-detail-panel{padding:14px}.card-import-panel-head{align-items:flex-start}.card-import-confirm-row{align-items:stretch;flex-direction:column}.card-import-confirm-row button{width:100%;min-width:0}.card-detail-head,.card-detail-actions{align-items:stretch;flex-direction:column}.card-detail-actions button,.card-detail-totals{width:100%}.card-import-preview-metrics>div,.card-detail-totals>div{padding-right:6px;padding-left:6px}.card-import-preview-metrics dd,.card-detail-totals dd{font-size:12px}.card-statement-summary dd{font-size:11px}}@media(max-width:359px){.tabbar{padding-right:4px;padding-left:4px}.tabbar button{font-size:11px}.tabbar svg{width:18px;height:18px}.card-import-context{grid-template-columns:minmax(0,1fr)}.card-transaction-row{grid-template-columns:48px minmax(0,1fr) auto;padding-right:8px;padding-left:8px}.card-transaction-amount{font-size:12px}}.merchant-rule-settings-block{border-color:#c1b9ff61}.merchant-rule-heading{display:flex;min-width:0;align-items:flex-start;justify-content:space-between;gap:10px}.merchant-rule-heading>div{min-width:0}.merchant-rule-composer{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px;padding:10px;border:1px solid rgba(193,185,255,.25);border-radius:11px;background:#c1b9ff09}.merchant-rule-composer label,.merchant-rule-fields label{display:grid;min-width:0;gap:4px}.merchant-rule-composer label>span,.merchant-rule-fields label>span{color:var(--muted);font-size:11px;font-weight:650;line-height:1.2}.merchant-rule-match-note{display:grid;min-width:0;grid-column:1 / -1;grid-template-columns:16px minmax(210px,.72fr) minmax(0,1.28fr);align-items:center;gap:8px;margin:0;padding:6px 8px;border-left:2px solid rgba(193,185,255,.54);border-radius:0 7px 7px 0;color:var(--muted);background:#c1b9ff0b;font-size:10px;line-height:1.45}.merchant-rule-match-note-icon{display:inline-grid;width:16px;height:16px;place-items:center;border:1px solid rgba(193,185,255,.4);border-radius:50%;color:#c8c0ff;font-size:9px;font-weight:800;line-height:1}.merchant-rule-match-note-item{display:flex;min-width:0;align-items:baseline;gap:5px}.merchant-rule-match-note-item+.merchant-rule-match-note-item{padding-left:8px;border-left:1px solid rgba(193,185,255,.2)}.merchant-rule-match-note-item>strong{flex:none;color:#ddd8ff;font-weight:700}.merchant-rule-match-note--single{grid-template-columns:16px minmax(0,1fr)}.merchant-rule-pattern-field,.merchant-rule-add{grid-column:1 / -1}.merchant-rule-composer input,.merchant-rule-composer textarea,.merchant-rule-composer select,.merchant-rule-fields select{min-width:0;min-height:44px;padding-top:7px;padding-bottom:7px}.merchant-rule-pattern-preview,.merchant-rule-context-warning{grid-column:1 / -1}.merchant-rule-pattern-preview{min-height:32px;flex-wrap:nowrap;align-items:center;overflow:hidden}.merchant-rule-pattern-more{color:var(--accent-strong)}.merchant-rule-pattern-chips{display:flex;min-width:0;flex-wrap:wrap;gap:5px}.merchant-rule-pattern-chips>span{display:inline-flex;min-width:0;min-height:27px;align-items:center;gap:3px;padding:4px 8px;border:1px solid rgba(193,185,255,.34);border-radius:999px;color:#ddd8ff;background:#c1b9ff12;font-size:11px;font-weight:700;line-height:1.15;overflow-wrap:anywhere}.merchant-rule-pattern-chips>span:before{width:4px;height:4px;flex:none;border-radius:50%;background:#afa3ff;content:""}.merchant-rule-pattern-chips button{display:inline-grid;width:22px;min-width:22px;height:22px;min-height:22px;place-items:center;margin:-2px -5px -2px 0;padding:0;border-radius:50%;color:var(--muted-strong);font-size:15px;line-height:1}.merchant-rule-pattern-chips button:not(:disabled):hover,.merchant-rule-pattern-chips button:not(:disabled):focus-visible{color:#fff;background:#c1b9ff29}.merchant-rule-pattern-editor{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) minmax(150px,220px);align-items:stretch;gap:7px}.merchant-rule-token-workspace{min-width:0;min-height:44px;max-height:126px;align-content:start;overflow-x:hidden;overflow-y:auto;padding:6px;border:1px solid rgba(193,185,255,.28);border-radius:9px;background:#03081233;scrollbar-color:rgba(193,185,255,.3) transparent;scrollbar-width:thin}.merchant-rule-token-workspace>span{min-height:30px;flex:0 0 auto;padding:3px 5px 3px 9px;white-space:nowrap;overflow-wrap:normal}.merchant-rule-token-text{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.merchant-rule-token-workspace>span>button{width:28px;min-width:28px;height:28px;min-height:28px;margin:-1px -3px -1px 0}.merchant-rule-token-input{display:grid;min-width:0;min-height:44px;grid-template-columns:minmax(0,1fr) 38px;align-self:start;align-items:center;gap:3px;padding:3px;border:1px solid rgba(142,213,255,.36);border-radius:9px;background:#0308123d}.merchant-rule-token-input:focus-within{border-color:#8ed5ffc7;box-shadow:0 0 0 2px #8ed5ff24}.merchant-rule-token-input input{width:100%;min-width:0;min-height:36px;padding:5px 7px;border:0;border-radius:6px;background:transparent;box-shadow:none;font-size:12px}.merchant-rule-token-input input:focus{outline:0}.merchant-rule-token-input .merchant-rule-token-add{width:38px;min-width:38px;height:38px;min-height:38px;margin:0;padding:0;color:var(--accent-strong);font-size:19px;font-weight:750}.merchant-rule-token-warning{width:100%;min-height:0;flex:1 0 100%;padding:4px 6px;border:0;border-left:2px solid rgba(242,201,119,.55);border-radius:0 6px 6px 0;color:#e4c873;background:#f2c9770d;font-size:10px;font-weight:600;line-height:1.35;white-space:normal}@media(pointer:coarse){.merchant-rule-token-workspace>span>button{width:34px;min-width:34px;height:34px;min-height:34px}.merchant-rule-token-input{grid-template-columns:minmax(0,1fr) 44px}.merchant-rule-token-input .merchant-rule-token-add{width:44px;min-width:44px;height:44px;min-height:44px}}.merchant-rule-context-warning{margin:0;padding:7px 9px;border-left:2px solid rgba(242,201,119,.72);border-radius:0 7px 7px 0;color:#ead49c;background:#f2c9770e;font-size:10px;line-height:1.45;word-break:keep-all}.merchant-rule-list{display:grid;margin-top:10px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:#03081221}.merchant-rule-row{display:grid;min-width:0;padding:7px 9px}.merchant-rule-row+.merchant-rule-row{border-top:1px solid var(--line)}.merchant-rule-summary{display:grid;min-width:0;min-height:48px;grid-template-columns:minmax(190px,1.3fr) minmax(240px,1fr) auto;align-items:center;gap:10px}.merchant-rule-summary-keywords{display:grid;min-width:0;grid-template-columns:27px minmax(0,auto) auto;align-items:center;justify-content:start;gap:6px}.merchant-rule-summary-mark{display:inline-grid;width:27px;height:27px;place-items:center;border:1px solid rgba(193,185,255,.34);border-radius:8px;color:#c8c0ff;background:#c1b9ff12;font-size:9px;font-weight:800;letter-spacing:-.02em}.merchant-rule-summary-keywords strong{min-width:0;overflow:hidden;color:var(--text);font-size:var(--type-support);font-weight:720;text-overflow:ellipsis;white-space:nowrap}.merchant-rule-summary-keywords small{flex:none;color:var(--accent-strong);font-size:var(--type-helper);font-weight:700;white-space:nowrap}.merchant-rule-summary-meta{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:7px;overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap}.merchant-rule-summary-meta>span:not(.row-category){overflow:hidden;text-overflow:ellipsis}.merchant-rule-summary-meta>span+span:not(.row-category):before{margin-right:7px;color:var(--line-strong);content:"·"}.merchant-rule-edit-open{min-width:52px;min-height:38px;padding:6px 9px;border:1px solid rgba(142,213,255,.3);border-radius:8px;color:var(--accent-strong);background:#8ed5ff0b;font-size:var(--type-support);font-weight:700}.merchant-rule-edit-open:not(:disabled):hover,.merchant-rule-edit-open:not(:disabled):focus-visible{border-color:#8ed5ffad;background:#8ed5ff1a}.merchant-rule-category-preview{width:fit-content;max-width:86px;flex:none;color:var(--method-card)}.merchant-rule-edit-form{display:grid;min-width:0;gap:9px;padding:5px 0 3px}.merchant-rule-edit-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.merchant-rule-edit-heading>div{display:grid;min-width:0;gap:2px}.merchant-rule-edit-heading strong{color:var(--text);font-size:var(--type-item)}.merchant-rule-edit-heading small{color:var(--muted);font-size:var(--type-helper)}.merchant-rule-fields{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:6px}.merchant-rule-edit-help{margin-top:-1px}.merchant-rule-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding-top:2px}.merchant-rule-edit-actions>button{min-height:40px}.merchant-rule-edit-actions>.merchant-rule-remove{margin-right:auto}.merchant-rule-remove{min-height:42px;padding:7px 10px;border-radius:8px;color:var(--danger-soft);font-size:var(--type-support);font-weight:700}.merchant-rule-remove:not(:disabled):hover{background:#ff7f8b1a}.merchant-rule-help{margin:8px 2px 0;color:var(--muted);font-size:var(--type-helper);line-height:1.5;word-break:keep-all}.card-review-progress{display:grid;min-width:0;gap:7px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(120,215,170,.22);border-radius:10px;background:#78d7aa09}.card-review-progress-copy{display:grid;min-width:0;grid-template-columns:auto auto minmax(0,1fr);align-items:baseline;gap:6px}.card-review-progress-copy>span{color:var(--muted);font-size:var(--type-helper);font-weight:650}.card-review-progress-copy strong{color:var(--positive-soft);font-size:var(--type-support);font-variant-numeric:tabular-nums}.card-review-progress-copy small{overflow:hidden;color:var(--muted);font-size:var(--type-helper);text-align:right;text-overflow:ellipsis;white-space:nowrap}.card-review-progress-track{height:4px;overflow:hidden;border-radius:999px;background:#40536f99}.card-review-progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--positive);transition:width .18s ease-out}.card-detail-toolbar{grid-template-columns:minmax(0,1fr)}.card-detail-toolbar>.card-filter-group{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.card-toolbar-search{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:6px}.card-toolbar-search label{min-width:0}.card-selection-mode-button{min-height:42px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:9px;color:var(--muted-strong);font-size:var(--type-support);font-weight:700;white-space:nowrap}.card-selection-mode-button[aria-pressed=true]{border-color:var(--accent);color:var(--accent-strong);background:#8ed5ff14}.card-select-visible{display:none;min-width:0;align-items:center;gap:8px;padding:4px 2px 0;color:var(--muted);font-size:var(--type-helper);font-weight:650}.card-select-visible input,.card-transaction-select input{width:20px;height:20px;min-height:0}.card-transactions-screen[data-selection-mode=true] .card-select-visible{display:flex}.card-transaction-row{position:relative;grid-template-areas:"date merchant amount" "date category category" ". review review" ". follow follow";grid-template-columns:52px minmax(0,1fr) auto;gap:5px 8px;padding:9px 10px 9px 13px}.card-transaction-row:before{position:absolute;top:9px;bottom:9px;left:3px;width:2px;border-radius:999px;content:""}.card-transaction-row[data-review-state=pending]:before{background:repeating-linear-gradient(to bottom,var(--kind-fixed) 0 3px,transparent 3px 6px)}.card-transaction-row[data-review-state=reviewed]:before{background:var(--positive);opacity:.58}.card-transaction-select{display:none;width:24px;min-width:0;grid-area:select;align-items:center;justify-content:center}.card-transactions-screen[data-selection-mode=true] .card-transaction-row{grid-template-areas:"select date merchant amount" "select date category category" ". . review review" ". . follow follow";grid-template-columns:24px 48px minmax(0,1fr) auto}.card-transactions-screen[data-selection-mode=true] .card-transaction-select{display:flex}.card-transaction-merchant-cell{display:grid;min-width:0;grid-area:merchant;align-self:center;gap:4px}.card-transaction-merchant-cell .card-transaction-merchant{display:block;grid-area:auto}.card-classification-suggestion{display:grid;min-width:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:start;gap:3px;color:#f0dbab;font-size:11px;line-height:1.35}.card-suggestion-arrow{color:var(--kind-fixed);font-size:12px;line-height:1.3}.card-classification-suggestion>span:nth-child(2){min-width:0;overflow:hidden}.card-classification-suggestion strong{color:#ffe4ac;font-weight:750}.card-classification-suggestion small{display:block;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.card-classification-suggestion button{min-height:28px;padding:3px 5px;color:#ffe4ac;font-size:11px;font-weight:750;text-decoration:underline;text-underline-offset:3px}.card-transaction-category{position:relative;display:flex;min-width:0;align-items:center}.card-category-dot{position:absolute;z-index:1;left:7px;width:4px;height:4px;border-radius:999px;background:var(--method-card);pointer-events:none;opacity:.82}.card-transaction-category select{padding-left:17px;border-color:transparent;background-color:transparent;color:var(--muted-strong)}.card-transaction-category select:hover{border-color:#c1b9ff47}.card-transaction-category select:focus-visible{border-color:var(--focus)}.card-transaction-review{display:flex;min-width:0;grid-area:review;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px}.card-transaction-review button,.card-review-complete{display:inline-flex;min-height:32px;align-items:center;gap:5px;padding:4px 6px;font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap}.card-transaction-review button{border:1px solid rgba(242,201,119,.34);border-radius:7px;color:#ffe0a0}.card-transaction-review button:hover{background:#f2c97714}.card-transaction-review .card-manual-delete{border-color:#ff9f9f4d;color:#ffbcbc}.card-transaction-review .card-manual-delete:hover{background:#ff9f9f12}.card-review-complete{color:var(--positive-soft)}.card-review-complete>span{font-size:13px}.card-rule-follow-up{display:flex;min-width:0;grid-area:follow;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border-top:1px dashed rgba(142,213,255,.28);color:var(--muted-strong);font-size:11px;line-height:1.4}.card-rule-follow-up>span{min-width:0}.card-rule-follow-up>div{display:flex;flex:none;gap:2px}.card-rule-follow-up button{min-height:32px;padding:4px 6px;border-radius:6px;color:var(--accent-strong);font-size:11px;font-weight:700}.card-rule-follow-up button:last-child{color:var(--muted)}.card-rule-follow-up button:hover{background:#8ed5ff14}.card-transactions-screen:has(.card-bulk-tray){padding-bottom:182px}.card-bulk-tray{position:fixed;z-index:22;right:8px;bottom:calc(76px + env(safe-area-inset-bottom));left:8px;display:grid;width:min(calc(100% - 16px),560px);min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 auto;padding:10px;border:1px solid rgba(142,213,255,.5);border-radius:13px;background:#111d30fa;box-shadow:0 18px 48px #00000075;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card-bulk-count{display:flex;min-width:0;grid-column:1 / -1;align-items:center;justify-content:space-between;gap:8px}.card-bulk-count strong{color:var(--accent-strong);font-size:var(--type-support)}.card-bulk-count button{color:var(--muted);font-size:var(--type-helper);text-decoration:underline}.card-bulk-tray label{display:grid;min-width:0;gap:3px}.card-bulk-tray label>span{color:var(--muted);font-size:10px;font-weight:650}.card-bulk-tray select{min-width:0;min-height:42px;padding-top:7px;padding-bottom:7px}.card-bulk-tray>.btn-primary{min-height:42px;grid-column:1 / -1}@media(min-width:768px){.merchant-rule-composer{grid-template-columns:minmax(220px,2.2fr) 130px 126px minmax(122px,1fr) 92px auto;align-items:end}.merchant-rule-pattern-field,.merchant-rule-add{grid-column:auto}.merchant-rule-add{min-height:44px;padding-right:14px;padding-left:14px}.merchant-rule-fields{grid-template-columns:146px minmax(118px,1fr) minmax(118px,1fr) 92px}.merchant-rule-remove{min-width:54px}.card-detail-toolbar{grid-template-columns:minmax(300px,1fr) minmax(270px,.8fr);align-items:center}.card-detail-toolbar>.card-filter-group{width:auto}.card-toolbar-search{grid-template-columns:minmax(0,1fr)}.card-selection-mode-button{display:none}.card-select-visible{display:flex;grid-column:1 / -1}.card-transaction-select{display:flex}.card-transaction-row,.card-transactions-screen[data-selection-mode=true] .card-transaction-row{min-height:64px;grid-template-areas:"select date merchant category amount review" ". . follow follow follow follow";grid-template-columns:24px 54px minmax(100px,1fr) minmax(178px,218px) minmax(82px,104px) 92px;gap:7px 7px;padding:8px 10px 8px 13px}.card-transaction-review{justify-content:flex-start}.card-rule-follow-up{padding-right:0;padding-left:0}.card-transactions-screen:has(.card-bulk-tray){padding-bottom:112px}.card-bulk-tray{bottom:16px;width:min(calc(100% - 32px),860px);grid-template-columns:auto minmax(160px,1fr) minmax(140px,.75fr) auto;align-items:end;padding:11px 12px}.card-bulk-count{display:grid;min-width:120px;grid-column:auto;align-self:center;justify-content:start}.card-bulk-tray>.btn-primary{min-width:150px;grid-column:auto}}@media(min-width:768px)and (max-width:1179px){.merchant-rule-composer{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.merchant-rule-pattern-field,.merchant-rule-add{grid-column:1 / -1}.merchant-rule-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:768px)and (max-width:959px){.card-bulk-tray{bottom:calc(76px + env(safe-area-inset-bottom))}}@media(min-width:1180px){.settings-current{grid-column:1;grid-row:1}.transfer-block{grid-column:2;grid-row:1 / span 2}.typography-block{grid-column:1;grid-row:2}.category-settings-disclosure{grid-column:1 / -1;grid-row:3}.merchant-rule-settings-block{grid-column:1 / -1;grid-row:4}.danger-zone{grid-column:1;grid-row:5}.method-settings-disclosure,.settings-disclosure:not(.category-settings-disclosure){grid-column:2;grid-row:5}}@media(min-width:1180px)and (max-width:1439px){.card-transactions-screen{grid-template-areas:"hero" "import" "detail";grid-template-columns:minmax(0,1fr)}.card-import-panel{position:static;top:auto}.card-import-confirm-row{align-items:end;flex-direction:row}.card-import-confirm-row button{width:auto;min-width:150px}}@media(max-width:639px){.card-review-progress-copy{grid-template-columns:auto 1fr}.card-review-progress-copy small{grid-column:1 / -1;text-align:left}.card-rule-follow-up{align-items:flex-start;flex-direction:column}.card-rule-follow-up>div{width:100%;justify-content:flex-end}}@media(max-width:767px){.merchant-rule-summary{min-height:58px;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:3px 0}.merchant-rule-summary-keywords{grid-column:1;grid-row:1}.merchant-rule-edit-open{grid-column:2;grid-row:1}.merchant-rule-summary-meta{grid-column:1 / -1;grid-row:2;justify-content:flex-start}.merchant-rule-pattern-editor{grid-template-columns:minmax(0,1fr)}.merchant-rule-token-workspace{max-height:148px}.merchant-rule-match-note{grid-template-columns:16px minmax(0,1fr);align-items:start;gap:5px 8px}.merchant-rule-match-note-icon{grid-column:1;grid-row:1 / span 2}.merchant-rule-match-note-item{grid-column:2;flex-wrap:wrap;gap:1px 5px}.merchant-rule-match-note-item+.merchant-rule-match-note-item{margin-top:2px;padding-top:5px;padding-left:0;border-top:1px solid rgba(193,185,255,.18);border-left:0}.merchant-rule-match-note--single .merchant-rule-match-note-icon{grid-row:1}.merchant-rule-match-note--single .merchant-rule-match-note-item{margin-top:0;padding-top:0;border-top:0}.merchant-rule-edit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.merchant-rule-edit-actions>.merchant-rule-remove{grid-column:1 / -1;grid-row:2;margin-right:0}.category-settings-list{max-height:min(32dvh,236px);grid-template-columns:minmax(0,1fr)}.card-detail-toolbar button,.card-select-visible,.card-classification-suggestion button,.card-transaction-review button,.card-rule-follow-up button{min-height:44px}.card-classification-suggestion button{min-width:44px}.card-transaction-select{width:44px;min-height:44px}.card-transaction-select input{pointer-events:none}.card-transactions-screen[data-selection-mode=true] .card-transaction-row{grid-template-columns:44px 48px minmax(0,1fr) auto}}@media(max-width:359px){.merchant-rule-composer,.merchant-rule-fields{grid-template-columns:minmax(0,1fr)}.merchant-rule-composer>*,.merchant-rule-fields>*{grid-column:1}.merchant-rule-summary-keywords{grid-template-columns:25px minmax(0,1fr)}.merchant-rule-summary-keywords small{grid-column:2}.merchant-rule-summary-meta>span:nth-child(2){display:none}.card-transactions-screen[data-selection-mode=true] .card-transaction-row{grid-template-columns:40px 44px minmax(0,1fr) auto}}@media(prefers-reduced-motion:reduce){.card-review-progress-track>span{transition:none}}.card-recommendation-status{display:flex;min-width:0;align-items:flex-start;gap:7px;margin:0 0 12px;padding:9px 11px;border:1px solid rgba(120,215,170,.28);border-radius:9px;color:var(--positive-soft);background:#78d7aa0e;font-size:var(--type-helper);font-weight:650;line-height:1.45}.card-recommendation-status-mark{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--positive);flex:none}.card-recommendation-review{display:grid;min-width:0;gap:11px;margin:0 0 12px;padding:12px;border:1px solid rgba(242,201,119,.28);border-left-width:3px;border-radius:10px;background:#f2c9770b}.card-recommendation-review[data-active=true]{border-color:#8ed5ff61;background:#8ed5ff0d}.card-recommendation-intro{display:grid;min-width:0;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px}.card-recommendation-mark{position:relative;width:18px;height:18px;margin-top:2px;border:1px solid rgba(242,201,119,.72);border-radius:50%}.card-recommendation-mark:after{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:50%;background:#ffe4ac;content:"";transform:translate(-50%,-50%)}.card-recommendation-review[data-active=true] .card-recommendation-mark{border-color:#8ed5ffc7}.card-recommendation-review[data-active=true] .card-recommendation-mark:after{background:var(--accent-strong)}.card-recommendation-intro>div{display:grid;min-width:0;gap:2px}.card-recommendation-intro>div>span{color:#f0cf8d;font-size:10px;font-weight:750;letter-spacing:.06em}.card-recommendation-intro strong{color:var(--text);font-size:var(--type-support);line-height:1.4}.card-recommendation-intro p{margin:0;color:var(--muted);font-size:var(--type-helper);line-height:1.5;word-break:keep-all}.card-recommendation-side{display:grid;min-width:0;gap:8px}.card-recommendation-facts{display:grid;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.card-recommendation-facts>span{display:grid;min-width:0;gap:1px;padding:6px 8px;border-left:1px solid rgba(242,201,119,.3)}.card-recommendation-facts small{color:var(--muted);font-size:10px;font-weight:650}.card-recommendation-facts strong{overflow:hidden;color:#ffe4ac;font-size:var(--type-support);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.card-recommendation-side>button{min-height:42px;padding:8px 12px;border-radius:8px;font-size:var(--type-support);font-weight:750}.card-recommendation-exit{border:1px solid rgba(142,213,255,.34);color:var(--accent-strong)}.card-recommendation-exit:hover{background:#8ed5ff14}.card-transactions-screen:has(.card-recommendation-approval-bar){padding-bottom:190px}.card-recommendation-approval-bar{position:fixed;z-index:23;right:8px;bottom:calc(76px + env(safe-area-inset-bottom));left:8px;display:grid;width:min(calc(100% - 16px),660px);min-width:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 auto;padding:11px;border:1px solid rgba(242,201,119,.54);border-radius:13px;background:#111d30fb;box-shadow:0 18px 48px #00000075;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.card-recommendation-approval-count{display:grid;min-width:0;grid-column:1 / -1;gap:1px}.card-recommendation-approval-count span{color:#f0cf8d;font-size:10px;font-weight:750}.card-recommendation-approval-count strong{color:var(--text);font-size:var(--type-support);font-variant-numeric:tabular-nums}.card-recommendation-confirm{display:flex;min-width:0;grid-column:1 / -1;align-items:center;gap:9px}.card-recommendation-confirm input{width:22px;height:22px;min-height:0;flex:none}.card-recommendation-confirm>span{display:grid;min-width:0;gap:1px}.card-recommendation-confirm strong{color:var(--muted-strong);font-size:var(--type-helper);line-height:1.35}.card-recommendation-confirm small{color:var(--muted);font-size:10px;line-height:1.35}.card-recommendation-approval-bar>.btn-primary{min-width:0;min-height:44px;padding:8px 12px;white-space:nowrap}.card-recommendation-approval-exit{min-width:60px;min-height:44px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:8px;color:var(--muted-strong);font-size:var(--type-support);font-weight:700}.card-recommendation-approval-exit:hover{background:#ffffff0b}.card-transactions-screen[data-recommendation-mode=true] .card-select-visible,.card-transactions-screen[data-recommendation-mode=true] .card-selection-mode-button,.card-transactions-screen[data-recommendation-mode=true] .card-transaction-select{display:none}.card-transactions-screen[data-recommendation-mode=true] .card-classification-suggestion small{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}@media(min-width:640px){.card-recommendation-review{grid-template-columns:minmax(0,1fr) minmax(250px,310px);align-items:center}}@media(min-width:768px){.card-transactions-screen:has(.card-recommendation-approval-bar){padding-bottom:112px}.card-recommendation-approval-bar{bottom:16px;width:min(calc(100% - 32px),940px);grid-template-columns:auto minmax(250px,1fr) auto auto;padding:11px 12px}.card-recommendation-approval-count{min-width:150px;grid-column:auto}.card-recommendation-confirm{grid-column:auto}.card-recommendation-approval-bar>.btn-primary{min-width:176px}.card-transactions-screen[data-recommendation-mode=true] .card-transaction-row,.card-transactions-screen[data-recommendation-mode=true][data-selection-mode=true] .card-transaction-row{grid-template-areas:"date merchant category amount review" ". follow follow follow follow";grid-template-columns:54px minmax(100px,1fr) minmax(178px,218px) minmax(82px,104px) 92px}}@media(min-width:768px)and (max-width:959px){.card-recommendation-approval-bar{bottom:calc(76px + env(safe-area-inset-bottom))}}@media(max-width:420px){.card-recommendation-approval-bar>.btn-primary{font-size:12px}.card-recommendation-approval-count strong{font-size:12px}}
