.ob-page{flex-direction:column;min-height:calc(100dvh - 52px);display:flex}.ob-step-anim{flex-direction:column;flex:1;min-height:0;display:flex}@media (prefers-reduced-motion:no-preference){.ob-step-anim{animation:.42s cubic-bezier(.2,.7,.2,1) both ob-flow-in}}@keyframes ob-flow-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ob-step-screen{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.ob-step-body{flex:1;min-height:0;overflow:hidden auto}.ob-step-body::-webkit-scrollbar{width:0}.ob-step-pad{padding:30px 40px 28px}@media (width<=640px){.ob-step-pad{padding:22px 20px 24px}}.ob-step-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.ob-step-foot{border-top:1px solid var(--cf-line);background:var(--cf-surface);flex:none;justify-content:space-between;align-items:center;gap:14px;padding:16px 40px;display:flex}@media (width<=640px){.ob-step-foot{flex-wrap:wrap;padding:14px 20px}}.ob-step-foot-right{align-items:center;gap:14px;display:flex}.ob-back-btn{color:var(--cf-ink-3);cursor:pointer;font-size:13px;font-family:var(--cf-font-sans);background:0 0;border:none;align-items:center;gap:7px;padding:6px 2px;transition:color .12s;display:inline-flex}.ob-back-btn:hover{color:var(--cf-ink)}.ob-steps{align-items:center;gap:5px;display:flex}.ob-steps .seg{background:var(--cf-line-2);border-radius:999px;width:22px;height:5px;transition:background .3s}.ob-steps .seg.past{background:var(--cf-ink)}.ob-steps .seg.cur{background:var(--cf-accent)}.ob-btn{font-family:var(--cf-font-sans);border-radius:var(--cf-radius-control);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 18px;font-size:14px;font-weight:500;transition:background .14s,border-color .14s,transform 80ms;display:inline-flex}.ob-btn:active{transform:translateY(1px)}.ob-btn.primary{background:var(--cf-ink);color:var(--cf-bg)}.ob-btn.primary:hover{background:color-mix(in srgb, var(--cf-ink) 88%, black)}.ob-btn.accent:hover{background:color-mix(in srgb, var(--cf-accent) 88%, black)}.ob-welcome{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:28px;padding:40px 48px;display:flex;overflow:hidden auto}@media (width<=640px){.ob-welcome{gap:20px;padding:26px 22px 30px}}.ob-welcome-text{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:580px;display:flex}@media (width<=640px){.ob-welcome-text{max-width:340px}}.ob-eyebrow{font-family:var(--cf-font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--cf-ink-3);font-size:10px;font-weight:500}.ob-hero{font-family:var(--cf-font-sans);letter-spacing:-.035em;color:var(--cf-ink);margin:0;font-size:54px;font-weight:600;line-height:.96}@media (width<=640px){.ob-hero{font-size:35px}}.ob-hero .lead{color:var(--cf-ink-2);letter-spacing:-.025em;font-weight:500}.ob-lede{color:var(--cf-ink-2);text-wrap:pretty;max-width:470px;margin:0;font-size:14.5px;line-height:1.55}@media (width<=640px){.ob-lede{max-width:320px;font-size:14px}}.ob-proj-card{background:var(--cf-surface);border:1px solid var(--cf-line);border-radius:var(--cf-radius-card);width:100%;max-width:640px;padding:18px 22px 14px}@media (width<=640px){.ob-proj-card{max-width:360px;padding:16px 16px 12px}}.ob-proj-card-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.ob-proj-end-val{font-family:var(--cf-font-mono);font-variant-numeric:tabular-nums;color:var(--cf-accent-ink);font-size:17px;font-weight:500}@media (width<=640px){.ob-proj-end-val{font-size:15px}}.ob-welcome-ctas{flex-direction:column;align-items:center;gap:14px;display:flex}.ob-welcome-btns{align-items:center;gap:10px;display:flex}@media (width<=640px){.ob-welcome-btns{flex-direction:column}}.ob-chips{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.ob-chip{white-space:nowrap;font-family:var(--cf-font-mono);letter-spacing:.03em;color:var(--cf-ink-2);background:var(--cf-surface-2);border:1px solid var(--cf-line);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:10.5px;display:inline-flex}.ob-chip .ob-dot{background:var(--cf-accent);border-radius:50%;width:5px;height:5px}.ob-h2{letter-spacing:-.015em;color:var(--cf-ink);margin:0;font-size:26px;font-weight:500;line-height:1.12}@media (width<=640px){.ob-h2{font-size:22px}}.ob-field-label{font-family:var(--cf-font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--cf-ink-3);margin-bottom:7px;font-size:10px;font-weight:500;display:block}.ob-optional{color:var(--cf-ink-4);letter-spacing:0;text-transform:none}.ob-field{border:1px solid var(--cf-line-2);border-radius:var(--cf-radius-control);background:var(--cf-surface);align-items:center;height:46px;padding:0 14px;transition:border-color .12s,box-shadow .12s;display:flex}.ob-field:focus-within{border-color:var(--cf-accent);box-shadow:0 0 0 3px var(--cf-accent-soft)}.ob-field.big{border-radius:12px;height:66px;padding:0 20px}.ob-field .pfx{font-family:var(--cf-font-mono);color:var(--cf-ink-3);flex:none;margin-right:8px;font-size:15px}.ob-field.big .pfx{font-size:24px}.ob-field input{min-width:0;font-family:var(--cf-font-mono);font-variant-numeric:tabular-nums;color:var(--cf-ink);text-align:right;background:0 0;border:none;outline:none;flex:1;font-size:16px}.ob-field.big input{font-size:30px;font-weight:500}.ob-field input::placeholder{color:var(--cf-ink-4)}.ob-field-text{font-family:var(--cf-font-mono);color:var(--cf-ink);font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.ob-field-text::placeholder{color:var(--cf-ink-4)}.ob-help{color:var(--cf-ink-3);margin:7px 0 0;font-size:12px;line-height:1.45}.ob-recurring-grid{grid-template-columns:1.55fr 1fr;align-items:start;gap:32px;display:grid}@media (width<=800px){.ob-recurring-grid{grid-template-columns:1fr;gap:20px}}.ob-entry-list{flex-direction:column;gap:8px;display:flex}.ob-entry-row{border:1px solid var(--cf-line);background:var(--cf-surface);border-radius:11px;grid-template-columns:26px 1fr 104px 152px 28px;align-items:center;gap:10px;padding:8px 10px 8px 8px;transition:border-color .12s,box-shadow .12s;display:grid}@media (width<=640px){.ob-entry-row{grid-template-columns:24px 1fr 28px;grid-template-areas:"dir name del""amt amt amt""cad cad cad";gap:9px}.ob-entry-row .ob-entry-dir{grid-area:dir}.ob-entry-row .ob-entry-name{grid-area:name}.ob-entry-row .ob-entry-amt{grid-area:amt;width:100%}.ob-entry-row .ob-entry-cad{grid-area:cad;width:100%;display:flex}.ob-entry-row .ob-entry-del{grid-area:del}}.ob-entry-row:focus-within{border-color:var(--cf-line-2);box-shadow:0 1px #00000005}.ob-entry-dir{border:1px solid var(--cf-line-2);background:var(--cf-surface);cursor:pointer;width:26px;height:26px;font-family:var(--cf-font-mono);border-radius:8px;place-items:center;padding:0;font-size:13px;line-height:1;transition:background .12s,color .12s,border-color .12s;display:grid}.ob-entry-dir.in{background:var(--cf-in-soft);color:var(--cf-in-ink);border-color:color-mix(in srgb, var(--cf-in) 30%, transparent)}.ob-entry-dir.out{background:var(--cf-out-soft);color:var(--cf-out-ink);border-color:color-mix(in srgb, var(--cf-out) 30%, transparent)}.ob-entry-name{font-family:var(--cf-font-sans);color:var(--cf-ink);background:0 0;border:none;outline:none;min-width:0;font-size:14px}.ob-entry-name::placeholder{color:var(--cf-ink-4)}.ob-entry-amt{border:1px solid var(--cf-line-2);border-radius:8px;align-items:center;gap:4px;height:34px;padding:0 9px;transition:border-color .12s,box-shadow .12s;display:flex}.ob-entry-amt:focus-within{border-color:var(--cf-accent);box-shadow:0 0 0 3px var(--cf-accent-soft)}.ob-entry-amt .pfx{font-family:var(--cf-font-mono);color:var(--cf-ink-3);flex:none;font-size:13px}.ob-entry-amt input{text-align:right;width:100%;font-family:var(--cf-font-mono);font-variant-numeric:tabular-nums;color:var(--cf-ink);background:0 0;border:none;outline:none;font-size:14px}.ob-entry-amt input::placeholder{color:var(--cf-ink-4)}.ob-entry-cad{background:var(--cf-surface-2);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.ob-entry-cad button{cursor:pointer;font-family:var(--cf-font-mono);letter-spacing:.02em;color:var(--cf-ink-3);white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;padding:6px 4px;font-size:10px;transition:background .12s,color .12s}.ob-entry-cad button.on{background:var(--cf-surface);color:var(--cf-ink);box-shadow:0 1px 2px #0000000f}.ob-entry-del{width:28px;height:28px;color:var(--cf-ink-4);cursor:pointer;background:0 0;border:none;border-radius:7px;font-size:16px;line-height:1;transition:background .12s,color .12s}.ob-entry-del:hover{background:var(--cf-out-soft);color:var(--cf-out-ink)}.ob-quick-wrap{flex-direction:column;gap:9px;display:flex}.ob-quick-row{flex-wrap:wrap;gap:7px;display:flex}.ob-quick-chip{white-space:nowrap;font-family:var(--cf-font-sans);color:var(--cf-ink-2);background:var(--cf-surface);border:1px dashed var(--cf-line-2);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:6px 13px;font-size:12.5px;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.ob-quick-chip:hover{border-style:solid;border-color:var(--cf-ink-3);color:var(--cf-ink)}.ob-quick-chip .pm{font-family:var(--cf-font-mono);font-size:13px}.ob-quick-chip.in .pm{color:var(--cf-in-ink)}.ob-quick-chip.out .pm{color:var(--cf-out-ink)}.ob-quick-chip.custom{color:var(--cf-ink-3)}.ob-preview-panel{background:var(--cf-surface-2);border:1px solid var(--cf-line);border-radius:13px;flex-direction:column;gap:12px;padding:18px 20px;display:flex;position:sticky;top:0}@media (width<=800px){.ob-preview-panel{padding:16px;position:static}}.ob-preview-head{justify-content:space-between;align-items:baseline;display:flex}.ob-live-label{font-family:var(--cf-font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--cf-accent-ink);font-size:10px;font-weight:500}.ob-net-row{border-top:1px solid var(--cf-line);justify-content:space-between;align-items:center;padding-top:11px;display:flex}.ob-net-val{font-family:var(--cf-font-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.ob-net-val.pos{color:var(--cf-in-ink)}.ob-net-val.neg{color:var(--cf-out-ink)}.ob-sum-grid{background:var(--cf-line);border:1px solid var(--cf-line);border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}@media (width<=640px){.ob-sum-grid{grid-template-columns:1fr}}.ob-sum-cell{background:var(--cf-surface);flex-direction:column;gap:6px;padding:15px 17px;display:flex}.ob-sum-cell .k{font-family:var(--cf-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cf-ink-3);font-size:9.5px}.ob-sum-cell .v{font-family:var(--cf-font-mono);color:var(--cf-ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:21px;font-weight:500}.ob-sum-cell .v.pos{color:var(--cf-in-ink)}.ob-sum-cell .v.neg{color:var(--cf-out-ink)}.ob-done{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;padding:30px 48px;display:flex;overflow:hidden auto}@media (width<=640px){.ob-done{padding:30px 24px}}.ob-done-check{background:var(--cf-accent);width:56px;height:56px;color:var(--cf-accent-on);border-radius:50%;place-items:center;display:grid}.ob-done-check svg{width:26px;height:26px}.ob-done-amount{font-family:var(--cf-font-mono);color:var(--cf-ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:42px;font-weight:500}@media (width<=640px){.ob-done-amount{font-size:34px}}.ob-chart{width:100%;position:relative}.ob-chart svg{width:100%;height:100%;display:block;overflow:visible}.ob-gl{stroke:var(--cf-line);stroke-width:1px}.ob-zero-line{stroke:var(--cf-line-2);stroke-width:1px;stroke-dasharray:2 4}.ob-area{fill:var(--cf-accent);opacity:.07}.ob-line{fill:none;stroke:var(--cf-ink);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}@media (prefers-reduced-motion:no-preference){.ob-line-draw{animation:1.5s cubic-bezier(.6,.05,.2,1) both ob-draw}.ob-area-fade{animation:1.6s both ob-fade-area}}@keyframes ob-draw{0%{stroke-dasharray:var(--len);stroke-dashoffset:var(--len)}to{stroke-dasharray:var(--len);stroke-dashoffset:0}}@keyframes ob-fade-area{0%,40%{opacity:0}to{opacity:.07}}.ob-nowdot .ob-ring{fill:var(--cf-surface);stroke:var(--cf-accent);stroke-width:2.5px}.ob-nowdot .ob-core{fill:var(--cf-accent)}.ob-enddot{fill:var(--cf-ink)}.ob-end-group{opacity:1}@media (prefers-reduced-motion:no-preference){.ob-end-group{animation:.4s 1.3s both ob-pop}}@keyframes ob-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.ob-tag{font-family:var(--cf-font-mono);fill:var(--cf-ink);font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.ob-tag.ob-tag-muted{fill:var(--cf-ink-3);letter-spacing:.08em;font-size:9.5px}
