:root{font-family:ui-rounded,SF Pro Rounded,Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#292923;background:#e9dfd1;font-synthesis:none;text-rendering:optimizeLegibility;--paper: #fbf7ef;--paper-deep: #f4eadc;--ink: #292923;--muted: #696a61;--terracotta: #bd6245;--terracotta-dark: #984932;--sage: #718169;--sage-pale: #e4eadf;--line: #e4d8ca;--white: #fffdf9;--shadow: 0 18px 50px rgba(74, 55, 36, .12)}*{box-sizing:border-box}html{background:#e9dfd1}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 10% 0%,rgba(255,255,255,.8),transparent 35%),#e9dfd1}button,input{font:inherit}button,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}svg{width:24px;height:24px}button:focus-visible,input:focus-visible,label:has(input:focus-visible){outline:3px solid rgba(189,98,69,.38);outline-offset:3px}.app-shell{width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:0 auto;background:var(--paper);box-shadow:var(--shadow);position:relative;padding-bottom:calc(102px + env(safe-area-inset-bottom));overflow-x:hidden}.topbar{min-height:calc(86px + env(safe-area-inset-top));padding:calc(18px + env(safe-area-inset-top)) 22px 14px;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;background:#fbf7efeb;border-bottom:1px solid rgba(214,200,184,.75);position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:15px 15px 15px 6px;background:var(--terracotta);color:#fff;box-shadow:0 7px 16px #98493233}.brand-mark svg{width:25px;height:25px}.topbar h1{margin:1px 0 0;font-size:19px;letter-spacing:-.3px}.eyebrow,.section-kicker{margin:0;color:var(--terracotta-dark);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.save-state{max-width:98px;display:flex;align-items:center;justify-content:flex-end;gap:6px;color:#596351;font-size:10px;font-weight:700;text-align:right;line-height:1.2}.save-state span{width:7px;height:7px;border-radius:50%;background:#6f8b65;flex:none}.page{padding:26px 18px 20px;animation:page-in .22s ease-out}.page-heading{margin:4px 4px 24px}.page-heading h2,.date-row h2{margin:5px 0 4px;font-size:clamp(25px,7vw,31px);line-height:1.14;letter-spacing:-.8px}.page-heading>p:last-child{margin:7px 0 0;color:var(--muted);font-size:15px}.date-row{margin:3px 3px 20px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.date-row h2{max-width:330px;margin-bottom:0}.date-picker-button{position:relative;width:48px;height:48px;flex:none;display:grid;place-items:center;color:var(--terracotta-dark);background:#f3e4d7;border:1px solid #e5cfbd;border-radius:16px;overflow:hidden;cursor:pointer}.date-picker-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer}.paper-card{position:relative;overflow:hidden;padding:22px 17px 18px 28px;background:linear-gradient(90deg,transparent 0 17px,rgba(190,98,69,.28) 17px 18px,transparent 18px),repeating-linear-gradient(180deg,transparent 0 47px,rgba(89,112,130,.1) 47px 48px),var(--white);border:1px solid #eadfd1;border-radius:9px 28px 28px 9px;box-shadow:0 14px 34px #48362417,inset 5px 0 #f1e7d9}.paper-card:after{content:"";position:absolute;top:0;right:0;width:60px;height:60px;background:linear-gradient(225deg,var(--paper) 49%,#eadbca 50%,#fffaf2 53%);border-bottom-left-radius:14px;opacity:.75}.paper-heading{min-height:34px;padding-right:55px;display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.entry-list{margin:0 -4px}.entry-row{min-height:62px;display:grid;grid-template-columns:25px 1fr auto 44px;align-items:center;gap:8px;border-bottom:1px solid rgba(127,117,103,.12)}.entry-number{color:#b39f8a;font-size:11px;font-weight:800}.entry-main,.entry-amount{min-height:48px;padding:7px 0;border:0;color:var(--ink);background:transparent;text-align:left}.entry-main strong{display:block;font-size:17px;font-weight:750}.entry-main small{display:block;margin-top:3px;color:var(--muted);font-size:13px}.entry-amount{font-size:15px;font-weight:800;white-space:nowrap;text-align:right}.icon-button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:14px;color:#88786a;background:transparent;transition:background .18s ease,color .18s ease}.icon-button svg{width:19px}.delete-button:hover{color:#a24636;background:#fae8e2}.empty-note{min-height:208px;padding:34px 20px 28px;display:grid;place-items:center;text-align:center}.empty-note-icon{width:58px;height:58px;display:grid;place-items:center;color:var(--terracotta);background:#f5e4d9;border-radius:50% 50% 48% 45%;transform:rotate(-4deg)}.empty-note-icon svg{transform:rotate(4deg)}.empty-note h3{margin:14px 0 5px;font-size:18px}.empty-note p{max-width:260px;margin:0;color:var(--muted);font-size:14px;line-height:1.5}.add-line-button{width:100%;min-height:52px;margin-top:9px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--terracotta-dark);background:transparent;border:1.5px dashed #d8aa95;border-radius:15px;font-weight:800}.add-line-button:hover{background:#fff6ef}.daily-total{margin-top:21px;padding:18px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fffaf4;background:var(--terracotta);border-radius:18px 10px 19px 11px;box-shadow:0 9px 20px #98493233;transform:rotate(-.3deg)}.daily-total span{font-size:13px;font-weight:750}.daily-total strong{font-size:clamp(21px,6vw,27px);letter-spacing:-.7px}.receipt-section{margin:26px 4px 0}.section-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-title-row h3{margin:4px 0 0;font-size:20px}.photo-button{min-height:46px;padding:0 15px;position:relative;overflow:hidden;display:flex;align-items:center;gap:7px;color:#4f5d49;background:var(--sage-pale);border:1px solid #cad6c3;border-radius:15px;font-size:13px;font-weight:800;cursor:pointer}.photo-button svg{width:19px}.photo-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.receipt-hint{margin:13px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.photo-grid{margin-top:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.photo-thumb{aspect-ratio:1;margin:0;position:relative;overflow:hidden;border-radius:17px;background:#e7dfd3;box-shadow:0 5px 14px #48362417}.photo-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.photo-thumb button{position:absolute;top:6px;right:6px;width:36px;height:36px;display:grid;place-items:center;color:#fff;background:#2b2722b8;border:0;border-radius:12px}.photo-thumb button svg{width:17px}.bottom-nav{position:fixed;z-index:30;bottom:12px;left:50%;width:min(calc(100% - 24px),496px);min-height:calc(70px + env(safe-area-inset-bottom));padding:7px 8px env(safe-area-inset-bottom);display:grid;grid-template-columns:1fr 64px 1fr 1fr;align-items:center;transform:translate(-50%);background:#fffdf9f0;border:1px solid rgba(209,193,176,.8);border-radius:25px;box-shadow:0 12px 34px #3c2b1b33;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.nav-button{min-height:56px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#77756d;background:transparent;border:0;border-radius:16px;font-size:10px;font-weight:750}.nav-button svg{width:22px;height:22px}.nav-button.active{color:var(--terracotta-dark);background:#f7e9df}.nav-add{width:58px;height:58px;margin-top:-27px;display:grid;place-items:center;color:#fff;background:var(--terracotta);border:5px solid var(--paper);border-radius:20px 20px 20px 8px;box-shadow:0 8px 18px #98493247}.nav-add svg{width:27px;height:27px;stroke-width:2.2}.history-list,.search-results{display:grid;gap:11px}.history-card{min-height:86px;width:100%;padding:11px 13px;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;color:var(--ink);background:var(--white);border:1px solid #e9ddcf;border-radius:21px;box-shadow:0 7px 18px #4836240e;text-align:left}.history-date{width:52px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--terracotta-dark);background:#f5e7dc;border-radius:16px}.history-date strong{font-size:23px;line-height:1}.history-date small{margin-top:3px;font-size:11px;font-weight:800;text-transform:uppercase}.history-copy strong,.history-copy small{display:block}.history-copy strong{max-width:170px;font-size:15px;line-height:1.3;text-transform:capitalize}.history-copy small{margin-top:5px;color:var(--muted);font-size:11px}.history-total{display:flex;align-items:center;gap:5px;color:#43503e;font-size:13px;font-weight:850;white-space:nowrap}.history-total svg{width:18px;color:#9a9388}.plain-empty{min-height:330px;padding:50px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.plain-empty svg{width:42px;height:42px;color:#ad8f7d}.plain-empty h3{margin:15px 0 5px;color:var(--ink)}.plain-empty p{margin:0;font-size:14px}.plain-empty.compact{min-height:230px}.search-box{min-height:58px;margin-bottom:22px;padding:0 14px;display:flex;align-items:center;gap:10px;color:#776d64;background:var(--white);border:1.5px solid #dfd0c1;border-radius:19px;box-shadow:0 7px 18px #4836240d}.search-box>svg{width:22px;flex:none}.search-box input{width:100%;min-width:0;height:52px;color:var(--ink);background:transparent;border:0;outline:0;font-size:16px}.search-box button{width:44px;height:44px;flex:none;display:grid;place-items:center;color:#776d64;background:transparent;border:0;border-radius:13px}.search-box button svg{width:19px}.search-prompt{margin:50px auto;max-width:300px;display:flex;gap:12px;color:var(--muted)}.search-prompt span{color:var(--terracotta);font-family:Georgia,serif;font-size:52px;line-height:.8}.search-prompt p{margin:0;font-size:15px;line-height:1.6}.search-result{min-height:73px;width:100%;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--ink);background:var(--white);border:1px solid #e8dccf;border-radius:19px;text-align:left}.search-result span:last-child{text-align:right}.search-result strong,.search-result small{display:block}.search-result strong{font-size:15px}.search-result small{max-width:190px;margin-top:4px;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:center;align-items:flex-end;background:#29252075;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .18s ease-out}.entry-sheet{width:min(100%,520px);max-height:94dvh;overflow-y:auto;padding:10px 22px calc(24px + env(safe-area-inset-bottom));background:var(--paper);border-radius:30px 30px 0 0;box-shadow:0 -18px 48px #2f231838;animation:sheet-in .24s ease-out}.sheet-handle{width:42px;height:5px;margin:0 auto 13px;background:#cfc2b3;border-radius:5px}.sheet-header{margin-bottom:21px;display:flex;justify-content:space-between;align-items:center}.sheet-header h2{margin:4px 0 0;font-size:27px}.close-button{width:48px;height:48px;display:grid;place-items:center;color:#655f58;background:#eee5da;border:0;border-radius:16px}.close-button svg{width:21px}.field-label{margin:17px 2px 7px;display:block;color:#45463f;font-size:14px;font-weight:800}.field-label span{color:var(--muted);font-size:11px;font-weight:600}.field-input,.amount-field{width:100%;min-height:56px;color:var(--ink);background:var(--white);border:1.5px solid #dfd2c3;border-radius:17px;font-size:16px;transition:border-color .18s ease,box-shadow .18s ease}.field-input{padding:0 15px}.field-input:focus,.amount-field:focus-within{border-color:var(--terracotta);box-shadow:0 0 0 4px #bd62451a;outline:0}.primary-input{font-size:18px;font-weight:700}.amount-field{padding:0 15px;display:flex;align-items:center;gap:10px}.amount-field span{color:var(--terracotta-dark);font-size:20px;font-weight:850}.amount-field input{width:100%;height:52px;min-width:0;color:var(--ink);background:transparent;border:0;outline:0;font-size:25px;font-weight:850}.amount-preview{margin:7px 3px 0;color:#5c6856;font-size:12px;font-weight:700}.suggestion-row{margin-top:9px;display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.suggestion-row::-webkit-scrollbar{display:none}.suggestion-row button{min-height:42px;padding:0 13px;flex:none;color:#566051;background:var(--sage-pale);border:1px solid #cad6c3;border-radius:13px;font-size:13px;font-weight:750}.save-button{width:100%;min-height:58px;margin-top:25px;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;background:var(--terracotta);border:0;border-radius:19px;box-shadow:0 10px 22px #9849323d;font-size:17px;font-weight:850}.save-button:disabled{color:#8c8982;background:#dfd8cf;box-shadow:none;cursor:not-allowed}.save-button svg{width:22px}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-in{0%{transform:translateY(35px);opacity:.7}}@media (max-width: 390px){.topbar{grid-template-columns:44px 1fr;padding-inline:16px}.save-state{display:none}.page{padding-inline:14px}.paper-card{padding-left:24px}.entry-row{grid-template-columns:21px 1fr auto 42px;gap:5px}.entry-main strong{font-size:16px}.entry-amount{font-size:13px}.history-card{grid-template-columns:50px 1fr}.history-total{grid-column:2;justify-content:flex-start;margin-top:-5px}}@media (min-width: 700px){body{padding:24px 0}.app-shell{min-height:calc(100dvh - 48px);border-radius:34px;overflow:hidden}.topbar{border-radius:34px 34px 0 0}.bottom-nav{bottom:24px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;color:#1c1c1e;background:#f2f2f7;--paper: #f2f2f7;--ink: #1c1c1e;--muted: #6e6e73;--terracotta: #007aff;--terracotta-dark: #007aff;--accent: #007aff;--accent-focus: rgba(0, 122, 255, .32);--accent-soft: rgba(0, 122, 255, .045);--app-bg: #f2f2f7;--surface: #fff;--tab-bg: rgba(249, 249, 249, .92);--control-bg: #e3e3e8;--glass-bg: rgba(255, 255, 255, .74);--glass-border: rgba(255, 255, 255, .66);--divider: rgba(60, 60, 67, .22);--white: #fff}:root[data-theme=sage],.app-shell[data-theme=sage]{--accent: #248a3d;--accent-focus: rgba(36, 138, 61, .3);--accent-soft: rgba(36, 138, 61, .075);--app-bg: #dfeee2;--surface: #f7fbf8;--tab-bg: rgba(238, 247, 240, .94);--control-bg: #d1e3d5}:root[data-theme=rose],.app-shell[data-theme=rose]{--accent: #c9365f;--accent-focus: rgba(201, 54, 95, .3);--accent-soft: rgba(201, 54, 95, .07);--app-bg: #f3dfe5;--surface: #fff8fa;--tab-bg: rgba(252, 239, 243, .94);--control-bg: #ead2d9}:root[data-theme=sand],.app-shell[data-theme=sand]{--accent: #9a6700;--accent-focus: rgba(154, 103, 0, .3);--accent-soft: rgba(154, 103, 0, .075);--app-bg: #efe3cf;--surface: #fffaf1;--tab-bg: rgba(248, 240, 226, .94);--control-bg: #e5d5ba}:root[data-theme=lavender],.app-shell[data-theme=lavender]{--accent: #6f5bd3;--accent-focus: rgba(111, 91, 211, .3);--accent-soft: rgba(111, 91, 211, .07);--app-bg: #e6e0f5;--surface: #fbf9ff;--tab-bg: rgba(243, 239, 251, .94);--control-bg: #d9d1ed}:root[data-theme=graphite],.app-shell[data-theme=graphite]{--accent: #48484a;--accent-focus: rgba(72, 72, 74, .3);--accent-soft: rgba(72, 72, 74, .075);--app-bg: #dcdcdf;--surface: #f5f5f6;--tab-bg: rgba(232, 232, 234, .94);--control-bg: #ceced1}:root[data-theme=notes-dark],.app-shell[data-theme=notes-dark]{color-scheme:dark;--accent: #ffbd0a;--accent-focus: rgba(255, 189, 10, .38);--accent-soft: rgba(255, 189, 10, .12);--app-bg: #000;--surface: #1c1c1e;--tab-bg: rgba(28, 28, 30, .78);--control-bg: #1c1c1e;--glass-bg: rgba(31, 31, 33, .78);--glass-border: rgba(255, 255, 255, .12);--divider: rgba(84, 84, 88, .7)}html,body{background:var(--app-bg);overscroll-behavior-y:contain}body{background:var(--app-bg)}button,input{letter-spacing:normal}button,label{touch-action:manipulation}button,.date-selector,.photo-button{transition:opacity .18s ease,color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s cubic-bezier(.2,.8,.2,1)}button:active,.date-selector:active,.photo-button:active{opacity:.62;transform:scale(.975)}html,body,.app-shell,.native-nav,.date-selector,.paper-card,.attachment-group,.form-group,.daily-total,.photo-button,.bottom-nav,.history-list,.search-results,.entry-sheet,.date-picker-sheet,.calendar-month,.calendar-weekdays,.calendar-grid,.settings-group{transition:background-color .24s ease}button:focus-visible,input:focus-visible,label:has(input:focus-visible){outline:3px solid var(--accent-focus);outline-offset:2px}.app-shell{min-height:100dvh;padding-bottom:calc(72px + env(safe-area-inset-bottom));background:var(--app-bg);box-shadow:0 0 0 1px #0000000a}.native-nav{padding:calc(14px + env(safe-area-inset-top)) 20px 7px;background:var(--app-bg)}.native-nav-row{min-height:44px;display:flex;align-items:center;justify-content:space-between}.nav-context{color:var(--accent);font-size:16px}.nav-back{min-height:44px;margin-left:-10px;padding:0 10px 0 5px;display:inline-flex;align-items:center;gap:2px;color:var(--accent);background:transparent;border:0;border-radius:999px;font-size:16px}.nav-back svg{width:20px;transform:rotate(180deg)}.nav-action{width:44px;height:44px;display:grid;place-items:center;margin-right:-10px;color:var(--accent);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:50%;box-shadow:0 5px 16px #00000014;backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}.nav-action svg{width:28px;height:28px;stroke-width:1.8}.native-nav h1{margin:0;color:#000;font-size:34px;font-weight:750;line-height:1.12;letter-spacing:-1.1px}.page{padding:12px 16px 28px;animation:tab-page-in .34s cubic-bezier(.2,.8,.2,1) both}.date-selector{width:100%;min-height:50px;padding:0 16px;position:relative;display:flex;align-items:center;justify-content:space-between;color:#1c1c1e;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:999px;font-size:16px;cursor:pointer;overflow:hidden;box-shadow:0 7px 24px #00000012;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.date-selector>span{text-transform:capitalize}.date-selector svg{width:18px;color:#c7c7cc}.group-label{margin:25px 16px 7px;color:#6e6e73;font-size:13px;font-weight:400;letter-spacing:0;text-transform:uppercase}.paper-card,.attachment-group,.form-group{overflow:hidden;padding:0;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:22px;box-shadow:0 10px 30px #0001;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px)}.paper-card:after,.paper-heading{display:none}.entry-list{margin:0}.entry-row{min-height:62px;margin-left:16px;padding-right:7px;display:grid;grid-template-columns:minmax(0,1fr) auto 32px;gap:8px;border-bottom:.5px solid var(--divider)}.entry-main,.entry-amount{min-height:54px;padding:7px 0}.entry-main strong{color:#1c1c1e;font-size:17px;font-weight:400}.entry-main small{margin-top:2px;color:#6e6e73;font-size:14px}.entry-amount{color:#3a3a3c;font-size:16px;font-weight:400}.row-chevron{width:32px;height:44px;display:grid;place-items:center;color:#c7c7cc;background:transparent;border:0}.row-chevron svg{width:17px}.empty-note{min-height:116px;padding:27px 20px}.empty-note h3{margin:0 0 5px;color:#1c1c1e;font-size:17px;font-weight:500}.empty-note p{color:#6e6e73;font-size:14px}.add-line-button{min-height:52px;margin:0 0 0 16px;width:calc(100% - 16px);padding:0 16px 0 0;justify-content:flex-start;color:var(--accent);background:transparent;border:0;border-radius:0;border-bottom:.5px solid #c6c6c8;font-size:17px;font-weight:400}.add-line-button:hover{background:transparent}.add-line-button svg{width:20px}.daily-total{min-height:54px;margin:0;padding:0 16px;color:#1c1c1e;background:transparent;border-radius:0;box-shadow:none;transform:none}.daily-total span{font-size:17px;font-weight:500}.daily-total strong{color:#1c1c1e;font-size:17px;font-weight:600;letter-spacing:0}.receipt-section{margin:0}.receipt-section .group-label{margin-top:26px}.photo-button{min-height:54px;padding:0 11px 0 12px;display:grid;grid-template-columns:30px 1fr 22px;gap:9px;color:#1c1c1e;background:transparent;border:0;border-radius:0;font-size:17px;font-weight:400}.photo-button>svg{width:17px;color:#c7c7cc}.photo-button.busy{color:#6e6e73;pointer-events:none}.row-icon{width:29px;height:29px;display:grid;place-items:center;color:#fff;background:var(--accent);border-radius:7px}.row-icon svg{width:19px;height:19px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.receipt-hint{margin:7px 16px 0;color:#6e6e73;font-size:13px}.photo-grid{margin:12px 0 0}.photo-thumb{border-radius:10px;background:#e5e5ea;box-shadow:none}.photo-thumb .photo-open{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:0;display:block;color:inherit;background:transparent;border:0;border-radius:0}.photo-thumb .photo-open img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-thumb>button:last-child{top:5px;right:5px;width:36px;height:36px;background:#1c1c1eb8}.storage-status{margin:28px 0 0;display:flex;justify-content:center;align-items:center;gap:6px;color:#8e8e93;font-size:12px}.bottom-nav{bottom:max(10px,env(safe-area-inset-bottom));width:min(calc(100% - 24px),496px);min-height:64px;padding:5px 7px;grid-template-columns:repeat(3,1fr);gap:0;background:var(--tab-bg);border:1px solid var(--glass-border);border-radius:999px;box-shadow:0 12px 34px #0000002e;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);isolation:isolate;overflow:hidden}.nav-indicator{position:absolute;z-index:0;top:5px;bottom:5px;left:7px;width:calc((100% - 14px) / 3);pointer-events:none;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);border-radius:999px;transform:translateZ(0);will-change:transform;transition:transform .46s cubic-bezier(.34,1.35,.64,1),background-color .28s ease,border-color .28s ease}.bottom-nav[data-active=history] .nav-indicator{transform:translate3d(100%,0,0)}.bottom-nav[data-active=settings] .nav-indicator{transform:translate3d(200%,0,0)}.nav-button{min-height:52px;color:#8e8e93;background:transparent;border-radius:999px;font-size:10px;font-weight:500;position:relative;z-index:1;transition:color .3s ease,opacity .3s ease}.nav-button.active{color:var(--accent);background:transparent}.nav-button svg{width:24px;height:24px;stroke-width:1.8;transition:transform .38s cubic-bezier(.34,1.45,.64,1)}.nav-button.active svg{transform:translateY(-1px) scale(1.12)}.nav-button span{transition:transform .3s ease,opacity .3s ease}.nav-button.active span{transform:translateY(1px)}.search-box{min-height:36px;margin:0 0 22px;padding:0 9px;color:#8e8e93;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:999px;box-shadow:0 7px 24px #00000012;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.search-box input{height:36px;font-size:17px}.search-box button{height:36px}.search-box:has(input:focus){border-color:color-mix(in srgb,var(--accent) 68%,transparent);box-shadow:0 0 0 3px var(--accent-soft)}.search-box:has(input:focus-visible),.search-box input:focus-visible{outline:0}.history-list,.search-results{overflow:hidden;gap:0;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:22px;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px)}.history-card{min-height:66px;padding:7px 11px 7px 0;margin-left:16px;grid-template-columns:44px 1fr auto;border:0;border-bottom:.5px solid var(--divider);border-radius:0;box-shadow:none;background:transparent}.history-card:focus-visible,.search-result:focus-visible{outline:0;box-shadow:inset 0 0 0 2px var(--accent)}.history-card:last-child{border-bottom:0}.history-date{width:40px;height:47px;color:#fff;background:#ff3b30;border-radius:8px}.history-date strong{font-size:20px}.history-date small{color:#fff;font-size:9px}.history-copy strong{font-size:16px;font-weight:400}.history-copy small{color:#6e6e73;font-size:12px}.history-total{color:#3a3a3c;font-size:14px;font-weight:400}.history-total svg{color:#c7c7cc}.history-detail-hero{min-height:86px;padding:12px 16px;display:flex;align-items:center;gap:14px;color:#1c1c1e;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:22px;box-shadow:0 10px 30px #0001;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px)}.history-detail-hero>span:last-child{min-width:0;display:grid;gap:4px}.history-detail-hero>span:last-child strong{font-size:17px;text-transform:capitalize}.history-detail-hero>span:last-child small{color:#6e6e73;font-size:13px}.history-detail-date{flex:none}.history-detail-card{border-radius:22px}.history-detail-card .daily-total{border-top:.5px solid var(--divider)}.search-result{min-height:62px;margin-left:16px;padding:8px 16px 8px 0;border:0;border-bottom:.5px solid var(--divider);border-radius:0}.search-result:last-child{border-bottom:0}.search-result strong{font-size:16px;font-weight:400}.plain-empty{color:#8e8e93}.plain-empty h3{color:#1c1c1e;font-weight:500}.sheet-backdrop{background:#00000047;-webkit-backdrop-filter:none;backdrop-filter:none}.entry-sheet{max-height:96dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:8px 16px calc(24px + env(safe-area-inset-bottom));background:var(--app-bg);border-radius:14px 14px 0 0;box-shadow:0 -1px 10px #00000014}@media (max-width: 699px){.entry-sheet{height:calc(100dvh - env(safe-area-inset-top));max-height:none;scroll-padding-bottom:calc(28px + env(safe-area-inset-bottom))}}.sheet-handle{width:36px;height:5px;margin-bottom:5px;background:#b7b7bb}.sheet-header{min-height:50px;margin:0 -4px 8px;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;position:sticky;top:-8px;z-index:2;background:var(--app-bg)}.sheet-header h2{margin:0;color:#1c1c1e;font-size:17px;font-weight:600;text-align:center}.sheet-text-action{min-height:44px;padding:0 4px;color:var(--accent);background:transparent;border:0;font-size:17px;text-align:left}.sheet-text-action.strong{font-weight:600;text-align:right}.sheet-text-action:disabled{color:#a1a1a6}.entry-sheet .group-label{margin-top:14px}.form-row{min-height:50px;margin-left:16px;padding-right:13px;display:grid;grid-template-columns:82px 1fr;align-items:center;gap:10px;border-bottom:.5px solid #c6c6c8;color:#1c1c1e;font-size:16px;transition:background-color .18s ease}.form-row:last-child{border-bottom:0}.form-row input:focus-visible{outline:0}.form-row:has(input:focus-visible){outline:0;box-shadow:none;background:transparent}.form-row>span:first-child{font-weight:400}.form-row input{width:100%;min-width:0;height:46px;padding:0;color:#1c1c1e;background:transparent;border:0;outline:0;font-size:16px;text-align:right}.form-row input::-moz-placeholder{color:#aeaeb2}.form-row input::placeholder{color:#aeaeb2}.amount-input{display:flex;align-items:center;justify-content:flex-end;gap:5px}.amount-input small{color:#8e8e93;font-size:16px}.amount-input input{max-width:170px;font-size:18px}.form-date-button{width:100%;min-height:48px;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#1c1c1e;background:transparent;border:0;font-size:16px;text-align:right}.form-date-button svg{width:16px;color:#c7c7cc}.suggestion-row{margin:10px 0 0}.suggestion-row button{color:var(--accent);background:var(--surface);border:0;border-radius:10px;font-weight:400}.delete-record-button{width:100%;min-height:50px;margin-top:26px;color:#ff3b30;background:var(--surface);border:0;border-radius:12px;font-size:17px}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;flex-direction:column;justify-content:center;background:#000;animation:fade-in .18s ease-out}.photo-viewer header{min-height:calc(55px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 12px 6px;position:absolute;top:0;left:0;right:0;z-index:1;display:grid;grid-template-columns:72px 1fr 72px;align-items:center;color:#fff;background:linear-gradient(rgba(0,0,0,.72),transparent)}.photo-viewer header strong{font-size:16px;text-align:center}.photo-viewer header button{min-height:44px;padding:0;color:var(--accent);background:transparent;border:0;font-size:16px;text-align:left}.photo-viewer header .danger{color:#ff453a;text-align:right}.photo-viewer>img{width:100%;max-height:100dvh;-o-object-fit:contain;object-fit:contain}.date-picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;background:#00000047;animation:fade-in .18s ease-out}.date-picker-sheet{width:min(100%,540px);padding:8px 16px calc(18px + env(safe-area-inset-bottom));color:#1c1c1e;background:var(--app-bg);border-radius:16px 16px 0 0;box-shadow:0 -1px 14px #0000001a;animation:sheet-in .24s cubic-bezier(.22,.8,.25,1)}.date-picker-sheet .sheet-handle{margin-bottom:2px}.date-picker-header{min-height:50px;display:grid;grid-template-columns:70px 1fr 70px;align-items:center}.date-picker-header strong{font-size:17px;text-align:center}.date-picker-header button{min-height:44px;padding:0;color:var(--accent);background:transparent;border:0;font-size:17px;text-align:left}.date-picker-header button.strong{font-weight:600;text-align:right}.calendar-month{min-height:52px;padding:0 6px 0 10px;display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-radius:12px 12px 0 0}.calendar-month>strong{font-size:17px;text-transform:capitalize}.calendar-month>span{display:flex;gap:3px}.calendar-month button{width:44px;height:44px;display:grid;place-items:center;color:var(--accent);background:transparent;border:0;border-radius:50%}.calendar-month button:first-child svg{transform:rotate(180deg)}.calendar-month svg{width:20px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface)}.calendar-weekdays{padding:5px 7px 2px;color:#8e8e93;font-size:11px;text-align:center}.calendar-grid{min-height:264px;padding:0 7px 8px;border-radius:0 0 12px 12px}.calendar-grid>span,.calendar-grid button{min-width:0;min-height:44px}.calendar-grid button{align-self:center;justify-self:center;position:relative;width:44px;height:44px;padding:0;color:#1c1c1e;background:transparent;border:0;border-radius:50%;font-size:16px;transition:color .16s ease,background-color .16s ease,transform .16s ease}.calendar-grid button.today{color:var(--accent);font-weight:600}.calendar-grid button.today:after{content:"";position:absolute;left:50%;bottom:4px;width:4px;height:4px;background:var(--accent);border-radius:50%;transform:translate(-50%)}.calendar-grid button.selected{color:#fff;background:var(--accent);font-weight:600}.calendar-grid button.selected.today:after{background:#fff}.calendar-grid button:active{transform:scale(.9)}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;padding:10px 10px calc(10px + env(safe-area-inset-bottom));background:#00000047;animation:fade-in .16s ease-out}.confirm-sheet{width:min(100%,430px);display:grid;gap:8px;animation:sheet-in .2s cubic-bezier(.22,.8,.25,1)}.confirm-copy,.confirm-danger,.confirm-cancel{background:#fafafafa;border:0}.confirm-copy{padding:14px 18px 13px;border-radius:14px 14px 0 0;text-align:center}.confirm-copy strong{color:#1c1c1e;font-size:14px}.confirm-copy p{margin:4px 0 0;color:#6e6e73;font-size:13px;line-height:1.35}.confirm-danger,.confirm-cancel{min-height:56px;color:#ff3b30;font-size:20px}.confirm-danger{margin-top:-8px;border-radius:0 0 14px 14px;border-top:.5px solid #c6c6c8}.confirm-cancel{color:var(--accent);border-radius:14px;font-weight:600}.confirm-danger:disabled,.confirm-cancel:disabled{opacity:.45}.settings-page{padding-top:0}.settings-page .group-label{margin-top:22px}.settings-group{overflow:hidden;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:22px;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px)}.settings-heading{min-height:54px;margin-left:16px;padding:8px 16px 8px 0;display:flex;flex-direction:column;justify-content:center;border-bottom:.5px solid var(--divider)}.settings-heading strong,.settings-row strong{font-size:17px;font-weight:400}.settings-heading small,.settings-row small{margin-top:2px;color:#6e6e73;font-size:13px}.theme-grid{padding:14px 12px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px}.theme-grid button{min-width:0;min-height:64px;padding:0;display:grid;place-items:center;gap:5px;color:#6e6e73;background:transparent;border:0;font-size:12px}.theme-grid button.selected{color:#1c1c1e;font-weight:600}.theme-grid button:focus-visible{outline:0}.theme-grid button:focus-visible .theme-swatch{box-shadow:0 0 0 4px var(--accent-focus)}.theme-swatch{width:38px;height:38px;display:grid;place-items:center;color:#fff;position:relative;background:var(--swatch-bg);border:3px solid var(--surface);border-radius:50%;box-shadow:0 0 0 1px #3c3c4338}.theme-swatch:before{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;background:var(--swatch);border-radius:50%}.theme-swatch svg{position:relative;z-index:1}.theme-grid button.selected .theme-swatch{box-shadow:0 0 0 3px var(--accent)}.theme-swatch svg{width:21px}.settings-row{min-height:64px;margin-left:16px;padding:7px 12px 7px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:.5px solid var(--divider)}.settings-row>span{display:flex;flex-direction:column}.ios-segment{min-width:142px;padding:2px;display:grid;grid-template-columns:1fr 1fr;background:#e9e9eb;border-radius:9px}.ios-segment button{min-height:32px;padding:0 9px;color:#3a3a3c;background:transparent;border:0;border-radius:7px;font-size:13px}.ios-segment button.selected{background:var(--surface);box-shadow:0 1px 3px #00000024;font-weight:600}.quick-note-form{min-height:52px;margin-left:16px;padding-right:12px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;border-bottom:.5px solid var(--divider)}.quick-note-form input{min-width:0;height:46px;padding:0;background:transparent;border:0;outline:0;font-size:16px}.quick-note-form button{min-width:62px;min-height:40px;padding:0 8px;color:var(--accent);background:transparent;border:0;font-size:16px}.quick-note-form button:disabled{color:#aeaeb2}.quick-note-list{min-height:58px;padding:10px 12px;display:flex;flex-wrap:wrap;gap:8px}.quick-note-list>span{min-height:38px;padding:0 5px 0 12px;display:inline-flex;align-items:center;gap:3px;color:var(--accent);background:var(--accent-soft);border-radius:10px;font-size:15px}.quick-note-list button{width:32px;height:32px;display:grid;place-items:center;color:#8e8e93;background:transparent;border:0}.quick-note-list svg{width:15px}.storage-row{border-top:0}.storage-row>small{flex:0 0 auto;margin:0}.settings-action-row{width:calc(100% - 16px);min-height:54px;margin-left:16px;padding:0 11px 0 0;display:flex;align-items:center;justify-content:space-between;color:#1c1c1e;background:transparent;border:0;border-top:.5px solid var(--divider);font-size:17px;text-align:left}.settings-action-row>span{display:flex;align-items:center;gap:10px}.settings-action-row>span svg{width:22px;color:var(--accent)}.settings-action-row>svg{width:17px;color:#c7c7cc}.settings-file-row{position:relative;cursor:pointer}.settings-file-row input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.settings-hint{margin:7px 16px 0;color:#6e6e73;font-size:13px;line-height:1.35}.settings-notice{margin:12px 0 0;color:var(--accent);font-size:13px;text-align:center}.danger-label{margin-top:30px!important}.settings-delete-all{width:100%;min-height:54px;color:#ff3b30;background:transparent;border:0;font-size:17px}.settings-footer{margin:24px 16px 4px;color:#8e8e93;font-size:12px;line-height:1.4;text-align:center}.app-shell[data-text-size=large] .entry-main strong,.app-shell[data-text-size=large] .daily-total span,.app-shell[data-text-size=large] .daily-total strong,.app-shell[data-text-size=large] .photo-button,.app-shell[data-text-size=large] .history-copy strong,.app-shell[data-text-size=large] .settings-heading strong,.app-shell[data-text-size=large] .settings-row strong,.app-shell[data-text-size=large] .settings-action-row{font-size:19px}.app-shell[data-text-size=large] .entry-main small,.app-shell[data-text-size=large] .history-copy small,.app-shell[data-text-size=large] .settings-heading small,.app-shell[data-text-size=large] .settings-row small,.app-shell[data-text-size=large] .settings-hint{font-size:15px}.app-shell[data-theme=notes-dark]{color:#f5f5f7;box-shadow:none}.app-shell[data-theme=notes-dark] .native-nav h1,.app-shell[data-theme=notes-dark] .date-selector,.app-shell[data-theme=notes-dark] .entry-main,.app-shell[data-theme=notes-dark] .entry-main strong,.app-shell[data-theme=notes-dark] .entry-amount,.app-shell[data-theme=notes-dark] .empty-note h3,.app-shell[data-theme=notes-dark] .daily-total,.app-shell[data-theme=notes-dark] .daily-total strong,.app-shell[data-theme=notes-dark] .photo-button,.app-shell[data-theme=notes-dark] .history-card,.app-shell[data-theme=notes-dark] .history-copy strong,.app-shell[data-theme=notes-dark] .history-detail-hero,.app-shell[data-theme=notes-dark] .history-detail-hero>span:last-child strong,.app-shell[data-theme=notes-dark] .history-total,.app-shell[data-theme=notes-dark] .search-result,.app-shell[data-theme=notes-dark] .search-box input,.app-shell[data-theme=notes-dark] .plain-empty h3,.app-shell[data-theme=notes-dark] .sheet-header h2,.app-shell[data-theme=notes-dark] .form-row,.app-shell[data-theme=notes-dark] .form-row input,.app-shell[data-theme=notes-dark] .form-date-button,.app-shell[data-theme=notes-dark] .date-picker-sheet,.app-shell[data-theme=notes-dark] .calendar-grid button,.app-shell[data-theme=notes-dark] .confirm-copy strong,.app-shell[data-theme=notes-dark] .settings-heading strong,.app-shell[data-theme=notes-dark] .settings-row strong,.app-shell[data-theme=notes-dark] .settings-action-row,.app-shell[data-theme=notes-dark] .quick-note-form input,.app-shell[data-theme=notes-dark] .theme-grid button.selected{color:#f5f5f7}.app-shell[data-theme=notes-dark] .group-label,.app-shell[data-theme=notes-dark] .entry-main small,.app-shell[data-theme=notes-dark] .empty-note p,.app-shell[data-theme=notes-dark] .receipt-hint,.app-shell[data-theme=notes-dark] .history-copy small,.app-shell[data-theme=notes-dark] .history-detail-hero>span:last-child small,.app-shell[data-theme=notes-dark] .search-result small,.app-shell[data-theme=notes-dark] .plain-empty,.app-shell[data-theme=notes-dark] .settings-heading small,.app-shell[data-theme=notes-dark] .settings-row small,.app-shell[data-theme=notes-dark] .settings-hint,.app-shell[data-theme=notes-dark] .settings-footer,.app-shell[data-theme=notes-dark] .amount-input small{color:#98989f}.app-shell[data-theme=notes-dark] .entry-sheet,.app-shell[data-theme=notes-dark] .date-picker-sheet{background:#080809f7;border:1px solid rgba(255,255,255,.1)}.app-shell[data-theme=notes-dark] .calendar-month,.app-shell[data-theme=notes-dark] .calendar-weekdays,.app-shell[data-theme=notes-dark] .calendar-grid,.app-shell[data-theme=notes-dark] .suggestion-row button,.app-shell[data-theme=notes-dark] .delete-record-button{background:#1c1c1e}.app-shell[data-theme=notes-dark] .confirm-copy,.app-shell[data-theme=notes-dark] .confirm-danger,.app-shell[data-theme=notes-dark] .confirm-cancel{background:#1f1f21f5}.app-shell[data-theme=notes-dark] .confirm-copy p,.app-shell[data-theme=notes-dark] .theme-grid button{color:#98989f}.app-shell[data-theme=notes-dark] .theme-swatch{border-color:#1c1c1e}.app-shell[data-theme=notes-dark] .ios-segment{background:#111113}.app-shell[data-theme=notes-dark] .ios-segment button{color:#aeaeb2}.app-shell[data-theme=notes-dark] .ios-segment button.selected{color:#fff;background:#3a3a3c}.app-shell[data-theme=notes-dark] .entry-row,.app-shell[data-theme=notes-dark] .form-row,.app-shell[data-theme=notes-dark] .settings-heading,.app-shell[data-theme=notes-dark] .settings-row,.app-shell[data-theme=notes-dark] .quick-note-form,.app-shell[data-theme=notes-dark] .settings-action-row,.app-shell[data-theme=notes-dark] .confirm-danger{border-color:var(--divider)}.app-shell[data-theme=notes-dark] .row-chevron,.app-shell[data-theme=notes-dark] .photo-button>svg,.app-shell[data-theme=notes-dark] .history-total svg,.app-shell[data-theme=notes-dark] .settings-action-row>svg,.app-shell[data-theme=notes-dark] .form-date-button svg{color:#636366}:root[data-theme=notes-dark] .date-picker-sheet,:root[data-theme=notes-dark] .calendar-grid button{color:#f5f5f7}:root[data-theme=notes-dark] .date-picker-sheet{background:#080809f7;border:1px solid rgba(255,255,255,.1)}:root[data-theme=notes-dark] .calendar-month,:root[data-theme=notes-dark] .calendar-weekdays,:root[data-theme=notes-dark] .calendar-grid{background:#1c1c1e}@keyframes spin{to{transform:rotate(360deg)}}@keyframes tab-page-in{0%{opacity:0;transform:translate3d(0,12px,0) scale(.992)}to{opacity:1;transform:translateZ(0) scale(1)}}@media (prefers-reduced-motion: reduce){.bottom-nav .nav-indicator{transition-duration:.32s,.2s,.2s!important;transition-timing-function:cubic-bezier(.22,.8,.25,1),ease,ease!important}.page{animation-duration:.22s!important}.nav-button svg{transition-duration:.24s!important}.nav-button span{transition-duration:.2s!important}}@media (max-width: 390px){.paper-card{padding-left:0}.history-card{grid-template-columns:42px 1fr}.history-total{grid-column:2;margin-top:-5px}}@media (min-width: 700px){body{padding:24px 0}.bottom-nav{bottom:24px;border:.5px solid rgba(60,60,67,.22);border-radius:16px}}
