:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f2f2f7;--bg-elevated:#fff;--card:#fff;--card-2:#f2f2f7;--label:#000;--label-2:#3c3c439e;--label-3:#3c3c4352;--sep:#3c3c432e;--fill:#7878801f;--fill-2:#78788033;--brand:#0d42ce;--tint:#0d42ce;--tint-soft:#0d42ce1a;--green:#34c759;--green-soft:#34c75924;--red:#ff383c;--red-soft:#ff383c1f;--orange:#ff8d28;--orange-soft:#ff8d2826;--on-tint:#fff;--glass:#fff9;--glass-strong:#fafafcd1;--glass-edge:#ffffffbf;--glass-inner:inset 0 .5px 0 #ffffffe6, inset 0 -.5px 0 #ffffff59;--glass-shadow:0 12px 36px #0000001f, 0 1px 3px #0000000f;--segment-thumb:#fff;--ring:#00000029;--tab-selected:#0001;--tab-selected-edge:none;--radius:26px;--radius-sm:14px;--ease:cubic-bezier(.32, .72, 0, 1);--spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 15.5%, .938 20.7%, 1.017 24.3%, 1.061 28%, 1.072 31.3%, 1.061 35.2%, 1.017 43.9%, .996 50.8%, .991 57.3%, 1.001 76.8%, 1);--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-rounded:ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--tabbar-bottom:max(calc(var(--safe-bottom) - 12px), 14px)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#000;--bg-elevated:#1c1c1e;--card:#1c1c1e;--card-2:#2c2c2e;--label:#fff;--label-2:#ebebf59e;--label-3:#ebebf54d;--sep:#5454588c;--fill:#7878803d;--fill-2:#7878805c;--brand:#6b8fff;--tint:#4d7cff;--tint-soft:#4d7cff38;--green:#30d158;--green-soft:#30d15833;--red:#ff4245;--red-soft:#ff424533;--orange:#ff9230;--orange-soft:#ff923033;--glass:#28282c8c;--glass-strong:#1e1e20d1;--glass-edge:#ffffff24;--glass-inner:inset 0 .5px 0 #ffffff38, inset 0 -.5px 0 #ffffff0f;--glass-shadow:0 12px 36px #00000080, 0 1px 3px #0000004d;--segment-thumb:#636366;--ring:#ffffff3d;--tab-selected:#ffffff29;--tab-selected-edge:inset 0 .5px 0 #ffffff40}}*,:before,:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--label);font-family:var(--font);letter-spacing:-.2px;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font-size:1rem;line-height:1.3}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2.5px solid var(--tint);outline-offset:2px}.num,.money{font-variant-numeric:tabular-nums}.rounded{font-family:var(--font-rounded)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.glass{background:var(--glass);-webkit-backdrop-filter:blur(22px)saturate(1.9);backdrop-filter:blur(22px)saturate(1.9);border:.5px solid var(--glass-edge);box-shadow:var(--glass-shadow), var(--glass-inner)}.shell{min-height:100dvh}.main{max-width:680px;padding:0 16px calc(var(--tabbar-bottom) + 64px + 40px);margin:0 auto}.demo-banner{z-index:60;padding:calc(var(--safe-top) + 6px) 16px 6px;text-align:center;color:var(--orange);background:var(--glass-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);font-size:.7647rem;position:sticky;top:0}.demo-banner+.shell .navbar{top:32px}.navbar{z-index:40;padding:calc(var(--safe-top) + 6px) 16px 8px;min-height:calc(var(--safe-top) + 50px);grid-template-columns:1fr auto 1fr;align-items:center;margin:0 -16px;transition:background .25s,box-shadow .25s;display:grid;position:sticky;top:0}.navbar .nav-title{opacity:0;transition:opacity .2s, transform .3s var(--ease);white-space:nowrap;font-size:1rem;font-weight:600;transform:translateY(6px)}.navbar.scrolled{background:var(--glass-strong);-webkit-backdrop-filter:blur(22px)saturate(1.8);backdrop-filter:blur(22px)saturate(1.8);box-shadow:0 .5px 0 var(--sep)}.navbar.scrolled .nav-title,.navbar.compact .nav-title{opacity:1;transform:none}.navbar .nav-left{justify-self:start}.navbar .nav-right{justify-self:end;gap:8px;display:flex}.large-title{letter-spacing:.2px;margin:2px 4px 0;font-size:2rem;font-weight:700;line-height:1.15}.subtitle{color:var(--label-2);margin:2px 4px 0;font-size:.8824rem}.section-title{letter-spacing:.1px;justify-content:space-between;align-items:baseline;margin:26px 4px 8px;font-size:1.1765rem;font-weight:700;display:flex}.section-title small{color:var(--label-2);font-size:.8824rem;font-weight:400}.footnote{color:var(--label-2);margin:8px 16px 0;font-size:.7647rem;line-height:1.4}.card{background:var(--card);border-radius:var(--radius);padding:18px}.list{background:var(--card);border-radius:var(--radius);overflow:hidden}.row{text-align:left;align-items:center;gap:12px;width:100%;min-height:54px;padding:10px 16px;display:flex;position:relative}.row+.row:before{content:"";top:0;right:0;left:var(--sep-inset,16px);background:var(--sep);height:.5px;position:absolute}button.row{transition:background .15s}button.row:active{background:var(--fill)}.row-main{flex:1;min-width:0}.row-title{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;overflow:hidden}.row-sub{color:var(--label-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.7647rem;overflow:hidden}.row-end{text-align:right;flex-shrink:0}.row-value{color:var(--label-2)}.row-chevron{color:var(--label-3);flex-shrink:0}.row-icon{color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.row.deleted .row-title,.row.deleted .row-end .money{color:var(--label-3);text-decoration:line-through}.empty{text-align:center;color:var(--label-2);padding:40px 24px}.empty-icon{background:var(--fill);width:64px;height:64px;color:var(--label-2);border-radius:50%;place-items:center;margin:0 auto 12px;display:grid}.empty h3{color:var(--label);margin:0 0 6px;font-size:1.1765rem}.empty p{margin:0 0 18px;font-size:.8824rem}.btn{height:52px;transition:transform .4s var(--spring), background .2s, opacity .2s;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:1rem;font-weight:600;display:inline-flex}.btn:active:not(:disabled){transform:scale(.96)}.btn-primary{background:var(--tint);color:var(--on-tint)}.btn-primary:disabled{opacity:1;background:var(--fill-2);color:var(--label-3)}.btn-secondary{background:var(--fill);color:var(--tint)}.btn-danger{background:var(--red-soft);color:var(--red)}.btn-plain{height:auto;color:var(--tint);padding:6px 4px;font-weight:400}.btn-block{width:100%}.btn-sm{height:36px;padding:0 14px;font-size:.8824rem}.icon-btn{width:44px;height:44px;color:var(--label);transition:transform .4s var(--spring);border-radius:50%;place-items:center;display:grid}.icon-btn:active{transform:scale(.9)}.icon-btn.glass{color:var(--label)}.icon-btn.tint{color:var(--tint)}.segmented{background:var(--fill);border-radius:999px;grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:grid;position:relative}.segmented-thumb{top:3px;bottom:3px;left:calc(3px + (100% - 6px) / var(--n) * var(--i));width:calc((100% - 6px) / var(--n));background:var(--segment-thumb);transition:left .5s var(--spring);border-radius:999px;position:absolute;box-shadow:0 3px 8px #0000001f,0 .5px 1px #00000014}.segmented button{z-index:1;white-space:nowrap;height:36px;transition:transform .4s var(--spring);border-radius:999px;font-size:.8824rem;font-weight:500;position:relative}.segmented.lg button{height:44px;font-size:1rem}.segmented button[aria-pressed=true]{font-weight:600}.segmented button:active{transform:scale(.95)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips.scroll{scrollbar-width:none;flex-wrap:nowrap;margin:0 -16px;padding:0 16px;overflow-x:auto}.chips.scroll::-webkit-scrollbar{display:none}.chip{background:var(--fill);white-space:nowrap;height:34px;transition:transform .4s var(--spring), background .2s, color .2s;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:.8824rem;font-weight:500;display:inline-flex}.chip:active{transform:scale(.94)}.chip[aria-pressed=true]{background:var(--tint);color:var(--on-tint)}select.chip{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:0;padding-right:30px}select.chip.active{background-color:var(--tint-soft);color:var(--tint)}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;height:22px;padding:0 8px;font-size:.7059rem;font-weight:600;display:inline-flex}.badge.cash{background:var(--green-soft);color:var(--green)}.badge.kaspi{background:var(--red-soft);color:var(--red)}.badge.debt{background:var(--orange-soft);color:var(--orange)}.badge.neutral{background:var(--fill);color:var(--label-2)}.badge.tint{background:var(--tint-soft);color:var(--tint)}.dot{width:12px;height:12px;box-shadow:inset 0 0 0 1px var(--ring);border-radius:50%;flex-shrink:0}.cup{color:#fff;width:40px;height:40px;font-size:.6471rem;font-weight:700;font-family:var(--font-rounded);box-shadow:inset 0 0 0 1px var(--ring), inset 0 1px 0 #ffffff38;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.tabbar-wrap{left:0;right:0;bottom:var(--tabbar-bottom);z-index:50;pointer-events:none;justify-content:center;gap:10px;padding:0 16px;display:flex;position:fixed}.tabbar{pointer-events:auto;border-radius:999px;flex:1;max-width:420px;height:64px;padding:4px;display:flex;position:relative}.tab-indicator{top:4px;bottom:4px;left:calc(4px + (100% - 8px) / var(--n) * var(--i));width:calc((100% - 8px) / var(--n));background:var(--tab-selected);box-shadow:var(--tab-selected-edge);transition:left .55s var(--spring);border-radius:999px;position:absolute}.tab{z-index:1;color:var(--label);transition:color .2s, transform .4s var(--spring);border-radius:999px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;font-size:.6176rem;font-weight:600;display:flex;position:relative}.tab:active{transform:scale(.92)}.tab[aria-current=page]{color:var(--tint)}.tab .tab-badge{background:var(--red);color:#fff;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:.6471rem;line-height:16px;position:absolute;top:6px;right:calc(50% - 20px)}.fab{pointer-events:auto;width:64px;height:64px;color:var(--tint);transition:transform .45s var(--spring);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.fab:active{transform:scale(.9)}.fab.primary{background:var(--tint);color:#fff;border-color:#ffffff40}.sidebar{display:none}@media (width>=900px){.shell{grid-template-columns:264px minmax(0,1fr);display:grid}.sidebar{flex-direction:column;gap:4px;height:100dvh;padding:20px 14px;display:flex;position:sticky;top:0}.sidebar-inner{border-radius:28px;flex-direction:column;gap:4px;height:100%;padding:18px 12px;display:flex}.sidebar-brand{align-items:center;gap:10px;padding:4px 10px 18px;font-size:1rem;font-weight:700;display:flex}.sidebar-brand span{color:var(--label-2);background:var(--fill);border-radius:999px;padding:3px 8px;font-size:.7647rem;font-weight:600}.side-item{border-radius:12px;align-items:center;gap:12px;height:44px;padding:0 12px;font-size:.9412rem;font-weight:500;transition:background .15s;display:flex}.side-item:hover{background:var(--fill)}.side-item[aria-current=page]{background:var(--tint-soft);color:var(--tint);font-weight:600}.side-item .tab-badge{background:var(--red);color:#fff;text-align:center;border-radius:999px;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:.7059rem;line-height:20px}.sidebar .btn{margin-top:12px}.sidebar-foot{color:var(--label-2);margin-top:auto;padding:12px;font-size:.7647rem}.tabbar-wrap{display:none}.main{max-width:1080px;padding:0 32px 48px}.navbar{min-height:64px;margin:0 -32px;padding:18px 32px 8px}.demo-banner+.shell .navbar{top:32px}.wide-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}}.sheet-root{z-index:100;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet-backdrop{animation:fade-in .35s var(--ease) both;background:#00000047;position:absolute;inset:0}.sheet{width:calc(100% - 16px);max-width:560px;margin-bottom:max(8px, calc(var(--safe-bottom) - 26px));max-height:calc(100dvh - var(--safe-top) - 20px);overscroll-behavior:contain;background:var(--bg-elevated);animation:sheet-in .55s var(--ease) backwards;will-change:transform;border-radius:38px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000040}.sheet.closing{animation:sheet-out .32s var(--ease) forwards}.sheet-root.closing .sheet-backdrop{animation:fade-out .32s var(--ease) both}.sheet-grabber{z-index:2;touch-action:none;cursor:grab;place-items:center;height:22px;display:grid;position:sticky;top:0}.sheet-grabber:after{content:"";background:var(--fill-2);border-radius:3px;width:36px;height:5px}.sheet-header{touch-action:none;grid-template-columns:44px 1fr 44px;align-items:center;padding:0 14px 6px;display:grid}.sheet-header h2{text-align:center;margin:0;font-size:1rem;font-weight:600}.sheet-body{padding:4px 20px 22px}@media (width>=900px){.sheet-root{align-items:center}.sheet{width:480px;margin:0;animation-name:modal-in}.sheet.closing{animation-name:modal-out}.sheet-grabber{height:14px}.sheet-grabber:after{display:none}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sheet-in{0%{transform:translateY(105%)}}@keyframes sheet-out{to{transform:translateY(105%)}}@keyframes modal-in{0%{opacity:0;transform:scale(.94)translateY(12px)}}@keyframes modal-out{to{opacity:0;transform:scale(.96)}}.field-label{color:var(--label-2);justify-content:space-between;align-items:baseline;margin:14px 4px 7px;font-size:.7647rem;font-weight:600;display:flex}.field-label span:last-child{color:var(--label);font-weight:500}.swatches{grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:4px 2px;display:grid}.swatch{color:var(--label-2);flex-direction:column;align-items:center;gap:5px;padding:4px 0;font-size:.6471rem;display:flex}.swatch-circle{width:42px;height:42px;box-shadow:inset 0 0 0 1px var(--ring), inset 0 1.5px 0 #ffffff47;transition:transform .45s var(--spring), box-shadow .25s;border-radius:50%;place-items:center;display:grid;position:relative}.swatch:active .swatch-circle{transform:scale(.88)}.swatch[aria-pressed=true] .swatch-circle{transform:scale(1.08)}.swatch[aria-pressed=true]{color:var(--label);font-weight:600}.swatch-check{color:#fff;filter:drop-shadow(0 1px 1px #00000059);animation:pop .45s var(--spring) both}.swatch-check.dark{color:#1c1c1e;filter:none}@keyframes pop{0%{opacity:0;transform:scale(.3)}}.stepper{justify-content:space-between;align-items:center;gap:12px;display:flex}.stepper-btn{background:var(--fill);width:54px;height:54px;color:var(--label);transition:transform .4s var(--spring), background .15s;border-radius:50%;place-items:center;display:grid}.stepper-btn:active:not(:disabled){background:var(--fill-2);transform:scale(.88)}.stepper-value{text-align:center;min-width:0;font-family:var(--font-rounded);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;flex:1;width:100%;padding:0;font-size:2.9412rem;font-weight:700;line-height:1}.stepper-value.bump{animation:bump .4s var(--spring)}@keyframes bump{0%{transform:scale(1.12)}}.total-box{background:var(--card-2);text-align:center;border-radius:22px;margin-top:14px;padding:12px 14px}.total-amount{font-family:var(--font-rounded);letter-spacing:-.5px;font-size:2.1176rem;font-weight:700;line-height:1.1}.total-input{text-align:center;width:100%;font-family:var(--font-rounded);color:var(--tint);background:0 0;border:0;outline:none;padding:0;font-size:2.1176rem;font-weight:700}.total-hint{color:var(--label-2);margin-top:4px;font-size:.7647rem}.total-hint button{color:var(--tint);font-size:.7647rem;font-weight:500}.time-row{color:var(--label-2);justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:.8824rem;display:flex}.time-row input{background:var(--fill);border:0;border-radius:10px;padding:6px 10px;font-size:.9412rem}.form-error{color:var(--red);text-align:center;margin:12px 4px 0;font-size:.8235rem}.save-bar{z-index:5;padding:12px 20px calc(16px + max(0px, calc(var(--safe-bottom) - 26px)));background:linear-gradient(to bottom, transparent, var(--bg-elevated) 30%);margin:18px -20px -22px;position:sticky;bottom:0}.hero{background:var(--card);border-radius:30px;margin-top:14px;padding:20px;position:relative;overflow:hidden}.hero-label{color:var(--label-2);font-size:.8824rem;font-weight:500}.hero-amount{font-family:var(--font-rounded);letter-spacing:-.8px;margin-top:4px;font-size:2.5882rem;font-weight:700;line-height:1.1}.hero-meta{color:var(--label-2);margin-top:6px;font-size:.8824rem}.hero-split{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.hero-split>div{background:var(--card-2);border-radius:16px;padding:10px 12px}.hero-split .k{color:var(--label-2);font-size:.7059rem;font-weight:500}.hero-split .v{white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.9412rem;font-weight:600;overflow:hidden}.sync-line{color:var(--label-2);align-items:center;gap:8px;margin:12px 4px 0;font-size:.7647rem;display:flex}.sync-line.warn{color:var(--orange)}.sync-line.error{color:var(--red)}.sync-line button{color:var(--tint);margin-left:auto;font-size:.7647rem;font-weight:600}.period-nav{justify-content:space-between;align-items:center;margin:14px 0 4px;display:flex}.period-nav .label{font-size:1rem;font-weight:600}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.kpi{background:var(--card);border-radius:22px;padding:14px 16px}.kpi.wide{grid-column:1/-1}.kpi .k{color:var(--label-2);font-size:.7647rem;font-weight:500}.kpi .v{font-family:var(--font-rounded);letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:1.5294rem;font-weight:700;overflow:hidden}.kpi.wide .v{font-size:2rem}.delta{margin-top:2px;font-size:.7647rem;font-weight:600}.delta.up{color:var(--green)}.delta.down{color:var(--red)}.delta.flat{color:var(--label-2)}@media (width>=900px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi.wide{grid-column:span 2}}.chart{width:100%;display:block;overflow:visible}.chart text{fill:var(--label-2);font-size:.6471rem;font-family:var(--font)}.chart .bar{fill:var(--tint);transition:opacity .2s}.chart .bar.dim{opacity:.35}.chart .grid{stroke:var(--sep);stroke-width:.5px}.chart-tip{color:var(--label-2);min-height:18px;margin-bottom:6px;font-size:.7647rem}.chart-tip b{color:var(--label);font-weight:600}.bars{flex-direction:column;gap:12px;display:flex}.hbar-top{justify-content:space-between;align-items:center;gap:8px;font-size:.8824rem;display:flex}.hbar-top .name{align-items:center;gap:8px;min-width:0;display:flex}.hbar-top .name span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hbar-top .val{white-space:nowrap;font-weight:600}.hbar-track{background:var(--fill);border-radius:4px;height:8px;margin-top:6px;overflow:hidden}.hbar-fill{background:var(--tint);height:100%;box-shadow:inset 0 0 0 1px var(--ring);transform-origin:0;animation:grow .7s var(--ease) both;border-radius:4px}@keyframes grow{0%{transform:scaleX(0)}}.hbar-sub{color:var(--label-2);margin-top:3px;font-size:.7059rem}.export-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.toast-wrap{left:0;right:0;bottom:calc(var(--tabbar-bottom) + 64px + 12px);z-index:200;pointer-events:none;justify-content:center;padding:0 16px;display:flex;position:fixed}@media (width>=900px){.toast-wrap{padding-left:280px;bottom:28px}}.toast{pointer-events:auto;width:100%;max-width:440px;min-height:54px;animation:toast-in .55s var(--spring) both;border-radius:999px;align-items:center;gap:10px;padding:8px 8px 8px 16px;font-size:.8824rem;display:flex;position:relative;overflow:hidden}.toast.leaving{animation:toast-out .25s var(--ease) both}.toast-text{flex:1;min-width:0;line-height:1.25}.toast-icon.success{color:var(--green)}.toast-icon.error{color:var(--red)}.toast-icon.info{color:var(--tint)}.toast-action{background:var(--tint);color:#fff;border-radius:999px;flex-shrink:0;height:38px;padding:0 16px;font-size:.8824rem;font-weight:600}.toast-progress{background:var(--tint);opacity:.6;transform-origin:0;width:100%;height:2.5px;animation:linear both progress;position:absolute;bottom:0;left:0}@keyframes progress{to{transform:scaleX(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(30px)scale(.92)}}@keyframes toast-out{to{opacity:0;transform:translateY(16px)scale(.96)}}.actions{flex-direction:column;gap:10px;display:flex}.action-summary{text-align:center;padding:6px 8px 14px}.action-summary .big{font-family:var(--font-rounded);font-size:1.6471rem;font-weight:700}.action-summary .meta{color:var(--label-2);margin-top:4px;font-size:.8824rem}.input{background:var(--fill);border:0;border-radius:14px;outline:none;width:100%;height:52px;padding:0 16px;font-size:1rem;transition:box-shadow .2s}.input:focus{box-shadow:0 0 0 2px var(--tint)}.input-row{align-items:center;gap:10px;display:flex}.list .input{background:0 0;border-radius:0;height:44px;padding:0}.list .input:focus{box-shadow:none}.mini-input{background:var(--fill);text-align:right;border:0;border-radius:10px;outline:none;width:96px;height:38px;padding:0 10px;font-size:.9412rem}.mini-input:focus{box-shadow:0 0 0 2px var(--tint)}.color-input{outline:1px solid var(--ring);outline-offset:-1px;background:0 0;border:0;border-radius:50%;flex-shrink:0;width:34px;height:34px;padding:0;overflow:hidden}.color-input::-webkit-color-swatch-wrapper{padding:0}.color-input::-webkit-color-swatch{border:0;border-radius:50%}.switch{appearance:none;background:var(--fill-2);cursor:pointer;border-radius:999px;flex-shrink:0;width:51px;height:31px;transition:background .25s;position:relative}.switch:after{content:"";width:27px;height:27px;transition:transform .45s var(--spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 3px 8px #00000026,0 1px 1px #00000029}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(20px)}.auth{max-width:420px;min-height:100dvh;padding:calc(var(--safe-top) + 24px) 20px calc(var(--safe-bottom) + 24px);flex-direction:column;justify-content:center;margin:0 auto;display:flex}.auth-logo{border-radius:22px;width:84px;height:84px;margin:0 auto 18px;display:block;box-shadow:0 10px 30px #0d42ce4d}.auth h1{text-align:center;margin:0 0 6px;font-size:1.7647rem}.auth .lead{text-align:center;color:var(--label-2);margin:0 0 26px;font-size:.9412rem}.auth form{flex-direction:column;gap:10px;display:flex}.auth .switch-mode{text-align:center;color:var(--label-2);margin-top:16px;font-size:.8824rem}.notice{background:var(--tint-soft);color:var(--label);border-radius:18px;padding:14px 16px;font-size:.8824rem;line-height:1.4}.notice.warn{background:var(--orange-soft)}.notice.error{background:var(--red-soft)}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{counter-increment:step;padding:12px 16px 12px 52px;font-size:.8824rem;line-height:1.45;position:relative}.steps li+li{border-top:.5px solid var(--sep)}.steps li:before{content:counter(step);background:var(--tint);color:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:.7647rem;font-weight:700;display:grid;position:absolute;top:12px;left:16px}.steps code,.code{background:var(--fill);word-break:break-all;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.7647rem}.kbd{background:var(--fill);border-radius:7px;padding:1px 8px;font-size:.8235rem;font-weight:600;display:inline-block}.screen-enter{animation:screen-in .45s var(--ease) backwards}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}}.push-enter{animation:push-in .5s var(--ease) backwards}@keyframes push-in{0%{opacity:.4;transform:translate(40px)}}.list-item-enter{animation:item-in .5s var(--spring) both}@keyframes item-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}}.spinner{border:2.5px solid var(--fill-2);border-top-color:var(--label-2);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.center-screen{text-align:center;place-items:center;min-height:100dvh;padding:24px;display:grid}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{:root{--bg:#fff;--card:#fff;--card-2:#f4f4f6}.sidebar,.tabbar-wrap,.toast-wrap,.no-print,.demo-banner{display:none!important}.shell{display:block}.navbar{position:static;box-shadow:none!important;background:0 0!important}.main{max-width:none;padding:0}.kpi,.card,.list{break-inside:avoid;border:.5px solid #ddd}.print-only{display:block!important}}.print-only{display:none}.chips.tight{flex-wrap:nowrap;gap:6px}.chips.tight .chip{flex:1;justify-content:center;min-width:0;padding:0 6px}.brand-logo{color:var(--brand);line-height:0;display:inline-block}.brand-logo svg{width:auto;height:100%;display:block}.auth-brand{width:fit-content;margin:0 auto 26px;display:block}.sheet .list{background:var(--card-2)}.toast-wrap.top{top:calc(var(--safe-top) + 8px);pointer-events:none;bottom:auto}@media (width>=900px){.toast-wrap.top{top:18px}}.toast.pill{pointer-events:none;width:auto;max-width:340px;min-height:0;animation:pill-in .5s var(--spring) both;gap:7px;padding:8px 15px 8px 11px;font-size:.8235rem;font-weight:500}.toast.pill.leaving{animation:pill-out .25s var(--ease) both}@keyframes pill-in{0%{opacity:0;transform:translateY(-26px)scale(.9)}}@keyframes pill-out{to{opacity:0;transform:translateY(-14px)scale(.95)}}.toast:not(.pill){min-height:50px;font-size:.8235rem}.avatar{color:#fff;font-weight:700;font-family:var(--font-rounded);letter-spacing:.5px;background:linear-gradient(160deg,#3b7bff 0%,#0d42ce 60%,#0a33b0 100%);border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid;box-shadow:inset 0 1px #ffffff59,0 6px 16px #0d42ce47}.profile-card{gap:14px;margin-top:16px;padding:16px}.profile-head{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:4px 0 2px;display:flex}.profile-name{letter-spacing:.2px;margin-top:4px;font-size:1.5294rem;font-weight:700}.person-line{text-align:left;flex:1;align-items:center;gap:12px;min-width:0;padding:2px 0;display:flex}.row-sub.wrap{white-space:normal}html{font-size:17px;font:-apple-system-body}:root{--glass-shadow:0 6px 20px #00000014, 0 1px 2px #0000000d}@media (prefers-color-scheme:dark){:root{--glass-shadow:0 6px 20px #00000059}}.avatar{background:var(--fill-2);color:var(--label);box-shadow:none;letter-spacing:0;font-weight:600}.row-icon.plain{color:var(--label-2);background:0 0;width:24px}.tab .tab-badge{width:8px;min-width:0;height:8px;padding:0;top:9px;right:calc(50% - 16px)}.color-dot{width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--ring);border-radius:50%;flex-shrink:0;display:inline-block}.color-dot.md{width:30px;height:30px}.color-dot[aria-pressed=true]{outline:2px solid var(--tint);outline-offset:2px}.color-dot.lg{width:44px;height:44px;margin:0 auto 10px;display:block}.color-dot.xl{width:64px;height:64px}.hex-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sale-row{--sep-inset:58px}.sale-amount{font-weight:600;display:block}.sale-pay{color:var(--label-2);text-overflow:ellipsis;white-space:nowrap;max-width:120px;margin-top:2px;font-size:.765rem;display:block;overflow:hidden}.sale-pay.debt{color:var(--orange)}.sheet-links{flex-wrap:wrap;justify-content:center;gap:18px;margin-top:18px;display:flex}.sheet-links button{color:var(--tint);align-items:center;gap:6px;font-size:.88rem;display:inline-flex}.sheet-links button.danger{color:var(--red)}.quiet-footer{color:var(--label-3);text-align:center;flex-direction:column;align-items:center;gap:6px;margin:26px 0 8px;font-size:.765rem;display:flex}.quiet-footer button{color:var(--label-2);font-size:.765rem}.hero-debt{text-align:left;background:var(--card-2);border-radius:16px;padding:10px 12px}.range-row{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 4px;display:grid}.range-row label{background:var(--card);color:var(--label-2);border-radius:14px;align-items:center;gap:8px;padding:6px 12px;font-size:.88rem;display:flex}.range-row input{min-width:0;color:var(--label);background:0 0;border:0;outline:none;flex:1;font-size:1rem}.stock-warn{color:var(--orange)!important}.menu-chip{gap:4px}.menu-chip.active{background:var(--tint-soft);color:var(--tint)}.menu-layer{z-index:300;position:fixed;inset:0}.menu{background:var(--glass-strong);min-width:220px;max-width:280px;max-height:60vh;animation:menu-in .32s var(--spring) both;transform-origin:0 0;border-radius:20px;padding:6px;position:fixed;overflow-y:auto}@keyframes menu-in{0%{opacity:0;transform:scale(.9)}}.menu-item{text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px 12px;font-size:1rem;display:flex}.menu-item:active{background:var(--fill)}.menu-item[aria-checked=true]{font-weight:600}.confirm-layer{z-index:320;background:#0000002e;justify-content:center;align-items:flex-end;animation:.2s both fade-in;display:flex;position:fixed;inset:0}.confirm{width:100%;max-width:400px;padding:0 10px calc(var(--safe-bottom) + 10px);animation:sheet-in .4s var(--ease) both;flex-direction:column;gap:8px;display:flex}.confirm-group{background:var(--glass-strong);border-radius:18px;overflow:hidden}.confirm-title{color:var(--label-2);text-align:center;border-bottom:.5px solid var(--sep);padding:14px 16px 12px;font-size:.765rem}.confirm-btn{width:100%;min-height:52px;color:var(--tint);font-size:1.06rem}.confirm-btn.danger{color:var(--red)}.confirm-btn.cancel{background:var(--glass-strong);border-radius:18px;font-weight:600}.stock-actions{grid-template-columns:1fr 1fr auto;gap:10px;margin-top:16px;display:grid}.stock-actions .btn{padding:0 16px}.stock-table{padding:4px 0}.stock-row{grid-template-columns:minmax(0, 1fr) repeat(var(--cols), 76px);align-items:center;min-height:48px;padding:0 8px 0 16px;display:grid}.stock-row+.stock-row{border-top:.5px solid var(--sep)}.stock-row.head{min-height:34px;color:var(--label-2);text-align:center;font-size:.765rem}.stock-color{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:10px;min-width:0;display:flex;overflow:hidden}.stock-color .dot{width:14px;height:14px}.stock-cell{height:38px;font-family:var(--font-rounded);font-variant-numeric:tabular-nums;border-radius:10px;margin:4px;font-size:1.06rem;font-weight:600}.stock-cell:active:not(:disabled){background:var(--fill)}.stock-cell:disabled{opacity:1}.stock-cell.low{color:var(--orange)}.stock-cell.out{color:var(--red)}.stock-cell.muted{color:var(--label-3);font-weight:400}.move-qty{font-variant-numeric:tabular-nums;font-weight:600}.move-qty.minus{color:var(--label-2)}.btn{height:auto;min-height:52px}.btn-sm{min-height:36px}.segmented button{height:auto;min-height:36px}.segmented.lg button{min-height:44px}.chip{height:auto;min-height:34px}.input,.range-row input{font-size:max(16px,1rem)}.mini-input,.time-row input{font-size:max(16px,.9412rem)}.tab{gap:2px;font-size:11px}.large-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.large-title-row .large-title{min-width:0}.more-button{background:var(--fill);width:38px;height:38px;color:var(--label);transition:transform .35s var(--spring);border-radius:50%;flex-shrink:0;place-items:center;margin-right:2px;display:grid;position:relative}.more-button:active{transform:scale(.9)}.more-badge{background:var(--red);width:9px;height:9px;box-shadow:0 0 0 2px var(--bg);border-radius:50%;position:absolute;top:1px;right:1px}@media (width>=900px){.more-button{display:none}}.stock-actions{grid-template-columns:1fr 1fr}.stock-row.total{text-align:center;min-height:42px;font-weight:600}.stock-row.total>span:first-child{text-align:left;color:var(--label-2);font-weight:400}.stock-cell.neg{color:var(--red)}.stock-cell.zero{color:var(--label-3)}.stock-alert{text-align:left;align-items:flex-start;gap:12px;width:100%;margin-top:16px;padding:14px 14px 14px 16px;font-size:.94rem;display:flex}.stock-alert-icon{color:var(--orange);flex-shrink:0;margin-top:1px}.stock-alert .row-chevron{align-self:center}.stock-untracked{text-align:left;width:100%;color:var(--label-2);margin-top:10px;padding:0 4px;font-size:.82rem;display:block}.stock-untracked span{color:var(--tint)}.stock-untracked:disabled{opacity:1}.grid-form .stock-row{min-height:58px}.grid-cell{margin:4px;display:block;position:relative}.grid-input{background:var(--fill);text-align:center;width:100%;height:44px;font-family:var(--font-rounded);font-variant-numeric:tabular-nums;color:var(--label-2);border:0;border-radius:12px;outline:none;font-size:max(17px,1.06rem);font-weight:600}.grid-input.filled{color:var(--label)}.grid-input:focus{box-shadow:0 0 0 2px var(--tint);color:var(--label)}.grid-input::placeholder{color:var(--label-3);font-weight:400}.grid-diff{color:var(--tint);pointer-events:none;font-size:11px;font-weight:600;position:absolute;top:2px;right:6px}.grid-summary{text-align:center;min-height:1.4em;color:var(--label-2);margin:12px 4px 10px;font-size:.88rem}.cell-head{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.cell-head .color-dot.lg{margin:0 0 6px}.cell-big{font-family:var(--font-rounded);font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700}.cell-big.neg{color:var(--red)}.cell-big.muted{color:var(--label-2);font-size:1.3rem}.cell-sum{margin-top:16px}.cell-sum .row{min-height:44px}.cell-sum .row-value{font-variant-numeric:tabular-nums}.cell-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.cell-actions .btn{gap:5px;min-height:46px;padding:0 6px;font-size:.88rem}.cell-back{align-items:center;gap:2px;margin:-4px 0 4px -8px;display:inline-flex}.sheet-subtitle{color:var(--label-2);margin:20px 4px 8px;font-size:.88rem;font-weight:600}.move-notice{margin-top:14px;padding:16px;font-size:.94rem}.move-notice p{color:var(--label-2);margin:6px 0 0;font-size:.88rem}.move-actions{gap:8px;margin-top:12px;display:flex}.move-actions .btn{flex:1;text-decoration:none}.stock-alert .row-main,.stock-alert .row-sub{white-space:normal;text-overflow:clip;overflow:visible}.machine-card{align-items:center;gap:10px;margin-top:12px;padding:10px 14px 10px 6px;display:flex}.machine-card-main{text-align:left;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.machine-card .btn-sm{flex-shrink:0;padding:0 16px}
