body .input,body .select,body .textarea{background:#f9faf9;border-color:#dce3e2;border-radius:11px;min-height:46px;padding:11px 12px;font-size:16px;transition:border-color .15s,box-shadow .15s,background .15s}body .input:focus,body .select:focus,body .textarea:focus{outline-offset:1px;background:#fff;border-color:#397a6d;outline:2px solid #397a6d22}body .field-label{color:#65716d;font-size:12px;font-weight:500;line-height:1.5}body .input[aria-invalid=true],body .select[aria-invalid=true]{border-color:#bc5a4b}.form-select{min-width:0}.form-select-trigger{color:#253d35;text-align:left;background:#f9faf9;border:1px solid #dce3e2;border-radius:11px;align-items:center;gap:9px;width:100%;min-height:46px;padding:10px 12px;font-size:16px;display:flex}.form-select-trigger:hover:not(:disabled){background:#f0f5f2}.form-select-trigger>svg{color:#83918a;flex-shrink:0}.form-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.form-select-value.is-placeholder{color:#829089}.form-select-trigger:disabled,fieldset:disabled .form-select-trigger{color:#8b9590;opacity:.65;cursor:default}.form-choice-icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.form-choice-dialog{color:#263c33;background:#fbfcfa;border:0;border-radius:24px 24px 0 0;width:min(100%,480px);max-width:100%;max-height:min(86dvh,760px);margin:auto auto 0;padding:0;overflow:hidden;box-shadow:0 -8px 48px #172f2820}.form-choice-dialog[open]{flex-direction:column;animation:.16s ease-out form-sheet-in;display:flex}.form-choice-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15251f66}.form-choice-handle{background:#d5dcd6;border-radius:8px;flex:0 0 5px;width:34px;height:5px;margin:10px auto 2px}.form-choice-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:5px 16px 8px 20px;display:flex}.form-choice-heading h2{color:#243e32;margin:0;font-size:18px;font-weight:650}.form-choice-close{color:#67776d;background:#eff2ed;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.form-choice-search{color:#7b8d81;background:#eaf0e9;border-radius:12px;flex-shrink:0;align-items:center;gap:8px;margin:0 16px 12px;padding:0 12px;display:flex}.form-choice-search input{background:0 0;border:0;outline:none;width:100%;min-width:0;min-height:44px;font-size:16px}.form-choice-search:focus-within{outline-offset:2px;outline:2px solid #397a6d}.form-choice-list{overscroll-behavior:contain;min-height:0;padding:0 12px max(16px, env(safe-area-inset-bottom));overflow:auto}.form-choice-group-title{z-index:1;color:#68796c;background:#fbfcfa;padding:12px 10px 6px;font-size:12px;font-weight:600;position:sticky;top:0}.form-choice-option{color:#293d32;text-align:left;background:0 0;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px;font-size:16px;display:flex}.form-choice-option:hover:not(:disabled),.form-choice-option:focus-visible{background:#edf2e9}.form-choice-option[aria-selected=true]{color:#1f6250;background:#e8f0e8}.form-choice-option:disabled{opacity:.45}.form-choice-copy{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.form-choice-copy small{color:#768477;font-size:12px;line-height:1.4}.form-choice-check{visibility:hidden;color:#2d7860;flex-shrink:0}.form-choice-option[aria-selected=true] .form-choice-check{visibility:visible}.form-choice-empty{text-align:center;color:#748178;padding:24px 10px;font-size:14px}.segmented-control{background:#edf0ec;border-radius:12px;align-items:stretch;min-width:0;padding:3px;display:flex}.segmented-control button{color:#738175;background:0 0;border-radius:9px;flex:1;min-width:0;min-height:44px;padding:8px 10px;font-size:14px;font-weight:500;line-height:1.3}.segmented-control button[aria-checked=true]{color:#254c39;background:#fff;box-shadow:0 1px 4px #223d2420}.segmented-control button:disabled{opacity:.5}.segmented-control button:focus-visible,.form-select-trigger:focus-visible,.form-choice-option:focus-visible,.form-choice-close:focus-visible{outline-offset:2px;outline:2px solid #397a6d}@keyframes form-sheet-in{0%{opacity:.6;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (min-width:720px){.form-choice-dialog{border-radius:20px;max-height:min(78dvh,680px);margin:auto;box-shadow:0 18px 70px #172f2833}.form-choice-handle{display:none}.form-choice-heading{padding-top:12px}}@media (prefers-reduced-motion:reduce){.form-choice-dialog[open]{animation:none}body .input,body .select,body .textarea{transition:none}}.wallet-filter{border:0;min-width:0;margin:0 0 20px;padding:0}.wallet-filter legend{color:var(--muted);margin-bottom:8px;font-size:12px}.wallet-filter-options{flex-wrap:wrap;gap:8px;display:flex}.wallet-filter-option{color:#4c5c54;cursor:pointer;overflow-wrap:anywhere;background:#fff;border:1px solid #d9e1dd;border-radius:22px;max-width:100%;min-height:44px;padding:10px 15px;font-size:13px}.wallet-filter-option[aria-pressed=true]{color:#fff;background:#287562;border-color:#287562}.wallet-filter-option:focus-visible,.history-tabs button:focus-visible{outline-offset:3px;outline:2px solid #287562}.wallet-filter>p{margin:10px 0 0}.history-tabs{border-bottom:1px solid #d9e1dd;gap:24px;margin-bottom:20px;display:flex}.history-tabs button{color:#67766e;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;min-height:48px;padding:10px 4px;font-size:14px}.history-tabs button[aria-selected=true]{color:#21634f;border-bottom-color:#287562;font-weight:600}.transfer-history-note{margin:0 0 16px;line-height:1.7}.transfer-row{border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.transfer-row:last-child{border-bottom:0}.transfer-copy{min-width:0}.transfer-copy time{color:#718077;font-size:12px}.transfer-route{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;font-size:14px;display:flex}.transfer-route svg{flex:none}.transfer-amount{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:16px}@media (max-width:480px){.wallet-filter-options{gap:6px}.wallet-filter-option{padding:9px 12px}.transfer-row{gap:10px}.transfer-route{font-size:13px}}.receipt-upload{border:1px solid var(--line);background:var(--surface);border-radius:20px;max-width:680px;margin:0 auto;overflow:hidden}.receipt-upload-heading{color:var(--green-dark);align-items:center;gap:12px;padding:22px 20px 20px;display:flex}.receipt-upload-heading h2{color:var(--ink);letter-spacing:-.025em;font-size:18px}.receipt-upload-heading p{color:var(--muted);margin-top:3px;font-size:12px}.receipt-upload-wallets{border-bottom:1px solid var(--line);padding:0 20px 20px}.receipt-upload-wallets legend{padding:0 0 10px;font-size:12px;font-weight:650}.receipt-upload-choices{flex-wrap:wrap;gap:8px;display:flex}.receipt-upload-choices button{border:1px solid var(--line);background:var(--surface);text-align:left;overflow-wrap:anywhere;border-radius:12px;justify-content:center;align-items:center;gap:8px;max-width:100%;min-height:44px;padding:10px 12px;font-size:13px;display:flex}.receipt-upload-choices button[aria-pressed=true]{border-color:var(--green);background:var(--green-soft);color:var(--green-dark);font-weight:650}.receipt-upload-wallets:disabled button{cursor:default}.receipt-upload-account{margin-top:16px}.receipt-upload-account>span{margin-bottom:8px;font-size:12px;font-weight:600;display:block}.receipt-upload-account small{color:var(--muted);margin-left:5px;font-size:11px;font-weight:400}.receipt-upload-account-choices button{border-radius:10px;font-size:12px}.receipt-upload-picker{text-align:center;padding:28px 20px 22px}.receipt-upload-sample{color:#768d8a;background:#f0f6f4;border-radius:15px;justify-content:center;align-items:center;width:72px;height:84px;margin:0 auto 16px;display:flex}.receipt-upload-picker h3{font-size:16px}.receipt-upload-picker p{max-width:260px;color:var(--muted);margin:8px auto 22px;font-size:13px}.receipt-upload-primary,.receipt-upload-gallery{border-radius:12px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;padding:12px 16px;font-size:14px;font-weight:650;display:flex}.receipt-upload-primary{color:#fff;background:var(--green)}.receipt-upload-primary:hover:not(:disabled){background:var(--green-dark)}.receipt-upload-primary:disabled{opacity:.5}.receipt-upload-gallery{color:var(--green-dark);background:0 0;margin-top:8px}.receipt-upload-gallery:hover{background:var(--green-soft)}.receipt-upload-picker>small{color:var(--muted);margin-top:14px;font-size:11px;display:block}.receipt-upload-file{padding:20px 20px 0}.receipt-upload-preview{background:#edf0ef;border-radius:12px;justify-content:center;max-height:300px;padding:12px;display:flex;position:relative}.receipt-upload-preview img{object-fit:contain;min-width:0;max-width:100%;max-height:276px;display:block}.receipt-upload-remove{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 1px 6px #213d3920}.receipt-upload-file-icon{height:76px;color:var(--green);background:var(--green-soft);border-radius:12px;justify-content:center;align-items:center;display:flex}.receipt-upload-file-name{justify-content:space-between;align-items:baseline;gap:12px;margin-top:12px;font-size:12px;display:flex}.receipt-upload-file-name strong{overflow-wrap:anywhere;min-width:0}.receipt-upload-file-name span{color:var(--muted);flex-shrink:0;font-size:11px}.receipt-upload-notice{color:#79572b;background:#fff5e4;border-radius:12px;margin:16px 20px;padding:13px 14px;font-size:13px;line-height:1.7}.receipt-upload-status{padding:20px 20px 0}.receipt-upload-status-title{color:var(--green-dark);align-items:center;gap:10px;display:flex}.receipt-upload-status-title strong{font-size:13px}.receipt-upload-status>p:not(.receipt-upload-assurance){margin-top:8px;font-size:13px}.receipt-upload-elapsed{color:var(--muted);font-variant-numeric:tabular-nums;margin:6px 0 0 31px;font-size:12px;display:block}.receipt-upload-assurance{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.7}.receipt-upload-submit{width:calc(100% - 40px);margin:20px}.receipt-upload-recovery{padding:16px 20px 0}.receipt-upload-recovery .receipt-upload-gallery{border:1px solid var(--line);margin:0 0 8px}.receipt-upload-footnote{color:var(--muted);padding:14px 20px 20px;font-size:11px}.receipt-upload-empty{color:var(--muted);text-align:center;justify-items:center;gap:12px;padding:36px 20px;display:grid}.receipt-upload-empty>span{font-size:12px}.receipt-upload-spin{animation:1.3s linear infinite receipt-upload-spin}@keyframes receipt-upload-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.receipt-upload-spin{animation:none}}@media (min-width:700px){.receipt-upload{border-radius:22px}.receipt-upload-heading{padding:26px 28px}.receipt-upload-wallets{padding-left:28px;padding-right:28px}.receipt-upload-picker{max-width:400px;margin:auto;padding-top:32px;padding-bottom:28px}}.wallet-people{border-top:1px solid var(--line)}.wallet-people summary{cursor:pointer;align-items:center;gap:9px;padding:17px 0;font-size:14px;font-weight:600;list-style:none;display:flex}.wallet-people summary::-webkit-details-marker{display:none}.wallet-people summary>svg:last-child{margin-left:auto;transition:transform .15s}.wallet-people[open] summary>svg:last-child{transform:rotate(180deg)}.wallet-people-body{gap:16px;padding:0 0 18px;display:grid}.wallet-people-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.wallet-people-list li{align-items:center;gap:10px;min-height:44px;display:flex}.wallet-people-list small{color:var(--muted);margin-left:auto}.wallet-person-icon{color:#477265;background:#edf3f0;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.wallet-person-form{align-items:flex-end;gap:10px;display:flex}.wallet-person-form .field{flex:1;min-width:0}.wallet-person-form .button{flex:none;min-height:46px;margin-bottom:0}.sync-status-list{gap:10px;margin-block:14px;display:grid}.sync-status{border:1px solid var(--line,#e6e9e7);background:var(--surface,#fff);color:var(--muted,#64716b);border-radius:14px;align-items:flex-start;gap:10px;padding:14px;display:flex}.sync-status>svg{color:#52705e;flex:none;margin-top:1px}.sync-status strong{color:var(--ink,#253b30);font-size:13px;font-weight:600;line-height:1.55;display:block}.sync-status p{margin:3px 0 0;font-size:12px;line-height:1.7}.sync-status small{margin-top:4px;font-size:11px;display:block}.sync-status-wallet{margin-bottom:4px;font-size:11px;display:block}.sync-status-attention>svg{color:#a36f22}.sync-status-error{color:var(--muted,#64716b);font-size:12px;line-height:1.7}.report-page{--report-border:#e8eaec}.report-period{padding:4px 0 16px}.report-period-navigation{justify-content:space-between;align-items:center;margin:12px 0 4px;display:flex}.report-period-navigation .icon-button{width:44px;height:44px}.report-month-input{margin:0;padding:8px 15px;font-size:20px;font-weight:650;position:relative}.report-month-input input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.report-year-picker{width:150px}.report-year-picker .field-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.report-year-picker .form-select-trigger{background:0 0;border-color:#0000;font-size:20px;font-weight:650}.report-date-range{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px;padding:16px 0 8px;display:grid}.report-date-range label{min-width:0;color:var(--muted);margin:0;font-size:12px}.report-date-range input{border:1px solid var(--line);background:#fff;border-radius:9px;width:100%;min-width:0;min-height:44px;margin-top:5px;padding:8px 6px;font-size:16px;display:block}.report-date-range>span{color:var(--muted);padding-bottom:13px}.report-all-period{text-align:center;padding:21px 0 13px;font-size:15px}.report-quick-period{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.report-quick-period button{color:var(--muted);background:0 0;min-height:36px;padding:4px 10px;font-size:12px}.report-quick-period button:hover{color:var(--green)}.report-filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}.report-filters>summary{cursor:pointer;align-items:center;gap:7px;min-height:44px;font-size:13px;font-weight:600;list-style:none;display:flex}.report-filters>summary::-webkit-details-marker{display:none}.report-filter-count{background:var(--green);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;font-size:11px;display:inline-flex}.report-filter-fields{gap:14px;padding:3px 0 18px;display:grid}.report-search label{color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.report-search>div{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;display:flex;overflow:hidden}.report-search input{background:0 0;border:0;flex:1;width:100%;min-width:0;min-height:44px;padding:10px 12px;font-size:16px}.report-search .icon-button{flex-shrink:0;width:44px;height:44px}.report-toggle{cursor:pointer;align-items:center;gap:12px;min-height:44px;margin:0;font-size:13px;display:flex;position:relative}.report-toggle>span{flex:1}.report-toggle input{opacity:0;width:44px;height:28px;position:absolute;right:0}.report-toggle i{pointer-events:none;background:#cdd2d5;border-radius:16px;width:44px;height:28px;padding:3px;transition:background .12s}.report-toggle i:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .12s;display:block;box-shadow:0 1px 3px #0002}.report-toggle input:checked+i{background:var(--green)}.report-toggle input:checked+i:after{transform:translate(16px)}.report-toggle input:focus-visible+i{outline-offset:3px;outline:3px solid #72bdb5}.report-reset{background:0 0;justify-self:end;min-height:36px}.report-summary{border:1px solid var(--report-border);background:#fff;border-radius:12px;overflow:hidden}.report-main-totals{grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 8px 17px;display:grid}.report-main-totals>div{text-align:center;min-width:0;padding:0 3px}.report-main-totals span,.report-secondary-totals span{color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.report-main-totals strong{letter-spacing:-.035em;white-space:nowrap;font-size:clamp(15px,4.6vw,22px)}.report-income{color:var(--green)}.report-deficit{color:#b85b4c}.report-secondary-totals{border-top:1px solid var(--report-border);grid-template-columns:repeat(2,minmax(0,1fr));padding:13px 18px;display:grid}.report-secondary-totals>div+div{border-left:1px solid var(--report-border);padding-left:18px}.report-secondary-totals strong{font-size:18px}.report-secondary-totals small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.report-summary>p{color:var(--muted);border-top:1px solid var(--report-border);background:#fafbfb;padding:8px 15px;font-size:11px}.report-summary>p>span{margin:0 8px}.report-tabs{border-bottom:1px solid var(--line);margin-top:20px;display:flex}.report-tabs button{min-height:47px;color:var(--muted);background:0 0;border-bottom:2px solid #0000;flex:1;font-size:14px}.report-tabs button[aria-pressed=true]{color:var(--green);border-color:var(--green);font-weight:650}.report-section{border:1px solid var(--report-border);background:#fff;border-top:0;border-radius:0 0 12px 12px;padding:19px 16px}.report-section-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.report-section-title h2{font-size:15px;font-weight:650}.report-section-title small{color:var(--muted);margin-left:5px;font-size:12px;font-weight:400}.report-ranking{margin-top:7px}.report-ranking-row{gap:12px;padding:15px 0 11px;display:flex}.report-ranking-row+.report-ranking-row{border-top:1px solid var(--report-border)}.report-ranking-icon{justify-content:center;align-items:flex-start;width:34px;min-height:34px;padding-top:4px;display:flex}.report-ranking-icon>span{text-align:center;width:25px;color:var(--muted);background:#f2f4f5;border-radius:50%;font-size:12px;line-height:25px}.report-ranking-main{flex:1;min-width:0}.report-ranking-line{justify-content:space-between;gap:12px;font-size:13px;display:flex}.report-ranking-line>span{overflow-wrap:anywhere;min-width:0}.report-ranking-line small{color:var(--muted);font-size:10px;display:block}.report-ranking-line strong{white-space:nowrap;font-size:14px}.report-ranking-track{background:#f1f3f4;border-radius:4px;height:5px;margin:8px 0 5px;overflow:hidden}.report-ranking-track>span{border-radius:inherit;height:100%;display:block}.report-ranking-caption{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.report-more{width:100%;min-height:44px;color:var(--green);border-top:1px solid var(--report-border);background:0 0;margin-top:8px;font-size:13px}.report-caption{color:var(--muted);margin-bottom:14px;font-size:12px;line-height:1.7}.report-legend{color:var(--muted);gap:10px;font-size:11px;display:flex}.report-legend>span{align-items:center;gap:4px;display:flex}.report-legend i{background:#5d7d95;border-radius:2px;width:8px;height:8px}.report-legend i.income{background:#63aaa0}.report-trend-scroll{margin:0 -4px 18px;padding:0 4px 5px;overflow-x:auto}.report-trend-chart{border-bottom:1px solid var(--line);gap:10px;height:225px;padding-top:14px;display:flex}.report-trend-column{flex-direction:column;flex:1;align-items:center;min-width:38px;font-size:11px;display:flex}.report-trend-bars{justify-content:center;align-items:flex-end;gap:4px;width:100%;height:170px;margin-bottom:7px;display:flex}.report-trend-bars>span{background:#5d7d95;border-radius:3px 3px 0 0;width:13px}.report-trend-bars>span.income{background:#63aaa0}.report-trend-column>small{color:var(--muted);font-size:9px}.report-table-wrap{overflow-x:auto}.report-trend-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}.report-trend-table th,.report-trend-table td{text-align:right;border-bottom:1px solid var(--report-border);padding:10px 5px;font-weight:400}.report-trend-table tr>:first-child{text-align:left}.report-trend-table thead th{color:var(--muted);font-size:11px}.report-price-row,.report-entry{border-bottom:1px solid var(--report-border)}.report-price-row>summary,.report-entry>summary{cursor:pointer;align-items:center;gap:9px;min-height:76px;padding:13px 0;list-style:none;display:flex}.report-price-row>summary::-webkit-details-marker{display:none}.report-entry>summary::-webkit-details-marker{display:none}.report-price-row>summary>div:first-child,.report-entry>summary>div{flex:1;min-width:0}.report-price-row summary strong,.report-entry summary strong{overflow-wrap:anywhere;font-size:13px;font-weight:600}.report-price-row summary span,.report-entry summary span{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:10px;display:block}.report-price-value{text-align:right;flex-shrink:0}.report-price-value>strong{color:var(--green);font-size:15px!important}.report-price-row summary>svg,.report-entry summary>svg:last-child{color:#99a1a6;transition:transform .12s}.report-price-row[open] summary>svg,.report-entry[open] summary>svg:last-child{transform:rotate(90deg)}.report-price-row dl,.report-entry dl{gap:6px;margin:0;padding:0 0 14px;font-size:12px;display:grid}.report-price-row dl>div,.report-entry dl>div{justify-content:space-between;gap:15px;display:flex}.report-price-row dt,.report-entry dt{color:var(--muted);flex-shrink:0}.report-price-row dd,.report-entry dd{text-align:right;overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.report-entry>summary>strong{flex-shrink:0}.report-entry-link{color:var(--green);justify-content:flex-end;align-items:center;gap:4px;min-height:38px;padding-bottom:8px;font-size:12px;display:flex}.report-empty{color:var(--muted);text-align:center;padding:35px 10px;font-size:13px}.report-pagination{justify-content:space-between;align-items:center;gap:10px;margin-top:20px;display:flex}.report-pagination>span{color:var(--muted);font-size:12px}.report-export{text-align:right}.report-export p{color:#b44437;max-width:220px;margin-top:7px;font-size:11px}@media (min-width:700px){.report-period{width:100%;max-width:460px;margin:0 auto 6px}.report-filter-fields{grid-template-columns:1fr 1fr}.report-main-totals{padding:25px 18px}.report-main-totals strong{font-size:28px}.report-main-totals span{font-size:12px}.report-secondary-totals{padding:16px 30px}.report-summary>p{padding-left:30px}.report-section{padding:23px 28px}.report-ranking{grid-template-columns:1fr 1fr;column-gap:30px;display:grid}.report-ranking-row:nth-child(2){border-top:0}.report-price-row summary strong,.report-entry summary strong{font-size:14px}.report-price-row summary span,.report-entry summary span{font-size:12px}.report-entry dl,.report-price-row dl{max-width:600px;padding-left:34px}}.imported-receipt>.text-link{margin-bottom:12px}.imported-facts{grid-template-columns:1fr 1fr;gap:16px 20px;margin:20px 0;display:grid}.imported-facts div{min-width:0}.imported-facts dt{color:#718077;margin-bottom:5px;font-size:12px}.imported-facts dd{overflow-wrap:anywhere;margin:0;font-size:14px}.imported-total{border-top:1px solid #edf0ed;margin:20px 0 10px;padding-top:18px}.imported-total strong{font-variant-numeric:tabular-nums;font-size:24px}.imported-item{margin-bottom:12px}.imported-item-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.imported-item-heading h3{overflow-wrap:anywhere;min-width:0;margin:0;font-size:16px;font-weight:600}.imported-item-heading strong{font-variant-numeric:tabular-nums;white-space:nowrap}.imported-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7}.imported-source{border-top:1px solid #edf0ed;margin-top:16px}.imported-source summary{cursor:pointer;color:#718077;align-items:center;min-height:44px;font-size:12px;display:flex}.entry-row:focus-visible{outline-offset:3px;outline:2px solid #287562}.imported-legend{color:#718077;font-size:12px;line-height:1.7}.imported-legend ul{padding-left:18px}.editor-page .editor-metadata{border-radius:16px;padding:16px}.editor-wallet-fields{border-bottom:1px solid #edf0eb;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin-bottom:18px;padding:0 0 18px;display:grid}.editor-wallet-fields>:first-child,.editor-wallet-fields>:last-child:nth-child(2){grid-column:1/-1}.editor-page .editor-purchase-fields{grid-template-columns:minmax(130px,.85fr) minmax(0,1.2fr)}.editor-previous-payer{color:#718176;margin:-8px 0 16px;font-size:12px}.editor-page .metadata-details{border-top:0;padding-top:8px}.editor-page .metadata-details summary{color:#6c7f72;min-height:44px}.editor-page .item-card{border-color:#e0e6dc;border-radius:16px;box-shadow:0 1px 2px #25352605}.editor-page .item-card.selected{border-color:#a8bdac}.editor-page .item-card-header{padding:10px 14px 2px}.editor-page .item-number{color:#82917b;background:#eef2e9;border-radius:7px;width:22px;height:22px}.editor-page .item-card.selected .item-number{color:#517346;background:#e7eedf}.editor-page .item-name-input{color:#283e2e;border-bottom:0;font-size:17px;font-weight:550}.editor-page .item-fields{grid-template-columns:minmax(0,1fr) 9px 64px minmax(78px,.7fr);padding:8px 14px 14px}.editor-page .currency-input .input{padding-left:25px;font-size:19px;font-weight:500}.editor-page .currency-input>span{color:#82907f;font-size:14px}.editor-page .quantity-field .input{padding-left:5px;padding-right:5px;font-size:17px}.editor-page .item-line-total{padding-bottom:13px}.editor-page .item-line-total strong{color:#355a38;font-size:18px}.editor-page .item-content-fields{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:start;gap:12px;padding:0 14px 14px}.content-unit-field{flex-direction:column;gap:8px;min-width:0;display:flex}.editor-page .item-category{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;padding:0 14px 14px;display:grid}.editor-page .item-category .form-select-trigger{background:#f5f7f1;border-color:#0000;gap:7px;padding-left:9px;padding-right:9px;font-size:14px}.editor-page .item-category .form-choice-icon{border-radius:8px}.item-tax-controls{border-top:1px solid #edf0e9;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:10px;margin:0 14px 14px;padding-top:14px;display:grid}.item-tax-controls .segmented-control button{padding:8px 4px;font-size:13px}.editor-page .editor-summary{border-radius:16px;padding:18px}.editor-page .editor-footer{border-radius:16px 16px 0 0}@media (min-width:800px){.editor-page .editor-footer{border-radius:14px}}@media (max-width:360px){.editor-page .item-fields{grid-template-columns:minmax(0,1fr) 7px 52px minmax(65px,.65fr);gap:5px}.editor-page .item-line-total strong{font-size:16px}.editor-page .editor-purchase-fields{grid-template-columns:minmax(0,1fr)}}.data-management{max-width:820px;margin:0 auto}.data-filters{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px}.data-search{align-items:center;gap:8px;display:flex}.data-search>svg{color:var(--muted)}.data-search input{background:0 0;border:0;border-radius:3px;width:100%;min-width:0;min-height:44px;padding:8px 0;font-size:16px}.data-search>button{flex-shrink:0}.data-filter-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:12px;padding-top:12px;display:grid}.data-filter-row label{gap:5px;min-width:0;display:grid}.data-filter-row label>span{color:var(--muted);font-size:11px}.data-filter-row select,.data-list-heading select{background:#fff;border:1px solid #d7dfe2;border-radius:5px;width:100%;min-width:0;min-height:44px;padding:8px 5px;font-size:13px}.data-list-heading{justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px;display:flex}.data-list-heading h2{font-size:14px;font-weight:650}.data-list-heading select{color:var(--muted);background:0 0;border-color:#0000;font-size:12px}.data-asset-list{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:0;padding:0;list-style:none;overflow:hidden}.data-asset-list:empty{display:none}.data-asset{align-items:center;gap:8px;min-height:78px;padding:10px 8px 10px 12px;display:flex}.data-asset+.data-asset{border-top:1px solid var(--line)}.data-asset-icon{color:#6b8b86;flex-shrink:0;place-items:center;width:28px;display:grid}.data-asset-copy{flex:1;min-width:0}.data-asset-name{width:100%;color:var(--ink);text-align:left;overflow-wrap:anywhere;background:0 0;padding:0;font-size:13px;font-weight:500;line-height:1.6;display:block;overflow:hidden}button.data-asset-name{min-height:44px;color:var(--green-dark)}button.data-asset-name:hover{text-underline-offset:3px;text-decoration:underline}.data-asset-meta{color:var(--muted);flex-wrap:wrap;gap:2px 8px;margin-top:2px;font-size:10px;line-height:1.6;display:flex}.data-asset-meta>span{overflow-wrap:anywhere}.data-asset-unavailable{color:#a74b40;margin-top:4px;font-size:11px}.data-download{color:#677d79;flex-shrink:0}.data-pagination{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.data-pagination>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.data-empty{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted);text-align:center;justify-items:center;gap:10px;padding:32px 16px;font-size:13px;display:grid}.data-notice,.data-footnote{color:var(--muted);margin:12px 2px;font-size:11px;line-height:1.7}.data-preview{width:calc(100% - 20px);max-width:760px;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--surface);margin:auto;padding:0;overflow:hidden}.data-preview[open]{flex-direction:column;display:flex}.data-preview::backdrop{background:#1621279e}.data-preview-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;min-height:56px;padding:5px 6px 5px 14px;display:flex}.data-preview-header h2{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-width:0;font-size:13px;font-weight:600;display:-webkit-box;overflow:hidden}.data-preview-image{overscroll-behavior:contain;background:#edf0ef;min-height:0;padding:10px;overflow:auto}.data-preview-image img{width:100%;height:auto;margin:0 auto;display:block}.data-preview-image img[hidden]{display:none}.data-image-loading{color:var(--muted);text-align:center;padding:48px 12px;font-size:13px}.data-preview-footer{border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;min-height:60px;padding:8px 12px;display:flex}.data-preview-footer>span{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:11px}.data-preview-footer>a{flex-shrink:0}@media (min-width:700px){.data-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:16px;padding:14px;display:grid}.data-search{border-bottom:1px solid var(--line)}.data-filter-row{border:0;margin-top:0;padding-top:0}.data-asset{gap:12px;padding:10px 14px}.data-asset-name{font-size:14px}.data-asset-meta{font-size:11px}}:root{color:#273039;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--canvas:#f3f4f5;--surface:#fff;--ink:#273039;--muted:#6d767e;--line:#e3e6e8;--green:#087f79;--green-dark:#066761;--green-soft:#eaf5f3;--radius:8px;background:#f3f4f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{color:inherit;font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}svg{flex-shrink:0;display:block}strong{font-weight:650}h1,h2,h3,p{margin:0}fieldset{border:0;min-width:0;margin:0;padding:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #72bdb5}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;border-color:var(--green);outline:2px solid #a1d1cb}::selection{color:var(--ink);background:#c8e8e3}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted)}.small-text{font-size:12px}.app-shell{min-height:100dvh}.sidebar{display:none}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:12px;height:49px;padding:0 12px 0 16px;display:flex}.topbar-ledger{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}.topbar-right{flex-shrink:0;align-items:center;gap:5px;display:flex}.environment-label{color:#758087;border:1px solid #dfe4e6;border-radius:3px;padding:2px 5px;font-size:10px;font-weight:500}.icon-button{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border-radius:6px;place-items:center;padding:10px;display:inline-grid}.icon-button:hover{background:#edf1f2}.page{width:100%;max-width:1100px;padding:12px 12px calc(86px + env(safe-area-inset-bottom));margin:0 auto}.page-header{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:12px;display:flex}.page-title{font-size:20px;font-weight:700;line-height:1.4}.page-header p{color:var(--muted);margin-top:5px;font-size:12px}.heading-actions{align-items:center;gap:8px;display:flex}.month-picker{background:#fff;border:1px solid #dfe4e6;border-radius:6px;align-items:center;display:flex}.month-picker .icon-button{color:#66717b}.month-label{font-variant-numeric:tabular-nums;cursor:pointer;place-items:center;min-width:102px;min-height:44px;font-size:14px;font-weight:600;display:grid;position:relative}.month-label input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;position:absolute;inset:0}.month-label:focus-within{outline:2px solid var(--green);outline-offset:-2px;border-radius:3px}.bottom-nav{z-index:50;min-height:calc(64px + env(safe-area-inset-bottom));padding:3px 4px calc(4px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dfe4e6;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0}.bottom-nav .nav-link{color:#7a8288;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:56px;font-size:10px;font-weight:500;display:flex}.bottom-nav .nav-icon{place-items:center;height:27px;display:grid}.bottom-nav .nav-link.active{color:var(--green);font-weight:700}.bottom-nav .nav-link:nth-child(3) .nav-icon{background:var(--green);color:#fff;border-radius:6px;width:38px;height:30px}.button{text-align:center;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.button.primary{color:#fff;background:var(--green)}.button.primary:hover{background:var(--green-dark)}.button.secondary{color:#41515b;background:#fff;border-color:#d7dfe2}.button.secondary:hover{background:#f5f8f8}.button.ghost{color:var(--green);background:0 0}.button.small{min-height:44px;padding:8px 11px;font-size:12px}.button.danger{color:#ab4a40;background:#fff8f7;border-color:#ead5d2}.button:disabled,.disabled{opacity:.45;pointer-events:none}.text-link{min-height:44px;color:var(--green);align-items:center;gap:3px;font-size:12px;font-weight:500;display:inline-flex}.text-link:hover{text-underline-offset:3px;text-decoration:underline}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0}.card-header{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 0;display:flex}.card-title{align-items:center;gap:7px;font-size:14px;font-weight:650;display:inline-flex}.month-summary{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px;padding:15px 0;display:grid}.summary-cell{text-align:center;gap:6px;min-width:0;padding:0 10px;display:grid}.summary-cell+.summary-cell{border-left:1px solid var(--line)}.summary-cell>span{color:var(--muted);font-size:12px}.summary-cell>strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:19px;font-weight:650;line-height:1.25}.summary-cell.income>strong{color:var(--green)}.quick-actions{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.quick-actions .button{gap:5px;padding:9px 6px;font-size:13px}.draft-banner{color:#35756d;background:#edf7f4;border:1px solid #cce3de;border-radius:6px;align-items:center;gap:8px;min-height:44px;padding:10px 12px;font-size:12px;display:flex}.draft-banner>span{flex:1}.draft-banner strong{font-variant-numeric:tabular-nums;margin-left:7px}.section-heading{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-top:8px;display:flex}.section-heading h2{font-size:14px;font-weight:650}.entry-list{min-width:0}.entries-card{overflow:hidden}.entry-date-label{border-bottom:1px solid var(--line);color:#69747c;background:#f7f8f9;padding:6px 12px;font-size:11px}.entry-date-group+.entry-date-group{border-top:1px solid var(--line)}.entry-row{align-items:center;gap:10px;min-height:66px;padding:11px 12px;display:flex}.entry-row+.entry-row{border-top:1px solid #edf0f1}.entry-icon{color:#5f8d85;background:#edf5f2;border-radius:6px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.entry-icon.income{color:#168c85;background:#e8f6f2}.entry-copy{flex:1;min-width:0}.entry-name{color:#333f46;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;display:block;overflow:hidden}.entry-meta{color:#69757d;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;display:block;overflow:hidden}.entry-meta>span{color:#aeb6bb;margin:0 5px}.entry-amount{font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:15px;font-weight:600}.entry-amount.income{color:var(--green)}.category-layout{justify-content:center;align-items:center;gap:18px;min-height:185px;padding:18px 14px;display:flex}.donut{border-radius:50%;flex-shrink:0;place-items:center;width:122px;height:122px;display:grid;position:relative;transform:rotate(-90deg)}.donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:15px}.donut-center{z-index:1;text-align:center;gap:5px;display:grid;position:relative;transform:rotate(90deg)}.donut-center>span{color:var(--muted);font-size:10px}.donut-center strong{font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.donut-center small{margin-right:2px;font-size:11px;font-weight:400}.category-list{flex:1;gap:12px;min-width:0;max-width:280px;display:grid}.category-row{align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.category-row>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.category-row strong{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:12px;font-weight:600}.category-row small{color:var(--muted);font-size:11px;display:none}.category-dot{border-radius:2px;flex-shrink:0;width:7px;height:7px;display:inline-block}.chart-svg{width:calc(100% - 24px);height:auto;max-height:250px;margin:18px 12px 12px;display:block;overflow:visible}.chart-svg text,.chart-label{fill:#74818a;font-family:inherit;font-size:17px}.chart-legend{color:var(--muted);gap:12px;font-size:11px;display:flex}.chart-legend>span{align-items:center;gap:5px;display:flex}.chart-key{background:#168c85;border-radius:50%;width:7px;height:7px}.chart-key.light{background:#b7cfc7}.wallet-grid{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:0;display:grid;overflow:hidden}.wallet-card{background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;min-height:78px;padding:14px;display:grid}.wallet-card+.wallet-card{border-top:1px solid var(--line)}.wallet-top{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:0 9px;font-size:14px;display:grid}.wallet-top>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wallet-icon{color:#6b8b86;grid-row:1/3;place-items:center;width:32px;height:32px;display:grid}.wallet-kind{color:#69757d;grid-column:2;margin-top:3px;font-size:11px}.wallet-balance{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:20px;font-weight:600}.wallet-balance small{margin-right:3px;font-size:14px;font-weight:400}.unconfigured-balance{color:#8b9398;font-size:13px;font-weight:400}.wallet-overview{margin-bottom:14px;padding:16px}.wallet-overview>span{font-size:12px}.wallet-overview h2{font-variant-numeric:tabular-nums;margin:5px 0;font-size:29px;font-weight:600}.wallet-overview h2 small{margin-right:4px;font-size:18px;font-weight:400}.wallet-overview p{font-size:12px}.wallet-actions-grid{align-items:start;gap:10px;display:grid}.wallet-action-panel{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.wallet-action-panel>summary{cursor:pointer;align-items:center;gap:8px;min-height:52px;padding:10px 14px;font-size:14px;list-style:none;display:flex}.wallet-action-panel>summary::-webkit-details-marker{display:none}.wallet-action-panel>summary>svg:last-child{color:#89979c;margin-left:auto}.wallet-action-panel[open]>summary>svg:last-child{transform:rotate(180deg)}.wallet-action-panel>form.card{border:0;border-radius:0;padding:0 16px 16px}.wallet-action-panel[open]>summary{margin-bottom:4px}.wallet-actions-grid .card-header{margin-bottom:18px;padding:0}.wallet-action-panel>form>.button{margin-top:16px}.registration-grid{border:1px solid var(--line);border-radius:var(--radius);background:#fff;display:grid;overflow:hidden}.registration-grid>:only-child{grid-column:1/-1}.registration-option{text-align:left;background:#fff;align-items:center;gap:12px;min-width:0;min-height:78px;padding:15px 16px;display:flex}.registration-option+.registration-option{border-top:1px solid var(--line)}.registration-option>svg:first-child{color:var(--green)}.registration-option>svg:last-child{color:#929ba1}.registration-option:hover{background:#f7faf9}.option-copy{flex:1;gap:4px;min-width:0;display:grid}.option-copy strong{font-size:15px;font-weight:600}.option-copy small{color:var(--muted);font-size:12px}.registration-note{align-items:flex-start;gap:7px;margin:12px 3px 16px;font-size:12px;line-height:1.7;display:flex}.registration-note svg{margin-top:2px}.draft-list{gap:8px;display:grid}.draft-card{align-items:center;gap:10px;min-height:76px;padding:12px;display:flex}.draft-card .entry-copy>strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;display:block;overflow:hidden}.draft-card>strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:600}.draft-card>svg:last-child{color:#9ba4a9}.badge{color:#6c797f;white-space:nowrap;background:#f5f7f7;border:1px solid #e2e7e8;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:400;display:inline-flex}.empty-state{color:#849097;text-align:center;justify-items:center;gap:11px;padding:36px 18px;display:grid}.empty-state h2{color:#596970;font-size:15px;font-weight:600}.empty-state p{color:var(--muted);font-size:13px}.status-notice,.error-notice,.committed-banner,.operation-banner{color:#327368;background:#eef7f4;border:1px solid #cfe4df;border-radius:6px;align-items:flex-start;gap:9px;margin-bottom:14px;padding:12px 14px;font-size:13px;line-height:1.6;display:flex}.error-notice{color:#a44d42;background:#fff5f3;border-color:#ecd2cd}.error-notice>span{flex:1}.status-notice p,.error-notice p,.committed-banner p,.operation-banner p{margin:3px 0 0}.operation-banner{color:#8b7133;background:#fff9e9;border-color:#e8ddbf;flex-wrap:wrap}.operation-banner>div:first-of-type{flex:1}.operation-banner .form-actions{margin:0}.operation-banner small{overflow-wrap:anywhere;font-size:10px;display:block}.committed-banner{flex-wrap:wrap;align-items:center}.committed-banner>div{flex:1}.committed-banner strong{font-size:14px;display:block}.committed-banner p{font-size:12px}.loading-state{min-height:180px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.loading-spinner{border:2px solid #dce7e4;border-top-color:var(--green);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.network-status{color:#8d7134;background:#fff7e2;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:12px;display:flex}.main-content>.status-notice{margin:10px 12px 0}.feature-note{color:var(--muted);align-items:flex-start;gap:8px;padding:12px 0;font-size:12px;line-height:1.7;display:flex}.history-toolbar{align-items:center;gap:8px;margin-bottom:14px;display:flex}.search-field{flex:1;min-width:0;display:flex;position:relative}.search-field>svg{color:#929da3;position:absolute;top:13px;left:12px}.search-field>input{width:100%;min-width:0;min-height:44px;color:var(--ink);background:#fff;border:1px solid #d9e0e2;border-radius:6px;padding:10px 10px 10px 37px;font-size:16px}.history-toolbar>a{display:none}.history-group{margin-top:16px}.history-date{color:#64727b;justify-content:space-between;align-items:center;gap:10px;margin:0 2px 7px;font-size:12px;font-weight:500;display:flex}.history-date small{color:#69757d;font-variant-numeric:tabular-nums;font-size:11px;font-weight:400}.stats-grid{gap:14px;margin-top:14px;display:grid}.breakdown-list{padding:12px 16px 16px}.breakdown-row{gap:7px;padding:11px 0;font-size:13px;display:grid}.inline-row{align-items:center;gap:9px;display:flex}.breakdown-row>.inline-row{justify-content:space-between}.breakdown-row>.inline-row>span{align-items:center;gap:7px;display:flex}.breakdown-row strong{font-variant-numeric:tabular-nums;font-weight:600}.progress-track{background:#edf0f1;border-radius:2px;height:5px;overflow:hidden}.progress-fill{border-radius:inherit;height:100%;display:block}.form-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:#66747c;justify-content:space-between;align-items:center;gap:4px;font-size:12px;font-weight:400;display:flex}.required,.optional{color:#8c979d;font-size:10px;font-weight:400}.required{color:#a66f53}.input,.select,.textarea{background:#fff;border:1px solid #d9e0e2;border-radius:6px;width:100%;min-width:0;min-height:44px;padding:9px 10px;font-size:16px;line-height:1.4}.input::placeholder,.textarea::placeholder{color:#a1aab0}.input:disabled,.select:disabled,.input[readonly]{color:#8d989e;background:#f6f7f8}.input[type=date]{appearance:none;min-width:0}.select{padding-right:20px}.textarea{resize:vertical;min-height:80px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;display:grid}.full-width{grid-column:1/-1}.field-error{color:#ac5549;margin-top:6px;font-size:12px;line-height:1.6}.field:has(.field-error) .input{border-color:#d5a094}.editor-page{padding-bottom:calc(242px + env(safe-area-inset-bottom))}.editor-back{min-height:36px;margin-bottom:2px}.editor-heading{margin-bottom:12px}.source-badge{color:#69757d;align-items:center;gap:5px;font-size:11px;display:inline-flex}.context-dot{background:#7eaaa2;border-radius:50%;width:5px;height:5px}.editor-layout{align-items:start;gap:12px;display:grid}.receipt-preview{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:0;overflow:hidden}.preview-toolbar{align-items:center;gap:6px;min-height:48px;padding:2px 10px 2px 14px;display:flex}.preview-toolbar>span{color:#65747c;flex:1;align-items:center;gap:6px;font-size:13px;display:flex}.preview-toolbar .button{padding-left:8px;padding-right:8px;font-size:12px}.receipt-viewport{border-top:1px solid var(--line);background:#e9edef;min-height:0;max-height:350px;padding:18px 32px;overflow:auto}.receipt-image-wrap{background:#fff;width:min(100%,310px);margin:0 auto;display:block;position:relative}.receipt-image{width:100%;height:auto;display:block}.receipt-region{z-index:2;background:#168c8510;border:1px solid #168c8588;border-radius:2px;padding:0;position:absolute}.receipt-region:hover,.receipt-region.selected{border:2px solid var(--green);background:#168c8522}.receipt-caption{color:#69757d;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:10px;display:flex}.receipt-preview:not(.is-open) .receipt-viewport,.receipt-preview:not(.is-open) .receipt-caption,.receipt-preview:not(.is-open) .preview-zoom{display:none}.receipt-preview:not(.is-open) .mobile-image-toggle svg{transform:rotate(-90deg)}.editor-panel{min-width:0}.editor-metadata{padding:14px}.editor-metadata .card-header{margin-bottom:15px;padding:0}.metadata-details{border-top:1px solid #edf0f1;margin-top:12px}.metadata-details summary,.item-details summary{color:#6c7e85;cursor:pointer;align-items:center;gap:5px;min-height:44px;font-size:12px;list-style:none;display:flex}.metadata-details summary::-webkit-details-marker{display:none}.item-details summary::-webkit-details-marker{display:none}.metadata-details[open] summary svg,.item-details[open] summary svg{transform:rotate(180deg)}.metadata-details .form-grid{padding-bottom:2px}.items-heading{justify-content:space-between;align-items:center;gap:7px;margin:15px 1px 9px;display:flex}.items-heading h2{align-items:center;gap:7px;font-size:14px;font-weight:650;display:flex}.items-heading>span{font-size:11px}.item-list{gap:10px;display:grid}.item-card{background:#fff;border:1px solid #dfe5e7;border-radius:8px;min-width:0;scroll-margin-top:14px;overflow:hidden}.item-card.selected{border-color:#75b6ab}.item-card-header{align-items:center;gap:8px;padding:7px 12px 0;display:flex}.item-number{color:#87999e;font-variant-numeric:tabular-nums;background:#f0f4f4;border-radius:3px;flex-shrink:0;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.item-card.selected .item-number{color:#fff;background:#559f93}.item-name-field{flex:1}.item-name-input{color:#35464f;background:0 0;border:0;border-bottom:1px solid #edf0f1;border-radius:0;width:100%;min-width:0;min-height:44px;padding:7px 0;font-size:16px;font-weight:500}.item-name-input::placeholder{color:#a1aab0;font-weight:400}.item-name-input[aria-invalid=true]{border-color:#c98a7d}.remove-button{color:#9aa5ab;background:0 0;border-radius:6px;flex-shrink:0;place-items:center;min-width:44px;min-height:44px;margin-right:-8px;padding:10px;display:grid}.remove-button:hover{color:#b46759;background:#fff3f0}.item-fields{grid-template-columns:minmax(0,1fr) 9px 56px minmax(72px,.78fr);align-items:end;gap:7px;padding:12px;display:grid}.currency-input{min-width:0;position:relative}.currency-input>span{color:#89969d;pointer-events:none;font-size:12px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.currency-input .input{font-variant-numeric:tabular-nums;padding-left:23px}.multiply-sign{color:#a5afb3;text-align:center;padding-bottom:13px;font-size:13px}.quantity-field .input{text-align:center;padding-left:5px;padding-right:5px}.item-line-total{flex-direction:column;justify-content:space-between;align-self:stretch;align-items:flex-end;min-width:0;padding-bottom:11px;display:flex}.item-line-total strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:600}.item-category{align-items:center;gap:8px;padding:0 12px;display:flex}.item-category>label{flex:1;min-width:0}.category-select{color:#56817a;background:#f4f9f7;border:1px solid #e0e7e7;border-radius:5px;width:100%;max-width:100%;min-height:44px;padding:8px;font-size:16px}.tax-badge{color:#8a959b;white-space:nowrap;flex-shrink:0;font-size:10px}.item-details{margin:0 12px}.item-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px;padding:3px 0 14px;display:grid}.item-card>.field-error{margin:0 12px 12px}.add-item{width:100%;margin-top:10px}.editor-summary{margin-top:14px;padding:14px}.summary-row{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.summary-amount{color:#31484d;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:26px;font-weight:650}.summary-amount small{margin-right:3px;font-size:15px;font-weight:400}.printed-total{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 115px;align-items:center;gap:10px;margin-top:14px;padding-top:14px;display:grid}.printed-total .field-label{flex-wrap:wrap;justify-content:flex-start}.summary-difference{border-top:1px solid var(--line);align-items:flex-start;gap:5px;margin-top:11px;padding-top:11px;font-size:12px;display:flex}.summary-difference.balanced{color:#4b8a7c}.summary-difference.unbalanced{color:#a17a31}.editor-summary>p{margin-top:10px;font-size:12px}.confirm-panel{background:#fff;border:1px solid #97c7bc;border-radius:8px;margin-top:16px;padding:16px}.confirm-panel .card-header{padding:0}.confirm-panel>p{margin-top:14px;font-size:12px}#review-heading{scroll-margin-top:72px}.confirmation-lines{margin:8px 0 14px}.confirmation-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;font-size:13px;display:flex}.confirmation-row>span:first-child{color:var(--muted)}.confirmation-row strong{text-align:right;font-variant-numeric:tabular-nums}.duplicate-warning{color:#8b713a;background:#fff9e9;border:1px solid #e7d9b2;border-radius:6px;align-items:flex-start;gap:8px;margin-top:10px;padding:11px;font-size:12px;line-height:1.6;display:flex}.duplicate-warning p{margin:5px 0}.duplicate-warning small{overflow-wrap:anywhere;font-size:10px}.duplicate-warning svg{margin-top:2px}.checkbox-label{cursor:pointer;align-items:center;gap:8px;min-height:44px;margin-top:7px;font-size:12px;display:flex}.checkbox-label input{width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin:0}.confirm-button{width:100%;margin-top:14px}.editor-footer{z-index:40;inset:auto 0 calc(64px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dce3e5;flex-direction:column;gap:9px;padding:10px 12px 12px;display:flex;position:fixed}.save-state{color:#71868a;align-items:center;gap:6px;font-size:11px;line-height:1.5;display:flex}.save-state-icon{color:#5b998b;place-items:center;width:23px;height:23px;display:grid}.save-state small{color:#8a989f;margin-left:7px;font-size:10px}.editor-footer .form-actions{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.editor-footer .button{padding-left:7px;padding-right:7px;font-size:13px}.login-shell{background:#f3f4f5;place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:8px;width:min(400px,100%);padding:30px 24px}.login-mark{width:58px;height:58px;color:var(--green);background:#edf6f3;border-radius:10px;place-items:center;margin:0 auto 16px;display:grid}.login-card h1{margin-bottom:8px;font-size:24px}.login-card p{font-size:13px;line-height:1.7}.login-card .button{width:100%;margin:24px 0 12px}.login-card small{font-size:11px;line-height:1.7;display:block}.pwa-update{z-index:100;inset:calc(58px + env(safe-area-inset-top)) 12px auto;background:#fff;border:1px solid #bfd9d2;border-radius:8px;align-items:center;gap:12px;padding:14px;font-size:12px;display:flex;position:fixed;box-shadow:0 2px 12px #263c3c18}.pwa-update p{margin-top:5px}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:600px){.page{padding-left:24px;padding-right:24px}.summary-cell>strong{font-size:24px}.category-row small{display:inline}.category-layout{gap:28px}.wallet-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-toolbar>a{display:inline-flex}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pwa-update{max-width:420px;left:auto}}@media (min-width:900px){.sidebar{z-index:30;border-right:1px solid var(--line);background:#fff;flex-direction:column;width:188px;padding:23px 12px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#345f5a;align-items:center;gap:8px;padding:0 12px;font-size:19px;font-weight:700;display:flex}.ledger-name{color:#8a959b;overflow-wrap:anywhere;padding:23px 12px 15px;font-size:12px}.nav-list{gap:4px;display:grid}.nav-list .nav-link{color:#7c898f;border-radius:6px;align-items:center;gap:12px;min-height:46px;padding:10px 12px;font-size:14px;display:flex}.nav-list .nav-link:hover{background:#f4f8f7}.nav-list .nav-link.active{color:var(--green);background:var(--green-soft);font-weight:600}.sidebar-bottom{margin-top:auto;padding:15px 9px 0}.user-menu{border-top:1px solid var(--line);color:#6f7e85;text-align:left;background:#fff;align-items:center;gap:8px;width:100%;min-height:64px;margin-top:10px;padding:15px 0 0;font-size:12px;display:flex}.user-menu>span{flex:1;min-width:0}.user-menu small{color:#99a2a7;margin-top:4px;font-size:11px;display:block}.main-content{margin-left:188px}.topbar{height:57px;padding-left:28px;padding-right:22px}.topbar-ledger{font-size:13px;font-weight:500}.bottom-nav{display:none}.page{padding:22px 28px 42px}.page-header{margin-bottom:18px}.page-title{font-size:23px}.month-summary{margin-bottom:14px;padding:20px 0}.summary-cell>strong{font-size:27px}.quick-actions{gap:10px;display:flex}.quick-actions .button{padding-left:18px;padding-right:18px}.draft-banner{margin-top:4px}.home-columns{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.home-secondary .section-heading{margin-top:8px}.entry-row{min-height:74px;padding:14px 16px}.entry-date-label{padding-left:16px}.wallet-grid:not(.home-wallets){grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-grid:not(.home-wallets) .wallet-card:nth-child(2){border-top:0}.wallet-grid:not(.home-wallets) .wallet-card:nth-child(2n){border-left:1px solid var(--line)}.wallet-card{min-height:86px}.home-wallets .wallet-card{min-height:70px;padding:12px}.home-wallets .wallet-balance{font-size:18px}.home-wallets .wallet-top{font-size:13px}.registration-grid{grid-template-columns:1fr 1fr}.registration-option+.registration-option{border-top:0;border-left:1px solid var(--line)}.history-toolbar{gap:10px}.history-toolbar .search-field{max-width:420px}.history-toolbar>a{margin-left:auto}.history-date{margin-bottom:9px}.input,.select,.textarea,.search-field>input{font-size:14px}.editor-layout{grid-template-columns:minmax(230px,.85fr) minmax(0,1.35fr);gap:20px}.receipt-preview{position:sticky;top:18px}.receipt-preview:not(.is-open) .receipt-viewport{display:block}.receipt-preview:not(.is-open) .receipt-caption{display:flex}.receipt-preview:not(.is-open) .preview-zoom{display:inline-flex}.mobile-image-toggle{display:none}.receipt-viewport{max-height:calc(100dvh - 220px);padding:20px 18px}.preview-toolbar{flex-wrap:wrap}.preview-toolbar>span{font-size:12px}.preview-toolbar .button{font-size:11px}.editor-page{padding-bottom:26px}.editor-metadata{padding:16px}.item-name-input,.category-select{font-size:14px}.item-fields{grid-template-columns:minmax(0,1fr) 10px 60px minmax(80px,.7fr)}.item-card{scroll-margin-top:18px}.editor-footer{border:1px solid #d9e2e3;border-radius:8px;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:12px 14px;position:sticky;inset:auto auto 12px;box-shadow:0 2px 9px #263c3c0b}.save-state small{margin-left:0;display:block}.editor-footer .form-actions{flex-wrap:nowrap;display:flex}.editor-footer .button{padding-left:12px;padding-right:12px;font-size:13px}.manual-editor .editor-layout{max-width:700px;margin:0 auto;display:block}.manual-editor .editor-footer{max-width:700px;margin-left:auto;margin-right:auto}.pwa-update{top:auto;bottom:24px;right:24px}}@media (min-width:1200px){.category-layout{gap:20px;padding:22px 16px}.category-row{font-size:12px}.category-row strong{font-size:13px}}@media (max-width:359px){.page-header{gap:6px}.page-title{font-size:18px}.month-label{min-width:94px;font-size:13px}.month-picker .icon-button{min-width:40px}.summary-cell>strong{font-size:17px}.entry-row{gap:7px;padding-left:10px;padding-right:10px}.entry-amount{font-size:14px}.category-layout{gap:12px;padding-left:10px;padding-right:10px}.donut{width:108px;height:108px}.donut-center strong{font-size:14px}.save-state small{font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.sidebar,.topbar,.bottom-nav,.editor-footer,.heading-actions,.button,.icon-button,.pwa-update{display:none!important}body,.main-content{background:#fff;margin:0}.page{max-width:none;padding:20px}.card{break-inside:avoid}.receipt-preview{position:static}}.wallet-intro{margin-bottom:18px;font-size:13px;line-height:1.7}.wallet-list{gap:12px;margin-bottom:20px;display:grid}.wallet-list-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;overflow:hidden}.wallet-summary{cursor:pointer;-webkit-tap-highlight-color:transparent;grid-template-columns:minmax(0,1fr) 18px;align-items:center;padding-right:14px;list-style:none;display:grid}.wallet-summary::-webkit-details-marker{display:none}.wallet-summary:focus-visible{outline:2px solid var(--green);outline-offset:-3px}.wallet-summary .wallet-card{padding-right:10px}.wallet-expand-icon{color:var(--muted)}.wallet-list-item[open]>.wallet-summary>.wallet-expand-icon{transform:rotate(90deg)}.wallet-description{color:var(--muted);flex-direction:column;align-items:flex-end;gap:5px;font-size:12px;display:flex}.wallet-role{color:var(--green);font-size:11px}.wallet-sharing{border-top:1px solid var(--line)}.wallet-sharing summary{min-height:44px;color:var(--green);cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:12px;list-style:none;display:flex}.wallet-sharing summary::-webkit-details-marker{display:none}.wallet-sharing summary>svg:last-child{margin-left:auto}.wallet-sharing[open] summary>svg:last-child{transform:rotate(180deg)}.wallet-sharing-body{padding:0 14px 16px}.pending-invitations{margin-top:20px}.pending-invitations h3{margin:0 0 8px;font-size:14px}.pending-invitations>p{line-height:1.6}.invitation-role{color:var(--muted);margin-top:4px;font-size:12px;display:block}.pending-invitations .button{flex-shrink:0;min-height:44px}.wallet-member{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:6px 0;font-size:13px;display:flex}.wallet-member>span:first-child{overflow-wrap:anywhere;min-width:0}.wallet-member .select{flex:0 0 118px;width:118px;min-height:44px;font-size:16px}.share-add-form{gap:12px;margin-top:16px;display:grid}.wallet-list+.wallet-action-panel .small-text{margin:12px 0 16px}.wallet-accounts{padding:0 14px 12px}.wallet-accounts ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.wallet-accounts li{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:9px 2px;font-size:13px;display:grid}.wallet-accounts li+li{border-top:1px solid #f0f2f3}.payment-account-icon{color:#72847f;display:flex}.payment-account-name{overflow-wrap:anywhere}.payment-account-kind{color:var(--muted);font-size:11px}.empty-accounts{color:var(--muted);padding:6px 0 14px;font-size:12px}.account-action-panel summary{min-height:44px;color:var(--green);cursor:pointer;align-items:center;gap:6px;font-size:12px;list-style:none;display:flex}.account-action-panel summary::-webkit-details-marker{display:none}.account-action-panel summary>svg:last-child{margin-left:auto}.account-action-panel form{padding:10px 0 0}.account-action-panel fieldset{gap:12px;margin-bottom:14px;display:grid}.payment-source-field{grid-column:1/-1}.item-content-fields{grid-template-columns:minmax(0,1fr) minmax(84px,.55fr);gap:10px;padding:0 12px 12px;display:grid}.item-content-fields .input{min-height:44px;font-size:16px}
