html,body,#root{height:100%;width:100%;margin:0;overscroll-behavior-x:none}:root{--app-background-color: #f9fffb;--pwa-top-clearance: 0px;--pwa-top-shield-height: 0px}.pwa-top-shield{display:none}@media (max-width: 800px){html[data-standalone-pwa=true]{--pwa-top-clearance: 0px;--pwa-top-shield-height: 43px}html[data-standalone-pwa=true] .pwa-top-shield{display:block;position:fixed;z-index:30;top:0;right:0;left:0;height:var(--pwa-top-shield-height);background-color:var(--app-background-color);opacity:1;transform:translateZ(0);contain:paint;isolation:isolate;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}body{display:flex;place-items:center;min-width:320px;min-height:100vh;overflow-x:hidden;touch-action:pan-y pinch-zoom}.app-container{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.app-container input,.app-container textarea,.app-container [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}html[data-app-page=input],html[data-app-page=input] body,html[data-app-page=input] #root,html[data-app-page=input] .app-container{height:100dvh;overflow:hidden;overscroll-behavior:none}html[data-app-page=input] main{box-sizing:border-box;height:100dvh;overflow:hidden}html[data-input-sheet-open=true]{overflow:hidden;overscroll-behavior:none}.auth-screen{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:14px;padding:24px;color:#245e2d;background:#f9fffb}.sync-status{position:fixed;z-index:60;top:8px;right:10px;padding:4px 8px;border-radius:999px;font-size:11px;color:#fff;background:#66736a}.sync-synced{background:#2f7d42}.sync-error{background:#b23a3a}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:var(--app-background-color)}button{background-color:#f9f9f9}}button,input,select{-webkit-appearance:none;-moz-appearance:none;appearance:none}button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none;box-shadow:none}.selection-panel{position:fixed;z-index:120;box-sizing:border-box;overflow:hidden;border:1px solid #d5e5d9;border-radius:18px;background:#f9fffb;color:#245e2d;box-shadow:0 12px 36px #0c311a2e;animation:selection-panel-enter .18s cubic-bezier(.2,.7,.2,1);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.selection-panel-header{height:48px;padding:0 12px 0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e3ece6}.selection-panel-header strong{font-size:14px;font-weight:600}.selection-panel-header>div{display:flex;gap:2px}.selection-panel-header button{min-width:48px;min-height:44px;border:0;padding:0 10px;background:transparent;color:#006428;font-size:14px;font-weight:600}.selection-panel-header button:active{background:#e4f3e9}.selection-wheel-columns{display:flex;padding:4px 8px 8px;gap:4px}.selection-wheel-window{flex:1;min-width:0;height:220px;position:relative;overflow:hidden}.selection-wheel-band{position:absolute;top:88px;height:44px;inset-inline:4px;border-radius:9px;background:#e7f3eb;pointer-events:none}.selection-wheel{position:relative;height:100%;box-sizing:border-box;overflow-y:auto;padding-block:88px;scroll-snap-type:y mandatory;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent);mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent)}.selection-wheel::-webkit-scrollbar{display:none}.selection-wheel:focus-visible{outline:2px solid #87b496;outline-offset:-3px;border-radius:10px}.selection-wheel-option{height:44px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:0 8px;text-align:center;scroll-snap-align:center;font-size:17px;line-height:1.2;color:#718579;cursor:pointer}.selection-wheel-option.is-selected{color:#14532a;font-weight:600}.selection-panel-empty{padding:24px;text-align:center;font-size:14px}.kv-value-btn[aria-expanded=true],.date-wheel-trigger[aria-expanded=true]{background:#eaf5ee}.kv-value-btn,.date-wheel-trigger{transition:background-color .15s ease}@keyframes selection-panel-enter{0%{opacity:0;transform:translateY(4px) scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.selection-panel{animation:none}}.date-wheel-picker{position:relative;width:100%;max-width:100%}.date-wheel-picker.is-disabled{opacity:.6}.date-wheel-trigger{width:100%;box-sizing:border-box;height:44.8px;border:none;background:transparent;color:#245e2d;font-size:15px;padding:10px 0 0;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;cursor:pointer;border-top:2px solid #245e2d;border-radius:0}.date-wheel-trigger:disabled{cursor:not-allowed}.date-wheel-trigger-label{font-weight:800;padding-left:18px}.date-wheel-trigger-value{font-weight:800;text-align:right;padding-right:18px}.input-form{width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}.tab-group{width:min(520px,92%);margin:10px 0 18px;display:grid;grid-template-columns:repeat(3,1fr);background:#245e2d;border-radius:10px;padding:4px;box-sizing:border-box;position:relative;overflow:hidden}.tab-group:before{content:"";position:absolute;top:4px;left:4px;width:calc((100% - 8px) / 3);height:40px;background:#f9fffb;border-radius:6px;transform:translate(calc(var(--tab-position, var(--tab-index)) * 100%));transition:transform .26s cubic-bezier(.2,.7,.2,1);will-change:transform}.tab-group.is-dragging:before{transition:none}.tab-group button{height:40px;border:0;background:transparent;color:#f9fffb;font-weight:700;letter-spacing:.02em;border-radius:6px;cursor:pointer;position:relative;z-index:1;transition:color .16s ease}.tab-group button.active{color:#006428}.classification-control{width:min(360px,92%);display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:-8px 0 12px;padding:3px;border:1px solid #b8d7c0;border-radius:999px;background:#f5fbf6}.classification-control button{min-height:30px;border:0;border-radius:999px;background:transparent;color:#587061;font-weight:700;cursor:pointer}.classification-control button.active{color:#fff;background:#245e2d}.input-form form{width:min(620px,96%);margin:0;display:flex;flex-direction:column;gap:10px}.input-form input,.input-form select{width:100%;box-sizing:border-box;height:50px;border-radius:10px;border:none;background:#c6ffdd;color:#245e2d;font-size:15px;padding:0 14px;outline:none}.input-form input::placeholder{color:#245e2d40;font-weight:700}.input-form .row-2{display:grid;grid-template-columns:2fr 1fr;gap:10px}.calculator-input-shell{position:relative;min-width:0;height:50px}.input-form .calculator-input-shell input{height:100%;text-align:right}.calculator-caret-position{position:absolute;top:50%;right:12px;display:flex;align-items:center;color:transparent;font-size:15px;font-style:normal;font-weight:400;line-height:1;pointer-events:none;transform:translateY(-50%);white-space:pre}.calculator-caret-position em{color:transparent;font:inherit;font-style:normal}.calculator-caret{flex:0 0 auto;width:1.5px;height:20px;border-radius:1px;background:#006428;animation:calculator-caret-blink 1s steps(1,end) infinite}@keyframes calculator-caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}.field{width:100%;box-sizing:border-box;background:#f9fffb;border-top:2px solid #245E2D;padding:14px 0;display:grid;grid-template-columns:1fr 1fr;align-items:center;column-gap:0;row-gap:10px}.field label{display:block;font-weight:800;color:#245e2d;margin:0 0 10px 4px;grid-column:1 / -1}.field select{background:transparent;border:none;border-radius:0;height:48px;padding:0 12px;font-size:20px;font-weight:700}.field select select{border-left:2px solid #245E2D}.move-fields{width:100%;box-sizing:border-box;background:#f9fffb;padding:0 0 14px;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center}.move-fields select{background:transparent;border:none;border-radius:0;height:48px;padding:0 12px;font-size:20px;font-weight:700}.move-fields span{padding-left:18px;color:#245e2d;font-weight:800}.form-buttons{width:100%;display:grid;grid-template-columns:1fr .6fr .6fr;gap:14px;margin-top:8px}.form-buttons button,.form-buttons a{height:40px;border-radius:10px;border:none;background:#245e2d;color:#f9fffb;font-size:15px;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none}.form-buttons button:hover,.form-buttons a:hover{filter:brightness(1.05)}.form-buttons button:nth-child(2),.form-buttons button:nth-child(3),.form-buttons a:nth-child(2),.form-buttons a:nth-child(3){background:#245e2d;opacity:.9}@media (max-width: 767px){.tab-group{width:92%}.form-buttons,.move-fields{grid-template-columns:1fr}.move-fields span{padding-left:18px}.field{grid-template-columns:1fr}.field select select{border-left:none;border-top:2px solid #245E2D}}.category-buttons-wrap{grid-column:1 / -1;display:flex;justify-content:center;overflow:visible;width:100%;min-width:0}.category-buttons{font-size:14px;display:grid;grid-template-columns:repeat(5,max-content);gap:4px;width:100%;max-width:calc(27.5em + 16px);min-width:0;grid-template-columns:repeat(auto-fit,5.143em);justify-content:center}.category-btn{width:100%;border:1px solid #1f5b2a;background:transparent;color:#1f5b2a;border-radius:6px;padding:9px 0;font-weight:400;cursor:pointer;box-sizing:border-box}.category-btn.active{background:#1f5b2a;color:#fff}.picker-anchor{position:relative;width:100%}.picker-trigger{width:100%;height:52px;border:none;border-radius:10px;background:#f9fffb;color:#245e2d;font-size:20px;font-weight:800;text-align:right;padding:0 14px;cursor:pointer;border-top:2px solid #245E2D;border-bottom:2px solid #245E2D}.kv-row,.kv-row-under{grid-column:1 / -1;position:relative}.kv-label{padding-left:18px;color:#245e2d;font-weight:800;font-size:15px;letter-spacing:.02em;text-align:left;justify-self:start}.kv-value-btn{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center;border:none;background:transparent;cursor:pointer;padding:14px 0;border-top:2px solid #245E2D;border-bottom:2px solid #245E2D;border-radius:0}.kv-row-under .kv-value-btn{padding:14px 0;border-top:none}.kv-value-text{color:#245e2d;font-weight:800;font-size:15px;letter-spacing:.02em;text-align:right;padding-right:18px;line-height:1}.kv-value-btn:focus-visible{outline:3px solid rgba(0,90,255,.35);outline-offset:6px;border-radius:10px}.receipt-queue{width:min(620px,96%);margin:12px 0 0;background:#f9fffb;border-radius:10px;box-sizing:border-box}.receipt-queue-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.receipt-queue-total{font-weight:900;color:#245e2d}.receipt-commit-btn{height:40px;padding:0 12px;border-radius:10px;border:none;background:#245e2d;color:#f9fffb;font-weight:900;cursor:pointer}.receipt-commit-btn:disabled{opacity:.4;cursor:default}.receipt-empty{color:#245e2d8c;font-weight:700;padding:10px 6px}.receipt-list{display:flex;flex-direction:column;gap:8px}.receipt-item{width:100%;text-align:left;border:2px solid rgba(36,94,45,.18);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer;position:relative}.receipt-item.is-editing{border-color:#245e2d99;background:#245e2d0f}.receipt-item-main{display:flex;align-items:center;justify-content:space-between;gap:10px}.receipt-left{min-width:0}.receipt-cat{font-weight:900;color:#245e2d;font-size:14px;opacity:.9}.receipt-name{font-weight:800;color:#245e2dd9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.receipt-amt{font-weight:900;color:#245e2d;white-space:nowrap}.receipt-sub{margin-top:6px;display:flex;gap:8px;font-size:12px;color:#245e2d8c;font-weight:700}.receipt-del{position:absolute;right:10px;top:10px;border:none;background:transparent;color:#245e2d99;font-weight:900;cursor:pointer}.receipt-queue{width:min(620px,96%);margin:12px 0 0}.form-buttons.receipt-buttons{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:12px}.system-move-editor{display:grid;gap:14px}.system-move-editor h3,.system-move-editor p{margin:0;color:#245e2d}.system-move-editor label{display:grid;gap:5px;color:#245e2d;font-weight:700}.system-move-editor input,.system-move-editor select{min-height:42px;border:1px solid #b8d7c0;border-radius:8px;padding:8px;color:#245e2d;background:#fff}.receipt-total-bar{display:flex;align-items:center;justify-content:space-between;gap:10px}.receipt-commit-btn{height:26px;padding:0 10px;border:1px solid #006428;border-radius:999px;background:#f9fffb;color:#006428;font-weight:700;cursor:pointer}.receipt-commit-btn:disabled{opacity:.45;cursor:default}.receipt-row.is-editing{outline:2px solid rgba(0,100,40,.35);outline-offset:-2px}.receipt-row.boundary-top{border-top:1px solid #006428}.receipt-empty{justify-content:flex-start;color:#0064288c!important}.receipt-del-btn{border:none;background:transparent;color:#006428a6;font-size:18px;font-weight:700;cursor:pointer;justify-self:end;padding:0 6px}.receipt-del-btn:hover{color:#006428}.receipt-queue .date-header{display:flex;justify-content:space-between}.tax-controls{width:100%;box-sizing:border-box;background:#f9fffb;border-top:2px solid #245E2D;padding:10px 12px 0;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.move-fee-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:10px;width:100%}.move-fee-row input,.move-fee-row .calculator-input-shell{grid-column:2}.numeric-keypad{display:none}.receipt-mode-control{display:grid;grid-template-columns:repeat(3,1fr);position:relative;width:100%;overflow:hidden;border:1px solid #9db7a6;border-radius:10px}@media (max-width: 767px){:root{--numeric-keypad-height: calc(296px + env(safe-area-inset-bottom)) }.numeric-keypad{position:fixed;z-index:90;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,47px);align-content:start;gap:6px;height:var(--numeric-keypad-height);padding:7px 8px calc(7px + env(safe-area-inset-bottom));box-sizing:border-box;border-top:1px solid #9db7a6;background:#e0e4e1f7;box-shadow:0 -2px 8px #002e121a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:numeric-keypad-enter .24s cubic-bezier(.22,.72,.2,1) both;will-change:transform}.numeric-keypad-key{display:grid;min-width:0;min-height:0;padding:0;place-items:center;border:0;border-radius:10px;background:#fff;color:#26302a;box-shadow:0 1px 1px #002a1014;font-size:21px;font-weight:500;line-height:1;touch-action:manipulation}.numeric-keypad-key.key-\+,.numeric-keypad-key.key--,.numeric-keypad-key.key-×,.numeric-keypad-key.key-delete,.numeric-keypad-key.key-\={background:#aeb5b0}.numeric-keypad-key.is-pending{background:#c6ffdd;color:#245e2d}.input-section.sheet-open.sheet-expanded:has(.numeric-keypad) .receipt-buttons{position:sticky;z-index:12;bottom:calc(var(--numeric-keypad-height) + 8px);background:#f9fffb}}@keyframes numeric-keypad-enter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.numeric-keypad,.calculator-caret{animation:none}}.receipt-mode-control:before{content:"";position:absolute;z-index:0;inset:0 auto 0 0;width:calc(100% / 3);border-radius:9px;background:#245e2d;transform:translate(calc(var(--receipt-mode-position, var(--receipt-mode-index)) * 100%));transition:transform .26s cubic-bezier(.2,.72,.25,1);will-change:transform}.receipt-mode-control.is-dragging:before{transition:none}.tab-group,.receipt-mode-control{touch-action:pan-y}.receipt-mode-control button{position:relative;z-index:1;min-height:36px;padding:6px 4px;border:0;border-right:1px solid #9db7a6;border-radius:0;background:transparent;color:#245e2d;font-size:.78rem;font-weight:700}.receipt-mode-control button:last-child{border-right:0}.receipt-mode-control button.active{color:#fff}.receipt-mode-control button:disabled{cursor:not-allowed;opacity:.72}.tax-switch input[type=checkbox]{position:absolute;opacity:0;width:1px!important;height:1px!important;margin:0!important;padding:0!important;border:0!important}.tax-switch{padding:3.5px 0;display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.tax-switch-ui{width:46px;height:26px;border-radius:999px;border:2px solid #245E2D;background:#f9fffb;position:relative;box-sizing:border-box}.tax-switch-ui:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:999px;background:#245e2d;transition:transform .12s ease}.tax-switch input[type=checkbox]:checked+.tax-switch-ui{background:#c6ffdd}.tax-switch input[type=checkbox]:checked+.tax-switch-ui:after{transform:translate(20px)}.tax-switch-text{color:#245e2d;font-weight:800;font-size:15px;letter-spacing:.02em}.tax-rate-group{display:inline-flex;gap:6px}.tax-rate-btn{height:32px;padding:0 12px;border-radius:999px;border:1px solid #245E2D;background:transparent;color:#245e2d;font-weight:900;cursor:pointer}.tax-rate-btn.active{background:#245e2d;color:#f9fffb}.tax-badge{margin-right:6px;font-size:.75em;font-weight:800;opacity:.75}.draft-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.45rem;align-items:end;margin-bottom:.65rem}.draft-controls label{display:grid;gap:.2rem;min-width:0;font-size:.75rem;color:#647168}.draft-controls select,.draft-controls button{min-height:36px}.input-budget-progress{display:grid;gap:.35rem;margin:.55rem 0;padding:.55rem .65rem;border-radius:10px;background:#f2f6f2}.input-budget-row,.input-budget-row>div{display:grid;gap:.2rem}.input-budget-row>div{grid-template-columns:1fr auto;font-size:.75rem}.input-budget-row progress{width:100%;height:7px;accent-color:#4f8a68}.input-budget-row progress.is-over{accent-color:#c84b4b}.input-budget-row.is-over .input-budget-value strong{color:#b83232}.input-budget-row small{text-align:right;color:#647168}.input-budget-row small.is-over{color:#b83232}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.draft-controls summary,.memo-control summary,.input-secondary-actions summary{cursor:pointer;color:#006428}.draft-controls-panel{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:end}.memo-control{width:100%}.input-secondary-actions{position:relative}.input-secondary-actions>div{position:absolute;z-index:20;right:0;display:grid;min-width:180px;padding:6px;border:1px solid #9db7a6;border-radius:8px;background:#f9fffb;box-shadow:0 8px 22px #003c182e}@media (max-width: 767px){.input-form{position:relative;align-items:stretch;overflow:visible}.input-form form{display:contents}.input-form .tab-group{order:1;align-self:center;width:min(271px,calc(100% - 122px));height:25px;min-height:25px;margin:9px 0 15px;padding:2px;border-radius:4px;background:#006428}.input-form .tab-group:before{top:2px;left:2px;width:calc((100% - 4px) / 3);height:21px;border-radius:3px}.input-form .tab-group button{height:21px;min-height:21px;padding:0;border-radius:3px;font-size:13px;line-height:21px}.classification-control{position:absolute;z-index:4;top:51px;left:6px;width:63px;height:36px;margin:0;padding:0;border:0;border-radius:18px;background:#eef3ef;place-items:center}.input-form .classification-control select{width:63px;height:36px;padding:0;border:1px solid #d7e3db;border-radius:18px;background:#eef3ef;color:#587061;font-size:12px;font-weight:700;line-height:34px;text-align:center;text-align-last:center}.tax-controls{display:contents}.receipt-mode-control{order:2;align-self:flex-end;width:193px;height:40px;min-height:40px;margin-right:7px;border:0;border-radius:19px;background:#006428}.receipt-mode-control:before{top:2px;bottom:2px;left:2px;width:calc((100% - 4px) / 3);border-radius:18px;background:#f9fffb}.receipt-mode-control button{min-height:40px;padding:0;border:0;border-radius:0;background:transparent;color:#f9fffb;font-size:13px;line-height:36px}.receipt-mode-control button:first-child{border-radius:19px 0 0 19px}.receipt-mode-control button:last-child{border-radius:0 19px 19px 0}.receipt-mode-control button.active{color:#006428}.input-budget-progress{order:3;position:relative;align-self:center;width:calc(100% - 70px);height:27px;min-height:27px;margin:4px 35px;padding:0;display:block;border-radius:0;background:transparent}.type-income .tab-group,.type-move .tab-group{margin-bottom:90px}.input-budget-row{position:absolute;top:0;right:0;bottom:0;left:0;color:#006428;font-size:8px;line-height:10px}.input-budget-value{position:absolute;top:0;right:0;white-space:nowrap;text-align:right}.input-budget-value strong{font-weight:400}.input-budget-row.is-over .input-budget-value strong{color:#c62828}.input-budget-row.is-category .input-budget-value{top:0}.input-budget-row.is-total .input-budget-value{top:13px;right:0}.input-budget-row progress{position:absolute;left:0;width:100%;height:4px;overflow:hidden;border:0;border-radius:4px;accent-color:#006428;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#d7e3db}.input-budget-row progress::-webkit-progress-bar{border-radius:4px;background:#d7e3db}.input-budget-row progress::-webkit-progress-value{border-radius:4px;background:#006428}.input-budget-row progress::-moz-progress-bar{border-radius:4px;background:#006428}.input-budget-row progress.is-over::-webkit-progress-value{background:#c62828}.input-budget-row progress.is-over::-moz-progress-bar{background:#c62828}.input-budget-row.is-category progress{top:9px}.input-budget-row.is-total progress{top:22px}.input-form .row-2{order:4;align-self:center;width:calc(100% - 12px);height:40px;min-height:40px;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:3px}.input-form .row-2 input{height:40px;padding:0 12px;border-radius:4px;font-size:15px}.input-form .row-2 input:last-child{text-align:right}.input-form .row-2 .calculator-input-shell{height:40px}.input-form .field{order:5;display:flex;flex-direction:column;width:100%;padding:15px 0 0;border:0;row-gap:0}.category-buttons-wrap{width:calc(100% - 14px);height:84px;min-height:84px;margin:0 7px}.category-buttons{width:100%;max-width:none;height:84px;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:40px;column-gap:5px;row-gap:4px}.type-income .category-buttons{display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:4px 5px}.type-income .category-btn{flex:0 0 calc((100% - 20px)/5)}.category-btn{width:100%;height:40px;padding:0;border-color:#006428;color:#006428;font-size:14px;line-height:38px;letter-spacing:-.05em;white-space:nowrap;overflow:hidden}.category-btn.active{background:#006428}.input-form .field>.kv-row{width:100%;height:40px;min-height:40px;margin-top:15px}.input-form .kv-value-btn,.input-form .kv-row-under .kv-value-btn{height:40px;min-height:40px;padding:0;border-top:1px solid #006428;border-bottom:1px solid #006428}.input-form .kv-label,.input-form .kv-value-text{padding-left:15px;padding-right:15px;color:#006428;font-size:15px;font-weight:400}.input-form .date-wheel-picker{order:6;height:40px;min-height:40px;margin-top:-1px}.move-fee-row{order:5;align-self:center;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:3px;width:calc(100% - 12px);height:40px;min-height:40px;margin-top:3px}.move-fee-row span,.move-fee-row input{box-sizing:border-box;height:40px;border:0;border-radius:4px;color:#006428;font-size:15px}.move-fee-row span{display:flex;align-items:center;background:transparent;padding:0 9px}.move-fee-row input{width:100%;background:#c6ffdd;padding:0 12px;text-align:right}.move-fee-row .calculator-input-shell{height:40px}.type-move .move-fields{order:6}.type-move .date-wheel-picker{order:7}.type-move .move-fields .kv-row-under,.type-move .date-wheel-picker{margin-top:-1px}.input-form .date-wheel-trigger{height:40px;padding:0;border-top:1px solid #006428;border-bottom:1px solid #006428;color:#006428}.input-form .date-wheel-trigger-label,.input-form .date-wheel-trigger-value{padding-left:15px;padding-right:15px;font-weight:400}.tax-rate-group{position:absolute;z-index:4;top:49px;left:72px;display:grid;grid-template-columns:repeat(3,1fr);width:118px;height:40px;min-height:40px;gap:0;padding:2px;box-sizing:border-box;overflow:hidden;border:0;border-radius:19px;background:#006428}.tax-rate-group:before{content:"";position:absolute;z-index:0;top:2px;left:2px;width:calc((100% - 4px) / 3);height:36px;border-radius:18px;background:#f9fffb;transform:translate(calc(var(--tax-rate-position, var(--tax-rate-index)) * 100%));transition:transform .26s cubic-bezier(.2,.72,.25,1);will-change:transform}.tax-rate-group.is-dragging:before{transition:none}.tax-rate-group{touch-action:pan-y}.tax-rate-btn{position:relative;z-index:1;width:auto;height:36px;padding:0;border:0;border-radius:0;background:transparent;color:#f9fffb;font-size:11px;line-height:36px}.tax-rate-btn:first-of-type{border-radius:19px 0 0 19px}.tax-rate-btn:last-child{border-radius:0 19px 19px 0}.tax-rate-btn.active{width:auto;height:36px;margin:0;border-radius:18px;background:transparent;color:#006428}.input-form .receipt-buttons{order:8;position:relative;display:flex;justify-content:center;width:100%;height:40px;min-height:40px;margin:15px 0 0}.input-form .receipt-buttons>.primary-action{width:167px;height:40px;border-radius:4px;background:#006428}.input-form .receipt-buttons>.add-action{position:absolute;right:21px;width:72px;height:40px;border-radius:4px;background:#006428}.input-secondary-actions{position:absolute;left:7px;top:2px}.input-secondary-actions>summary{display:grid;width:38px;height:36px;place-items:center;list-style:none;font-weight:700}.input-secondary-actions>summary::-webkit-details-marker{display:none}.input-secondary-actions>div{top:38px;left:0;right:auto}.input-form form>.form-buttons:last-child{order:10;flex:1 1 auto;display:block;width:100%;min-height:0;max-height:none;margin:0;overflow:hidden}.receipt-queue{display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;margin:0;overflow-x:hidden;overflow-y:hidden;border-radius:0}.receipt-items-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.receipt-queue .date-header,.receipt-queue .transaction-item{box-sizing:border-box;width:100%}.receipt-queue>.date-header.receipt-total-bar{flex:0 0 40px;height:40px;min-height:40px;padding:0 16px;border:0;background:#c6ffdd!important;font-size:15px;font-weight:400}.receipt-queue>.date-header.receipt-draft-header{flex:0 0 10px;height:10px;min-height:10px;overflow:hidden;padding:0 6px;border-top:1px solid #006428;border-bottom:1px solid #006428;background:#d7e3db!important;font-size:8px;font-weight:400;line-height:9px}.receipt-items-scroll>.date-header{height:10px;min-height:10px;overflow:hidden;padding:0 6px;background:#d7e3db!important;font-size:8px;line-height:10px}.receipt-items-scroll>.transaction-item{height:36px;min-height:36px;padding:0 16px;font-size:15px}.receipt-queue .transaction-item .row-layout{grid-template-columns:90px minmax(0,1fr) 106px auto;column-gap:0}.receipt-swipe-row{--receipt-swipe-row-bg: #f9fffb;position:relative;flex:0 0 35px;width:100%;height:35px;overflow:hidden;background:var(--receipt-swipe-row-bg)}.receipt-swipe-row.is-dragging,.receipt-swipe-row.is-open,.receipt-swipe-row.has-swipe{--receipt-swipe-row-bg: #ecf9f0}.receipt-swipe-row:before{content:"";position:absolute;z-index:1;top:3px;right:0;width:11px;height:calc(100% - 6px);background:linear-gradient(var(--receipt-swipe-row-bg),var(--receipt-swipe-row-bg)) right / 3px 100% no-repeat,radial-gradient(circle at 0 8px,transparent 7.5px,var(--receipt-swipe-row-bg) 8px) top 0 right 3px / 8px 8px no-repeat,radial-gradient(circle at 0 0,transparent 7.5px,var(--receipt-swipe-row-bg) 8px) bottom 0 right 3px / 8px 8px no-repeat;pointer-events:none}.receipt-swipe-row:after{content:"";position:absolute;z-index:3;right:0;bottom:0;left:0;height:1px;background:#006428;pointer-events:none}.input-form .receipt-swipe-delete-action{position:absolute;z-index:0;top:3px;left:calc(100% + 3px);width:100%;height:calc(100% - 6px);min-height:0;max-height:100%;box-sizing:border-box;overflow:hidden;padding:0;border:0;border-radius:8px;background:#c00;color:#fff;font-size:13px;font-weight:700;white-space:nowrap;transform:translate(var(--receipt-swipe-offset, 0px));pointer-events:none;transition:transform .32s cubic-bezier(.25,.8,.25,1);will-change:transform}.receipt-swipe-delete-label{position:absolute;top:50%;left:-3px;transform:translate(calc(var(--receipt-swipe-half-width, 0px) - 50%),-50%) scale(var(--receipt-delete-label-scale, .18));transform-origin:center;color:#fff;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;pointer-events:none;transition:transform .32s cubic-bezier(.25,.8,.25,1)}.receipt-swipe-row.is-dragging:not(.is-full-swipe) .receipt-swipe-delete-label{transition:none}.receipt-swipe-row.is-full-swipe .receipt-swipe-delete-label{transform:translate(16px,-50%) scale(1)}.receipt-swipe-row.is-open .receipt-swipe-delete-action{pointer-events:auto}.receipt-swipe-delete-action{touch-action:pan-y}.receipt-swipe-row .receipt-swipe-front{position:relative;z-index:2;border-bottom:0!important;touch-action:pan-y;transform:translate(var(--receipt-swipe-offset, 0px));transition:transform .32s cubic-bezier(.25,.8,.25,1),background .2s ease;will-change:transform}.receipt-swipe-row.is-dragging .receipt-swipe-front,.receipt-swipe-row.is-dragging .receipt-swipe-delete-action{transition:none}.receipt-queue .cat,.receipt-queue .nm,.receipt-queue .amt{width:auto;min-width:0;color:#006428;font-size:15px;font-weight:400;line-height:20px}.receipt-queue .amt{display:grid;grid-template-columns:30px 76px;align-items:center;width:106px;font-size:17px}.receipt-queue .tax-badge{grid-column:1;justify-self:end;margin-right:6px;font-size:11px;line-height:1}.receipt-queue .receipt-amount-value{grid-column:2;justify-self:end;font-size:var(--receipt-amount-font-size, 17px);line-height:1;white-space:nowrap;transition:font-size .12s ease-out}.receipt-queue .nm.nm-small{display:-webkit-box;align-self:center;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;text-overflow:ellipsis;overflow-wrap:anywhere;font-size:11px;line-height:12px}.memo-control{order:9;box-sizing:border-box;padding:0 7px 12px;color:#006428;font-size:12px}.memo-control summary{height:32px;line-height:32px}.memo-control input{height:40px;border-radius:4px}.draft-controls{position:absolute;z-index:10;top:4px;right:7px;width:auto;margin:0}.draft-controls>summary{width:24px;height:24px;padding:0;list-style:none;color:#789081;font-size:12px;text-align:center;line-height:24px}.draft-controls>summary::-webkit-details-marker{display:none}.draft-controls-panel{position:absolute;top:26px;right:0;width:min(340px,calc(100vw - 14px));padding:8px;border:1px solid #9db7a6;border-radius:8px;background:#f9fffb;box-shadow:0 8px 22px #003c182e}.draft-controls-panel select,.draft-controls-panel button{height:36px;min-height:36px}.move-fields{order:5;display:flex;flex-direction:column;width:100%;padding:32px 0 0}html[data-app-page=input] .input-form{height:calc(100dvh - var(--pwa-top-clearance));overflow:hidden}html[data-app-page=input] .receipt-items-scroll{box-sizing:border-box}html[data-app-page=input] .receipt-items-scroll:after{content:"";flex:0 0 81px;width:100%;pointer-events:none}.input-section.sheet-open .sticky-input,.input-section.sheet-open .input-form{height:100%;box-sizing:border-box;overflow:hidden}}.history-list{position:relative;display:flex;flex-direction:column}.date-header{background-color:#d7e3db!important;color:#006428!important;border-bottom:1px solid #006428;padding:.5px 12px;font-weight:700;font-size:.85rem}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #006428;color:#006428!important;cursor:pointer;transition:background .2s}.transaction-item.type-income{background-color:#c6ffdd}.transaction-item.type-expense{background-color:#f9fffb}.transaction-item.type-move{background-color:#e6f0ec}.transaction-item.type-income:hover{background:#b6f5cf}.transaction-item.type-expense:hover,.transaction-item.group-total-row:hover,.transaction-item.type-move:hover{background:#ecf9f0}.row-layout{display:grid;grid-template-columns:6em 8em 1fr auto;align-items:center;column-gap:.6ch;width:100%}.cat{width:7em;display:flex;align-items:center;justify-content:space-between;white-space:nowrap;text-align:left}.category-text{overflow:hidden;text-overflow:ellipsis}.move-arrow{margin-left:.3em;color:#006428;font-size:.85em;flex-shrink:0;padding:0 1em}.nm{width:10em;text-align:left;white-space:normal;overflow-wrap:anywhere;line-height:1.1}.nm-small{font-size:.75rem}.amt{width:7em;justify-self:end;text-align:right;white-space:nowrap;line-height:1.1}.amt-small{font-size:.8rem;letter-spacing:-.03em}.move-badge{justify-self:end;margin-left:.4ch;font-size:.85rem;opacity:.75}.amount{font-size:1.1rem;font-weight:500}.type-income .amount{color:#006428}.type-expense .amount{color:#c00}.move-tag{background:#666;color:#fff;font-size:.7rem;padding:2px 6px;border-radius:10px;margin-right:8px}.swipe-row{touch-action:pan-y;position:relative;overflow:hidden;background-color:#c00}.swipe-delete{position:absolute;top:0;right:0;width:64px;height:100%;border:none;background:#c00;color:#fff;font-size:20px;cursor:pointer;border-radius:0!important}.swipe-front{position:relative;will-change:transform;touch-action:pan-y;transition:transform .12s ease}.group-total-row{color:#006428;padding:6px 12px;font-size:.8rem;cursor:pointer;border-bottom:1px solid #006428}.transaction-item.group-boundary-top{border-top:2px solid #006428}.group-total-row .row-layout{grid-template-columns:6em 8em 1fr auto}@media (max-width: 767px){.history-list{width:100%;background:#f9fffb;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.history-list>.date-header{position:sticky;z-index:8;top:0;box-sizing:border-box;width:100%;height:10px;min-height:10px;overflow:hidden;padding:0 6px;border-top:1px solid #006428;border-bottom:1px solid #006428;background:#d7e3db!important;font-size:8px;font-weight:400;line-height:9px}.history-list .swipe-row{--history-row-bg: #f9fffb;position:relative;width:100%;height:35px;min-height:35px;overflow:hidden;background:var(--history-row-bg)}.history-list .swipe-row.is-dragging,.history-list .swipe-row.is-open,.history-list .swipe-row.has-swipe{--history-row-bg: #ecf9f0}.history-list .swipe-row:has(.type-income){--history-row-bg: #c6ffdd}.history-list .swipe-row:has(.type-move){--history-row-bg: #e6f0ec}.history-list .swipe-row.is-dragging:has(.type-income),.history-list .swipe-row.is-open:has(.type-income),.history-list .swipe-row.has-swipe:has(.type-income){--history-row-bg: #b6f5cf}.history-list .swipe-row:before{content:"";position:absolute;z-index:1;top:3px;right:0;width:11px;height:calc(100% - 6px);background:linear-gradient(var(--history-row-bg),var(--history-row-bg)) right / 3px 100% no-repeat,radial-gradient(circle at 0 8px,transparent 7.5px,var(--history-row-bg) 8px) top 0 right 3px / 8px 8px no-repeat,radial-gradient(circle at 0 0,transparent 7.5px,var(--history-row-bg) 8px) bottom 0 right 3px / 8px 8px no-repeat;pointer-events:none}.history-list .swipe-row:after{content:"";position:absolute;z-index:3;right:0;bottom:0;left:0;height:1px;background:#006428;pointer-events:none}.history-list .swipe-delete{position:absolute;z-index:0;top:3px;left:calc(100% + 3px);right:auto;width:100%;height:calc(100% - 6px);min-height:0;overflow:hidden;padding:0;border:0;border-radius:8px!important;background:#c00;transform:translate(var(--history-swipe-offset, 0px));transition:transform .32s cubic-bezier(.25,.8,.25,1);will-change:transform;pointer-events:none;touch-action:pan-y}.history-list .swipe-delete-label{position:absolute;top:50%;left:-3px;color:#fff;font-size:13px;font-weight:700;line-height:1;white-space:nowrap;transform:translate(calc(var(--history-swipe-half-width, 0px) - 50%),-50%) scale(var(--history-delete-label-scale, .18));transform-origin:center;transition:transform .32s cubic-bezier(.25,.8,.25,1);pointer-events:none}.history-list .swipe-row.is-dragging:not(.is-full-swipe) .swipe-delete-label{transition:none}.history-list .swipe-row.is-full-swipe .swipe-delete-label{transform:translate(16px,-50%) scale(1)}.history-list .swipe-row.is-open .swipe-delete{pointer-events:auto}.history-list .transaction-item{box-sizing:border-box;width:100%;height:35px;min-height:35px;padding:0 16px;border-bottom:0;font-size:15px}.history-list .row-layout,.history-list .group-total-row .row-layout{grid-template-columns:90px minmax(0,1fr) 106px;column-gap:0}.history-list .cat,.history-list .nm,.history-list .amt{width:auto;min-width:0;color:#006428;font-size:15px;font-weight:400;line-height:20px}.history-list .cat{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history-list .nm{display:-webkit-box;align-self:center;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;text-overflow:ellipsis;overflow-wrap:anywhere}.history-list .amt{display:grid;grid-template-columns:30px 76px;align-items:center;width:106px;font-size:17px}.history-list .tax-badge{grid-column:1;justify-self:end;margin-right:6px;font-size:11px;line-height:1}.history-list .history-amount-value{grid-column:2;justify-self:end;font-size:var(--history-amount-font-size, 17px);line-height:1;white-space:nowrap}.history-list .nm-small{font-size:11px;line-height:12px}.history-list .move-arrow{margin:0;padding:0 5px}.history-list .group-total-row{box-sizing:border-box;width:100%;height:35px;min-height:35px;padding:0 16px;border-bottom:1px solid #006428;font-size:15px;line-height:34px}.history-list .swipe-front{position:relative;z-index:2;touch-action:pan-y;transition:transform .32s cubic-bezier(.25,.8,.25,1),background .2s ease;will-change:transform}.history-list .swipe-row.is-dragging .swipe-front,.history-list .swipe-row.is-dragging .swipe-delete{transition:none}}.calendar-view{position:relative;border:1.5px solid #006428;background-color:#fff}.calendar-nav{position:relative;display:flex;justify-content:center;align-items:center;gap:40px;padding:15px;background-color:#f9fbf9;border-bottom:1.5px solid #006428}.calendar-search-trigger{position:absolute;right:0;font-size:1.35rem}.calendar-month-picker{display:grid;place-items:center}.calendar-month-trigger{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.calendar-view-options{padding:5px 6px;border-bottom:1px solid #b8d7c0;background:#f9fbf9}.calendar-view-options>summary{cursor:pointer;list-style:none;text-align:right}.calendar-view-options>summary::-webkit-details-marker{display:none}.calendar-view-options>div{display:flex;justify-content:flex-end;gap:6px}.calendar-view-options button{padding:5px 8px;border:1px solid #8aa697;border-radius:999px;background:#fff;color:#3e5a4b;font-size:.7rem}.calendar-view-options button.active{border-color:#006428;background:#dff1e5;color:#006428}.calendar-days .cell.today{box-shadow:inset 0 0 0 2px #006428;background:#edf8f0}.cell.holiday .date-num{color:#a00}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);width:100%}.calendar-name{border-bottom:1.5px solid #006428;border-right:1.5px solid #006428;background-color:#f0f7f0;text-align:center;padding:10px 0}.cell{height:100%;min-height:unset;display:flex;flex-direction:column;padding:2px 4px;border-right:1.5px solid #006428;border-bottom:1.5px solid #006428;overflow:hidden;box-sizing:border-box}.calendar-name:nth-child(7n),.cell:nth-child(7n){border-right:none}.cell:nth-last-child(-n+7){border-bottom:none}.cell-amounts{flex-grow:0;margin-top:auto;display:grid;grid-template-rows:auto auto;justify-items:end;align-items:end;align-content:end;min-height:2.4em}.cell-amounts span{display:block;text-align:right;margin:0;padding:0;line-height:1}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(var(--weeks),1fr);height:270px}.small-font{font-size:.65rem!important;letter-spacing:-.05em}.cell.other-month{background-color:#d7e3db;color:#999}.date-num{align-self:flex-start;font-size:.8rem;line-height:1;margin-bottom:-.7em}.cell.other-month .date-num{align-self:flex-start;color:#006428}.cell-amounts span{font-size:.85rem;line-height:1.2;white-space:nowrap}.income{color:#00c950}.expense{color:#ff0004}@media (max-width: 767px){.calendar-view{width:100%;border:0;background:#f9fffb}.calendar-nav{box-sizing:border-box;height:43px;padding:0;gap:0;border:0;background:#f9fffb}.calendar-month-picker,.calendar-month-trigger{width:124px;height:25px}.calendar-month-trigger{padding:0;border:0;background:transparent;color:#006428;font-size:21px;font-weight:700;line-height:25px;text-align:center}.calendar-nav>button:not(.calendar-search-trigger){width:24px;height:25px;padding:0;border:0;background:transparent;color:#006428;font-size:20px;line-height:25px}.calendar-search-trigger{top:8px;right:7px;width:28px;height:25px;padding:0;border:0;background:transparent;color:#006428;font-size:18px;line-height:25px}.calendar-view-options{position:absolute;z-index:8;top:8px;right:37px;width:26px;height:25px;padding:0;border:0;background:transparent}.calendar-view-options>summary{width:26px;height:25px;color:#789081;font-size:11px;line-height:23px;text-align:center}.calendar-view-options>div{position:absolute;z-index:10;top:29px;right:-30px;display:grid;width:180px;gap:5px;padding:7px;border:1px solid #8aa697;border-radius:8px;background:#f9fffb;box-shadow:0 8px 22px #003c182e}.calendar-view-options button{height:32px;padding:0 8px;font-size:11px}.calendar-weekdays{height:10px}.calendar-name{box-sizing:border-box;height:10px;padding:0;border-right:1px solid #006428;border-bottom:1px solid #006428;border-top:1px solid #006428;background:#f9fffb;color:#006428;font-size:8px;line-height:8px}.calendar-name:first-child{color:#a00}.calendar-name:last-child{color:#00a}.calendar-days{height:calc(var(--weeks) * 26px + 1px);margin-top:0}.cell{height:auto;min-height:0;padding:0 1px;border-right:1px solid #006428;border-bottom:1px solid #006428;background:#f9fffb;color:#006428}.date-num{margin:0;font-size:8px;line-height:9px}.cell:nth-child(7n+1) .date-num{color:#a00}.cell:nth-child(7n) .date-num{color:#00a}.cell.holiday .date-num{color:#a00}.cell-amounts{min-height:16px;margin-top:auto;line-height:8px}.cell-amounts span,.cell-amounts span.small-font{max-width:100%;overflow:hidden;font-size:8px!important;line-height:8px;text-overflow:clip}.cell.other-month{background:#d7e3db}.calendar-days .cell.today{background:#c6ffdd;box-shadow:none}}.summary-container{margin-top:20px;display:flex;flex-direction:column;border-top:2.5px solid #006428;padding-top:20px;background-color:#f9fffb}.summary-top{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #006428;border-radius:4px}.summary-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#006438}.summary-cell:not(:first-child){border-left:1px solid #006428}.summary-label{font-size:10px;font-weight:700}.summary-value{font-size:17px;letter-spacing:.05em}.summary-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-top:8px;padding:10px 12px;color:#006438;background-color:#f9fffb;border-radius:4px;border:1px solid #006428}.summary-bottom-item{display:flex;align-items:baseline;gap:4px}.summary-bottom-item.balance{margin-left:auto;text-align:right}.summary-bottom-item.balance .summary-label,.summary-bottom-item.balance .summary-value{color:#006428}@media (max-width: 767px){.summary-container{width:100%;margin:0;padding:0;border:0;background:#f9fffb}.summary-top{box-sizing:border-box;height:35px;min-height:35px;border:0;border-top:1px solid #006428;border-bottom:1px solid #006428;border-radius:0}.summary-cell{box-sizing:border-box;height:34px;color:#006428}.summary-cell:not(:first-child){border-left:1px solid #006428}.summary-label{font-size:10px;line-height:10px}.summary-value{font-size:17px;font-weight:400;line-height:20px;letter-spacing:0}.summary-bottom{box-sizing:border-box;width:100%;height:32px;min-height:32px;margin:0;padding:0 16px;flex-wrap:nowrap;gap:0;border:0;border-top:0;border-bottom:1px solid #006428;border-radius:0}.summary-bottom-item{gap:2px;white-space:nowrap}.summary-bottom-item .summary-label{font-size:10px;font-weight:400}.summary-bottom-item .summary-value{font-size:17px;font-weight:400}}.history-search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;justify-content:flex-end;background:#00000047}.history-search-panel{box-sizing:border-box;width:min(540px,100%);height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:#f9fffb;box-shadow:-12px 0 36px #003c182e}.history-search-header{display:flex;align-items:center;justify-content:space-between;padding:calc(max(14px,env(safe-area-inset-top)) + var(--pwa-top-clearance)) 16px 12px;border-bottom:1px solid #d7e3db}.history-search-header h2{margin:0;color:#006428;font-size:1.1rem}.history-search-header button{width:38px;height:38px;padding:0;border:0;background:transparent;color:#006428;font-size:1.7rem}.history-search-filters{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:12px;border-bottom:1px solid #d7e3db}.history-search-filters label{display:grid;gap:4px;color:#006428;font-size:.75rem}.history-search-filters input,.history-search-filters select{min-width:0;box-sizing:border-box;border:1px solid #9db7a6;border-radius:8px;padding:9px 10px;background:#fff;color:#173c25;font:inherit}.history-search-query{grid-column:1 / -1}.history-search-result-summary{padding:8px 12px;color:#53715e;font-size:.8rem;text-align:right}.history-search-results{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.history-search-empty{margin:32px 16px;color:#66806f;text-align:center}.history-search-load-more{display:block;width:calc(100% - 24px);min-height:42px;margin:12px;border:1px solid #9db7a6;border-radius:10px;background:#edf5ef;color:#245e2d;font-weight:700}@media (max-width: 767px){.history-search-backdrop{align-items:stretch;background:#f9fffb}.history-search-panel{width:100%;height:100dvh;border-radius:0;box-shadow:none}}.month-end-banner{position:fixed;z-index:35;top:calc(8px + var(--pwa-top-clearance));left:50%;display:flex;align-items:center;gap:16px;max-width:min(620px,calc(100vw - 120px));padding:9px 12px;border:1px solid #c95c42;border-radius:12px;background:#fff1ed;color:#7a2816;box-shadow:0 4px 18px #47130729;transform:translate(-50%)}.month-end-banner div{min-width:0}.month-end-banner strong,.month-end-banner span{display:block}.month-end-banner span{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.month-end-banner a,.month-end-popup a{flex:0 0 auto;padding:8px 11px;border-radius:8px;background:#a83d25;color:#fff;font-weight:800;text-decoration:none}.month-end-popup-backdrop{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#00000057}.month-end-popup{width:min(400px,100%);box-sizing:border-box;padding:22px;border-radius:16px;background:#f9fffb;color:#173c25;box-shadow:0 12px 42px #0000003d}.month-end-popup h2{margin:0 0 12px;font-size:1.2rem}.month-end-popup p{margin:8px 0}.month-end-popup-accounts{color:#a83d25;font-weight:700}.month-end-popup>div{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.month-end-popup button{padding:8px 11px;border:1px solid #9db7a6;border-radius:8px;background:#fff;color:#245e2d}@media (max-width: 800px){.month-end-banner{top:calc(7px + var(--pwa-top-clearance));left:48px;right:10px;max-width:none;transform:none}.month-end-banner span{display:none}}.dashboard-page-root{display:grid;grid-template-columns:1.2fr 1fr 1fr;height:100dvh;width:100%;overflow:hidden;background-color:#f9fffb;box-sizing:border-box}.column{height:100%;display:flex;flex-direction:column;border-right:1.5px solid #D7E3DB;overflow:hidden}.calendar-section{padding:10px;overflow-y:auto}.history-section{overflow-y:auto;background-color:#f9fffb}.input-section{overflow-y:auto}.input-sheet-toolbar,.input-sheet-backdrop{display:none}.column:last-child{border-right:none}@media (max-width: 767px){.dashboard-page-root{display:flex;flex-direction:column;height:calc(100dvh - var(--pwa-top-clearance));min-height:0;overflow:hidden}.column{height:auto;border-right:none;border-bottom:0}.calendar-section{flex:0 0 auto;padding:0;overflow:hidden}.calendar-section .scroll-content{width:100%;overflow:hidden}.history-section{flex:1 1 auto;min-height:0;width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.input-section{position:fixed;z-index:61;left:0;right:0;bottom:0;display:flex;height:70.775dvh;overflow-y:auto;box-sizing:border-box;border:0;border-top:2px solid #006428;border-radius:15px 15px 0 0;background:#f9fffb;box-shadow:none;visibility:hidden;pointer-events:none;transform:translate3d(0,calc(100% + 2px),0);transition:transform .34s cubic-bezier(.22,.75,.25,1),height .3s cubic-bezier(.22,.75,.25,1),visibility 0s linear .34s;will-change:transform,height;overscroll-behavior:contain}.input-section.sheet-open{visibility:visible;pointer-events:auto;transform:translateZ(0);transition:transform .34s cubic-bezier(.22,.75,.25,1),height .3s cubic-bezier(.22,.75,.25,1),visibility 0s}.input-section.sheet-open.sheet-expanded{height:calc(100dvh - 83px - var(--pwa-top-clearance))}.input-section.sheet-open.sheet-dragging{height:var(--sheet-drag-height);transition:none}.input-section.sheet-open.sheet-expanded.keyboard-visible{top:calc(var(--visual-viewport-offset, 0px) + var(--pwa-top-clearance));bottom:auto;height:calc(var(--visual-viewport-height, 100dvh) - var(--pwa-top-clearance));transition:none}.input-sheet-backdrop{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent}.input-sheet-toolbar{position:absolute;z-index:5;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:20px;background:transparent;pointer-events:none}.input-sheet-handle{grid-column:1 / -1;width:100%;height:20px;padding:0;border:0;background:transparent;touch-action:none;pointer-events:auto}.input-sheet-handle span{display:block;width:110px;height:2px;margin:auto;border-radius:0;background:#006428}.input-sheet-close{display:none}.input-section.sheet-open .sticky-input{width:100%;min-height:0;padding:0 0 max(14px,env(safe-area-inset-bottom));overflow:visible}.input-section.sheet-open .tab-group{margin-top:20px}.input-section.sheet-open .classification-control{top:62px}.input-section.sheet-open.sheet-expanded.keyboard-visible .receipt-buttons{position:sticky;z-index:12;bottom:8px;background:#f9fffb}}.account-settings{padding:16px;color:#245e2d}.account-settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-settings h2,.account-settings h3{margin:0;font-size:16px}.account-settings button{border:0;border-radius:8px;padding:8px 10px;font-weight:700;color:#fff;background:#245e2d;cursor:pointer}.account-list{display:grid;gap:8px;margin-top:14px}.account-row{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #d2e2d5;border-radius:10px}.account-row.is-inactive{opacity:.55}.account-edit{flex:1;min-width:0;padding:0!important;text-align:left;color:#245e2d!important;background:transparent!important}.account-edit span{display:block;margin-top:3px;font-size:12px;font-weight:500}.account-toggle{font-size:12px;background:#5c7562!important}.account-order-controls{display:grid;grid-template-columns:repeat(2,28px);gap:4px}.account-order-controls button{width:28px;height:28px;padding:0;border-radius:999px;font-size:14px}.account-order-controls button:disabled{opacity:.28;cursor:default}.account-editor{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #d2e2d5}.account-editor label{display:grid;gap:5px;font-size:12px;font-weight:700}.account-editor input,.account-editor select{box-sizing:border-box;width:100%;min-height:38px;border:1px solid #b8d7c0;border-radius:8px;padding:7px;color:#245e2d}.account-investment-opening-profit{padding:8px 10px;border-radius:8px;font-size:12px;font-weight:700;background:#d7e3db}.account-editor-actions{display:flex;justify-content:flex-end;gap:8px}.account-editor-actions button:first-child{background:#708076}.card-settings-fields{display:grid;gap:10px;margin:0;padding:12px;border:1px solid #b8d7c0;border-radius:8px}.card-settings-fields legend{padding:0 4px;font-size:12px;font-weight:800}.card-settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.csv-invalid-list{display:grid;gap:8px;padding:10px;border:1px solid #d9a6a6;border-radius:8px;background:#fff8f8}.csv-invalid-list p{margin:0;font-size:12px}.csv-invalid-row{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:flex-start;gap:8px!important;padding:8px;border:1px solid #ead2d2;border-radius:6px;background:#fff}.csv-invalid-row input{width:auto!important;min-height:0!important;margin-top:3px}.csv-invalid-row span{min-width:0}.csv-invalid-row small,.csv-invalid-row code{display:block;margin-top:3px;overflow-wrap:anywhere;font-size:11px}.notification-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}#root{max-width:none;margin:0;padding:0;text-align:left;width:100%;height:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.transaction-buttons,.form-buttons{display:flex;gap:10px}.edit-button{background-color:#ffc107;color:#000;border:none;padding:5px 10px;border-radius:4px;cursor:pointer}.edit-button:hover{background-color:#e0a800}header{text-align:center;margin-bottom:20px}.nav-menu{display:flex;justify-content:center;gap:20px;margin-top:10px}.nav-menu a{text-decoration:none;color:#007bff;font-weight:700;padding:5px 10px;border-radius:4px}.nav-menu a:hover{background-color:#f0f7ff}.mobile-bottom-nav,.mobile-settings-trigger{display:none}.nav-menu a.active{background:#e8f7eb;color:#245e2d}@media (max-width: 800px){header{margin:0;height:46px}.nav-menu a{display:none}.nav-menu{justify-content:flex-start;margin:0;padding:8px 12px}.settings-trigger{visibility:hidden}main{padding-top:var(--pwa-top-clearance);padding-bottom:calc(62px + env(safe-area-inset-bottom))}.mobile-bottom-nav{position:fixed;z-index:40;left:50%;bottom:30px;width:min(333px,calc(100vw - 60px));height:51px;transform:translate(-50%);display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:4px;box-sizing:border-box;border-radius:24px;background:#c6ffdd;box-shadow:none;overflow:hidden}.mobile-bottom-nav:before{content:"";position:absolute;z-index:0;top:4px;left:4px;width:calc((100% - 8px) / 3);height:43px;border-radius:22px;background:#006428;transform:translate(calc(var(--nav-position, var(--nav-index)) * 100%));transition:transform .26s cubic-bezier(.2,.72,.25,1);will-change:transform}.mobile-bottom-nav.is-dragging:before{transition:none}.mobile-bottom-nav button{position:relative;z-index:1;display:grid;place-items:center;height:43px;padding:0;border:0;border-radius:22px;color:#006428;background:transparent;text-align:center;text-decoration:none;font:inherit;font-size:15px;font-weight:400;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mobile-bottom-nav button.active{color:#f9fffb;background:transparent}.mobile-settings-trigger{position:fixed;z-index:41;top:calc(9px + var(--pwa-top-clearance));left:8px;display:grid;width:43px;height:25px;padding:0;place-items:center;border:0;background:transparent;color:#245e2d;font-size:21px;line-height:25px}html[data-standalone-pwa=true] .input-form .tab-group,html[data-standalone-pwa=true] .calendar-nav{position:relative;z-index:31}html[data-standalone-pwa=true] .graphs-page-chrome{z-index:31}.sync-status{display:none}html[data-app-page=input] header{height:0}html[data-app-page=calendar] header{height:0}html[data-app-page=graphs] header{height:0}html[data-app-page=calendar] main{box-sizing:border-box;height:100dvh;padding-bottom:0;overflow:hidden}html[data-app-page=graphs] main{box-sizing:border-box;height:100dvh;padding-bottom:0;overflow:hidden}}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:12px;text-align:center;margin-bottom:20px;box-shadow:0 4px 6px #0000001a}.summary-card p{margin:0;font-size:.9rem;opacity:.8}.summary-card h2{margin:5px 0 0;font-size:2rem}.settings-backdrop{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;background:rgba(16,31,20,calc(.32 * var(--drawer-drag-opacity, 1)))}.settings-backdrop.is-dragging{animation:none;transition:none}.settings-backdrop.is-dragging .settings-drawer{animation:none;transform:translate(var(--drawer-drag-x, 0px));transition:none}.settings-drawer{box-sizing:border-box;width:min(390px,90vw);height:100%;overflow-y:auto;background:#fbfffb;box-shadow:4px 0 20px #0003;touch-action:pan-y}.settings-backdrop.is-opening{animation:settings-backdrop-in .12s ease-out both}.settings-backdrop.is-opening .settings-drawer{animation:settings-drawer-in .14s cubic-bezier(.2,.75,.25,1) both}.settings-backdrop.is-closing{pointer-events:none;animation:settings-backdrop-out .14s ease-in both}.settings-backdrop.is-closing .settings-drawer{animation:settings-drawer-out .14s cubic-bezier(.55,0,1,.45) both}@keyframes settings-backdrop-in{0%{background:#101f1400}}@keyframes settings-backdrop-out{to{background:#101f1400}}@keyframes settings-drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes settings-drawer-out{0%{transform:translate(0)}to{transform:translate(-100%)}}.settings-drawer-top{display:flex;align-items:center;justify-content:space-between;padding:calc(14px + var(--pwa-top-clearance)) 16px 14px;color:#fff;background:#245e2d}.settings-drawer-title{display:flex;align-items:baseline;gap:9px}.settings-version{color:#ffffffb8;font-size:12px;font-variant-numeric:tabular-nums}.settings-sync-status{padding:2px 7px;border-radius:999px;color:#fff;background:#66736a;font-size:11px;line-height:18px}.settings-sync-status.sync-synced{background:#2f7d42}.settings-sync-status.sync-error{background:#b23a3a}.settings-drawer-top button,.nav-menu button{border:0;background:transparent;color:inherit;font-size:18px;cursor:pointer}.mobile-bottom-nav button{transition:color .22s ease,background-color .26s ease,transform .26s ease}@media (prefers-reduced-motion: reduce){.settings-backdrop,.settings-drawer,.settings-backdrop.is-closing,.settings-backdrop.is-closing .settings-drawer,.mobile-bottom-nav:before,.mobile-bottom-nav button{animation-duration:1ms;transition-duration:1ms}}.view-settings{padding:16px;border-top:1px solid #d2e2d5;color:#245e2d}.view-settings h2{margin:0 0 12px;font-size:16px}.view-settings label{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700}.view-settings-number{margin-top:12px}.view-settings-number input{width:62px;padding:6px;border:1px solid #b8d7c0;border-radius:7px;color:#245e2d}.undo-toast{position:fixed;z-index:100;left:50%;bottom:22px;display:flex;align-items:center;gap:18px;max-width:calc(100vw - 32px);padding:11px 14px;border-radius:12px;background:#173c25;color:#fff;box-shadow:0 8px 28px #0000003d;transform:translate(-50%)}.auto-generated-toast{position:fixed;z-index:99;right:18px;bottom:22px;display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;background:#173c25;color:#fff;box-shadow:0 8px 28px #0000003d}.auto-generated-toast button{border:0;background:transparent;color:#fff;font-size:1.2rem}.undo-toast span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.undo-toast button{flex:0 0 auto;padding:5px 8px;border:0;background:transparent;color:#b9f7c8;font-weight:800}@media (max-width: 800px){.undo-toast{bottom:calc(76px + env(safe-area-inset-bottom))}.auto-generated-toast{right:12px;bottom:calc(76px + env(safe-area-inset-bottom))}}
