/* Darzen Budget live demo (c) Darzen, darzenstore.com */
:root{color-scheme:light;--bg: #F6F8F8;--surface: #FFFFFF;--surface-2: #F2F5F5;--ink: #1C1C1B;--ink-2: #3D4648;--muted: #677072;--line: #E3E8E9;--line-strong: #CCD4D5;--brand: #024749;--brand-ink: #FFFFFF;--brand-strong: #012B2E;--brand-soft: #E2F1EE;--brand-softer: #F0F8F6;--hero-bg: linear-gradient(135deg, #DFF0EC 0%, #F3FAF8 100%);--hero-ink: #012B2E;--hero-big: #024749;--hero-muted: #50706D;--hero-line: #C9E2DD;--hero-chip-bg: rgba(2, 71, 73, .09);--hero-chip-ink: #024749;--hero-fold: rgba(2, 71, 73, .07);--good: #2C7552;--good-soft: #E3F3EA;--warn: #8F5C0E;--warn-soft: #FDF2DE;--bad: #A9372F;--bad-soft: #FCE9E6;--chart-1: #136F6C;--chart-2: #A6D2CC;--chart-grid: #EAEFEF;--logo-mark: #024749;--logo-word: #1C1C1B;--focus: #0A7C7F;--overlay: rgba(1, 43, 46, .32);--shadow: 0 1px 2px rgba(1, 43, 46, .04), 0 4px 14px rgba(1, 43, 46, .04);--font: "Urbanist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-num: "Darzen Figures", "Urbanist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--r-card: 16px;--r-ctrl: 10px;--sidebar: 252px}:root[data-app-theme=dark]{color-scheme:dark;--bg: #0C1314;--surface: #141E1F;--surface-2: #1A2627;--ink: #E8EDED;--ink-2: #C5CFCF;--muted: #93A2A3;--line: #253435;--line-strong: #344647;--brand: #6BBCB7;--brand-ink: #062627;--brand-strong: #9BD6D2;--brand-soft: #183536;--brand-softer: #13292A;--hero-bg: linear-gradient(135deg, #123F3F 0%, #0F2D2E 100%);--hero-ink: #FFFFFF;--hero-big: #FFFFFF;--hero-muted: #A9CFCD;--hero-line: rgba(255, 255, 255, .16);--hero-chip-bg: rgba(255, 255, 255, .14);--hero-chip-ink: #FFFFFF;--hero-fold: rgba(255, 255, 255, .12);--good: #67C497;--good-soft: #15332A;--warn: #E4B05C;--warn-soft: #382B15;--bad: #EE877C;--bad-soft: #3B1F1C;--chart-1: #6BBCB7;--chart-2: #2F6261;--chart-grid: #223132;--logo-mark: #FFFFFF;--logo-word: #FFFFFF;--focus: #8ED4CF;--overlay: rgba(0, 0, 0, .6);--shadow: 0 1px 2px rgba(0, 0, 0, .3)}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.num,.amount{font-family:var(--font-num);font-feature-settings:"tnum" 1,"lnum" 1;font-variant-numeric:tabular-nums lining-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}svg.icon{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100%}.sidebar{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:20px;padding:22px 16px 18px max(16px,env(safe-area-inset-left,0px));background:var(--surface);border-right:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;padding:4px 10px 6px}.brand svg.logo{height:22px;width:auto}.brand .product{font-weight:600;color:var(--muted);font-size:15px;padding-left:10px;border-left:1px solid var(--line-strong);line-height:1.1}.logo .mark{fill:var(--logo-mark)}.logo .word{fill:var(--logo-word)}.nav{display:flex;flex-direction:column;gap:2px}.nav button{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;padding:8px 12px;border:0;border-radius:var(--r-ctrl);background:transparent;color:var(--ink-2);text-align:left;font-weight:500;transition:background-color .15s ease,color .15s ease}.nav button:hover{background:var(--surface-2);color:var(--ink)}.nav button[aria-current=page]{background:var(--brand-soft);color:var(--brand);font-weight:700}.nav .badge{margin-left:auto;font-size:12px;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--warn-soft);color:var(--warn)}.sidebar .foot{margin-top:auto;display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:12px;background:var(--surface-2);font-size:13px;color:var(--muted)}.sidebar .foot strong{color:var(--ink);font-weight:600}.main{min-width:0;padding-block:24px 48px;padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px))}.main-inner{max-width:1160px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.topbar,.tabbar{display:none}.page-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.page-head h1{margin:0;font-size:28px;line-height:1.15;font-weight:700;letter-spacing:-.01em;text-wrap:balance}.page-head .sub{color:var(--muted);font-size:14px;margin-top:2px}.page-head .grow{flex:1 1 auto;min-width:0}.month-switch{display:inline-flex;align-items:center;gap:2px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:3px}.month-switch button{width:36px;height:36px;border:0;border-radius:999px;background:transparent;display:grid;place-items:center;color:var(--ink-2)}.month-switch button:hover{background:var(--surface-2)}.month-switch .mlabel{min-width:132px;text-align:center;font-weight:700;font-size:15px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;border-radius:var(--r-ctrl);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:600;font-size:14px;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{color:var(--bad);border-color:var(--bad);background:transparent}.btn.danger:hover{background:var(--bad-soft)}.btn.small{min-height:34px;padding:5px 12px;font-size:13px}.icon-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:var(--r-ctrl);border:0;background:transparent;color:var(--muted)}.icon-btn:hover{background:var(--surface-2);color:var(--ink)}.icon-btn.danger:hover{background:var(--bad-soft);color:var(--bad)}.grid{display:grid;gap:20px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.dash{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:20px;box-shadow:var(--shadow);min-width:0}.card.flat{box-shadow:none}.card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:14px}.card-head h2{margin:0;font-size:16px;font-weight:700}.card-head .meta{color:var(--muted);font-size:13px}.card-head .spacer{flex:1}.label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:13px}.link-btn{border:0;background:none;padding:0;color:var(--brand);font-weight:700;font-size:14px}.link-btn:hover{text-decoration:underline}.hero{background:var(--hero-bg);color:var(--hero-ink);border-color:var(--hero-line);padding:24px;display:grid;gap:18px;position:relative;overflow:hidden}.hero .label{color:var(--hero-muted)}.hero .big{font-size:46px;line-height:1;font-weight:700;letter-spacing:-.02em;color:var(--hero-big)}.hero .note{color:var(--hero-muted);font-size:14px;max-width:46ch}.hero .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:16px;border-top:1px solid var(--hero-line)}.hero .stats .v{font-size:20px;font-weight:700}.hero .stats .k{font-size:13px;color:var(--hero-muted)}.hero .chip{background:var(--hero-chip-bg);color:var(--hero-chip-ink)}.hero .fold{position:absolute;top:0;right:0;width:56px;height:56px;background:linear-gradient(225deg,var(--bg) 0 50%,var(--hero-fold) 50% 100%);border-bottom-left-radius:8px;pointer-events:none}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;min-width:0}.stat .v{font-size:22px;font-weight:700;margin-top:2px}.stat .k{font-size:13px;color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;background:var(--surface-2);color:var(--ink-2)}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.9}.chip.plain:before{display:none}.chip.good{background:var(--good-soft);color:var(--good)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.brand{background:var(--brand-soft);color:var(--brand)}.bar{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;border:1px solid var(--line)}.bar>span{display:block;height:100%;border-radius:999px;background:var(--brand)}.bar.good>span{background:var(--good)}.bar.warn>span{background:var(--warn)}.bar.bad>span{background:var(--bad)}.rows{display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line);min-width:0}.row:first-child{border-top:0;padding-top:2px}.row .main-col{flex:1 1 auto;min-width:0}.row .title{font-weight:600;overflow-wrap:anywhere}.title-btn{display:block;border:0;background:none;padding:0;text-align:left;font-weight:600;color:var(--ink);overflow-wrap:anywhere}.title-btn:hover{color:var(--brand);text-decoration:underline}.row .sub .chip{margin-right:4px}.row .sub{font-size:13px;color:var(--muted)}.row .amount{font-weight:700;text-align:right;white-space:nowrap}.date-tile{width:44px;flex:none;text-align:center;border-radius:10px;background:var(--surface-2);padding:4px 0;line-height:1.1}.date-tile .d{font-size:17px;font-weight:700}.date-tile .m{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.table-wrap{overflow-x:auto}table.tbl{width:100%;border-collapse:collapse;min-width:560px}.tbl th{text-align:left;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;padding:8px 10px;border-bottom:1px solid var(--line)}.tbl td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl th.r,.tbl td.r{text-align:right}.tbl tr.group td{background:var(--surface-2);font-weight:700;border-bottom:1px solid var(--line)}.tbl tr.group td .num{font-weight:700}.tbl tbody tr:not(.group):hover td{background:var(--brand-softer)}.tbl .cat{font-weight:500}.tbl .progress{width:120px}.money-input{width:116px;text-align:right;padding:7px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);font-weight:600}.money-input:hover{border-color:var(--line-strong)}.money-input:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px var(--brand-soft)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.field .flabel{font-size:13px;font-weight:700;color:var(--ink-2)}.field .help{font-size:12px;color:var(--muted)}.input,select.input,textarea.input{width:100%;min-height:44px;padding:10px 12px;border-radius:var(--r-ctrl);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}textarea.input{min-height:120px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.input:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px var(--brand-soft)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .full{grid-column:1 / -1}.seg{display:inline-flex;padding:3px;gap:3px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);flex-wrap:wrap}.seg button{border:0;background:transparent;border-radius:9px;padding:7px 14px;font-weight:600;color:var(--muted);min-height:36px}.seg button[aria-pressed=true]{background:var(--surface);color:var(--brand);box-shadow:0 1px 3px #012b2e1f}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.toolbar .input{width:auto;min-width:0;flex:1 1 180px}.check{display:flex;align-items:center;gap:10px;font-weight:500}.check input{width:18px;height:18px;accent-color:var(--brand)}.banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:14px 18px;border-radius:14px;background:var(--brand-soft);color:var(--ink);border:1px solid transparent}.banner.warn{background:var(--warn-soft)}.banner .grow{flex:1 1 260px;min-width:0}.banner strong{font-weight:700}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal .dow{font-size:11px;font-weight:700;text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.cal .day{min-height:46px;border-radius:10px;background:var(--surface-2);padding:5px 6px;font-size:12px;font-weight:600;color:var(--ink-2);display:flex;flex-direction:column;justify-content:space-between}.cal .day.out{background:transparent}.cal .day.today{outline:2px solid var(--brand);outline-offset:-2px;background:var(--brand-softer)}.cal .dots{display:flex;gap:3px;flex-wrap:wrap}.cal .dots i{width:8px;height:8px;border-radius:50%;background:var(--brand);display:block}.cal .dots i.due{background:transparent;border:2px solid var(--brand)}.cal .dots i.paid{background:var(--good)}.cal .dots i.late{background:var(--bad)}.chart svg{width:100%;height:auto;display:block}.chart .grid-line{stroke:var(--chart-grid);stroke-width:1}.chart .axis-text{fill:var(--muted);font-size:11px;font-family:var(--font-num)}.chart .bar-in{fill:var(--chart-1)}.chart .bar-out{fill:var(--chart-2)}.chart .bar-cur{stroke:var(--ink);stroke-width:0}.legend{display:flex;gap:16px;font-size:13px;color:var(--muted);flex-wrap:wrap}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}.hbars{display:flex;flex-direction:column;gap:12px}.hbar .top{display:flex;justify-content:space-between;gap:10px;font-size:14px;margin-bottom:6px}.hbar .top .name{font-weight:600;min-width:0;overflow-wrap:anywhere}.hbar .top .val{color:var(--muted);white-space:nowrap}.goal{display:flex;flex-direction:column;gap:12px}.goal .head{display:flex;align-items:flex-start;gap:10px}.goal .head .grow{flex:1;min-width:0}.goal h3{margin:0;font-size:17px;font-weight:700;overflow-wrap:anywhere}.goal .nums{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.goal .nums .v{font-size:24px;font-weight:700}.goal .facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:12px;border-top:1px solid var(--line)}.goal .facts .k{font-size:12px;color:var(--muted);font-weight:600}.goal .facts .v2{font-weight:700}.goal .addrow{display:flex;gap:8px}.goal .addrow .input{min-height:38px;padding:7px 10px}.order{counter-reset:d}.debt-row{display:grid;grid-template-columns:34px minmax(0,1.4fr) repeat(4,minmax(0,1fr)) auto;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.debt-row:first-child{border-top:0}.debt-row .pos{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;background:var(--brand-soft);color:var(--brand)}.debt-row .k{font-size:12px;color:var(--muted);font-weight:600}.debt-row .v{font-weight:700}dialog.sheet{border:0;padding:0;border-radius:20px;background:var(--surface);color:var(--ink);width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);box-shadow:0 20px 60px #00000040}dialog.sheet::backdrop{background:var(--overlay)}.sheet-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 48px)}.sheet-head{display:flex;align-items:center;gap:10px;padding:18px 20px 6px}.sheet-head h2{margin:0;font-size:19px;font-weight:700;flex:1}.sheet-body{padding:10px 20px 4px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.sheet-foot{display:flex;gap:10px;justify-content:flex-end;padding:14px 20px 20px;flex-wrap:wrap}.amount-input{font-size:34px;font-weight:700;text-align:center;min-height:64px}.steps{display:flex;gap:6px}.steps i{flex:1;height:4px;border-radius:4px;background:var(--line);display:block}.steps i.on{background:var(--brand)}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%) translateY(20px);opacity:0;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;font-size:14px;transition:opacity .2s ease,transform .2s ease;pointer-events:none;z-index:60;max-width:calc(100vw - 32px)}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.empty{text-align:center;padding:28px 12px;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}.settings-list{display:flex;flex-direction:column;gap:20px}.cat-group{border:1px solid var(--line);border-radius:14px;overflow:hidden}.cat-group .gh{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface-2);font-weight:700}.cat-group .gh .input{min-height:36px;padding:6px 10px;font-weight:700;max-width:260px}.cat-group .ci{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line)}.cat-group .ci .input{min-height:36px;padding:6px 10px}.kv{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;font-size:14px}.kv .v{font-weight:700;text-align:right}.insights{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.insights li{display:flex;gap:12px;align-items:baseline;padding:11px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.45}.insights li:first-child{border-top:0;padding-top:2px}.insights .dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--brand);transform:translateY(-1px)}.insights .good .dot{background:var(--good)}.insights .warn .dot{background:var(--warn)}.insights .bad .dot{background:var(--bad)}.insights strong{font-weight:700}.insights.cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.insights.cols li:nth-child(2){border-top:0;padding-top:2px}@media(max-width:900px){.insights.cols{grid-template-columns:minmax(0,1fr)}.insights.cols li:nth-child(2){border-top:1px solid var(--line);padding-top:11px}}.chart .bar-neg{fill:var(--bad);opacity:.55}.chart .grid-line.zero{stroke:var(--line-strong)}.page-head .btn[disabled],.btn[disabled]{opacity:.5;pointer-events:none}@media print{@page{margin:14mm}body{background:#fff!important}.app{display:block}.sidebar,.topbar,.tabbar,.toast,.banner,.page-head .btn,.month-switch button,.link-btn,.icon-btn,.card-head .btn,.reminders,.addrow,dialog{display:none!important}.main{padding:0!important}.main-inner{max-width:none;gap:14px}#view:before{content:attr(data-print);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.card,.stat{box-shadow:none!important;break-inside:avoid}.grid.dash{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}#view.anim :is(.page-head,.banner,.card,.stat),#view.anim .bar>span,#view.anim .chart rect{animation:none!important}}@media(max-width:1100px){.grid.dash{grid-template-columns:minmax(0,1fr)}.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.debt-row{grid-template-columns:34px minmax(0,1fr) repeat(2,minmax(0,1fr)) auto}.debt-row .hide-md{display:none}}@media(max-width:900px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar{display:flex;align-items:center;gap:10px;position:sticky;top:env(safe-area-inset-top,0px);z-index:30;padding-block:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:var(--surface);border-bottom:1px solid var(--line)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:31;background:var(--surface)}.topbar svg.logo{height:20px;width:auto}.topbar .product{font-weight:600;color:var(--muted);padding-left:9px;border-left:1px solid var(--line-strong)}.topbar .spacer{flex:1}.main{padding-block:16px 104px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.main-inner{gap:16px}.page-head h1{font-size:24px}.page-head .desk-only{display:none}.month-switch{width:100%;justify-content:space-between}.tabbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.tabbar button{border:0;background:transparent;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11px;font-weight:600;color:var(--muted)}.tabbar button[aria-current=page]{color:var(--brand)}.tabbar .add{display:grid;place-items:center}.tabbar .add span{width:46px;height:46px;border-radius:16px;background:var(--brand);color:var(--brand-ink);display:grid;place-items:center}.grid.two,.grid.three{grid-template-columns:minmax(0,1fr)}.card{padding:16px}.hero{padding:20px}.hero .big{font-size:38px}.form-grid{grid-template-columns:minmax(0,1fr)}.debt-row{grid-template-columns:34px minmax(0,1fr) auto}.debt-row .hide-sm{display:none}.toast{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}@media(max-width:560px){.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hero .stats .v{font-size:16px}.tbl-mobile-hide{display:none}table.tbl{min-width:0}.tbl th,.tbl td{padding:9px 6px}.tbl .progress{display:none}.money-input{width:92px}dialog.sheet{width:100vw;max-width:100vw;margin:auto 0 0;border-radius:20px 20px 0 0;max-height:calc(100dvh - 24px)}.sheet-inner{max-height:calc(100dvh - 24px)}.sheet-foot{padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.sheet-foot .btn{flex:1}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes growY{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes fold{0%{width:0;height:0}}@keyframes sheetIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes flash{0%{background:var(--good-soft)}to{background:transparent}}@keyframes pop{0%{transform:scale(.6)}60%{transform:scale(1.15)}to{transform:scale(1)}}#view.anim :is(.page-head,.banner,.card,.stat){animation:rise .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i, 0) * 40ms)}#view.anim .bar>span{transform-origin:left center;animation:grow .9s cubic-bezier(.2,.7,.2,1) .15s both}#view.anim .chart rect{transform-box:fill-box;transform-origin:50% 100%;animation:growY .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.12s + var(--d, 0) * 45ms)}#view.anim .chart rect.neg{transform-origin:50% 0}#view.anim .insights li{animation:rise .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.26s + var(--i, 0) * 60ms)}#view.anim .hero .fold{animation:fold .5s cubic-bezier(.2,.7,.2,1) .35s both}dialog.sheet[open]{animation:sheetIn .24s cubic-bezier(.2,.7,.2,1)}dialog.sheet[open]::backdrop{animation:fadeIn .24s ease-out}.row.flash{animation:flash 1.2s ease-out;border-radius:10px}.row.flash .chip.good{animation:pop .4s ease-out}.btn,.nav button,.tabbar button,.icon-btn,.seg button{transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .12s ease,box-shadow .15s ease}.card{transition:box-shadow .2s ease,border-color .2s ease}.tabbar .add span{transition:transform .15s ease}.tabbar .add:active span{transform:scale(.92)}.confetti{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:80}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}:root{--demo-h: 46px}.demo-bar{position:sticky;top:0;z-index:40;box-sizing:border-box;height:calc(var(--demo-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px));display:flex;align-items:center;gap:12px;background:#024749;color:#fff;font-size:14px;font-weight:600}.demo-bar__tag{flex:none;padding:3px 9px;border-radius:999px;background:#ffffff24;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.demo-bar__txt{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#ffffffdb}.demo-bar__buy{flex:none;margin-left:auto;padding:7px 13px;border-radius:10px;background:#fff;color:#012b2e;font-weight:700;text-decoration:none;white-space:nowrap;transition:background-color .15s ease}.demo-bar__buy:hover{background:#eeeef0}.demo-bar__buy:focus-visible{outline:2px solid #fff;outline-offset:2px}.sidebar{top:calc(var(--demo-h) + env(safe-area-inset-top,0px));height:calc(100vh - var(--demo-h));height:calc(100dvh - var(--demo-h) - env(safe-area-inset-top,0px))}@media(max-width:900px){.topbar{top:calc(var(--demo-h) + env(safe-area-inset-top,0px))}}@media(max-width:560px){.demo-bar__txt .long{display:none}}.is-framed{--demo-h: 0px}.is-framed .demo-bar{display:none}@media print{.demo-bar{display:none!important}}#side-foot{display:none}
