:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#090909;--app-text:#f8f8f6eb;--app-text-secondary:#f8f8f675;--app-text-inactive:#f8f8f633;--income-accent:#7fa88c;--expense-accent:#b17d7d;--income-gradient:#588b681a;--expense-gradient:#9652521a;--mode-accent:var(--income-accent);--tg-viewport-height:100dvh;--tg-viewport-stable-height:100dvh;--tg-safe-area-top:env(safe-area-inset-top,0px);--tg-safe-area-bottom:env(safe-area-inset-bottom,0px);--tg-safe-area-left:env(safe-area-inset-left,0px);--tg-safe-area-right:env(safe-area-inset-right,0px);font-synthesis:none;background:var(--app-bg);color:var(--app-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}html,body{overscroll-behavior:none;background:var(--app-bg);overflow:hidden}body{margin:0}button,input{font:inherit;letter-spacing:0}button{-webkit-tap-highlight-color:transparent}.app-shell{width:100%;height:var(--tg-viewport-height);background:var(--app-bg);justify-content:center;display:flex;position:relative;overflow:hidden}.app-shell[data-transaction-type=income]{--mode-accent:var(--income-accent);--submit-surface:#7fa88c21}.app-shell[data-transaction-type=expense]{--mode-accent:var(--expense-accent);--submit-surface:#b17d7d21}.swipe-viewport{touch-action:pan-y;cursor:grab;width:min(100%,480px);height:100%;overflow:hidden}.swipe-viewport[data-dragging=true]{cursor:grabbing}.swipe-viewport[data-dragging=true] .app-page{-webkit-user-select:none;user-select:none}.pages-track{will-change:transform;width:100%;height:100%;display:flex}.app-page{width:100%;min-width:0;height:100%;padding:var(--tg-safe-area-top) calc(20px + var(--tg-safe-area-right)) calc(64px + var(--tg-safe-area-bottom)) calc(20px + var(--tg-safe-area-left));background:var(--app-bg);flex:0 0 100%}.main-screen{place-items:center;display:grid}.entry-layout{flex-direction:column;align-items:center;gap:24px;width:min(100%,420px);display:flex;transform:translateY(-1vh)}.transaction-row{isolation:isolate;grid-template-columns:minmax(60px,.72fr) minmax(88px,1.05fr) minmax(0,1.35fr);align-items:center;column-gap:8px;width:100%;min-width:0;min-height:108px;display:grid;position:relative}.transaction-row:before,.transaction-row:after{content:"";z-index:-1;pointer-events:none;opacity:0;transition:opacity .28s;position:absolute;inset:-58px -16px -64px}.transaction-row:before{background:radial-gradient(ellipse at center, var(--income-gradient), transparent 66%)}.transaction-row:after{background:radial-gradient(ellipse at center, var(--expense-gradient), transparent 66%)}.transaction-row[data-transaction-type=income]:before,.transaction-row[data-transaction-type=expense]:after{opacity:1}.type-selector{touch-action:pan-x;cursor:grab;justify-content:center;width:100%;min-width:0;height:108px;display:flex;overflow:hidden}.type-selector[data-dragging=true]{cursor:grabbing}.type-selector-track{will-change:transform;flex-direction:column;align-items:stretch;width:100%;height:72px;display:flex}.type-selector button{width:100%;height:36px;color:var(--app-text-inactive);cursor:pointer;opacity:.7;background:0 0;border:0;outline:0;flex:0 0 36px;padding:0;font-size:15px;font-weight:500;line-height:1;transition:color .28s,opacity .28s,transform .28s;transform:scale(.94)}.type-selector button[data-active=true]{color:var(--mode-accent);opacity:1;transform:scale(1)}.type-selector button:focus-visible{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.amount-field{place-items:center;width:100%;min-width:0;height:88px;display:grid;position:relative;overflow:hidden}.amount-field:after,.description-field:after{content:"";background:var(--mode-accent);opacity:0;width:0;height:1px;transition:width .22s,opacity .22s,background-color .28s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.amount-field:focus-within:after{opacity:.42;width:22px}.amount-input{width:100%;min-width:0;height:100%;color:var(--app-text);caret-color:var(--mode-accent);text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:0;font-weight:500;line-height:1;transition:font-size .22s,caret-color .28s,color .18s}.amount-input::placeholder{color:var(--app-text-inactive);opacity:1}.amount-input:focus{color:#fffffdfa}.description-field{width:100%;min-width:0;height:60px;position:relative;overflow:hidden}.description-field:after{bottom:2px;left:0;transform:none}.description-field:focus-within:after{opacity:.35;width:30px}.description-field input{z-index:1;width:100%;min-width:0;height:100%;color:var(--app-text-secondary);caret-color:var(--mode-accent);text-align:left;background:0 0;border:0;outline:0;padding:0 0 4px;font-size:14px;line-height:1.3;transition:color .22s,caret-color .28s;position:relative}.description-field input:focus{color:var(--app-text)}.description-field input::placeholder{color:#0000;opacity:0}.description-placeholder{color:var(--app-text-secondary);white-space:nowrap;pointer-events:none;opacity:0;justify-content:flex-start;align-items:center;font-size:14px;line-height:1.3;transition:opacity .22s,transform .22s,color .28s;display:flex;position:absolute;inset:0 0 4px;overflow:hidden;transform:translateY(3px)}.description-placeholder[data-active=true]{opacity:1;transform:translateY(0)}.description-field[data-has-value=true] .description-placeholder{opacity:0}.submit-transaction-button{width:48px;height:48px;color:var(--mode-accent);background:var(--submit-surface);cursor:pointer;border:0;border-radius:50%;outline:0;place-items:center;padding:0;transition:transform .12s,opacity .22s,color .28s,background-color .28s;display:grid}.submit-transaction-button:active:not(:disabled){transform:scale(.94)}.submit-transaction-button:focus-visible{outline:1px solid color-mix(in srgb, var(--mode-accent) 64%, transparent);outline-offset:4px}.submit-transaction-button:disabled{color:#f8f8f640;cursor:default;opacity:.5;background:#f8f8f60a}.submit-transaction-button[data-status=loading]{opacity:.62}.submit-transaction-button[data-status=success] .submit-transaction-icon{animation:.36s ease-out submit-confirm}.submit-transaction-button[data-status=error]{color:var(--expense-accent);background:#b17d7d1f}.submit-transaction-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;overflow:visible}@keyframes submit-confirm{0%{opacity:1;transform:translateY(0)}48%{opacity:.38;transform:translateY(-4px)}49%{opacity:.38;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.placeholder-screen{display:block}.page-indicator{z-index:2;left:50%;bottom:calc(4px + var(--tg-safe-area-bottom));justify-content:center;align-items:center;display:flex;position:absolute;transform:translate(-50%)}.page-indicator button{cursor:pointer;background:0 0;border:0;place-items:center;width:42px;height:42px;padding:0;display:grid}.page-indicator span{background:var(--app-text);opacity:.2;border-radius:999px;width:5px;height:5px;transition:width .24s,opacity .24s}.page-indicator button[data-active=true] span{opacity:.76;width:14px}.page-indicator button:focus-visible{outline:0}.page-indicator button:focus-visible span{outline-offset:4px;outline:1px solid #f8f8f6b8}@media (height<=520px){.app-page{padding-bottom:calc(54px + var(--tg-safe-area-bottom))}.entry-layout{gap:14px;transform:none}.amount-field{height:72px}.transaction-row{min-height:108px}}@media (width<=340px){.app-page{padding-right:calc(16px + var(--tg-safe-area-right));padding-left:calc(16px + var(--tg-safe-area-left))}.transaction-row{grid-template-columns:minmax(60px,.72fr) minmax(88px,1.05fr) minmax(0,1.35fr);column-gap:7px}}@media (prefers-reduced-motion:reduce){.transaction-row:before,.transaction-row:after,.type-selector button,.amount-field:after,.description-field:after,.amount-input,.description-field input,.description-placeholder,.submit-transaction-button,.page-indicator span{transition-duration:80ms}.submit-transaction-button[data-status=success] .submit-transaction-icon{animation:none}}
