/* WebKit-friendly app presentation. No native UIKit/Liquid Glass API is used. */
:root{color-scheme:light;--visible-height:100dvh;--viewport-top:0px}html{-webkit-text-size-adjust:100%;scroll-padding-bottom:110px}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif}button,a,summary{touch-action:manipulation}button:active,.button:active{transform:scale(.97)}button{transition:transform .13s ease,background .15s ease}input,select,textarea{font-size:16px!important}input[type=checkbox][switch]{appearance:auto;-webkit-appearance:auto;width:51px;min-width:51px;min-height:31px;height:31px;accent-color:#34533f;margin:0;padding:0;border:0;background:transparent}button,a.button,.icon-button{min-height:44px}.icon-button{min-width:44px}.reminder-shortcut{border:0;background:#e9eddf;color:#34533f;border-radius:100px;padding:8px 13px;font-size:12px;font-weight:650;display:flex;align-items:center;gap:5px}.page-top{gap:8px;flex-wrap:wrap}.install-banner{display:flex;align-items:center;gap:12px;background:#e9eddf;border-radius:20px;padding:14px;margin-bottom:22px}.install-banner img{border-radius:12px}.install-banner>div{flex:1}.install-banner strong{font-size:14px;display:block}.install-banner small{font-size:12px;display:block;color:#62715b;margin-top:3px}.install-banner button{padding:10px 13px;white-space:nowrap;font-size:12px}.connection-status,.app-update{position:fixed;z-index:60;left:50%;transform:translateX(-50%);bottom:calc(90px + env(safe-area-inset-bottom));width:min(92%,440px);padding:14px 18px;background:#2b4235;color:#fffefa;border-radius:18px;box-shadow:0 8px 24px #14241b22;font-size:13px}.app-update{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-update button{color:#eef2c9;white-space:nowrap}.phone-sheet{max-width:460px;width:calc(100% - 24px);border-radius:32px;overflow:auto;max-height:calc(var(--visible-height) - 24px)}.sheet-grabber{width:36px;height:5px;background:#d8dcd2;border-radius:10px;margin:12px auto 0}.sheet-close{position:absolute;top:14px;right:14px;background:#f0f1e9;border-radius:50%;z-index:1}.install-content{padding:30px 28px 24px;text-align:center}.app-icon{border-radius:23px;margin:0 auto 20px;box-shadow:0 10px 30px #34533f20}.install-content .eyebrow{font-size:9px;color:#718266;letter-spacing:.1em}.install-content h2{font-size:33px;line-height:1.12;margin-bottom:15px}.install-content>p:not(.eyebrow){color:#687462;font-size:15px;line-height:1.5}.install-steps{text-align:left;list-style:none;padding:0;margin:24px 0}.install-steps li{display:flex;gap:13px;align-items:flex-start;font-size:15px;margin:18px 0}.install-steps li>b{display:grid;place-items:center;background:#eaf0df;width:27px;height:27px;border-radius:50%;flex-shrink:0;color:#547041;font-size:12px}.install-steps small{display:block;color:#6e7865;font-size:12px;margin-top:4px}.install-steps svg{width:21px;height:21px;fill:none;stroke:#34533f;stroke-width:1.8;vertical-align:middle}.install-note{display:block;font-size:11px;color:#737d6c;margin-top:15px}.install-content>.button{margin-top:9px}.reminder-symbol{display:grid;place-items:center;font-size:50px;color:#6a5187;background:#e9def7;width:78px;height:78px;border-radius:25px;margin:0 auto 20px}.ios-settings{background:#f0f2e9;border-radius:20px;text-align:left;margin:24px 0 16px;padding:0 16px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0;margin:0;font-size:15px;font-weight:550}.setting-row+.setting-row{border-top:1px solid #dce1d4}.setting-row small{display:block;font-size:11px;font-weight:400;line-height:1.45;color:#6b765f;max-width:175px;margin-top:4px}.setting-row input[type=time]{width:130px;min-width:130px;padding:8px;border:0;background:#e3e8da;border-radius:10px;color:#304c36}.reminder-status{font-size:13px!important;line-height:1.45;min-height:38px}.reminder-actions{display:flex;justify-content:space-between;gap:12px;margin-top:12px}.reminder-actions button{font-size:12px}.later-button{display:block;margin:8px auto 0}.reminder-details{text-align:left;border-top:1px solid #dfe3d7;margin-top:18px;padding-top:14px;font-size:12px;color:#65735b}.reminder-details summary{min-height:44px;font-size:13px;cursor:pointer}.device-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.device-row button{font-size:12px}
@media(max-width:760px){
 body{overscroll-behavior-y:none}.site-header{padding-top:env(safe-area-inset-top);height:calc(75px + env(safe-area-inset-top));padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));border:0}.site-header nav{padding-bottom:max(10px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));background:#fffefa;border-top:1px solid #e4e6db;backdrop-filter:none;-webkit-backdrop-filter:none}.site-header nav a{min-width:58px;min-height:50px}.app-shell{padding-bottom:calc(100px + env(safe-area-inset-bottom));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.app-footer{padding-bottom:15px}.page-top{font-size:12px}.currency-badge{display:none}.welcome-card h1{font-size:34px}.welcome-card p{font-size:14px}.welcome-card{min-height:300px}.account-picker button{min-height:48px;font-size:13px}.kind-buttons button{min-height:44px;font-size:13px}.value-toggle button{min-height:36px;font-size:13px}.hero-actions .button{font-size:13px;min-height:48px}.row-fields label{font-size:12px}.row-actions .icon-button{min-width:44px;min-height:44px}.row-value-head select{height:28px;min-height:28px;max-width:100%;font-size:14px!important}.row-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.row-fields label{min-width:0}.row-fields select{width:100%}.composer-tabs button{min-height:44px;font-size:13px}.pace-bottom{font-size:11px}.pace-body p{font-size:12px}.small-label{font-size:10px}.donut span{font-size:10px}.week-day small{font-size:11px}
 #entry-dialog[open]{display:flex;flex-direction:column;position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;height:calc(var(--visible-height) - 12px);max-height:calc(var(--visible-height) - 12px);border-radius:28px 28px 0 0;overflow:hidden;top:calc(var(--viewport-top) + 12px);bottom:auto;box-shadow:0 -10px 80px #13251a30}#entry-dialog .dialog-header{padding:21px 22px 13px;flex-shrink:0}#entry-dialog .dialog-header:before{content:"";position:absolute;top:7px;left:calc(50% - 18px);width:36px;height:4px;border-radius:10px;background:#d6dcd0}#entry-dialog .dialog-header .eyebrow{display:none}#entry-dialog .dialog-header h2{font-size:24px}#entry-dialog .composer-tabs{flex-shrink:0;margin:0 20px 12px}#entry-form{display:flex;flex-direction:column;min-height:0;flex:1}#entry-dialog .composer-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1;-webkit-overflow-scrolling:touch;padding:16px 20px}#entry-dialog .composer-footer{position:static;flex-shrink:0;border-radius:0;padding:12px 20px max(14px,env(safe-area-inset-bottom));min-height:76px}#entry-dialog .composer-footer .button{min-height:48px;font-size:14px}.composer-footer>span{font-size:11px}.single-fields input{font-size:18px!important}.composer-top{margin-bottom:17px}.phone-sheet{position:fixed;inset:auto 0 0;top:auto;margin:0;max-width:none;width:100%;border-radius:30px 30px 0 0;max-height:calc(var(--visible-height) - 20px);padding-bottom:env(safe-area-inset-bottom)}.install-content{padding:20px 26px 25px}.install-banner{margin-bottom:18px}.install-banner strong{font-size:13px}.install-banner small{font-size:11px}.install-banner img{width:38px;height:38px}.install-banner{gap:9px;padding:12px}.install-banner button{font-size:11px;padding:9px 11px}
}
@media(display-mode:standalone){.site-header{background:var(--paper)}.login-wrap{padding-top:max(30px,env(safe-area-inset-top));padding-bottom:max(30px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .1s ease both}::view-transition-new(root){animation:page-in .16s ease both}@keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){button{transition:none}button:active,.button:active{transform:none}}
