.app-bar{position:sticky;top:0;z-index:1;flex-shrink:0;padding-top:var(--safe-top);background:var(--primary);color:var(--on-primary)}.app-bar-inner{height:var(--header-height);display:flex;align-items:center;justify-content:center;position:relative}.app-bar h1{margin:0;font-size:var(--fs-title);font-weight:700}.app-back{position:absolute;left:var(--sp-1);width:var(--control-height);height:var(--control-height);display:flex;align-items:center;justify-content:center}.tab-bar{position:sticky;bottom:0;z-index:1;height:calc(var(--nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);flex-shrink:0;display:flex;box-sizing:border-box;background:var(--surface);border-top:var(--line) solid var(--divider)}.tab-button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-half);font-size:var(--fs-caption);color:var(--text-2)}.tab-button[aria-current]{font-weight:600;color:var(--primary)}.toast{position:absolute;z-index:40;left:var(--sp-4);right:var(--sp-4);bottom:calc(var(--nav-height) + var(--safe-bottom) + var(--sp-3));display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-button);font-size:var(--fs-small);background:var(--inverse);color:var(--on-inverse)}.toast>span{flex:1}.toast button{font-weight:600;min-height:var(--sp-6);color:var(--undo)}.connection-card{border-radius:var(--radius-card);background:var(--surface);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.connection-label{display:flex;flex-direction:column;gap:var(--sp-mid);font-size:var(--fs-caption);color:var(--text-2)}.connection-input{box-sizing:border-box;width:100%;height:var(--input-height);padding:0 var(--sp-3);border-radius:var(--radius-input);border:var(--input-line) solid var(--divider);font-size:var(--fs-control);background:var(--surface-2);color:var(--text)}.token-row{display:flex;gap:var(--sp-2)}.token-row input{flex:1;min-width:0}.soft-button{height:var(--control-height);flex-shrink:0;border-radius:var(--radius-button);font-size:var(--fs-control);text-align:center;background:var(--surface-2);border:var(--line) solid var(--divider);color:var(--text)}.token-toggle{height:var(--input-height);width:var(--token-toggle-width);font-size:var(--fs-small)}.primary-button{height:var(--control-height);flex-shrink:0;border-radius:var(--radius-button);font-size:var(--fs-control);font-weight:700;text-align:center;background:var(--primary);color:var(--on-primary)}.connection-status{min-height:var(--status-height);display:flex;flex-direction:column;gap:var(--sp-mid);font-size:var(--fs-control)}.connection-status>span{font-size:var(--fs-small)}.connection-status.error{color:var(--expense)}.spinner{width:var(--sp-3);height:var(--sp-3);border:var(--sp-half) solid var(--divider);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-1);font-size:var(--fs-body);font-weight:600}.calendar-header button{width:var(--input-height);height:var(--input-height);display:flex;align-items:center;justify-content:center;color:var(--text-2)}.calendar-header .icon{width:var(--icon-medium);height:var(--icon-medium)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--sp-1);text-align:center}.calendar-grid>span{font-size:var(--fs-caption);color:var(--text-2);padding:var(--sp-1) 0}.calendar-grid button{height:var(--swatch);border-radius:50%;font-size:var(--fs-small);text-align:center}.calendar-grid .selected{background:var(--primary);color:var(--on-primary);font-weight:600}.calendar-grid .today{border:var(--sp-half) solid var(--primary);font-weight:600}.calendar-grid .unavailable{color:var(--divider)}.calendar-grid .future{color:var(--text-2)}.calendar-shortcuts{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.calendar-shortcuts button{flex:1;height:var(--input-height);border-radius:var(--radius-button);font-size:var(--fs-small);text-align:center;background:var(--surface-2);border:var(--line) solid var(--divider)}.budget-strip{display:flex;height:var(--sp-2);gap:var(--sp-half)}.budget-week{position:relative;min-width:0;border-radius:var(--sp-half);overflow:hidden}.budget-week>span{position:absolute;left:0;top:0;bottom:0;width:100%}.budget-track{background:var(--track)}.budget-pace{background:var(--pace-track)}.budget-fill{background:var(--primary)}.screen-content.report-essentials{gap:var(--sp-3)}.segmented.report-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.report-card{border-radius:var(--radius-card);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-ten);background:var(--surface)}.report-card-head{display:flex;justify-content:space-between;align-items:baseline}.report-card-head>span:first-child{font-size:var(--fs-body);font-weight:600}.report-card-head strong{font-size:var(--fs-operator)}.budget-used{color:var(--expense)}.budget-limit{font-size:var(--fs-small);color:var(--text-2)}.budget-remaining{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-small);white-space:nowrap}.budget-remaining small,.report-reserved{font-size:var(--fs-caption);color:var(--text-2)}.budget-remaining .over{color:var(--expense)}.settlement-counts{display:flex;gap:var(--sp-4);font-size:var(--fs-caption);color:var(--text-2)}.settlement-counts>span:first-child strong{color:var(--receivable)}.settlement-counts>span:last-child strong{color:var(--payable)}.sheet-layer{position:absolute;inset:0;z-index:30}.sheet-backdrop{position:absolute;inset:0;width:100%;height:100%;background:var(--backdrop)}.bottom-sheet{position:absolute;left:0;right:0;bottom:0;padding:var(--sp-2) var(--sp-4) calc(var(--sheet-bottom) + var(--safe-bottom));border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;background:var(--surface);max-height:var(--sheet-max);box-sizing:border-box;display:flex;flex-direction:column;outline:none;animation:sheet-in var(--motion-sheet) ease-out}.sheet-handle-area{display:block;width:100%;flex-shrink:0;padding-bottom:var(--sp-2);touch-action:none}.sheet-handle{display:block;width:var(--handle-width);height:var(--handle-height);border-radius:var(--radius-handle);margin:0 auto;background:var(--divider)}.sheet-body{min-height:0;overflow-y:auto}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.entry-screen{flex:1;min-height:0;display:flex;flex-direction:column}.entry-hidden{display:none}.entry-top{flex-shrink:0;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-ten) var(--sp-4) 0}.entry-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-half);padding:var(--sp-half);border-radius:var(--radius-input);height:var(--segment-height);box-sizing:border-box;background:var(--track)}.entry-types button{border-radius:var(--radius-segment);font-size:var(--fs-small);text-align:center;color:var(--text-2)}.entry-types .selected{background:var(--surface);color:var(--text);font-weight:600;box-shadow:var(--segment-shadow)}.amount-slot{height:var(--amount-height);box-sizing:border-box;border-radius:var(--radius-card);overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:var(--surface)}.amount-main{display:flex;justify-content:flex-end;align-items:center;width:100%;height:100%;padding:0 var(--sp-4);box-sizing:border-box;color:var(--text)}.amount-main>span{display:flex;align-items:baseline;gap:var(--sp-2)}.amount-main .currency{font-size:var(--fs-body);color:var(--text-2)}.amount-main strong{font-size:var(--fs-amount-xl);font-weight:700;line-height:1;white-space:nowrap}.amount-main .amount-small{font-size:var(--fs-expression)}.split-slot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.2fr) var( --split-half );height:100%;animation:fade var(--motion) ease-out}.split-slot>button:not(.half){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-half);min-width:0}.split-slot .active{box-shadow:var(--split-underline)}.split-slot span{font-size:var(--fs-tiny);color:var(--text-2);white-space:nowrap}.split-slot strong{font-size:var(--fs-split);font-weight:700;white-space:nowrap}.split-slot .split-small{font-size:var(--fs-small)}.split-slot .receivable,.split-slot .receivable span{color:var(--receivable)}.split-slot .half{margin:var(--sp-2) var(--sp-2) var(--sp-2) 0;border-radius:var(--radius-input);font-size:var(--fs-caption);text-align:center;background:var(--surface-2);color:var(--text-2)}.split-slot .half.selected{background:var(--primary-soft);color:var(--text);font-weight:600}.entry-middle{flex:0 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-ten) var(--sp-4) var(--sp-2);box-sizing:border-box}.entry-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-mid);height:var(--control-height);flex-shrink:0}.entry-categories button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--line);border-radius:var(--radius-button);font-size:var(--fs-small);text-align:center;white-space:nowrap;overflow:hidden;padding:0 var(--sp-1);background:var(--surface);color:var(--text)}.entry-categories .selected{background:var(--primary);color:var(--on-primary);font-weight:600}.entry-categories small{font-size:var(--fs-tiny);font-weight:400;max-width:100%;overflow:hidden;text-overflow:ellipsis}.entry-categories .category-more{flex-direction:row;gap:var(--sp-half);color:var(--text-2);padding:0}.category-more .icon{width:var(--icon-inline);height:var(--icon-inline)}.entry-note{display:flex;align-items:center;gap:var(--sp-2);height:var(--swatch);flex-shrink:0;padding:0 var(--sp-3);border-radius:var(--radius-button);background:var(--surface)}.entry-note span{color:var(--text-2);font-size:var(--fs-caption)}.entry-note input{flex:1;min-width:0;border:0;outline:none;font-size:var(--fs-control);background:var(--transparent);color:var(--text)}.entry-secondary{position:relative;display:flex;gap:var(--sp-mid);align-items:center;height:var(--swatch);flex-shrink:0}.date-pill{display:flex;align-items:center;height:var(--swatch);border-radius:var(--radius-sheet);box-sizing:border-box;flex-shrink:0;background:var(--surface);border:var(--line) solid var(--divider)}.date-pill button{width:var(--date-arrow);height:100%;display:flex;align-items:center;justify-content:center}.date-pill button:nth-child(2){width:auto;min-width:var(--input-height);font-size:var(--fs-small);text-align:center;white-space:nowrap}.entry-toggle{display:flex;gap:var(--sp-half);padding:var(--sp-half);border-radius:var(--radius-sheet);height:var(--swatch);box-sizing:border-box;background:var(--track)}.entry-toggle button{height:var(--segment-height);padding:0 var(--sp-ten);border-radius:var(--radius-pill-inner);font-size:var(--fs-small);text-align:center;white-space:nowrap;color:var(--text-2)}.entry-toggle .selected{font-weight:600;background:var(--surface);color:var(--text);box-shadow:var(--segment-shadow)}.people-toggle button{min-width:0;overflow:hidden;text-overflow:ellipsis}.choice{background:var(--surface);color:var(--text);border:var(--input-line) solid var(--divider)}.choice.selected{background:var(--primary-soft);color:var(--text);border-color:var(--primary)}.split-toggle,.entry-options{height:var(--swatch);padding:0 var(--sp-3);border-radius:var(--radius-sheet);font-size:var(--fs-small);white-space:nowrap;text-align:center;box-sizing:border-box}.entry-options{width:var(--input-height);padding:0;margin-left:auto}.entry-bottom{flex:1 1 auto;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--sp-2);padding:0 var(--sp-4) var(--sp-2);min-height:calc(var(--swatch) + var(--key-min) * 4 + var(--sp-mid) * 3 + var(--header-height) + var(--sp-2) * 2)}.entry-scan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.entry-scan button{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);height:var(--swatch);border-radius:var(--radius-button);font-size:var(--fs-small);background:var(--surface-2);color:var(--text-2);border:var(--line) solid var(--divider)}.entry-keypad{flex:1 1 auto;max-height:var(--keypad-max);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(var(--key-min),1fr));gap:var(--sp-mid)}.entry-keypad button{height:100%;border-radius:var(--radius-button);font-size:var(--fs-key);font-weight:500;text-align:center;background:var(--surface);color:var(--text)}.entry-keypad .operator{font-size:var(--fs-operator);background:var(--surface-2);color:var(--text-2);border:var(--line) solid var(--divider)}.entry-keypad .icon{width:var(--fs-operator);height:var(--fs-operator)}.entry-save{height:var(--header-height);flex-shrink:0;border-radius:var(--sp-fourteen);font-size:var(--fs-title);font-weight:700;text-align:center}.primary{background:var(--primary);color:var(--on-primary)}.muted{background:var(--primary-soft);color:var(--text-2)}.category-title{display:flex;justify-content:space-between;align-items:center;min-height:var(--sp-6);padding:var(--sp-1) 0 var(--sp-ten)}.category-title>span:first-child{display:flex;align-items:center;font-size:var(--fs-body);font-weight:600}.category-title button{width:var(--sp-6);height:var(--sp-6);display:flex;align-items:center;justify-content:center;margin-left:calc(0px - var(--sp-2));color:var(--text-2)}.category-management{display:flex;align-items:center;gap:var(--sp-half);font-size:var(--fs-caption);color:var(--text-2)}.category-management .icon{width:var(--icon-tiny);height:var(--icon-tiny)}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.category-grid button{height:var(--control-height);border-radius:var(--radius-button);font-size:var(--fs-small);text-align:center}.entry-sheet-title{display:block;font-size:var(--fs-body);font-weight:600;padding:var(--sp-1) 0 var(--sp-ten)}.entry-summary{display:flex;justify-content:space-between;align-items:baseline;padding:var(--sp-ten) var(--sp-3);border-radius:var(--radius-button);background:var(--surface-2);font-size:var(--fs-small)}.entry-summary strong{font-size:var(--fs-split)}.entry-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-fourteen)}.entry-actions button{flex:1;height:var(--control-height);border-radius:var(--radius-button);font-size:var(--fs-control);text-align:center}.entry-actions button:first-child{background:var(--surface-2);border:var(--line) solid var(--divider)}.entry-actions button:last-child{flex:1.4;font-weight:700}.entry-caption{margin:var(--sp-3) 0 var(--sp-mid);font-size:var(--fs-caption);color:var(--text-2)}.friend-input{width:100%;box-sizing:border-box;height:var(--control-height);padding:0 var(--sp-3);border-radius:var(--radius-button);border:var(--input-line) solid var(--divider);font-size:var(--fs-control);background:var(--surface-2);color:var(--text)}.friend-hint{margin:var(--sp-ten) 0 0;font-size:var(--fs-tiny);color:var(--text-2)}.recent-people{display:flex;flex-wrap:wrap;gap:var(--sp-mid)}.recent-people button{height:var(--swatch);padding:0 var(--sp-fourteen);border-radius:var(--radius-button);font-size:var(--fs-small)}.installment-count{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--sp-mid)}.installment-count button,.custom-count{height:var(--input-height);border-radius:var(--radius-button);font-size:var(--fs-small);text-align:center}.custom-count{width:100%;min-width:0;box-sizing:border-box;border:var(--input-line) solid var(--divider);background:var(--surface-2);color:var(--text)}.installment-first{display:flex;justify-content:space-between;align-items:center;margin-top:var(--sp-fourteen)}.installment-first>span{font-size:var(--fs-caption);color:var(--text-2)}.installment-first .date-pill{background:var(--transparent)}.installment-first button{width:var(--sp-6)}.installment-first .date-pill span{min-width:var(--header-height);text-align:center;font-size:var(--fs-small)}.installment-preview{margin:var(--sp-fourteen) 0 0;padding:var(--sp-ten) var(--sp-3);border-radius:var(--radius-button);font-size:var(--fs-small);background:var(--primary-soft)}.option-layer{position:absolute;inset:0;z-index:20}.option-backdrop{position:absolute;inset:0;width:100%;height:100%}.entry-menu{position:fixed;min-width:var(--option-width);border-radius:var(--radius-button);overflow:hidden;background:var(--surface);box-shadow:var(--option-shadow)}.entry-menu button{display:flex;justify-content:center;flex-direction:column;align-items:flex-start;gap:0;width:100%;min-height:var(--input-height);padding:0 var(--sp-fourteen);box-sizing:border-box;font-size:var(--fs-small)}.entry-menu button+button{border-top:var(--line) solid var(--divider)}.entry-menu [aria-disabled=true]{color:var(--text-2)}.entry-menu small{font-size:var(--fs-tiny)}.category-title button .icon{width:var(--icon-medium);height:var(--icon-medium)}.installment-label{margin:var(--sp-fourteen) 0 var(--sp-mid);font-size:var(--fs-caption);color:var(--text-2)}.installment-first .date-pill{box-sizing:content-box}.amount-slot,.entry-keypad,.entry-summary,.installment-preview,.calendar,.report-card{font-variant-numeric:tabular-nums}.entry-menu [aria-disabled=true]{padding:var(--sp-mid) var(--sp-fourteen)}.settings-group{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-mid)}.settings-group h2{margin:0;padding:0 var(--sp-1);font-size:var(--fs-small);font-weight:700}.settings-card{align-self:stretch;border-radius:var(--radius-card);overflow:hidden;background:var(--surface)}.settings-row{display:flex;align-items:center;gap:var(--sp-2);width:100%;min-height:calc(var(--control-height) + var(--sp-1));padding:0 var(--sp-4);box-sizing:border-box}.settings-row>span{flex:1;font-size:var(--fs-body)}.settings-row small{font-size:var(--fs-small);color:var(--text-2)}.settings-row .icon{color:var(--text-2)}.appearance-card{align-self:stretch;border-radius:var(--radius-card);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-fourteen);background:var(--surface)}.appearance-title{font-size:var(--fs-small);font-weight:600}.theme-options{display:flex;justify-content:space-between}.theme-option{display:flex;flex-direction:column;align-items:center;gap:var(--sp-mid);width:var(--swatch-width);font-size:var(--fs-caption)}.theme-swatch{display:block;width:var(--swatch);height:var(--swatch);border-radius:50%;background:var(--swatch-color)}.theme-option[aria-pressed=true] .theme-swatch{box-shadow:var(--swatch-ring)}.divider{height:var(--line);background:var(--divider)}.segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-half);padding:var(--sp-half);border-radius:var(--radius-input);height:var(--segment-height);box-sizing:border-box;background:var(--track)}.segmented button{height:var(--segment-inner-height);border-radius:var(--radius-segment);font-size:var(--fs-small);text-align:center;color:var(--text-2)}.segmented button[aria-pressed=true]{font-weight:600;background:var(--surface);color:var(--text);box-shadow:var(--segment-shadow)}.background-actions{display:flex;gap:var(--sp-2)}.background-actions>label,.background-actions>button{flex:1;height:var(--input-height);border-radius:var(--radius-button);font-size:var(--fs-small);text-align:center}.background-actions>label{display:inline-flex;align-items:center;justify-content:center;font-weight:600;cursor:pointer}.background-actions input{display:none}.background-actions button{background:var(--surface-2);border:var(--line) solid var(--divider)}.background-caption{font-size:var(--fs-caption);color:var(--text-2)}.background-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.background-slider{display:flex;flex-direction:column;gap:var(--sp-mid);font-size:var(--fs-caption);color:var(--text-2)}.background-slider input{width:100%;color-scheme:light}.background-editor{position:absolute;inset:0;z-index:40;touch-action:none;cursor:grab;background-color:var(--image-black)}.background-header{position:absolute;left:0;right:0;top:0;height:calc(var(--safe-top) + var(--header-height));display:flex;align-items:flex-end;justify-content:center;padding-bottom:var(--sp-2);box-sizing:border-box;font-size:var(--fs-caption);background:var(--image-header);color:var(--image-white)}.background-line{position:absolute;left:0;right:0;top:calc(var(--safe-top) + var(--header-height));height:var(--sp-half);background:var(--image-white);opacity:.8}.background-instruction{position:absolute;left:var(--sp-4);right:var(--sp-4);top:calc(var(--safe-top) + var(--header-height) + var(--image-hint-offset));text-align:center;font-size:var(--fs-caption);color:var(--image-white);text-shadow:var(--image-text-shadow)}.background-controls{position:absolute;left:var(--sp-3);right:var(--sp-3);bottom:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-ten);padding:var(--sp-fourteen);border-radius:var(--radius-card);background:var(--surface);color:var(--text);cursor:default}.background-controls button{height:var(--control-height);border-radius:var(--radius-button);font-size:var(--fs-control);font-weight:700;text-align:center}.has-background :is(.entry-types,.amount-slot,.entry-categories button,.entry-note,.entry-secondary>.date-pill,.entry-toggle,.split-toggle,.entry-options,.entry-scan button,.entry-keypad button){box-shadow:var(--image-lift)}.has-background .settings-group h2{background:var(--surface);padding:var(--sp-mid) var(--sp-ten);border-radius:var(--radius-input);box-shadow:var(--image-lift)}:root{--image-darken: rgb(60, 48, 40);--image-lighten: var(--bg);--image-black: #000;--image-white: #fff;--image-header: rgba(0, 0, 0, .55);--image-hint-offset: 11px;--image-text-shadow: 0 1px 3px rgba(0, 0, 0, .8);--image-lift: 0 0 0 1px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .16);--amount-height: 72px;--fs-expression: 2rem;--fs-tiny: .75rem;--fs-split: 1.25rem;--fs-operator: 1.375rem;--icon-medium: 20px;--icon-tiny: 14px;--icon-inline: 16px;--split-half: 60px;--radius-pill-inner: 18px;--date-arrow: 30px;--key-min: 46px;--keypad-max: 242px;--option-width: 170px;--option-shadow: 0 4px 16px rgba(0, 0, 0, .18);--split-underline: inset 0 -3px 0 var(--primary);--bg: #f2f0ed;--surface: #ffffff;--surface-2: #f7f5f2;--track: #e6e2dd;--pace-track: #cfc8c0;--text: #2b2321;--text-2: #6e6a66;--divider: #e6e2dd;--primary: #9c6646;--primary-soft: #ebd9cc;--on-primary: #ffffff;--expense: #c2413b;--income: #2563eb;--receivable: #9a4f82;--payable: #9a5b00;--warning-bg: #fff4d6;--inverse: #2b2321;--on-inverse: #ffffff;--circle-text: #2b2321;--undo: #ebd9cc;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--fs-amount-xl: 2.75rem;--fs-amount-l: 1.75rem;--fs-title: 1.1875rem;--fs-body: 1.0625rem;--fs-body-strong: 1.0625rem;--fs-caption: .8125rem;--fs-key: 1.625rem}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--backdrop: rgba(0, 0, 0, .4);--transparent: transparent;--font: -apple-system, "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif;--fs-control: 1rem;--fs-small: .9375rem;--sp-half: 2px;--sp-mid: 6px;--sp-ten: 10px;--sp-fourteen: 14px;--zero: 0px;--line: 1px;--input-line: 1.5px;--radius-card: 16px;--radius-button: 12px;--radius-input: 10px;--radius-segment: 8px;--radius-sheet: 20px;--radius-handle: 3px;--header-height: 56px;--nav-height: 53px;--control-height: 48px;--input-height: 44px;--status-height: 64px;--token-toggle-width: 64px;--segment-height: 36px;--segment-inner-height: 32px;--icon: 24px;--icon-small: 18px;--swatch: 40px;--swatch-width: 56px;--handle-width: 36px;--handle-height: 5px;--sheet-bottom: 10px;--sheet-max: 90dvh;--motion: .15s;--motion-sheet: .2s;--segment-shadow: 0 1px 2px rgba(0, 0, 0, .08);--swatch-ring: 0 0 0 3px var(--surface), 0 0 0 5px var(--text);--focus-ring: 0 0 0 2px var(--surface), 0 0 0 4px var(--primary)}:root[data-mode=dark]{--image-darken: rgb(0, 0, 0);--image-lighten: rgb(28, 26, 25);--bg: #1c1a19;--warning-bg: #3d3320;--surface: #2a2725;--surface-2: #34302d;--track: #3d3835;--pace-track: #5a534d;--text: #f2efec;--text-2: #b3aca6;--divider: #3d3835;--on-primary: #1c1a19;--expense: #ff8a80;--income: #7ab0ff;--receivable: #e3a9cf;--payable: #ffb65c;--inverse: #f2efec;--on-inverse: #1c1a19;--circle-text: #2b2321;--backdrop: rgba(0, 0, 0, .6)}:root[data-theme=brown]{--primary: #9c6646;--primary-soft: #ebd9cc;--bg: #f2f0ed;--undo: #ebd9cc}:root[data-theme=brown][data-mode=dark]{--primary: #d9a688;--primary-soft: #4a3a30;--bg: #1c1a19;--undo: #9c6646}.theme-swatch[data-theme=brown]{--swatch-color: #9c6646}:root[data-mode=dark] .theme-swatch[data-theme=brown]{--swatch-color: #d9a688}:root[data-theme=blue]{--primary: #2f6690;--primary-soft: #d6e4f0;--bg: #eef2f5;--undo: #d6e4f0}:root[data-theme=blue][data-mode=dark]{--primary: #8db8de;--primary-soft: #26384a;--bg: #1c1a19;--undo: #2f6690}.theme-swatch[data-theme=blue]{--swatch-color: #2f6690}:root[data-mode=dark] .theme-swatch[data-theme=blue]{--swatch-color: #8db8de}:root[data-theme=green]{--primary: #4f7942;--primary-soft: #dce8d5;--bg: #f0f3ee;--undo: #dce8d5}:root[data-theme=green][data-mode=dark]{--primary: #9cc48c;--primary-soft: #2f3d2a;--bg: #1c1a19;--undo: #4f7942}.theme-swatch[data-theme=green]{--swatch-color: #4f7942}:root[data-mode=dark] .theme-swatch[data-theme=green]{--swatch-color: #9cc48c}:root[data-theme=rose]{--primary: #a64d6d;--primary-soft: #f2dce4;--bg: #f6f0f2;--undo: #f2dce4}:root[data-theme=rose][data-mode=dark]{--primary: #e39ab5;--primary-soft: #4a2c37;--bg: #1c1a19;--undo: #a64d6d}.theme-swatch[data-theme=rose]{--swatch-color: #a64d6d}:root[data-mode=dark] .theme-swatch[data-theme=rose]{--swatch-color: #e39ab5}:root[data-theme=graphite]{--primary: #4a4a4a;--primary-soft: #e3e3e3;--bg: #f1f1f1;--undo: #e3e3e3}:root[data-theme=graphite][data-mode=dark]{--primary: #c8c8c8;--primary-soft: #3a3a3a;--bg: #1c1a19;--undo: #4a4a4a}.theme-swatch[data-theme=graphite]{--swatch-color: #4a4a4a}:root[data-mode=dark] .theme-swatch[data-theme=graphite]{--swatch-color: #c8c8c8}html,body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text)}html{height:100%;overflow:hidden;background:var(--primary)}body{position:fixed;inset:0;height:auto;overflow:hidden;overscroll-behavior:none}button,input{font-family:inherit}button{border:0;background:none;padding:0;margin:0;color:inherit;cursor:pointer;text-align:left;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:active:not(:disabled){opacity:.8}button:focus-visible,input:focus-visible{outline:none;box-shadow:var(--focus-ring)}#app,.app-shell,#app-content{height:100%;min-height:0}.app-shell{position:relative}#app-content{display:flex;flex-direction:column}.screen{flex:1;min-height:0;display:flex;flex-direction:column}.screen-content{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-3) var(--sp-4) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.scroll{scrollbar-width:none}.scroll::-webkit-scrollbar{display:none}.icon{width:var(--icon);height:var(--icon);flex-shrink:0;vertical-align:middle}.icon-small{width:var(--icon-small);height:var(--icon-small)}.fade{animation:fade var(--motion) ease-out}@keyframes fade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
