:root{--accent: #13c700;--accent-rgb: 19, 199, 0;--accent-grad-end: #009437;--safe-top: max(env(safe-area-inset-top, 0px), var(--tg-safe-top, 0px));--safe-bottom: max(env(safe-area-inset-bottom, 0px), var(--tg-safe-bottom, 0px));--safe-left: max(env(safe-area-inset-left, 0px), var(--tg-safe-left, 0px));--safe-right: max(env(safe-area-inset-right, 0px), var(--tg-safe-right, 0px));--tab-selected-fg: #FFFFFF;--tab-selected-bg: var(--accent);--dur-fast: .15s;--dur-base: .2s;--dur-slow: .32s;--dur-spin: .8s;--ease-standard: cubic-bezier(.25, .46, .45, .94);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px}[data-theme=light]{--bg-primary: #F2F2F7;--bg-card: #FFFFFF;--bg-secondary: #E5E5EA;--bg-input: #F2F2F7;--text-primary: #000000;--text-secondary: #3C3C43;--text-tertiary: #8E8E93;--accent-green: #34C759;--accent-red: #FF3B30;--accent-red-deep: #CC0000;--accent-orange: #FF9500;--accent-yellow: #FFCC00;--accent-purple: #AF52DE;--separator: rgba(60, 60, 67, .12);--shadow: none;--card-shadow: none;--nav-bg: rgba(242, 242, 247, .96);--overlay: rgba(0, 0, 0, .4);--safe-top-bg: rgba(255, 255, 255, .52);--safe-top-bg-fallback: rgba(255, 255, 255, .9);--safe-bottom-bg: var(--safe-top-bg);--safe-bottom-bg-fallback: var(--safe-top-bg-fallback);--widget-bg: #FFFFFF;--widget-shadow: none;--icon-bg: #E5E5EA;--card-hairline: 1px solid var(--separator)}[data-theme=dark]{--bg-primary: #000000;--bg-card: #1C1C1E;--bg-secondary: #2C2C2E;--bg-input: #2C2C2E;--text-primary: #FFFFFF;--text-secondary: #EBEBF5;--text-tertiary: #8E8E93;--accent-green: #30D158;--accent-red: #FF453A;--accent-red-deep: #D70015;--accent-orange: #FF9F0A;--accent-yellow: #FFD60A;--accent-purple: #BF5AF2;--separator: rgba(84, 84, 88, .65);--shadow: none;--card-shadow: none;--nav-bg: rgba(28, 28, 30, .96);--overlay: rgba(0, 0, 0, .6);--safe-top-bg: rgba(20, 20, 20, .52);--safe-top-bg-fallback: rgba(20, 20, 20, .9);--safe-bottom-bg: var(--safe-top-bg);--safe-bottom-bg-fallback: var(--safe-top-bg-fallback);--widget-bg: #2C2C2E;--widget-shadow: none;--icon-bg: #3A3A3C;--card-hairline: 1px solid transparent}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{height:var(--tg-vh, 100%);overflow:hidden}body{height:var(--tg-vh, 100%);font-family:-apple-system,SF Pro Display,SF Pro Text,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{height:100%;display:flex;flex-direction:column}bdi{font-variant-numeric:tabular-nums}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select,[contenteditable=true],[contenteditable=""]{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}body[data-admin-open]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}a{color:var(--accent);text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;outline:none;background:none}input,textarea,select{font-family:inherit;outline:none;border:none}*,*:before,*:after{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar,::-webkit-scrollbar-track,::-webkit-scrollbar-thumb,::-webkit-scrollbar-corner{width:0!important;height:0!important;display:none!important;background:transparent!important}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin var(--dur-spin) linear infinite}@keyframes slideInDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.screen{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:calc(84px + max(var(--safe-bottom),14px));background-color:transparent;-webkit-overflow-scrolling:touch;min-height:0;height:100%;animation:screenFadeIn .28s cubic-bezier(.25,.46,.45,.94) both}@keyframes screenFadeIn{0%{opacity:0}to{opacity:1}}.safe-area-top-frosted{position:fixed;top:0;left:0;right:0;height:calc(var(--safe-top, 0px) + 96px);z-index:1000;pointer-events:none;background:linear-gradient(to bottom,var(--safe-top-bg-fallback) 0px,var(--safe-top-bg-fallback) 6px,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0px,black 3px,rgba(0,0,0,.42) 20%,rgba(0,0,0,.18) 44%,rgba(0,0,0,.07) 70%,rgba(0,0,0,.02) 90%,transparent 100%);mask-image:linear-gradient(to bottom,black 0px,black 3px,rgba(0,0,0,.42) 20%,rgba(0,0,0,.18) 44%,rgba(0,0,0,.07) 70%,rgba(0,0,0,.02) 90%,transparent 100%);backdrop-filter:blur(13px) saturate(150%);-webkit-backdrop-filter:blur(13px) saturate(150%)}@supports (backdrop-filter: blur(20px)) or (-webkit-backdrop-filter: blur(20px)){.safe-area-top-frosted{background:linear-gradient(to bottom,var(--safe-top-bg) 0px,var(--safe-top-bg) 6px,transparent 100%)}}.safe-area-bottom-frosted{position:fixed;bottom:0;left:0;right:0;height:calc(var(--safe-bottom, 0px) + 96px);z-index:95;pointer-events:none;background:linear-gradient(to top,var(--safe-bottom-bg-fallback) 0%,var(--safe-bottom-bg-fallback) 18%,transparent 100%);-webkit-mask-image:linear-gradient(to top,black 0%,black 12%,rgba(0,0,0,.62) 34%,rgba(0,0,0,.34) 56%,rgba(0,0,0,.16) 74%,rgba(0,0,0,.06) 88%,rgba(0,0,0,.02) 94%,transparent 100%);mask-image:linear-gradient(to top,black 0%,black 12%,rgba(0,0,0,.62) 34%,rgba(0,0,0,.34) 56%,rgba(0,0,0,.16) 74%,rgba(0,0,0,.06) 88%,rgba(0,0,0,.02) 94%,transparent 100%);backdrop-filter:blur(13px) saturate(150%);-webkit-backdrop-filter:blur(13px) saturate(150%)}@supports (backdrop-filter: blur(20px)) or (-webkit-backdrop-filter: blur(20px)){.safe-area-bottom-frosted{background:linear-gradient(to top,var(--safe-bottom-bg) 0%,var(--safe-bottom-bg) 18%,transparent 100%)}}.dashboard-plus-btn{transition:transform .12s ease,filter .12s ease;-webkit-tap-highlight-color:transparent}.dashboard-plus-btn:active{transform:scale(.93);filter:brightness(1.12)}.app-fade-in{animation:appFadeIn .4s ease both}@keyframes appFadeIn{0%{opacity:0}to{opacity:1}}.app-fade-out{animation:appFadeOut .22s ease both}@keyframes appFadeOut{0%{opacity:1}to{opacity:0}}@keyframes adminTabSlideFromRight{0%{opacity:0;transform:translate(20%)}to{opacity:1;transform:translate(0)}}@keyframes adminTabSlideFromLeft{0%{opacity:0;transform:translate(-20%)}to{opacity:1;transform:translate(0)}}.admin-tab-slide-from-right{animation:adminTabSlideFromRight .32s cubic-bezier(.32,.72,0,1) both;will-change:transform,opacity}.admin-tab-slide-from-left{animation:adminTabSlideFromLeft .32s cubic-bezier(.32,.72,0,1) both;will-change:transform,opacity}@keyframes screenSlideFromRight{0%{opacity:0;transform:translate(40%)}to{opacity:1;transform:translate(0)}}@keyframes screenSlideFromLeft{0%{opacity:0;transform:translate(-40%)}to{opacity:1;transform:translate(0)}}.screen-slide-from-right{animation:screenSlideFromRight .32s cubic-bezier(.32,.72,0,1) both;will-change:transform,opacity}.screen-slide-from-left{animation:screenSlideFromLeft .32s cubic-bezier(.32,.72,0,1) both;will-change:transform,opacity}@keyframes screenSlideToRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40%)}}@keyframes screenSlideToLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40%)}}.screen-slide-to-right{animation:screenSlideToRight var(--dur-slow) var(--ease-standard) forwards;will-change:transform,opacity}.screen-slide-to-left{animation:screenSlideToLeft var(--dur-slow) var(--ease-standard) forwards;will-change:transform,opacity}.screen-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:none;flex-direction:column;min-height:0}.screen-layer-active{display:flex}@keyframes calendarSlideFromRight{0%{opacity:0;transform:translate(20%)}to{opacity:1;transform:translate(0)}}@keyframes calendarSlideFromLeft{0%{opacity:0;transform:translate(-20%)}to{opacity:1;transform:translate(0)}}.cal-slide-from-right{animation:calendarSlideFromRight .28s cubic-bezier(.32,.72,0,1) both}.cal-slide-from-left{animation:calendarSlideFromLeft .28s cubic-bezier(.32,.72,0,1) both}.card{background:var(--bg-card);border-radius:var(--radius-lg);padding:16px;transition:background-color .3s ease}.btn-primary{display:flex;align-items:center;justify-content:center;height:48px;border-radius:var(--radius-md);background:var(--accent);color:#fff;font-size:17px;font-weight:600;width:100%;cursor:pointer;transition:opacity .15s ease,transform .15s ease;border:none;outline:none;font-family:inherit}.btn-primary:active{opacity:.8;transform:scale(.98)}.btn-secondary{display:flex;align-items:center;justify-content:center;height:48px;border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-size:17px;font-weight:600;width:100%;cursor:pointer;transition:opacity .15s ease,transform .15s ease;border:none;outline:none;font-family:inherit}.btn-secondary:active{opacity:.8;transform:scale(.98)}.btn-destructive{background:var(--accent-red)!important;color:#fff!important}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-input) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title{font-size:17px;font-weight:600;color:var(--text-primary)}.view-all{font-size:14px;color:var(--accent);font-weight:500;cursor:pointer;background:none;border:none;outline:none;font-family:inherit}.separator{height:1px;background:var(--separator);margin:0 12px;opacity:.6}.form-action-block{position:relative;padding-top:18px}.form-action-block:before{content:"";position:absolute;top:0;left:4px;right:4px;height:1px;background:linear-gradient(to right,transparent,var(--separator) 20%,var(--separator) 80%,transparent)}.tap-feedback{transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.tap-feedback:active{opacity:.7;transform:scale(.97)}button{transition:opacity var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}button:not(:disabled):not([data-no-press]):active{opacity:.85;transform:scale(.97)}[role=button]:not([data-no-press]):active{opacity:.8}.spring-transition{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.ease-transition{transition:all .25s cubic-bezier(.25,.46,.45,.94)}.filter-tabs{display:flex;gap:8px;overflow-x:auto;padding:0;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{flex-shrink:0;height:34px;padding:0 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500;border:none;outline:none;cursor:pointer;font-family:inherit;transition:all .2s ease}.filter-tab.active{background:var(--accent);color:#fff}.filter-tab.inactive{background:var(--bg-secondary);color:var(--text-secondary)}.list-item{display:flex;align-items:center;gap:12px;padding:12px 0;transition:opacity .15s ease}.list-item:active{opacity:.7}.list-item-icon{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.list-item-content{flex:1;min-width:0}.list-item-title{font-size:15px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.list-item-subtitle{font-size:13px;color:var(--text-tertiary);margin-top:2px}.list-item-amount{font-size:15px;font-weight:600;flex-shrink:0;white-space:nowrap}.amount-positive{color:var(--accent-green)}.amount-negative{color:var(--accent-red)}.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:600}.input-field{width:100%;height:48px;padding:0 16px;background:var(--bg-input);border-radius:var(--radius-md);font-size:16px;color:var(--text-primary);border:1.5px solid transparent;transition:border-color .2s ease,background-color .3s ease;font-family:inherit}.input-field:focus{border-color:var(--accent)}.input-field::placeholder{color:var(--text-tertiary)}.stat-block{flex:1;display:flex;flex-direction:column;gap:4px;justify-content:center}.stat-label{font-size:12px;color:var(--text-tertiary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.stat-value.green{color:var(--accent-green)}.stat-value.red{color:var(--accent-red)}.stat-value.accent{color:var(--accent)}.stats-card{min-height:76px;display:flex;align-items:center}.stats-card>div{width:100%}@media (max-width: 400px){.stat-block .stat-value{font-size:16px}.stat-label{font-size:11px}.filter-tab{padding:0 10px;font-size:13px}.card{padding:12px}.list-item-title{font-size:14px}}@media (max-width: 340px){.stat-block .stat-value{font-size:14px}}.accent-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:18px;background:transparent;border-radius:var(--radius-sm);outline:none;cursor:pointer;padding:0;margin:0;touch-action:manipulation}.accent-slider::-webkit-slider-runnable-track{height:18px;border-radius:var(--radius-sm);background:inherit;border:none}.accent-slider::-moz-range-track{height:18px;border-radius:var(--radius-sm);background:inherit;border:none}.accent-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,.18);cursor:pointer;margin-top:-3px}.accent-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid rgba(0,0,0,.18);cursor:pointer}.cv-row{content-visibility:auto;contain-intrinsic-size:auto 57px}.cv-daygroup{content-visibility:auto;contain-intrinsic-size:auto 240px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spin{animation-duration:var(--dur-spin)!important;animation-iteration-count:infinite!important}}
