:root{--paper: #F3F4F1;--surface: #F8F8F6;--card: #FFFFFF;--ink: #0E1311;--muted: #59635E;--faint: #8B948F;--line: rgb(14 19 17 / .08);--line-strong: rgb(14 19 17 / .16);--teal: #0F766E;--teal-soft: #E5F3F0;--agent: #B45309;--agent-bg: #FEF2E1;--stamp: #D92D20;--stamp-bg: #FDECEA;--credit: #15803D;--credit-bg: #E7F6EC;--diff-add: #E7F6EC;--diff-del: #FDECEA;--primary: #0E1311;--on-primary: #FFFFFF;--glow: rgb(15 118 110 / .14);--radius: 20px;--shadow: 0 1px 2px rgb(14 19 17 / .04), 0 12px 32px -16px rgb(14 19 17 / .14);--shadow-lg: 0 2px 6px rgb(14 19 17 / .06), 0 30px 60px -20px rgb(14 19 17 / .28);color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--paper: #0A0C0B;--surface: #101312;--card: #141816;--ink: #ECEFED;--muted: #9BA49F;--faint: #6D7671;--line: rgb(255 255 255 / .07);--line-strong: rgb(255 255 255 / .15);--teal: #2DD4BF;--teal-soft: rgb(45 212 191 / .12);--agent: #F5A524;--agent-bg: rgb(245 165 36 / .12);--stamp: #F87171;--stamp-bg: rgb(248 113 113 / .12);--credit: #4ADE80;--credit-bg: rgb(74 222 128 / .12);--diff-add: rgb(74 222 128 / .12);--diff-del: rgb(248 113 113 / .12);--primary: #ECEFED;--on-primary: #0A0C0B;--glow: rgb(45 212 191 / .1);--shadow: 0 1px 0 rgb(255 255 255 / .03) inset;--shadow-lg: 0 30px 60px -20px rgb(0 0 0 / .6);color-scheme:dark}}:root[data-theme=dark]{--paper: #0A0C0B;--surface: #101312;--card: #141816;--ink: #ECEFED;--muted: #9BA49F;--faint: #6D7671;--line: rgb(255 255 255 / .07);--line-strong: rgb(255 255 255 / .15);--teal: #2DD4BF;--teal-soft: rgb(45 212 191 / .12);--agent: #F5A524;--agent-bg: rgb(245 165 36 / .12);--stamp: #F87171;--stamp-bg: rgb(248 113 113 / .12);--credit: #4ADE80;--credit-bg: rgb(74 222 128 / .12);--diff-add: rgb(74 222 128 / .12);--diff-del: rgb(248 113 113 / .12);--primary: #ECEFED;--on-primary: #0A0C0B;--glow: rgb(45 212 191 / .1);--shadow: 0 1px 0 rgb(255 255 255 / .03) inset;--shadow-lg: 0 30px 60px -20px rgb(0 0 0 / .6);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.5 Geist,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Geist,system-ui,sans-serif;margin:0;line-height:1.15}h1{font-size:1.6rem;font-weight:700;letter-spacing:-.01em}h2{font-size:1.15rem;font-weight:700}h3{font-size:.95rem;font-weight:700}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}code,pre,.mono{font-family:Geist Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.85em}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.shell{display:grid;grid-template-columns:232px 1fr;height:100%}.side{border-right:1px solid var(--line);padding:calc(18px + env(safe-area-inset-top)) 14px 18px;display:flex;flex-direction:column;gap:4px;background:var(--paper)}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px;font:700 1.05rem Geist,sans-serif}.brand img{width:26px;height:26px}.nav{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;color:var(--muted);text-decoration:none;font-weight:500}.nav:hover{background:var(--teal-soft);color:var(--ink)}.nav.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow)}.nav svg{width:18px;height:18px;flex:none}.nav .count{margin-left:auto;font-size:.78rem;font-weight:600;padding:1px 7px;border-radius:99px;background:var(--teal);color:var(--paper)}.nav .count.agent{background:var(--agent)}.side-foot{margin-top:auto;padding:10px;font-size:.8rem;color:var(--muted);display:grid;gap:6px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--credit);margin-right:6px}.dot.bad{background:var(--stamp)}.dot.warn{background:var(--agent)}.content{overflow:auto;min-width:0}.page{max-width:1180px;margin:0 auto;padding:28px 28px 48px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-head p{color:var(--muted);margin-top:4px}.tabbar{display:none}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pad{padding:16px 18px}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:.85rem}.row{display:flex;align-items:center;gap:8px}.grow{flex:1;min-width:0}.stack{display:grid;gap:14px}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.num{font-variant-numeric:tabular-nums}.credit{color:var(--credit)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:0 14px;border-radius:9px;border:1px solid var(--line-strong);background:var(--card);cursor:pointer;font-weight:600;font-size:.92rem}.btn:hover{border-color:var(--teal)}.btn.primary{background:var(--teal);border-color:var(--teal);color:var(--paper)}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{border-color:transparent;background:transparent}.btn:disabled{opacity:.5;cursor:default}kbd{font:600 .72rem Geist Mono,ui-monospace,Menlo,monospace;padding:1px 5px;border-radius:5px;border:1px solid var(--line-strong);border-bottom-width:2px;color:var(--muted);background:var(--card)}.btn.primary kbd{color:var(--paper);border-color:#fff6;background:transparent}.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:99px;font-size:.78rem;font-weight:600;background:var(--teal-soft);color:var(--teal);white-space:nowrap}.chip.agent{background:var(--agent-bg);color:var(--agent)}.chip.stamp{background:var(--stamp-bg);color:var(--stamp)}.chip.ok{background:var(--credit-bg);color:var(--credit)}.chip.plain{background:transparent;border:1px solid var(--line);color:var(--muted)}.field{display:grid;gap:6px}.field label{font-size:.82rem;font-weight:600;color:var(--muted)}.input,select.input{min-height:40px;padding:0 12px;border-radius:9px;border:1px solid var(--line-strong);background:var(--card);width:100%}textarea.input{padding:10px 12px;min-height:80px;resize:vertical}.check{display:flex;align-items:center;gap:8px;font-size:.9rem;cursor:pointer}.check input{width:16px;height:16px;accent-color:var(--teal)}.seg{display:inline-flex;padding:3px;border-radius:10px;background:var(--card);border:1px solid var(--line);gap:2px}.seg button{border:0;background:transparent;padding:5px 12px;border-radius:7px;cursor:pointer;color:var(--muted);font-weight:600;font-size:.85rem}.seg button.on{background:var(--teal-soft);color:var(--ink)}.split{display:grid;grid-template-columns:minmax(300px,400px) 1fr;gap:18px;align-items:start}.list{padding:6px;display:grid;gap:2px}.item{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:11px 12px;border-radius:9px;cursor:pointer;border:1px solid transparent;text-align:left;background:none;width:100%}.item:hover{background:var(--teal-soft)}.item.on{background:var(--teal-soft);border-color:var(--teal)}.item .t{font-weight:600}.item .s{font-size:.82rem;color:var(--muted)}.item .amt{font-weight:600;text-align:right}.list-head{padding:12px 14px 6px;font-size:.78rem;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.04em}.detail{position:sticky;top:20px}.split>.master,.split>.detail{position:relative;top:auto;max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:thin}.split>.detail{padding:2px 4px 24px;margin:-2px -4px 0}.detail-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.big{font:700 2rem Geist,sans-serif;letter-spacing:-.02em}.kv{display:grid;grid-template-columns:130px 1fr;gap:8px 14px;font-size:.92rem}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0}.raw{font-family:Geist Mono,ui-monospace,Menlo,monospace;font-size:.82rem;line-height:1.55;padding:12px 14px;background:var(--paper);border:1px dashed var(--line-strong);border-radius:9px;white-space:pre-wrap;word-break:break-word}.section-title{font-size:.78rem;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.actions{display:flex;gap:8px;flex-wrap:wrap}.divider{height:1px;background:var(--line);margin:4px 0}.meter{height:6px;background:var(--paper);border-radius:99px;overflow:hidden}.meter>i{display:block;height:100%;background:var(--teal);border-radius:99px}.meter.agent>i{background:var(--agent)}.conf{display:inline-flex;align-items:center;gap:8px}.conf .meter{width:70px}.cat-grid{display:flex;flex-wrap:wrap;gap:6px}.cat-grid button{border:1px solid var(--line);background:var(--card);border-radius:99px;padding:5px 11px;cursor:pointer;font-size:.85rem;font-weight:500}.cat-grid button:hover{border-color:var(--teal)}.cat-grid button.on{background:var(--teal);border-color:var(--teal);color:var(--paper)}.cat-grid kbd{margin-right:4px}.cat-grid button.on kbd{color:var(--paper);border-color:#fff6;background:transparent}.zero{text-align:center;padding:40px 24px;display:grid;gap:10px;justify-items:center}.zero .mark{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--credit-bg);color:var(--credit)}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:10px;display:flex;gap:14px;align-items:center;font-size:.9rem;box-shadow:0 8px 24px #0003;z-index:50}.toast button{background:none;border:0;color:var(--paper);font-weight:700;cursor:pointer;text-decoration:underline}.shortcuts{display:flex;flex-wrap:wrap;gap:14px;font-size:.8rem;color:var(--muted);padding:10px 14px;border-top:1px solid var(--line)}.status{font-size:.78rem;font-weight:600}.timeline{display:grid;gap:8px}.attempt{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}.attempt .b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:700;color:var(--paper);background:var(--stamp)}.attempt .b.ok{background:var(--credit)}.diff{border:1px solid var(--line);border-radius:9px;overflow:auto;max-height:360px;background:var(--card)}.diff pre{margin:0;padding:8px 0;font-size:.8rem;line-height:1.55}.diff .l{display:block;padding:0 14px;white-space:pre}.diff .add{background:var(--diff-add)}.diff .del{background:var(--diff-del)}.diff .hunk{color:var(--faint)}.diff .file{color:var(--teal);font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden}.stats>div{background:var(--card);padding:10px 12px}.stats b{display:block;font-size:1rem}.stats span{font-size:.75rem;color:var(--muted)}.note{padding:10px 12px;border-left:3px solid var(--agent);background:var(--agent-bg);border-radius:0 8px 8px 0;font-size:.9rem}.note.stamp{border-color:var(--stamp);background:var(--stamp-bg)}.spin{width:14px;height:14px;border:2px solid var(--agent-bg);border-top-color:var(--agent);border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.recon{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:18px}.recon .card{padding:14px 16px;display:grid;gap:4px}.recon .bal{font:700 1.3rem Geist,sans-serif}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.toolbar .input{width:auto}.toolbar .search{flex:1;min-width:180px}.daygroup+.daygroup{border-top:1px solid var(--line)}.day{display:flex;justify-content:space-between;padding:12px 18px 4px;font-size:.8rem;font-weight:600;color:var(--faint)}.lrow{display:grid;grid-template-columns:1fr 190px 120px 110px;gap:12px;align-items:center;padding:9px 18px}.lrow:hover{background:var(--paper)}.ask-box{display:flex;gap:8px}.ask-box .input{min-height:48px;font-size:1rem}.suggest{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.suggest button{border:1px solid var(--line);background:var(--card);border-radius:99px;padding:6px 12px;cursor:pointer;font-size:.88rem}.suggest button:hover{border-color:var(--teal)}.answer{font:500 1.15rem/1.45 Geist,sans-serif}table.data{width:100%;border-collapse:collapse;font-size:.9rem}table.data th,table.data td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line)}table.data th{font-weight:600;color:var(--muted);font-size:.8rem}table.data td.n,table.data th.n{text-align:right;font-variant-numeric:tabular-nums}details summary{cursor:pointer;color:var(--muted);font-size:.88rem;font-weight:600}details pre{background:var(--paper);border-radius:9px;padding:12px 14px;overflow:auto;margin:10px 0 0}.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.back{display:none}@media (max-width: 860px){.shell{grid-template-columns:1fr;grid-template-rows:1fr auto}.side{display:none}.page{padding:calc(16px + env(safe-area-inset-top)) 16px 24px}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);background:var(--card);padding-bottom:env(safe-area-inset-bottom)}.tabbar a{display:grid;justify-items:center;gap:2px;padding:8px 0 6px;font-size:.7rem;color:var(--muted);text-decoration:none;position:relative}.tabbar a.on{color:var(--teal)}.tabbar svg{width:22px;height:22px}.tabbar .count{position:absolute;top:4px;left:calc(50% + 6px);font-size:.65rem;font-weight:700;padding:0 5px;border-radius:99px;background:var(--teal);color:var(--paper)}.tabbar .count.agent{background:var(--agent)}.split{grid-template-columns:1fr}.split.has-detail>.master{display:none}.split:not(.has-detail)>.detail{display:none}.detail,.split>.master,.split>.detail{position:static;max-height:none;overflow:visible}.split>.detail{padding:0;margin:0}.back{display:inline-flex}.shortcuts{display:none}.kv{grid-template-columns:110px 1fr}.stats{grid-template-columns:repeat(2,1fr)}.lrow{grid-template-columns:1fr auto}.lrow .hide-sm{display:none}.big{font-size:1.7rem}}:root{--series-1: #2a78d6;--series-2: #eb6834;--grid: #E1EAE9;--axis: #6B7E83}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--series-1: #3987e5;--series-2: #d95926;--grid: #22363A;--axis: #8DA1A3}}:root[data-theme=dark]{--series-1: #3987e5;--series-2: #d95926;--grid: #22363A;--axis: #8DA1A3}.tiles3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:14px}.stat{display:grid;gap:4px}button.stat-link{text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform .12s,box-shadow .12s}button.stat-link:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-lg)}button.stat-link:disabled{cursor:default}svg .col-hit{cursor:pointer;outline:none}svg .col-hit:hover .col,svg .col-hit:focus-visible .col{filter:brightness(1.12)}svg .col-hit:focus-visible rect{stroke:var(--ink);stroke-width:2;stroke-dasharray:3 3}.stat-n{font:700 1.7rem Geist,sans-serif;letter-spacing:-.01em}.chart-card{display:grid;gap:6px;margin-bottom:14px;min-width:0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col>.card{margin-bottom:0}.viz{width:100%;min-width:0}.viz svg{display:block;overflow:visible}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:.82rem;color:var(--muted);align-items:center;margin-bottom:6px}.sw{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:4px}.sw.s1{background:var(--series-1)}.sw.s2{background:var(--series-2)}.sw.tick{width:3px;height:14px;border-radius:1px;background:var(--ink);margin-right:8px}.sw.avg{height:0;border-top:2px dashed var(--muted);border-radius:0;vertical-align:3px}svg .grid{stroke:var(--grid);stroke-width:1}svg .axis{fill:var(--axis);font-size:11px}svg .axis.strong{fill:var(--ink);font-weight:600}svg .line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}svg .line.s1{stroke:var(--series-1)}svg .line.s2{stroke:var(--series-2)}svg .area.s1{fill:var(--series-1);opacity:.1}svg .dot.s1{fill:var(--series-1)}svg .dot.s2{fill:var(--series-2)}svg .dot.ring{stroke:var(--card);stroke-width:2}svg .end-label{fill:var(--ink);font-size:12px;font-weight:600}svg .cross{stroke:var(--line-strong);stroke-width:1}svg .col.s1{fill:var(--series-1)}svg .col.partial{opacity:.45}svg .cap{fill:var(--ink);font-size:11px;font-weight:600}svg .avg{stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 4}.tip{position:absolute;pointer-events:none;background:var(--card);border:1px solid var(--line-strong);border-radius:9px;padding:8px 10px;font-size:.82rem;box-shadow:0 6px 20px #0000001f;display:grid;gap:2px;min-width:150px;z-index:5}.cbars{display:grid;gap:2px;margin-top:4px}.cbar{display:grid;grid-template-columns:minmax(110px,160px) 1fr 86px;align-items:center;gap:10px;width:100%;padding:7px 6px;border:0;background:none;border-radius:8px;text-align:left;cursor:pointer}button.cbar:hover{background:var(--paper)}.cbar-wrap.open>.cbar{background:var(--teal-soft)}.cbar-label{font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cbar-track{position:relative;height:18px}.cbar-fill{position:absolute;left:0;top:0;bottom:0;background:var(--series-1);border-radius:0 4px 4px 0;min-width:2px}.cbar-tick{position:absolute;top:-3px;bottom:-3px;width:3px;margin-left:-1.5px;background:var(--ink);border-radius:1px;box-shadow:0 0 0 2px var(--card)}.cbar-val{text-align:right;font-size:.88rem;font-weight:600}.cbar-subs{padding:4px 6px 10px 20px;display:grid;gap:2px;border-left:2px solid var(--teal-soft);margin-left:8px}.sub-bar{padding:4px 0}button.sub-bar:hover .cbar-label{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.sub-filter{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.sub-bar .cbar-label{font-weight:500;color:var(--muted)}.sub-bar .cbar-track{height:12px}.linkish{background:none;border:0;padding:0;color:var(--teal);font-weight:600;cursor:pointer;font-size:.85rem;justify-self:start}.linkish:hover{text-decoration:underline}.picker{display:grid;gap:10px}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.tile{position:relative;display:grid;justify-items:center;gap:4px;padding:12px 6px 10px;min-height:84px;border:2px solid var(--line);border-radius:14px;background:var(--card);cursor:pointer;text-align:center}.tile:hover{border-color:var(--teal)}.tile.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 2px var(--teal) inset}.tile.ghost{border-style:dashed;color:var(--muted)}.tile-emoji{font-size:1.7rem;line-height:1}.tile-name{font-size:.82rem;font-weight:600;line-height:1.2}.tile-key{position:absolute;top:5px;left:6px;font-size:.62rem;padding:0 4px}.subs-box{display:grid;gap:8px;padding:12px;background:var(--paper);border-radius:12px}.subs{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.sub{border:1.5px solid var(--line-strong);background:var(--card);border-radius:99px;padding:6px 14px;cursor:pointer;font-size:.88rem;font-weight:500;min-height:36px}.sub:hover{border-color:var(--teal)}.sub.on{background:var(--teal);border-color:var(--teal);color:var(--paper)}.sub.add{border-style:dashed;color:var(--teal);font-weight:600}.sub.mini{font-size:.72rem;padding:1px 8px;min-height:0;cursor:inherit}.add-sub{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}.add-sub .input{width:180px;min-height:36px}.add-sub .btn{min-height:36px}.err{color:var(--stamp);font-size:.85rem;font-weight:600}.newcat{display:grid;gap:12px}.step{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1rem}.step-n{width:26px;height:26px;border-radius:50%;background:var(--teal);color:var(--paper);display:grid;place-items:center;font-size:.85rem}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:6px}.emoji-grid button{font-size:1.5rem;height:48px;border-radius:12px;border:2px solid var(--line);background:var(--card);cursor:pointer}.emoji-grid button:hover{border-color:var(--teal)}.emoji-grid button.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 2px var(--teal) inset}.big-input{min-height:50px;font-size:1.05rem}.btn.big{min-height:50px;padding:0 20px;font-size:1rem;border-radius:12px}.center{text-align:center}.acct-filter{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}.inbox-filters{display:flex;align-items:flex-start;gap:12px}.inbox-filters .acct-filter{flex:1;min-width:0}.inbox-sort{margin-left:auto;margin-bottom:14px;display:flex;align-items:center;gap:6px;color:var(--muted);flex:none}.inbox-sort select{width:auto;min-height:38px}@media (max-width: 640px){.inbox-filters{flex-direction:column;align-items:stretch;gap:0}.inbox-sort{margin-left:0}}.acct-filter button{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1.5px solid var(--line);background:var(--card);border-radius:99px;padding:6px 12px;cursor:pointer;font-size:.86rem;font-weight:500;min-height:38px}.acct-filter button b{font-size:.75rem;background:var(--paper);border-radius:99px;padding:0 7px}.acct-filter button.on{border-color:var(--teal);background:var(--teal-soft)}.acct-inline{display:inline-flex;align-items:center;gap:5px}.chip.acct{gap:5px}.chip.acct.credit_card{background:var(--agent-bg);color:var(--agent)}.bulk{display:flex;align-items:center;gap:14px;padding:12px 16px;margin-bottom:14px;flex-wrap:wrap;border-color:var(--teal)}.deck-wrap{max-width:640px;margin:0 auto}.deck-progress{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:.9rem;color:var(--muted)}.deck{position:relative}.deck-shadow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;background:var(--card);border:1px solid var(--line)}.paycard{position:relative;z-index:3;padding:22px;display:grid;gap:16px;border-radius:18px;touch-action:pan-y;-webkit-user-select:none;user-select:none}.swipe-hint{position:absolute;top:18px;padding:6px 14px;border-radius:10px;font-weight:800;font-size:1.1rem;border:3px solid;transform:rotate(-8deg);z-index:4}.swipe-hint.yes{left:18px;color:var(--credit);border-color:var(--credit);background:var(--credit-bg)}.swipe-hint.later{right:18px;color:var(--muted);border-color:var(--line-strong);background:var(--card);transform:rotate(8deg)}.pay-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.pay-amount{font:700 2.6rem/1 Geist,sans-serif;letter-spacing:-.02em}.pay-merchant{font-size:1.15rem;margin-top:6px}.pay-meta{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.pay-question{font-size:1.15rem}.pay-actions{display:grid;grid-template-columns:1fr 2fr;gap:10px}.make-big{display:flex;align-items:center;gap:16px;width:100%;padding:18px 20px;margin-bottom:16px;cursor:pointer;text-align:left;border:2px dashed var(--teal);background:var(--teal-soft);border-radius:16px;font-size:1.05rem}.make-big>span:last-child{display:grid;gap:2px}.make-big .tile-emoji{font-size:2rem}.cat-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.cat-card{display:grid;gap:4px;justify-items:start;padding:16px;cursor:pointer;text-align:left;border-radius:16px}.cat-card:hover{border-color:var(--teal)}.cat-emoji{font-size:2.2rem;line-height:1.1}.cat-name{font:700 1.05rem Geist,sans-serif}.cat-subs{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.cat-edit{color:var(--teal);font-weight:600;margin-top:4px}.edit-row{display:flex;gap:14px;align-items:flex-end}.pic-btn{width:76px;height:76px;border-radius:16px;border:2px solid var(--line);background:var(--card);font-size:2.2rem;cursor:pointer;display:grid;place-items:center;gap:0;line-height:1;padding-top:6px;flex:none}.pic-btn .small{font-size:.65rem;color:var(--teal);font-weight:700}.sub-list{display:grid;gap:4px;margin:10px 0}.sub-row{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;background:var(--paper);flex-wrap:wrap;min-height:46px}.sub-row .input{flex:1;min-width:140px;min-height:36px}.sub-row .btn{min-height:34px}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e1a1c73;display:grid;place-items:center;padding:16px;z-index:40}.modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:20px 22px 22px;border-radius:18px}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.modal-head h2{font-size:1.3rem}.btn.close{min-height:36px;width:36px;padding:0;font-size:1rem}.consent{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px;background:var(--paper);border-radius:12px}.consent ul{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:.92rem}.flow-card{margin-bottom:8px}.flow{display:flex;align-items:stretch;gap:0}.stage{flex:1 1 0;min-width:0;display:grid;justify-items:center;align-content:start;gap:4px;text-align:center;padding:14px 8px;border-radius:14px;border:2px solid var(--line);background:var(--card);font:inherit;color:inherit}button.stage{cursor:pointer}.stage-ic{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--credit-bg);color:var(--credit)}.stage.warn .stage-ic{background:var(--agent-bg);color:var(--agent)}.stage.bad .stage-ic{background:var(--stamp-bg);color:var(--stamp)}.stage.off{border-style:dashed}.stage.off .stage-ic{background:var(--paper);color:var(--faint)}.stage b{font-size:.92rem}.stage .small{color:var(--muted)}.pipe{flex:0 0 44px;align-self:center;height:4px;background:var(--line);border-radius:2px;position:relative;overflow:hidden}.pipe.off{background:repeating-linear-gradient(90deg,var(--line) 0 6px,transparent 6px 11px)}.pipe.broken{background:repeating-linear-gradient(90deg,var(--stamp) 0 6px,transparent 6px 11px)}.pipe span{position:absolute;top:-2px;width:8px;height:8px;border-radius:50%;background:var(--teal);opacity:0}.pipe.active{background:var(--teal-soft)}.pipe.active span{animation:flow 1.1s linear infinite}.pipe.active span:nth-child(2){animation-delay:.37s}.pipe.active span:nth-child(3){animation-delay:.74s}@keyframes flow{0%{left:-8px;opacity:0}15%{opacity:1}85%{opacity:1}to{left:100%;opacity:0}}.spin-icon{display:inline-flex;animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){.pipe.active span,.spin-icon,.spin{animation:none}.pipe.active span{opacity:1;left:45%}}.sec-h{margin:26px 0 10px}.acct-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-top:1px solid var(--line)}.acct-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--teal-soft);color:var(--teal);flex:none}.acct-ic.credit_card{background:var(--agent-bg);color:var(--agent)}.acct-ic.debit_card{background:var(--paper);color:var(--ink)}.chip.kind.credit_card{background:var(--agent-bg);color:var(--agent)}.chip.kind.debit_card{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.acct-side{display:grid;justify-items:end;gap:4px;text-align:right;flex:none}.cloud-card{display:flex;gap:16px;align-items:flex-start}.cloud-ic{width:52px;height:52px;border-radius:14px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;flex:none}.side-foot{text-decoration:none;border-radius:10px}.side-foot:hover{background:var(--teal-soft)}.side-foot span{display:flex;align-items:center;gap:4px}.more-row{display:flex;align-items:center;gap:14px;padding:14px 16px;color:inherit;text-decoration:none;border-top:1px solid var(--line)}.more-row:first-child{border-top:0}@media (hover: none){.hide-touch{display:none}}@media (max-width: 1000px){.two-col{grid-template-columns:1fr}}@media (max-width: 860px){.flow{flex-direction:column}.stage{grid-template-columns:44px 1fr;justify-items:start;text-align:left;align-items:center;column-gap:12px}.stage .stage-ic{grid-row:span 2}.pipe{flex:0 0 22px;width:4px;height:auto;align-self:auto;margin-left:30px}.pipe.off{background:repeating-linear-gradient(180deg,var(--line) 0 6px,transparent 6px 11px)}.pipe.broken{background:repeating-linear-gradient(180deg,var(--stamp) 0 6px,transparent 6px 11px)}.pipe span{left:-2px!important}.pipe.active span{animation-name:flow-v}.acct-row{flex-wrap:wrap}.acct-side{justify-items:start;text-align:left;width:100%;padding-left:54px;grid-auto-flow:column;justify-content:start;align-items:center;gap:10px}.consent{grid-template-columns:1fr}.backdrop{place-items:end stretch;padding:0}.modal{width:100%;border-radius:18px 18px 0 0;max-height:90vh;padding-bottom:calc(22px + env(safe-area-inset-bottom))}.paycard{padding:18px 16px}.pay-amount{font-size:2.2rem}.tiles{grid-template-columns:repeat(3,1fr)}.tile-key{display:none}.cbar{grid-template-columns:100px 1fr 74px;gap:8px}.cat-cards{grid-template-columns:repeat(2,1fr)}.lrow .hide-sm{display:none}}@keyframes flow-v{0%{top:-8px;opacity:0}15%{opacity:1}85%{opacity:1}to{top:100%;opacity:0}}.chart-card>.seg,.chart-card .seg{justify-self:start;width:max-content;max-width:100%}.cbar-track{background:linear-gradient(var(--grid),var(--grid)) left center / 100% 1px no-repeat}svg .cap,svg .end-label{paint-order:stroke;stroke:var(--card);stroke-width:4px;stroke-linejoin:round}.pill{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:99px;font-weight:700;font-size:.85rem;white-space:nowrap}.pill.ok{background:var(--credit-bg);color:var(--credit)}.pill.bad{background:var(--stamp-bg);color:var(--stamp)}.pill.warn{background:var(--agent-bg);color:var(--agent)}.pill.plain{background:var(--paper);color:var(--muted)}.bills-head{display:flex;align-items:center;gap:18px;margin-bottom:14px}.bills-big{font:700 1.25rem Geist,sans-serif;display:block}.ring{--p: 0;width:72px;height:72px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--credit) calc(var(--p) * 360deg),var(--paper) 0)}.ring span{width:54px;height:54px;border-radius:50%;background:var(--card);display:grid;place-items:center;font-weight:700}.suggest-card{display:grid;gap:8px;margin-bottom:6px;border-color:var(--teal);border-style:dashed}.sg-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line);flex-wrap:wrap}.bill{overflow:hidden}.bill.late{border-color:var(--stamp);box-shadow:inset 4px 0 0 var(--stamp)}.bill.today,.bill.soon{box-shadow:inset 4px 0 0 var(--agent)}.bill-main{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px 8px;background:none;border:0;text-align:left;cursor:pointer}.bill-emoji{font-size:1.8rem;width:48px;height:48px;border-radius:14px;background:var(--paper);display:grid;place-items:center;flex:none}.bill-name{display:block;font-size:1.05rem}.bill-sub{display:block}.bill-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 16px 14px 78px;flex-wrap:wrap}.bill-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bill-paid-with{margin-left:auto}.hdots{display:inline-flex;gap:6px;flex-wrap:wrap}.hdot{display:grid;justify-items:center;gap:2px;font-size:.66rem;color:var(--faint);min-width:26px}.hdot i{width:12px;height:12px;border-radius:50%;border:2px solid var(--line-strong)}.hdot.paid i{background:var(--credit);border-color:var(--credit)}.hdot.missed i{background:var(--stamp);border-color:var(--stamp)}.hdot.skipped i{background:var(--line);border-color:var(--line)}.hdot.open i{border-style:dashed}.hdot.before i{opacity:.3}.bill-line,.track-bill{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--paper);color:inherit;text-decoration:none;border:1.5px solid transparent;font:inherit;text-align:left;width:100%;cursor:pointer}.track-bill{border:1.5px dashed var(--line-strong);background:none}.track-bill b{color:var(--teal)}.track-bill:hover,.bill-line:hover{border-color:var(--teal)}.bill-tag{font-size:.7rem;font-weight:600;color:var(--teal);background:var(--teal-soft);border-radius:99px;padding:1px 7px;margin-left:6px;vertical-align:1px}.bill-form label .step-n{display:inline-grid;margin-right:6px;vertical-align:-2px;width:22px;height:22px;font-size:.78rem}.bill-form .field>label{font-size:1rem;color:var(--ink);font-weight:700}.big-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.big-choice.days{grid-template-columns:repeat(7,1fr)}.big-choice button{min-height:48px;border-radius:12px;border:2px solid var(--line);background:var(--card);font-weight:600;cursor:pointer;padding:0 4px}.big-choice button.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 2px var(--teal) inset}.stepper{display:inline-flex;align-items:center;border:2px solid var(--line);border-radius:12px;overflow:hidden}.stepper button{width:44px;height:44px;border:0;background:var(--paper);font-size:1.2rem;cursor:pointer}.stepper b{min-width:56px;text-align:center}.amt-input{display:flex;align-items:center;gap:8px;font-size:1.3rem;font-weight:700}.tabbar .count.stamp,.nav .count.stamp{background:var(--stamp)}@media (max-width: 860px){.bill-foot{padding-left:16px}.bill-main .pill{font-size:.78rem;padding:4px 9px}.bills-head{gap:14px}}@media (max-width: 860px){.sg-row{display:grid;grid-template-columns:48px 1fr 1fr;gap:8px 12px}.sg-row .grow{grid-column:2 / -1}.sg-row .btn{grid-column:span 1}.sg-row .btn.primary{grid-column:2}}body{font:400 15px/1.55 Geist,system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:-.005em;font-feature-settings:"ss01","cv11"}h1,h2,h3{font-family:Geist,system-ui,sans-serif;letter-spacing:-.025em}h1{font-size:2rem;font-weight:600}h2{font-size:1.15rem;font-weight:600}h3{font-size:1rem;font-weight:600}.num,.big,.stat-n,.pay-amount,.bal,.bills-big{font-variant-numeric:tabular-nums}::selection{background:var(--teal-soft)}.shell{grid-template-columns:252px 1fr;background:var(--paper)}.content{background:radial-gradient(900px 360px at 85% -120px,var(--glow),transparent 70%),var(--paper)}.page{padding:36px 40px 64px}.page-head{margin-bottom:24px}.page-head p{font-size:.98rem}.side{border-right:0;padding:20px 14px 14px;gap:2px;background:var(--paper)}.brand{padding:6px 10px 18px;font:600 1.1rem Geist,sans-serif;letter-spacing:-.02em}.brand img{width:28px;height:28px;border-radius:8px}.search-btn{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;margin-bottom:14px;cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:12px;color:var(--muted);font-size:.9rem;box-shadow:var(--shadow)}.search-btn:hover{border-color:var(--line-strong);color:var(--ink)}.search-btn kbd{border:0;background:var(--paper)}.search-btn.big{padding:14px 16px;margin:14px 0;font-size:1rem}.nav-group{display:grid;gap:2px}.nav-label{font-size:.72rem;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.08em;padding:18px 12px 6px}.nav{padding:9px 12px;border-radius:12px;font-weight:500;font-size:.94rem;gap:12px}.nav svg{width:18px;height:18px;stroke-width:1.7}.nav:hover{background:#7f7f7f14}.nav.on{background:var(--card);box-shadow:var(--shadow);color:var(--ink)}.nav.on svg{color:var(--teal)}.nav .count{font-size:.72rem;padding:1px 8px;background:var(--ink);color:var(--card)}.nav .count.agent{background:var(--agent);color:#fff}.nav .count.stamp{background:var(--stamp);color:#fff}.sync-chip{margin-top:auto;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;text-decoration:none;color:inherit;font-size:.8rem}.sync-chip:hover{background:#7f7f7f14}.sync-chip b{display:block;font-weight:600;font-size:.82rem}.sync-chip span span{color:var(--muted)}.dot.pulse{background:var(--teal);box-shadow:0 0 0 0 var(--teal);animation:pulse 1.2s infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--teal) 60%,transparent)}to{box-shadow:0 0 0 8px transparent}}.user-wrap{position:relative;margin-top:6px}.user-btn{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:12px;cursor:pointer;border:1px solid var(--line);background:var(--card);font-weight:500;font-size:.9rem;text-align:left}.user-btn:hover{border-color:var(--line-strong)}.avatar{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;flex:none;background:linear-gradient(135deg,#0f766e,#14b8a6 60%,#a7f3d0);color:#fff;font-weight:600;font-size:.78rem;letter-spacing:.02em}.avatar.sm{width:24px;height:24px;font-size:.62rem}.avatar.xl{width:52px;height:52px;font-size:1.05rem}.user-menu{position:absolute;bottom:calc(100% + 8px);left:0;right:0;padding:6px;display:grid;gap:2px;z-index:20;box-shadow:var(--shadow-lg);border-radius:16px;animation:pop .14s ease-out}.um-head{padding:8px 10px 10px;display:grid;border-bottom:1px solid var(--line);margin-bottom:4px}.user-menu a,.user-menu button{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;color:inherit;text-decoration:none;background:none;border:0;cursor:pointer;font-size:.9rem;text-align:left}.user-menu a:hover,.user-menu button:hover{background:var(--paper)}.user-menu .danger{color:var(--stamp)}@keyframes pop{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}.card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--card)}.pad{padding:20px 22px}.divider{background:var(--line)}.section-title{font-size:.72rem;letter-spacing:.08em;color:var(--faint)}.list-head{font-size:.72rem;letter-spacing:.08em}.raw{border-style:solid;border-color:var(--line);background:var(--surface);border-radius:12px}.note{border-radius:12px;border-left-width:0;box-shadow:inset 3px 0 0 var(--agent)}.note.stamp{box-shadow:inset 3px 0 0 var(--stamp)}.btn{min-height:40px;padding:0 16px;border-radius:12px;border:1px solid var(--line-strong);background:var(--card);font-weight:550;letter-spacing:-.01em;transition:transform .08s,box-shadow .15s,background .15s,border-color .15s}.btn:hover{border-color:var(--ink)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:0 1px #ffffff1f inset,0 6px 16px -8px #00000073}.btn.primary:hover{filter:none;background:color-mix(in srgb,var(--primary) 86%,var(--teal))}.btn.primary:disabled{box-shadow:none}.btn.ghost{border-color:transparent}.btn.ghost:hover{background:#7f7f7f14;border-color:transparent}.btn.danger{color:var(--stamp)}.btn.danger:not(.ghost){border-color:color-mix(in srgb,var(--stamp) 35%,transparent)}.btn.big{min-height:52px;border-radius:14px;font-size:1rem}.btn.ghost-outline{background:transparent;border:1px dashed var(--line-strong);color:var(--muted);font-weight:500}.btn.ghost-outline:hover{color:var(--ink);border-color:var(--ink)}.btn.primary kbd{border-color:color-mix(in srgb,var(--on-primary) 30%,transparent);color:var(--on-primary)}kbd{border-radius:6px;border-width:1px;background:var(--paper);border-color:var(--line);color:var(--muted);font-family:Geist Mono,ui-monospace,monospace}.input,select.input{border-radius:12px;border:1px solid var(--line-strong);background:var(--card);min-height:44px;transition:border-color .15s,box-shadow .15s}.input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:8px}.seg{background:#7f7f7f1a;border:0;border-radius:12px;padding:3px}.seg button{border-radius:9px;padding:7px 14px;font-weight:550}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px #00000014,0 2px 8px -4px #00000026}.chip{border-radius:8px;font-weight:550;padding:3px 9px}.chip.plain{border-color:var(--line)}.check input{accent-color:var(--ink)}.linkish{color:var(--teal)}.meter{background:#7f7f7f24}.meter>i{background:var(--ink)}.item{border-radius:12px;padding:12px 14px}.item:hover{background:var(--surface)}.item.on{background:var(--teal-soft);border-color:transparent;box-shadow:inset 3px 0 0 var(--teal)}.lrow{padding:12px 22px}.lrow:hover{background:var(--surface)}.day{padding:16px 22px 6px}.paycard{border-radius:28px;padding:28px;box-shadow:var(--shadow-lg)}.deck-shadow{border-radius:28px}.pay-amount{font:600 3rem/1 Geist,sans-serif;letter-spacing:-.045em}.pay-question{font-size:1.2rem;letter-spacing:-.015em}.tile{border:1px solid var(--line);border-radius:18px;background:var(--surface);transition:transform .12s,box-shadow .15s,background .15s}.tile:hover{transform:translateY(-2px);background:var(--card);box-shadow:var(--shadow);border-color:var(--line-strong)}.tile.on{background:var(--card);border-color:var(--ink);box-shadow:0 0 0 1.5px var(--ink) inset,var(--shadow)}.tile-name{font-weight:550}.subs-box{background:var(--surface);border:1px solid var(--line);border-radius:16px}.sub{border:1px solid var(--line-strong)}.sub.on{background:var(--ink);border-color:var(--ink);color:var(--card)}.acct-filter button{border:1px solid var(--line);border-radius:12px}.acct-filter button.on{border-color:var(--ink);background:var(--card);box-shadow:var(--shadow)}.deck-progress .meter{height:4px}.bulk{border-color:var(--line);box-shadow:var(--shadow)}.older-backlog{align-items:center}.older-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--paper);color:var(--muted)}.stat-n{font:600 2rem Geist,sans-serif;letter-spacing:-.04em}.tiles3 .stat:first-child{background:radial-gradient(500px 200px at 100% 0,rgb(45 212 191 / .35),transparent 60%),linear-gradient(160deg,#0e1311,#17312c);color:#f1f5f3;border-color:transparent}.tiles3 .stat:first-child .muted{color:#f1f5f3b3}.big{font-weight:600;letter-spacing:-.04em}.tip{border-radius:12px;border-color:var(--line);box-shadow:var(--shadow-lg)}.bill{border-radius:20px}.bill-emoji,.acct-ic{border-radius:14px;background:var(--surface);border:1px solid var(--line)}.bills-head{background:radial-gradient(500px 220px at 100% 0,var(--glow),transparent 70%),var(--card)}.ring span{font-weight:600}.pill{font-weight:600;border-radius:10px}.cat-card{border-radius:20px;transition:transform .12s,box-shadow .15s}.cat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--line-strong)}.make-big{border:1px dashed var(--line-strong);background:var(--card);border-radius:20px}.make-big:hover{border-color:var(--ink)}.stage{border:1px solid var(--line);border-radius:18px;background:var(--surface)}.flow-card{background:radial-gradient(700px 240px at 50% -60px,var(--glow),transparent 70%),var(--card)}.emoji-grid button,.big-choice button{border:1px solid var(--line);border-radius:14px}.emoji-grid button.on,.big-choice button.on{border-color:var(--ink);background:var(--card);box-shadow:0 0 0 1.5px var(--ink) inset}.step-n{background:var(--ink);color:var(--card)}.backdrop{background:#0a0c0b61;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade .15s ease-out}@keyframes fade{0%{opacity:0}}.modal{border-radius:24px;padding:24px 26px 26px;box-shadow:var(--shadow-lg);animation:pop .18s ease-out}.toast{border-radius:14px;padding:12px 16px;box-shadow:var(--shadow-lg);animation:pop .18s ease-out;background:var(--primary);color:var(--on-primary)}.toast button{color:inherit}.cmd-backdrop{place-items:start center;padding-top:12vh}.cmd{width:min(620px,100%);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg);animation:pop .15s ease-out}.cmd-input{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line);color:var(--muted)}.cmd-input input{flex:1;border:0;background:none;font-size:1.05rem;outline:none;color:var(--ink)}.cmd-list{max-height:50vh;overflow:auto;padding:6px}.cmd-group{font-size:.7rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:10px 12px 4px}.cmd-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:10px;border:0;background:none;cursor:pointer;text-align:left;font-size:.95rem}.cmd-item.on{background:var(--paper)}.cmd-item svg{color:var(--muted)}.pw-checks,.pw-meter ul{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:.85rem;color:var(--faint)}.pw-checks li.ok,.pw-meter li.ok{color:var(--credit)}.more-profile{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}.signout-mobile{width:100%;margin-top:18px}.auth-box{width:min(400px,100%)}.auth-form{display:grid;gap:18px}.auth-title{font-size:1.75rem;letter-spacing:-.035em;margin-bottom:4px}.auth-input{min-height:50px;font-size:1rem;padding:0 14px}.field label{color:var(--ink);font-weight:550;font-size:.88rem}.pw-wrap{position:relative}.pw-wrap .input{padding-right:70px}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);font-weight:600;font-size:.82rem;padding:8px 10px;cursor:pointer;border-radius:8px}.pw-eye:hover{color:var(--ink);background:var(--paper)}.pw-meter{display:grid;gap:8px;margin-top:-6px}.pw-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.pw-bars i{height:4px;border-radius:4px;background:#7f7f7f2e}.pw-bars i.on.s1{background:var(--stamp)}.pw-bars i.on.s2{background:var(--agent)}.pw-bars i.on.s3,.pw-bars i.on.s4{background:var(--credit)}.auth-err{color:var(--stamp);background:var(--stamp-bg);padding:10px 12px;border-radius:12px;font-size:.9rem;font-weight:500}.auth-submit{width:100%}.auth-switch{text-align:center;color:var(--muted);font-size:.92rem}.auth-switch .linkish{font-size:.92rem}.auth-sent{font-size:2.6rem}.spin.light{border-color:#7f7f7f59;border-top-color:currentColor;width:18px;height:18px}@media (max-width: 860px){.shell{grid-template-rows:1fr}.page{padding:calc(20px + env(safe-area-inset-top)) 16px calc(112px + env(safe-area-inset-bottom))}h1{font-size:1.75rem}.tabbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:30;border:1px solid var(--line);border-radius:24px;padding:6px;gap:2px;background:color-mix(in srgb,var(--card) 78%,transparent);backdrop-filter:saturate(1.6) blur(18px);-webkit-backdrop-filter:saturate(1.6) blur(18px);box-shadow:var(--shadow-lg)}.tabbar a{border-radius:18px;padding:8px 0 6px;font-weight:500;font-size:.68rem}.tabbar a.on{color:var(--ink);background:var(--card);box-shadow:0 1px 2px #0000000f,0 4px 12px -6px #0003}.tabbar a.on svg{color:var(--teal)}.tabbar .count{background:var(--ink);color:var(--card)}.tabbar .count.stamp{background:var(--stamp);color:#fff}.tabbar .count.agent{background:var(--agent);color:#fff}.toast{bottom:calc(100px + env(safe-area-inset-bottom))}.paycard{padding:20px 18px;border-radius:24px}.pay-amount{font-size:2.4rem}}.search-btn,.user-btn{text-align:left}select.input{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;cursor:pointer;font-weight:500;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='%238B948F' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.pw-label{font-size:.8rem;font-weight:600}@media (max-width: 860px){.shell{grid-template-columns:1fr}}.searchbar{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 16px;margin-bottom:10px;border-radius:16px}.searchbar:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px var(--teal-soft),var(--shadow)}.sb-icon{font-size:1.3rem;color:var(--faint);line-height:1}.sb-input{flex:1;border:0;background:none;outline:none;min-height:44px;font-size:1rem;min-width:0}.sb-input::-webkit-search-cancel-button{display:none}.sb-clear{min-height:34px}.result-bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:2px 4px 12px;font-size:.92rem}.examples{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:0 2px 12px}.sub.mini-btn{min-height:30px;padding:3px 12px;font-size:.82rem;font-family:Geist Mono,ui-monospace,monospace}mark{background:color-mix(in srgb,var(--teal) 22%,transparent);color:inherit;border-radius:4px;padding:0 1px}button.lrow{width:100%;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--line);flex-wrap:wrap}.m-search{display:none}@media (max-width: 860px){.m-search{display:grid;place-items:center;position:fixed;z-index:25;top:calc(14px + env(safe-area-inset-top));right:14px;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);cursor:pointer;color:var(--ink);background:color-mix(in srgb,var(--card) 80%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow)}.page-head{padding-right:48px}.cmd-backdrop{padding-top:calc(10px + env(safe-area-inset-top))}.pager{padding:14px 16px}}a{color:var(--teal);text-decoration:none;font-weight:550}a:hover{text-decoration:underline;text-underline-offset:3px}.nav,.nav:hover,.tabbar a,.more-row,.sync-chip,.bill-line,.more-profile,a.btn,.user-menu a,.cmd-item{text-decoration:none!important}.nav,.tabbar a,.more-row,.sync-chip,.bill-line,.more-profile,.user-menu a{color:inherit;font-weight:inherit}.nav{color:var(--muted);font-weight:500}.nav.on{color:var(--ink)}.tabbar a{color:var(--muted)}.tabbar a.on{color:var(--ink)}a.btn{color:inherit}a.btn.primary{color:var(--on-primary)}.sb-icon{display:grid;place-items:center}@media (max-width: 860px){.recon{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin:0 -16px 14px;padding:2px 16px 6px;scrollbar-width:none}.recon .card{flex:0 0 78%;scroll-snap-align:start}}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-size:.8rem;font-weight:550;white-space:nowrap}.tag-chip.small{font-size:.72rem;padding:1px 7px}.row-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.tag-picker{display:grid;gap:10px}.tag-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tag-row>.small{margin-right:4px}.tag-toggle{min-height:36px;padding:4px 14px;border-radius:99px;border:1px solid var(--line-strong);background:var(--card);cursor:pointer;font-weight:550;font-size:.88rem;transition:background .12s,border-color .12s}.tag-toggle:hover{border-color:var(--ink)}.tag-toggle.on{background:var(--ink);border-color:var(--ink);color:var(--card)}.tag-toggle.add{border-style:dashed;color:var(--teal)}.tag-offer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border-radius:14px;background:var(--teal-soft);font-size:.92rem}.new-tag{display:grid;gap:8px;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.new-tag .row{flex-wrap:wrap}.new-tag .input{flex:1;min-width:160px}.tag-emojis{display:flex;flex-wrap:wrap;gap:4px}.tag-emojis button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--card);font-size:1.15rem;cursor:pointer}.tag-emojis button.on{border-color:var(--ink);box-shadow:0 0 0 1.5px var(--ink) inset}.bulk-tag{position:relative}.bulk-tag .btn{min-height:34px}.bulk-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:15;width:280px;padding:8px;display:grid;gap:2px;box-shadow:var(--shadow-lg);border-radius:16px;animation:pop .14s ease-out}.bulk-item{text-align:left;border:0;background:none;padding:10px;border-radius:10px;cursor:pointer;font-weight:550}.bulk-item:hover{background:var(--paper)}.bulk-item.add{color:var(--teal)}.tag-section{margin-bottom:18px}.tag-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.tag-card{display:grid;padding:0;overflow:hidden}.tag-card-main{display:grid;gap:10px;padding:18px 20px 12px;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}.tag-card-main:hover{background:var(--surface)}.tag-title{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:1.02rem}.tag-emoji{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);font-size:1.15rem}.tag-amount{font:600 1.8rem Geist,sans-serif;letter-spacing:-.04em}.tag-facts{display:grid;gap:2px;color:var(--muted)}.tag-facts b{color:var(--ink);font-weight:600}.spark{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;height:64px;align-items:end;margin-top:4px}.spark-col{display:grid;grid-template-rows:1fr auto;height:100%;gap:3px;text-align:center}.spark-col i{align-self:end;display:block;width:100%;max-width:22px;justify-self:center;background:var(--series-1);border-radius:4px 4px 0 0;opacity:.85}.spark-col.current i{opacity:.45}.spark-col small{font-size:.62rem;color:var(--faint)}.tag-compare{padding:0 20px 14px;text-align:left}.tag-card.new{place-items:center;min-height:200px;padding:14px;border-style:dashed;box-shadow:none;background:transparent}.tag-new-btn{display:grid;gap:4px;justify-items:center;border:0;background:none;cursor:pointer;font-weight:600;color:var(--ink);font-size:1rem}.tag-new-btn span{font-size:1.8rem;color:var(--teal)}.tag-new-btn small{color:var(--muted);font-weight:400;font-size:.8rem}.tag-manage{display:grid}.tag-manage-row{display:flex;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid var(--line);flex-wrap:wrap}.tag-manage-row:first-child{border-top:0}button.tag-manage-row{width:100%;border-left:0;border-right:0;border-bottom:0;background:none;cursor:pointer;text-align:left;font:inherit;color:var(--teal)}.tag-manage-row>.new-tag{flex:1}.rule-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:6px}.rule-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 10px;border-radius:99px;background:var(--teal-soft);font-size:.78rem;font-weight:550}.rule-chip button{border:0;background:none;cursor:pointer;width:20px;height:20px;border-radius:50%;color:var(--muted)}.rule-chip button:hover{background:var(--card);color:var(--stamp)}@media (max-width: 860px){.bulk-pop{position:fixed;left:12px;right:12px;top:auto;bottom:calc(96px + env(safe-area-inset-bottom));width:auto}.tag-cards{grid-template-columns:1fr}}.rule-chip.cat{background:var(--surface);border:1px solid var(--line)}.rule-form{display:grid;gap:10px;margin-top:10px;padding:14px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.rule-form-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:550}.rule-form-row .input{width:auto;min-height:40px}.amt-small{width:90px!important}.auto-hint{padding:10px 14px;border-radius:12px;background:var(--teal-soft);font-size:.92rem;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.tag-manage-row>.grow{flex:1 1 260px}:root{--t0-bg: #E6F4EA;--t0-fg: #1E7344;--t1-bg: #E7EFFA;--t1-fg: #2A5CA8;--t2-bg: #FAF0E0;--t2-fg: #93570C;--t3-bg: #FBE9EC;--t3-fg: #AC344C;--t4-bg: #EFEBFA;--t4-fg: #5841B2;--t5-bg: #E1F2F0;--t5-fg: #0E6B63;--t6-bg: #ECEFF1;--t6-fg: #45525B;--t7-bg: #FCECE2;--t7-fg: #AE4D1B}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--t0-bg: rgb(74 222 128 / .13);--t0-fg: #7EE2A6;--t1-bg: rgb(96 165 250 / .14);--t1-fg: #9CC3FA;--t2-bg: rgb(251 191 36 / .13);--t2-fg: #F5C46B;--t3-bg: rgb(251 113 133 / .13);--t3-fg: #F7A1B2;--t4-bg: rgb(167 139 250 / .15);--t4-fg: #C3B3FB;--t5-bg: rgb(45 212 191 / .13);--t5-fg: #7FE0D2;--t6-bg: rgb(148 163 184 / .14);--t6-fg: #C2CCD6;--t7-bg: rgb(251 146 60 / .13);--t7-fg: #F8B37E}}:root[data-theme=dark]{--t0-bg: rgb(74 222 128 / .13);--t0-fg: #7EE2A6;--t1-bg: rgb(96 165 250 / .14);--t1-fg: #9CC3FA;--t2-bg: rgb(251 191 36 / .13);--t2-fg: #F5C46B;--t3-bg: rgb(251 113 133 / .13);--t3-fg: #F7A1B2;--t4-bg: rgb(167 139 250 / .15);--t4-fg: #C3B3FB;--t5-bg: rgb(45 212 191 / .13);--t5-fg: #7FE0D2;--t6-bg: rgb(148 163 184 / .14);--t6-fg: #C2CCD6;--t7-bg: rgb(251 146 60 / .13);--t7-fg: #F8B37E}.glyph{display:inline-grid;place-items:center;flex:none;border-radius:10px}.glyph.xs{width:20px;height:20px;border-radius:6px}.glyph.sm{width:26px;height:26px;border-radius:8px}.glyph.md{width:34px;height:34px;border-radius:10px}.glyph.lg{width:44px;height:44px;border-radius:13px}.glyph.xl{width:56px;height:56px;border-radius:16px}.glyph.t0{background:var(--t0-bg);color:var(--t0-fg)}.glyph.t1{background:var(--t1-bg);color:var(--t1-fg)}.glyph.t2{background:var(--t2-bg);color:var(--t2-fg)}.glyph.t3{background:var(--t3-bg);color:var(--t3-fg)}.glyph.t4{background:var(--t4-bg);color:var(--t4-fg)}.glyph.t5{background:var(--t5-bg);color:var(--t5-fg)}.glyph.t6{background:var(--t6-bg);color:var(--t6-fg)}.glyph.t7{background:var(--t7-bg);color:var(--t7-fg)}.glyph-plain{flex:none;vertical-align:-2px;color:var(--muted)}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:6px;max-height:232px;overflow:auto;padding:2px}.icon-grid button{height:50px;border-radius:14px;border:1px solid transparent;background:none;cursor:pointer;display:grid;place-items:center}.icon-grid button:hover{background:var(--surface);border-color:var(--line)}.icon-grid button.on{background:var(--card);border-color:var(--ink);box-shadow:0 0 0 1.5px var(--ink) inset}.tile{gap:8px;padding:14px 6px 12px}.tile .glyph{margin-bottom:2px}.tile-plus,.make-plus,.glyph-add,.zero-icon{display:inline-grid;place-items:center;border-radius:13px;color:var(--muted);border:1px dashed var(--line-strong)}.tile-plus{width:44px;height:44px}.make-plus{width:52px;height:52px;border-radius:16px;color:var(--ink)}.glyph-add{width:44px;height:44px;color:var(--teal)}.zero-icon{width:56px;height:56px;border-radius:18px;border-style:solid;border-color:var(--line);background:var(--surface);color:var(--ink)}.zero-icon.big{width:64px;height:64px}.cat-card{gap:6px}.cat-card .glyph{margin-bottom:6px}.pic-btn{width:auto;height:auto;padding:8px;display:grid;gap:4px;justify-items:center;border-radius:18px}.modal-title-icon{display:inline-flex;align-items:center;gap:10px}.q-cat{display:inline-flex;align-items:center;gap:6px;vertical-align:middle}.stat-cat{display:flex;align-items:center;gap:10px}.done-line{display:flex;align-items:center;gap:6px}.done-line svg{color:var(--credit);flex:none}.pill,.chip,.tag-toggle,.tag-chip,.bulk-item,.bill-tag,.sub.add,.btn{display:inline-flex;align-items:center;gap:6px}.bill-tag{gap:3px}.tag-chip .glyph-plain,.tag-toggle .glyph-plain{color:inherit;opacity:.8}.tag-toggle.on .glyph-plain{opacity:1}.bulk-item{width:100%;gap:10px}.bill-line svg,.track-bill svg{color:var(--teal);flex:none}.auto-hint svg{color:var(--teal)}.consent li{display:flex;align-items:center;gap:8px}.consent li svg{color:var(--credit);flex:none}.consent li.no svg{color:var(--stamp)}.pw-checks li,.pw-meter li{display:flex;align-items:center;gap:6px}.stepper button{display:grid;place-items:center}.cbar-label{display:flex;align-items:center;gap:8px}.tag-title .glyph{margin-right:2px}.tag-new-btn span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;border:1px dashed var(--line-strong);margin:0 auto 6px}.sg-row .glyph,.bill-main .glyph,.tag-manage-row .glyph{flex:none}.st-row{padding:0;overflow:hidden;box-shadow:none}.st-row.done{background:var(--surface)}.st-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px}.st-head>.grow{min-width:0;overflow:hidden}.st-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-size{flex:none;white-space:nowrap;font-size:.82rem}.st-file{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--agent-bg);color:var(--agent);flex:none}.st-file.ok{background:var(--credit-bg);color:var(--credit)}.st-row.odd .st-file{background:var(--surface);color:var(--muted)}.st-body{padding:0 16px 16px;display:grid;gap:10px}.st-hint{margin:0;padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:.9rem;line-height:1.5;display:grid;gap:2px}.st-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.st-form .pw-wrap{min-width:220px}.st-remember{flex-basis:100%}.pw-parts{flex-basis:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.pw-part{display:grid;gap:6px;align-content:start}.pw-part-label{font-size:.88rem;font-weight:600}.pw-part .faint{min-height:1.2em}.pw-made{flex-basis:100%;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 12px;border-radius:10px;background:var(--paper)}.pw-made .linkish{margin-left:auto}.st-guess{flex-basis:100%;margin:0}.st-actions{flex-basis:100%;align-items:center}.st-section-head{padding:14px 18px;gap:12px;flex-wrap:wrap}.dupes{display:grid;gap:10px}.dupe{padding:14px;box-shadow:none;display:grid;gap:10px}.dupe-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dupe-side{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.seen{list-style:none;margin:0;padding:0;display:grid;gap:6px}.seen li{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.seen li svg{color:var(--muted)}@media (max-width: 860px){.dupe-pair{grid-template-columns:1fr}}.choice-list{display:grid;gap:6px}.choice{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);cursor:pointer;font-weight:500;color:var(--ink)}.choice.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset}.choice input{accent-color:var(--ink);width:16px;height:16px}.big-choice.two{grid-template-columns:1fr 1fr}.big-choice.two button{display:grid;gap:2px;text-align:left;padding:12px 14px;min-height:64px}.export-btn{margin-left:auto}@media (max-width: 860px){.big-choice.two{grid-template-columns:1fr}.export-btn{margin-left:0}}.bills-stats{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:14px;margin-bottom:22px}.bills-stats .bills-head{margin:0;gap:16px}.bills-stats .ring{width:64px;height:64px}.bills-stats .ring span{width:48px;height:48px;font-size:.9rem}.bills-stats .bills-big{font-size:1.15rem}.bills-stats .stat .stat-n{font-size:1.6rem}.stat-bad .stat-n{color:var(--stamp)}.bills-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.bills-main{display:grid;gap:22px}.bills-side{display:grid;gap:14px;position:sticky;top:24px}.list-title{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.bill-list{padding:0;overflow:hidden}.bill-list .bill{border:0;border-radius:0;box-shadow:none;background:none;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.bill-list .bill:first-child{border-top:0}.bill-list .bill.late{box-shadow:inset 3px 0 0 var(--stamp)}.bill-list .bill.today,.bill-list .bill.soon{box-shadow:inset 3px 0 0 var(--agent)}.bill-list .bill-main{padding:14px 16px 14px 20px}.bill-list .bill-main:hover{background:var(--surface)}.bill-list .bill-foot{padding:0 18px 0 0;gap:18px;flex-wrap:nowrap}.bill-list .bill-paid-with{margin-left:0;white-space:nowrap}.bill-list .bill-actions,.bill-list .hdots{flex-wrap:nowrap}.due-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:2px}.due-list li{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--line);font-size:.9rem}.due-list li:first-child{border-top:0}.due-list li.paid{color:var(--muted)}.due-day{width:52px;font-size:.78rem;font-weight:600;color:var(--muted);flex:none}.due-dot{width:9px;height:9px;border-radius:50%;flex:none;background:var(--line-strong)}.due-dot.paid{background:var(--credit)}.due-dot.late{background:var(--stamp)}.due-dot.soon,.due-dot.today{background:var(--agent)}.bills-side .suggest-card{border-style:solid}.bills-side .sg-row{flex-wrap:nowrap;padding:10px 0}.sg-actions{display:flex;gap:4px;flex:none}.sg-actions .btn{min-height:34px;padding:0 12px}@media (max-width: 1180px){.bills-layout{grid-template-columns:1fr}.bills-side{position:static;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.bills-stats{grid-template-columns:1fr 1fr}}@media (max-width: 860px){.bills-stats{grid-template-columns:1fr 1fr;gap:10px}.bills-stats .bills-head{grid-column:1 / -1}.bill-list .bill{grid-template-columns:1fr}.bill-list .bill-foot{padding:0 16px 14px 20px;flex-wrap:wrap}.bills-side{grid-template-columns:1fr}}@media (min-width: 861px){.bill-list .bill-acct{display:none}.bill-list .bill-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bill-list .hdot{min-width:22px;font-size:.6rem}}.acct-row.clickable,.st-line{cursor:pointer;transition:background .12s}.acct-row.clickable:hover,.st-line:hover{background:var(--surface)}.acct-row.needs,.st-line.needs{box-shadow:inset 3px 0 0 var(--agent)}.acct-row.clickable.needs{box-shadow:inset 3px 0 0 var(--stamp)}.st-action{flex:none}.st-chev{font-size:1.2rem;padding:0 4px}.mini-list{display:grid;border:1px solid var(--line);border-radius:14px;overflow:hidden}.mini-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border:0;border-top:1px solid var(--line);background:var(--card);cursor:pointer;text-align:left;font:inherit;color:inherit}.mini-row:first-child{border-top:0}.mini-row:hover{background:var(--surface)}.mini-row svg{color:var(--muted);flex:none}@media (max-width: 860px){.st-line{flex-wrap:wrap}.st-action{width:100%}}.fix{gap:16px}.fix-title{font-size:1.45rem;letter-spacing:-.03em}.fix-lead{font-size:1.02rem;color:var(--ink);max-width:60ch}.hl-text{font-family:Geist,system-ui,sans-serif;font-size:1rem;line-height:1.9}mark.hl{background:none;color:inherit;padding:1px 3px;border-radius:5px;font-weight:600}mark.hl.t0,.hl-key.t0 i,.field-row.t0 .fr-dot{--c: var(--t0-fg);--b: var(--t0-bg)}mark.hl.t1,.hl-key.t1 i,.field-row.t1 .fr-dot{--c: var(--t1-fg);--b: var(--t1-bg)}mark.hl.t2,.hl-key.t2 i,.field-row.t2 .fr-dot{--c: var(--t2-fg);--b: var(--t2-bg)}mark.hl.t3,.hl-key.t3 i,.field-row.t3 .fr-dot{--c: var(--t3-fg);--b: var(--t3-bg)}mark.hl.t4,.hl-key.t4 i,.field-row.t4 .fr-dot{--c: var(--t4-fg);--b: var(--t4-bg)}mark.hl.t5,.hl-key.t5 i,.field-row.t5 .fr-dot{--c: var(--t5-fg);--b: var(--t5-bg)}mark.hl{background:var(--b);box-shadow:inset 0 -2px 0 var(--c)}.hl-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:.78rem;color:var(--muted)}.hl-key{display:inline-flex;align-items:center;gap:6px}.hl-key i{width:10px;height:10px;border-radius:3px;background:var(--c)}.readout{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden}.field-row{display:grid;grid-template-columns:12px 110px minmax(0,1fr) 52px;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--line);background:var(--card)}.field-row:first-child{border-top:0}.field-row.changed{background:var(--agent-bg)}.fr-dot{width:12px;height:12px;border-radius:4px;background:var(--c)}.fr-label{font-weight:600;font-size:.92rem}.fr-input input,.fr-input select{width:100%;min-height:42px;border:1px solid transparent;border-radius:10px;background:var(--surface);padding:0 12px;font-size:1rem;font-weight:500}.fr-input input:hover,.fr-input select:hover{border-color:var(--line-strong)}.fr-input input:focus,.fr-input select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-soft);background:var(--card)}.fr-input input:disabled{opacity:.7}.money-input{display:flex;align-items:center;gap:6px;font-weight:600}.fr-choice{display:inline-flex;gap:6px}.fr-choice button{min-height:40px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-weight:550}.fr-choice button.on{background:var(--ink);color:var(--card);border-color:var(--ink)}.fr-ok{color:var(--credit);justify-self:center}.fr-undo{border:0;background:none;color:var(--teal);font-weight:600;cursor:pointer;font-size:.85rem}.fix-note{margin-top:8px}.fix-actions{display:grid;grid-template-columns:2fr 1fr;gap:10px}.teach{display:grid;gap:12px}details.dev{border-top:1px solid var(--line);padding-top:12px}details.dev summary{color:var(--faint);font-size:.82rem}@media (max-width: 860px){.field-row{grid-template-columns:12px 1fr 40px}.field-row .fr-input,.field-row .fr-choice{grid-column:1 / -1;grid-row:2}.fix-actions{grid-template-columns:1fr}}.settings-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:18px;align-items:start}.settings-side,.privacy{display:grid;gap:18px}.privacy-head{display:flex;gap:14px;align-items:center}.privacy-ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--credit-bg);color:var(--credit);flex:none}.privacy h2{font-size:1.5rem;letter-spacing:-.03em}.promises{list-style:none;margin:0;padding:0;display:grid;gap:14px}.promises li{display:flex;gap:12px;align-items:flex-start;line-height:1.5}.promises li>svg{color:var(--credit);flex:none;margin-top:2px}.exception{padding:16px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}.switch{width:52px;height:30px;border-radius:99px;border:0;background:var(--line-strong);position:relative;cursor:pointer;flex:none;transition:background .15s}.switch i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s}.switch.on{background:var(--credit)}.switch.on i{transform:translate(22px)}.theme-seg{margin-top:10px;display:flex}.theme-seg button{flex:1}.settings-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--card);cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%;text-decoration:none!important;font-weight:400}.settings-row:hover{border-color:var(--line-strong);background:var(--surface)}.settings-row .grow{display:grid}.settings-row svg{color:var(--muted);flex:none}.settings-row.danger,.settings-row.danger svg{color:var(--stamp)}@media (max-width: 1000px){.settings-grid{grid-template-columns:1fr}}.boot{min-height:100%;display:grid;place-items:center;padding:24px;background:var(--paper)}.boot>img{width:44px;height:44px;opacity:.6;animation:pulse-o 1.2s ease-in-out infinite}@keyframes pulse-o{50%{opacity:.25}}code.cmd{display:block;margin:10px 0;padding:10px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--line);color:var(--ink);font-family:Geist Mono,ui-monospace,monospace}.helper-setup{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px;border-color:color-mix(in srgb,var(--agent) 35%,var(--line));background:color-mix(in srgb,var(--agent-bg) 60%,var(--card))}.helper-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--agent-bg);color:var(--agent);flex:none}.demo-note{margin-bottom:22px;padding:12px 14px;border-radius:12px;background:var(--agent-bg);color:var(--ink);font-size:.88rem;line-height:1.5;border:1px solid color-mix(in srgb,var(--agent) 30%,transparent)}.demo-note code{font-family:Geist Mono,ui-monospace,monospace;font-size:.85em;background:var(--card);padding:1px 6px;border-radius:6px}.settings-block{margin-top:32px}.settings-block-head{margin-bottom:12px}.settings-block-head p{margin-top:4px;max-width:70ch}.perm-list{padding:0}.perm-row{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-top:1px solid var(--line)}.perm-row:first-child{border-top:0}.perm-row.locked{opacity:.55}.perm-row .switch{margin-top:4px}.switch:disabled{cursor:not-allowed}.instructions-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:start}.rules-list{margin:0 0 10px;padding-left:20px;display:grid;gap:8px;font-size:.9rem;line-height:1.5}@media (max-width: 1000px){.instructions-grid{grid-template-columns:1fr}}.settings-nav{display:flex;gap:6px;overflow-x:auto;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-bottom:22px}.settings-tab-btn{display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:10px;border:none;background:transparent;color:var(--muted);font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease;font-family:inherit}.settings-tab-btn:hover{color:var(--ink);background:var(--card)}.settings-tab-btn.active{color:var(--ink);background:var(--card);box-shadow:0 1px 3px #00000014;font-weight:600}.settings-tab-pane{display:grid;gap:20px}.sync-progress-card{margin-bottom:16px;border:1px solid var(--line-strong);border-radius:16px;padding:16px 20px;background:var(--card);box-shadow:0 2px 8px #0000000a;display:grid;gap:10px}.sync-progress-head{display:flex;align-items:center;justify-content:space-between}.sync-progress-track{width:100%;height:8px;background:var(--surface);border-radius:99px;overflow:hidden;border:1px solid var(--line)}.sync-progress-fill{height:100%;background:var(--credit);border-radius:99px;transition:width .35s ease}.sync-progress-fill.active{background:linear-gradient(90deg,var(--agent),var(--credit))}.sync-progress-step{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--ink)}.sync-sources-card{margin-bottom:18px;display:flex;flex-direction:column;gap:14px}.sync-sources-head{display:flex;align-items:center;justify-content:space-between}.sync-sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.sync-source-tile{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 14px}.sst-icon{width:34px;height:34px;border-radius:9px;background:var(--card);border:1px solid var(--line);display:grid;place-items:center;color:var(--ink);flex:none}.sst-info{display:flex;flex-direction:column;gap:2px;min-width:0}.sync-add-bar{display:flex;align-items:center;gap:12px;padding-top:10px;border-top:1px solid var(--line);flex-wrap:wrap}.stat-warn .stat-n{color:var(--agent)}.order-lines{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden}.ol-head,.ol-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(150px,1fr) 80px 80px 28px;gap:12px;align-items:center;padding:10px 14px}.ol-head{background:var(--surface);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.ol-row{border-top:1px solid var(--line)}.ol-row.needs{background:var(--agent-bg)}.ol-row .n,.ol-head .n{text-align:right}.ol-name{display:flex;gap:10px;align-items:center;min-width:0}.ol-name>span:last-child{display:grid;min-width:0}.ol-name .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glyph-add.sm{width:26px;height:26px;border-radius:8px}.ol-pick{min-height:36px;font-size:.88rem}.ol-pick-wrap{position:relative;width:100%;min-width:0}.ol-pick-btn{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:36px;padding:6px 12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:.88rem;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.ol-pick-btn:hover{border-color:var(--muted)}.ol-pick-btn.focused{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-soft)}.ol-pick-btn.placeholder{color:var(--muted)}.ol-pick-btn .picker-label{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.ol-pick-btn .picker-arrow{color:var(--muted);flex:none;display:flex}.picker-popover{max-height:340px;z-index:1000;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 36px #00000038}.picker-search-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--bg);color:var(--muted)}.picker-search-input{border:none;background:transparent;outline:none;width:100%;font-size:.88rem;color:inherit;font-family:inherit}.picker-list{overflow-y:auto;flex:1;padding:6px;display:flex;flex-direction:column;gap:2px}.picker-group{display:flex;flex-direction:column;gap:1px;margin-top:4px}.picker-group-title{display:flex;align-items:center;gap:6px;padding:6px 8px 3px;font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.picker-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 10px;border-radius:8px;border:none;background:none;text-align:left;font-size:.86rem;color:inherit;cursor:pointer;font-family:inherit;transition:background .1s}.picker-option:hover{background:var(--teal-soft, rgba(0, 180, 160, .08))}.picker-option.selected{background:var(--teal-soft);font-weight:600;color:var(--teal)}.picker-option.none-option{border-bottom:1px solid var(--line);border-radius:0;padding-bottom:8px;margin-bottom:4px;color:var(--muted)}.picker-option.custom-option{color:var(--teal);font-weight:500;background:var(--teal-soft);margin-bottom:4px}.picker-empty{padding:16px;text-align:center}.btn-icon-sm{background:none;border:none;padding:2px;color:var(--muted);cursor:pointer;display:flex}.btn-icon-sm:hover{color:inherit}.adds-up{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;font-size:.9rem}.adds-up.ok{background:var(--credit-bg);color:var(--credit)}.adds-up.warn{background:var(--agent-bg);color:var(--agent)}@media (max-width: 860px){.ol-head{display:none}.ol-row{grid-template-columns:minmax(0,1fr) auto auto 28px}.ol-row .ol-pick,.ol-row .ol-pick-wrap{grid-column:1 / -1;order:5}}.pantry-item .s{display:flex;align-items:center;gap:8px}.pantry-bar{display:inline-block;width:54px;height:5px;border-radius:99px;background:#7f7f7f26;overflow:hidden;flex:none}.pantry-bar i{display:block;height:100%;background:var(--series-1);border-radius:99px}.qty-cols{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;height:190px;align-items:end;padding-top:6px}.qty-col{display:grid;grid-template-rows:auto 1fr auto;height:100%;gap:6px;border:0;background:none;cursor:pointer;padding:4px 2px;border-radius:12px;text-align:center;font:inherit;color:inherit}.qty-col:hover{background:var(--surface)}.qty-col.on{background:var(--teal-soft)}.qty-val{font-size:.78rem;font-weight:600}.qty-bar{display:flex;align-items:flex-end;justify-content:center;height:100%}.qty-bar i{display:block;width:min(28px,70%);background:var(--series-1);border-radius:6px 6px 0 0;min-height:2px}.qty-col.current .qty-bar i{opacity:.5}.qty-month{font-size:.72rem;color:var(--muted)}.qty-pick{margin-top:10px;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);font-size:.92rem}.price-row{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}.price-chip{display:grid;justify-items:center;gap:2px;padding:8px 4px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-size:.85rem}.price-chip small{color:var(--faint);font-size:.7rem}.pantry-split{grid-template-columns:minmax(320px,420px) 1fr}@media (max-width: 860px){.pantry-split{grid-template-columns:1fr}.qty-cols{height:160px}}.auth2{min-height:100%;display:grid;grid-template-rows:auto 1fr;padding:0 20px 32px;background:radial-gradient(900px 480px at 85% 0%,color-mix(in srgb,var(--teal) 9%,transparent),transparent 70%),var(--paper)}.auth2-top{max-width:1040px;width:100%;margin:0 auto;padding:calc(24px + env(safe-area-inset-top)) 0 0}.auth2-brand{display:inline-flex;align-items:center;gap:10px;font:600 1.1rem Geist,sans-serif;letter-spacing:-.02em}.auth2-brand img{width:28px;height:28px;border-radius:8px}.auth2-body{max-width:1040px;width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,440px) minmax(0,380px);justify-content:center;gap:40px;align-items:center;padding-top:24px}.auth2-form{padding:32px 32px 24px;border-radius:24px;box-shadow:var(--shadow-lg)}.auth2-privacy{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:18px;font-size:.82rem;color:var(--muted)}.auth2-glance{position:relative;display:grid;gap:18px;padding:26px;border-radius:24px;background:var(--card);border:1px solid var(--line);opacity:.96}.auth2-glance h3{font-size:1.05rem}.glance-tag{position:absolute;top:18px;right:18px;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:2px 9px}.glance-spent{display:grid;gap:6px}.glance-spent b{font:600 2rem Geist,sans-serif;letter-spacing:-.04em}.glance-bar{height:8px;border-radius:99px;background:#7f7f7f24;overflow:hidden}.glance-bar i{display:block;height:100%;border-radius:99px;background:var(--teal)}.glance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.glance-grid>div{display:grid;gap:2px;padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.glance-grid b{font-size:1.1rem}.glance-low{display:grid;gap:6px}.glance-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;background:var(--surface)}@media (max-width: 900px){.auth2-body{grid-template-columns:minmax(0,460px);padding-top:12px}.auth2-glance{display:none}.auth2-form{padding:26px 20px 20px}}.plan-split{grid-template-columns:minmax(380px,520px) 1fr}.plan-line{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:10px 12px 10px 14px;border-top:1px solid var(--line)}.plan-line.on{background:var(--teal-soft)}.plan-line.done .plan-name b{text-decoration:line-through;color:var(--muted)}.plan-tick{width:26px;height:26px;border-radius:8px;border:2px solid var(--line-strong);background:var(--card);display:grid;place-items:center;cursor:pointer;color:#fff;padding:0}.plan-tick.on{background:var(--teal);border-color:var(--teal)}.plan-name{display:flex;align-items:center;gap:10px;min-width:0;border:0;background:none;padding:2px 0;text-align:left;font:inherit;color:inherit;cursor:pointer}.plan-qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--card)}.plan-qty button{width:32px;height:32px;border:0;background:none;cursor:pointer;color:var(--muted);display:grid;place-items:center}.plan-qty button:disabled{opacity:.35;cursor:default}.plan-qty span{min-width:62px;text-align:center;font-weight:600;font-size:.9rem}.plan-x{width:32px;height:32px;border:0;border-radius:8px;background:none;color:var(--faint);cursor:pointer;display:grid;place-items:center}.plan-x:hover{background:var(--surface);color:var(--ink)}.plan-add{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--line);flex-wrap:wrap}.plan-add .grow{flex:1 1 200px}.plan-add-q{width:100px}.plan-add-u{width:auto}.plan-removed{border-top:1px solid var(--line);padding:10px 14px}.plan-removed summary{cursor:pointer;color:var(--muted);font-size:.9rem}.plan-removed-row{display:flex;align-items:center;gap:8px;padding:6px 0}.plan-stepper{display:inline-flex;align-items:center;gap:4px}.plan-stepper button{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--card);cursor:pointer;display:grid;place-items:center;color:var(--ink)}.plan-stepper button:disabled{opacity:.35;cursor:default}.plan-stepper b{min-width:40px;text-align:center;font:700 1.7rem Geist,sans-serif}.plan-people-pick{display:flex;gap:6px;flex-wrap:wrap;padding:2px 0}.plan-people-pick button{min-width:40px;height:40px;border-radius:12px;border:1px solid var(--line-strong);background:var(--card);font:600 1rem Geist,sans-serif;color:var(--ink);cursor:pointer}.plan-people-pick button:hover{border-color:var(--teal);background:var(--teal-soft)}.plan-cols .qty-col{cursor:default}.plan-cols .qty-col:hover{background:none}.qty-col.next .qty-bar i{background:none;border:2px dashed var(--series-1);border-bottom:0}.plan-why{margin:0;padding-left:18px;display:grid;gap:6px;line-height:1.5}@media (max-width: 860px){.plan-split{grid-template-columns:1fr}.plan-line{gap:8px;padding-left:12px}.plan-qty span{min-width:52px}}.fda-steps{margin:2px 0 0;padding-left:18px;display:grid;gap:4px;line-height:1.5}.tone-staples{--kind: #B7791F}.tone-dairy{--kind: #2F6FDB}.tone-veg{--kind: #15803D}.tone-tea{--kind: #9A5B2E}.tone-snacks{--kind: #D63A5E}.tone-cleaning{--kind: #0E8FA8}.tone-care{--kind: #7C4DDB}.tone-other{--kind: #6B7B7D}.tone-pharma{--kind: #0F8A6A}.tone-baby{--kind: #C2569B}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .item-ic,:root:not([data-theme=light]) .kind-dot{--mix: 22%}}:root[data-theme=dark] .item-ic,:root[data-theme=dark] .kind-dot{--mix: 22%}.item-ic{--mix: 13%;width:var(--ic, 44px);height:var(--ic, 44px);flex:none;display:grid;place-items:center;border-radius:30%;color:var(--kind);background:color-mix(in srgb,var(--kind) var(--mix),var(--card))}.modal-title-icon .item-ic{--ic: 32px}.pantry-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.restock-hero{position:relative;overflow:hidden;padding:26px 28px;display:flex;justify-content:space-between;gap:16px;min-height:196px;background:radial-gradient(120% 140% at 100% 0%,color-mix(in srgb,var(--teal) 16%,transparent),transparent 60%),var(--card)}.restock-hero h2{font-size:1.55rem;letter-spacing:-.02em}.restock-hero p{max-width:42ch}.hero-status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;background:color-mix(in srgb,var(--teal) 14%,var(--card));color:var(--teal);font-size:.8rem;font-weight:600;width:fit-content}.hero-stocked-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:170px;text-align:center}.stocked-icon-circle{width:52px;height:52px;border-radius:50%;background:color-mix(in srgb,var(--teal) 15%,var(--card));color:var(--teal);display:grid;place-items:center}.hero-urgent-list{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:180px}.hero-urgent-item{display:flex;align-items:center;gap:8px;font-size:.85rem}.pstats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pstat{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:var(--card);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .15s,transform .15s}.pstat:hover{border-color:var(--line-strong);transform:translateY(-1px)}.pstat.on{border-color:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,var(--st) 18%,transparent)}.pstat b{font:700 1.45rem Geist,sans-serif;letter-spacing:-.01em;color:var(--ink)}.pstat-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--st);background:color-mix(in srgb,var(--st) 13%,var(--card));flex:none}.pstat.t-ok{--st: var(--credit)}.pstat.t-low{--st: var(--agent)}.pstat.t-out{--st: var(--stamp)}.pstat.t-money{--st: var(--teal)}.pstat.on{color:var(--st)}.pantry-main{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.shelf-card{padding:20px}.shelf-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.shelf-head h2{font-size:1.2rem}.shelf-head .seg button{display:grid;place-items:center;padding:6px 10px}.kind-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.kind-chips button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;border:1px solid var(--line);background:var(--card);font:600 .84rem inherit;font-family:inherit;color:var(--muted);cursor:pointer}.kind-chips button svg{color:var(--kind, var(--muted))}.kind-chips button span{color:var(--faint);font-weight:500}.kind-chips button.on{border-color:var(--ink);color:var(--ink);background:var(--surface)}.cabinet{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:14px;border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 4%,var(--surface)),var(--surface));border:1px solid var(--line);box-shadow:inset 0 2px 10px #0000000a}.jar{display:grid;justify-items:start;gap:6px;padding:14px;border-radius:16px;border:1px solid var(--line);background:var(--card);text-align:left;font:inherit;color:inherit;cursor:pointer;min-width:0;transition:transform .15s,box-shadow .15s,border-color .15s}.jar:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--line-strong)}.jar b{font-size:1rem;max-width:100%;margin-top:4px}.jar-amt{font-size:.88rem;color:var(--muted)}.jar-when{font-size:.78rem;font-weight:600;color:var(--sc)}.meter{display:block;width:100%;height:6px;border-radius:99px;background:color-mix(in srgb,var(--ink) 8%,transparent);overflow:hidden}.meter i{display:block;height:100%;border-radius:99px;background:var(--sc);transition:width .3s}.s-ok{--sc: var(--credit)}.s-low{--sc: var(--agent)}.s-out{--sc: var(--stamp)}.s-unknown{--sc: var(--faint)}.jar.s-out{border-color:color-mix(in srgb,var(--stamp) 35%,var(--line))}.jar.s-low{border-color:color-mix(in srgb,var(--agent) 35%,var(--line))}.stock-list{display:grid;border:1px solid var(--line);border-radius:16px;overflow:hidden}.stock-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(80px,160px) 70px 140px;align-items:center;gap:12px;padding:10px 14px;border:0;border-top:1px solid var(--line);background:var(--card);font:inherit;color:inherit;text-align:left;cursor:pointer}.stock-row:first-child{border-top:0}.stock-row:hover{background:var(--surface)}.pill-when{justify-self:end;font-size:.78rem;font-weight:600;color:var(--sc)}.shelf-note{display:flex;gap:6px;align-items:flex-start;margin-top:12px}.shelf-empty{padding:30px;text-align:center}.pantry-aside{display:grid;gap:16px;position:sticky;top:20px}.aside-card{display:grid;gap:10px}.aside-big{font:700 1.7rem Geist,sans-serif;letter-spacing:-.02em}.mini-bars{display:flex;align-items:flex-end;gap:5px;height:56px}.mini-bars i{width:9px;border-radius:4px 4px 2px 2px;background:color-mix(in srgb,var(--teal) 30%,transparent)}.mini-bars i.now{background:var(--teal)}.kind-rows{display:grid;gap:2px}.kind-row{display:flex;align-items:center;gap:10px;padding:7px 6px;border:0;border-radius:10px;background:none;font:inherit;color:inherit;cursor:pointer;text-align:left}.kind-row:hover{background:var(--surface)}.kind-row.plain{cursor:default}.kind-row.plain:hover{background:none}.kind-row .num.small{width:34px;text-align:right}.kind-dot{--mix: 13%;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:var(--kind);background:color-mix(in srgb,var(--kind) var(--mix),var(--card));flex:none}.buy-soon{padding:0;overflow:hidden;gap:0}.buy-soon-head{display:flex;gap:12px;align-items:center;padding:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--agent) 12%,var(--card)),var(--card));border-bottom:1px solid var(--line)}.buy-soon-ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:var(--agent);background:color-mix(in srgb,var(--agent) 15%,var(--card))}.soon-rows{display:grid;padding:6px 8px 12px}.soon-row{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:10px;cursor:pointer;font-size:.94rem}.soon-row:hover{background:var(--surface)}.soon-row input{width:20px;height:20px;accent-color:var(--teal);flex:none}.soon-row.listed{cursor:default;color:var(--muted)}.soon-done{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;background:var(--credit-bg);color:var(--credit);flex:none}.when-tag{font-size:.74rem;font-weight:600;padding:3px 9px;border-radius:99px;white-space:nowrap;color:var(--sc);background:color-mix(in srgb,var(--sc) 12%,transparent)}.soon-row.listed .when-tag{--sc: var(--credit)}.stock-now{display:flex;align-items:center;gap:16px;padding:16px;border-radius:16px;border:1px solid color-mix(in srgb,var(--sc) 30%,var(--line));background:color-mix(in srgb,var(--sc) 7%,var(--card))}.stock-now b{font:700 1.35rem Geist,sans-serif}.stock-now .small:last-child{color:var(--sc);font-weight:600}@media (max-width: 1180px){.pantry-main{grid-template-columns:1fr}.pantry-aside{position:static;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width: 900px){.pantry-top{grid-template-columns:1fr}}@media (max-width: 600px){.hero-art{display:none}.restock-hero{padding:20px;min-height:0}.cabinet{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:10px}.stock-row{grid-template-columns:auto minmax(0,1fr) auto}.stock-row .meter,.stock-row .num.small{display:none}.stock-now{flex-direction:column;align-items:stretch}}.list-head.urgent{color:var(--stamp)}@media (max-width: 600px){.kind-chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 14px;padding:0 20px;scrollbar-width:none}.kind-chips button{flex:none}}.subs-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;align-items:center;padding:24px 26px;margin-bottom:20px;background:radial-gradient(120% 160% at 0% 0%,color-mix(in srgb,var(--teal) 12%,transparent),transparent 55%),var(--card)}.subs-big{font:700 2rem Geist,sans-serif;letter-spacing:-.02em}.subs-big small{font-size:.95rem;font-weight:500;color:var(--muted);letter-spacing:0}.subs-callout{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:16px;border:1px solid var(--line)}.subs-callout.bad{background:var(--stamp-bg);border-color:color-mix(in srgb,var(--stamp) 25%,var(--line))}.subs-callout.ok{background:var(--credit-bg);border-color:color-mix(in srgb,var(--credit) 25%,var(--line))}.subs-callout-ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;flex:none;background:var(--card)}.subs-callout.bad .subs-callout-ic{color:var(--stamp)}.subs-callout.ok .subs-callout-ic{color:var(--credit)}.subs-group{margin-bottom:22px}.subs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:14px}.subs-legend{display:flex;gap:16px;flex-wrap:wrap;margin:-6px 0 14px}.subs-legend span{display:inline-flex;align-items:center;gap:6px}.ss-key{width:18px;height:8px;border-radius:99px;background:color-mix(in srgb,var(--ink) 7%,transparent)}.ss-key.paid{background:color-mix(in srgb,var(--stamp) 45%,transparent)}.ss-key.used{background:var(--credit)}.sub-card{display:grid;gap:10px;padding:16px;border-top:3px solid var(--vt, var(--line))}.sub-card.v-bad{--vt: var(--stamp)}.sub-card.v-warn{--vt: var(--agent)}.sub-card.v-ok{--vt: var(--credit)}.sub-top{display:flex;align-items:center;gap:12px;border:0;background:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;min-width:0}.sub-top b{font-size:1.05rem}.chip.sub-chip.bad{background:var(--stamp-bg);color:var(--stamp)}.chip.sub-chip.warn{background:var(--agent-bg);color:var(--agent)}.chip.sub-chip.ok{background:var(--credit-bg);color:var(--credit)}.chip.sub-chip.plain{background:transparent;border:1px solid var(--line);color:var(--muted)}.sub-use{display:flex;align-items:center;gap:7px;font-size:.9rem}.sub-use svg{color:var(--vt, var(--muted));flex:none}.sub-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.ss{display:grid;justify-items:center;gap:3px}.ss i{width:100%;height:8px;border-radius:99px;background:color-mix(in srgb,var(--ink) 7%,transparent)}.ss.paid i{background:color-mix(in srgb,var(--stamp) 45%,transparent)}.ss.paid.used i{background:var(--credit)}.ss.used:not(.paid) i{background:color-mix(in srgb,var(--credit) 45%,transparent)}.ss small{font-size:.68rem;color:var(--faint)}.sub-actions{display:flex;gap:6px;flex-wrap:wrap}.btn.sm{padding:6px 12px;min-height:34px;font-size:.86rem}.sub-reminder{display:flex;align-items:center;gap:14px;margin-bottom:14px;border-color:color-mix(in srgb,var(--agent) 40%,var(--line));background:color-mix(in srgb,var(--agent-bg) 70%,var(--card))}.sub-reminder-ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:var(--agent);background:var(--card);flex:none}.sub-detail-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}@media (max-width: 800px){.subs-hero{grid-template-columns:1fr;padding:20px}.sub-reminder{flex-wrap:wrap}}.c-teal{--pc: #0F766E}.c-violet{--pc: #7C4DDB}.c-amber{--pc: #C27A12}.c-rose{--pc: #D63A5E}.c-sky{--pc: #2F80D1}.c-lime{--pc: #4D8B1F}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .c-teal{--pc: #2DD4BF}:root:not([data-theme=light]) .c-violet{--pc: #A78BFA}}:root[data-theme=dark] .c-teal{--pc: #2DD4BF}:root[data-theme=dark] .c-violet{--pc: #A78BFA}.avatar-c{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;font:700 1rem Geist,sans-serif;color:var(--pc);background:color-mix(in srgb,var(--pc) 15%,var(--card));border:1px solid color-mix(in srgb,var(--pc) 25%,transparent)}.avatar-c.sm{width:30px;height:30px;font-size:.85rem}.avatar-c.xs{width:24px;height:24px;font-size:.72rem}.fam-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.fam-summary>section,.fam-grid>section{align-content:start}.fam-bar{display:flex;gap:3px;height:14px;border-radius:99px;overflow:hidden}.fam-seg{display:flex;gap:2px;min-width:6px}.fam-seg i{display:block;background:var(--pc)}.fam-seg i.hatched{background:repeating-linear-gradient(135deg,var(--pc) 0 3px,color-mix(in srgb,var(--pc) 35%,var(--card)) 3px 6px)}.fam-people{display:grid;gap:8px}.fam-person{display:flex;align-items:center;gap:10px}.fam-cat{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;align-items:center;gap:10px;font-size:.92rem}.fam-cat-bar{height:6px;border-radius:99px;background:color-mix(in srgb,var(--ink) 7%,transparent);overflow:hidden}.fam-cat-bar i{display:block;height:100%;background:var(--teal);border-radius:99px}.fam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.fam-h{font-size:1.1rem}.person-card,.person-row{padding:14px 0;border-top:1px solid var(--line)}.person-card:first-of-type,.person-row:first-of-type{border-top:0}.person-header{display:flex;align-items:flex-start;gap:12px}.person-identity{min-width:0}.person-name{font-size:1rem;line-height:1.3}.person-actions-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.fam-new{background:var(--teal-soft);border-radius:10px}.fam-new-chip{margin-left:8px;font-size:.72rem;padding:1px 8px;vertical-align:middle}.guide-steps{margin:0;padding-left:20px;display:grid;gap:14px}.guide-steps li{display:grid;gap:6px;line-height:1.5}.guide-steps li::marker{font-weight:700}.chips-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.mini-row .fam-select,.fam-select{width:150px;flex:none;min-height:36px;padding:4px 30px 4px 10px}.choice-list{display:grid;gap:8px}.choice{display:grid;gap:2px;text-align:left;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--card);font:inherit;color:inherit;cursor:pointer}.choice.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 15%,transparent)}.access-steps{margin:0;padding:0;list-style:none;display:grid;gap:8px}.access-steps li{display:flex;gap:10px;align-items:flex-start;font-size:.94rem}.access-steps li.done{color:var(--muted)}.step-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:.75rem;font-weight:700;border:1px solid var(--line-strong)}.access-steps li.done .step-n{background:var(--credit);border-color:var(--credit);color:#fff}.access-url,.invite-box{padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line);word-break:break-all;font-size:.88rem}.access-url{display:flex;gap:8px;align-items:center}.family-hide{padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line)}.family-hide .small{display:inline-flex;gap:6px;align-items:center}.member{min-height:100vh;background:var(--paper)}.member-top{display:flex;align-items:center;gap:12px;padding:16px 24px;max-width:980px;margin:0 auto}.member-family{flex:1}.member-main{max-width:980px;margin:0 auto;padding:4px 24px 60px;display:grid;gap:16px}.member-tabs{justify-self:start}.member-tabs button{padding:8px 16px;font-size:.95rem}.member-hello{display:flex;gap:14px;align-items:center}.member-hello h1{font-size:1.6rem}.member-month{overflow:hidden}.member-month .list-head{display:flex;justify-content:space-between}.member-pay{display:flex;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid var(--line)}.member-pay.hidden b.ellipsis{color:var(--muted)}.lock-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--faint);display:grid;place-items:center;cursor:pointer;flex:none}.lock-btn.on{background:var(--agent-bg);color:var(--agent);border-color:color-mix(in srgb,var(--agent) 35%,var(--line))}@media (max-width: 1000px){.fam-summary{grid-template-columns:1fr 1fr}.fam-recent{grid-column:1 / -1}}@media (max-width: 760px){.fam-summary,.fam-grid{grid-template-columns:1fr}.member-top,.member-main{padding-left:16px;padding-right:16px}}.pantry-tabs button{display:inline-flex;align-items:center;gap:6px}.review{margin:22px 0 14px}.review-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:10px}.review-head h2{margin:0;white-space:nowrap}.review-grid{display:grid;grid-template-columns:repeat(var(--cols, 3),minmax(0,1fr));gap:12px}@media (max-width: 760px){.review-grid{grid-template-columns:1fr}.review-grid>*{grid-column:auto!important}}.review-item{display:flex;gap:12px;align-items:flex-start;padding:16px;color:inherit;text-decoration:none;margin:0}.review-item:hover{border-color:var(--line-strong)}.review-item b{display:block;margin-bottom:3px}.review-item .small{display:block;font-weight:400}.review-item .acct-ic.up{background:var(--agent-bg);color:var(--agent)}.review-item .acct-ic.down{background:var(--credit-bg);color:var(--credit)}.review-item .acct-ic.info{background:var(--paper);color:var(--ink)}.name-with-icon{display:flex;align-items:center;gap:10px}.name-with-icon .input{flex:1;min-width:0}.icon-suggest{display:grid;gap:6px}.icon-suggest-row{display:flex;flex-wrap:wrap;gap:6px}.icon-suggest-row button{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border:1px solid var(--line);border-radius:99px;background:var(--card);color:var(--ink);font:inherit;font-size:.88rem;cursor:pointer}.icon-suggest-row button.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.name-with-icon>.glyph,.new-tag .row>.glyph{display:inline-grid;place-items:center}.tile-wrap{position:relative;display:grid}.tile-x{position:absolute;top:-7px;right:-7px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-strong);background:var(--card);color:var(--stamp);box-shadow:var(--shadow);cursor:pointer;padding:0;z-index:2}.tile-x:hover{background:var(--stamp-bg)}.picker-search{position:relative;display:flex;align-items:center}.picker-search>svg{position:absolute;left:12px;color:var(--faint);pointer-events:none}.picker-search .input{width:100%;padding-left:36px}.picker-search-key{position:absolute;right:10px;font-size:.7rem}.picker-label{margin-top:-2px}.tile-sub{font-size:.72rem;color:var(--muted);line-height:1.1}.icon-grid button.used{opacity:.35}.icon-grid button.used:hover{opacity:.8}.already{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.move-to{display:grid;grid-template-columns:1fr 1fr;gap:10px}.move-to .field{display:grid;gap:4px}@media (max-width: 520px){.move-to{grid-template-columns:1fr}}.bill-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (min-width: 861px){.bill-list .bill{grid-template-columns:1fr}.bill-list .bill-main{padding-bottom:6px}.bill-list .bill-foot{padding:0 18px 12px 78px;justify-content:space-between;flex-wrap:wrap;row-gap:6px}}.due-list li{min-width:0}.due-list li .num{flex:none}.due-what{display:grid;min-width:0;line-height:1.25}.due-what>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bills-side>.card{min-width:0;overflow:hidden}.backup-folder{display:inline-flex;max-width:100%}.backup-folder select,.backup-folder .input{width:auto;max-width:100%;min-height:34px}.dashboard-page{display:flex;flex-direction:column;gap:16px}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.kpi-card{display:flex;flex-direction:column;justify-content:space-between;min-height:116px;text-align:left}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi-num{font-size:1.85rem;line-height:1.15;margin:6px 0}.kpi-meta{display:flex;flex-direction:column;gap:2px}.kpi-trend{font-weight:500}.badge-today{background:var(--teal-soft);color:var(--teal);font-weight:600;padding:2px 8px;border-radius:99px;font-size:.75rem}.badge-month{background:var(--accent-soft, rgba(37, 99, 235, .12));color:#2563eb;font-weight:600;padding:2px 8px;border-radius:99px;font-size:.75rem}.color-warn{color:var(--agent, #eab308)}.color-ok{color:var(--credit, #10b981)}.text-warn{color:var(--agent);font-weight:500}.text-ok{color:var(--credit);font-weight:500}.dashboard-main-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;align-items:start}@media (max-width: 960px){.dashboard-main-grid{grid-template-columns:1fr}}.dashboard-chart-card,.dashboard-activity-card{display:flex;flex-direction:column;min-height:380px}.chart-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px}.chart-head h2{margin:0}.period-toggle{display:flex;background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:3px;gap:2px}.period-btn{background:none;border:none;border-radius:99px;padding:4px 12px;font-size:.8rem;font-weight:500;color:var(--muted);cursor:pointer;font-family:inherit;transition:all .15s ease}.period-btn:hover{color:inherit}.period-btn.active{background:var(--surface);color:inherit;font-weight:600;box-shadow:0 1px 4px #0000001f}.spend-invest{display:grid;gap:8px;margin-bottom:18px}.spend-invest-figs{display:flex;gap:8px;flex-wrap:wrap}.si-fig{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 10px;background:var(--bg);border:1px solid var(--line);border-radius:99px;font-family:inherit;color:inherit;cursor:pointer}.si-fig:hover{border-color:var(--muted)}.si-dot{width:8px;height:8px;border-radius:50%}.si-bar{display:flex;height:8px;border-radius:99px;overflow:hidden;background:var(--line);gap:2px}.si-bar>span{min-width:0;transition:width .2s ease}.si-spend{background:#f97316}.si-invest{background:#0d9488}.si-in{background:#2563eb}.kpi-meta .si-bar{margin:2px 0 4px}.pie-container{display:grid;grid-template-columns:minmax(180px,220px) 1fr;gap:24px;align-items:center}@media (max-width: 640px){.pie-container{grid-template-columns:1fr}}.pie-svg-wrap{width:100%;max-width:220px;margin:0 auto}.donut-svg{width:100%;height:auto;display:block;overflow:visible}.donut-slice:hover{filter:brightness(1.1)}.donut-center-label{font-size:11px;fill:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.donut-center-amt{font-size:17px;font-weight:700;fill:currentColor}.donut-center-sub{font-size:11px;fill:var(--muted)}.pie-legend{display:flex;flex-direction:column;gap:4px;padding-right:4px}.legend-row{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;border:none;background:none;color:inherit;cursor:pointer;text-align:left;font-size:.86rem;font-family:inherit;transition:background .12s ease}.legend-row:hover,.legend-row.active{background:var(--hover, rgba(127, 127, 127, .08))}.legend-color-dot{width:9px;height:9px;border-radius:99px;flex:none}.legend-name{flex:1;min-width:0}.legend-pct{width:36px;text-align:right}.legend-amt{text-align:right}.activity-lists{display:flex;flex-direction:column;gap:16px;flex:1}.activity-group{display:flex;flex-direction:column;gap:8px}.activity-group-title{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding-bottom:6px;border-bottom:1px solid var(--line)}.txn-mini-list{display:flex;flex-direction:column;gap:4px}.txn-mini-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:10px;border:none;background:var(--surface);cursor:pointer;text-align:left;color:inherit;transition:background .12s ease;font-family:inherit}.txn-mini-item:hover{background:var(--hover, rgba(127, 127, 127, .08))}.tmi-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.tmi-info{display:flex;flex-direction:column;min-width:0}.tmi-amt.debit{color:var(--debit, #ef4444);text-align:right;flex:none}.head-actions{display:flex;align-items:center;gap:8px}.items-adder-head,.items-adder-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 96px 32px;gap:8px;align-items:center}.items-adder-head{padding:0 2px;margin-bottom:-4px}.items-adder-row .input{min-width:0}.items-adder-row .icon-only{padding:4px;color:var(--muted)}.items-adder-matches{position:absolute;top:100%;left:0;right:0;margin-top:4px;z-index:50;max-height:220px;overflow-y:auto;box-shadow:0 8px 24px #00000026;border-radius:8px}.items-adder-match{justify-content:space-between;padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--line)}.items-adder-match:hover{background:var(--bg)}@media (max-width: 480px){.items-adder-head,.items-adder-row{grid-template-columns:minmax(0,1fr) 56px 76px 28px;gap:6px}}.ol-remove{padding:4px;height:auto;color:var(--muted);justify-self:end}.items-adder-each{grid-column:3;grid-row:2;text-align:right;margin-top:-4px}.items-done{display:inline-flex;align-items:center;gap:4px;font-weight:500}.items-done.ok{color:var(--credit)}.items-done.off{color:var(--agent)}.aisle-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;align-items:start;margin-top:4px}.aisle-rail{display:flex;flex-direction:column;gap:2px;position:sticky;top:12px;max-height:calc(100vh - 40px);overflow-y:auto;padding-right:4px;border-right:1px solid var(--line)}.aisle-rail button{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:8px 10px 8px 6px;border:0;border-radius:12px;background:none;color:inherit;font:inherit;font-size:.86rem;cursor:pointer;border-left:3px solid transparent}.aisle-rail button:hover:not(:disabled){background:var(--bg)}.aisle-rail button.on{background:var(--bg);font-weight:600;border-left-color:var(--kind, var(--text, #111))}.aisle-rail button:disabled{opacity:.45;cursor:default}.aisle-name{line-height:1.25}.aisle-n{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.aisle-ic{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;flex:none;color:var(--kind);background:color-mix(in srgb,var(--kind) 12%,transparent)}.aisle-ic.sm{width:24px;height:24px;border-radius:7px}.aisle-body{display:grid;gap:18px;min-width:0}.aisle-body>.kind-chips{margin:0}.shelf-group{display:grid;gap:10px}.shelf-title{display:flex;align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:600}.move-item .section-title{margin-bottom:6px}@media (max-width: 760px){.aisle-layout{grid-template-columns:1fr;gap:12px}.aisle-rail{flex-direction:row;position:static;max-height:none;overflow-x:auto;overflow-y:hidden;border-right:0;padding:0 0 6px;gap:6px}.aisle-rail button{grid-template-columns:auto auto auto;flex:none;border-left:0;border:1px solid var(--line);border-radius:99px;padding:4px 12px 4px 4px}.aisle-rail button.on{border-color:var(--kind, currentColor)}.aisle-ic{width:28px;height:28px;border-radius:99px}}.shelf-group .cabinet{padding:0;background:none;border:0;box-shadow:none;border-radius:0}.agent-or-leave{display:grid;gap:6px}.forecast-accuracy-card{display:flex;flex-direction:column;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow)}.forecast-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.forecast-title-wrap{display:flex;align-items:center;gap:12px}.forecast-icon-box{width:36px;height:36px;border-radius:10px;background:var(--teal-soft);color:var(--teal);display:flex;align-items:center;justify-content:center;flex:none}.forecast-head-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.forecast-stat-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--surface);border:1px solid var(--line);border-radius:99px;font-size:.8rem;font-weight:500;color:var(--muted)}.forecast-stat-pill strong{color:var(--ink);font-weight:600}.forecast-hero{position:relative;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--credit);border-radius:12px;padding:16px 18px}.forecast-hero.status-under{border-left-color:#2563eb}.forecast-hero.status-over{border-left-color:var(--agent)}.forecast-hero-empty{border-left-color:var(--faint)}.forecast-quote-wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.forecast-quote-body{flex:1;min-width:260px;display:flex;flex-direction:column;gap:6px}.forecast-quote-text{font-size:1.18rem;font-weight:600;line-height:1.35;color:var(--ink);letter-spacing:-.01em}.highlight-pred{color:var(--teal);font-weight:700}.highlight-actual{color:var(--ink);font-weight:700}.forecast-status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:99px;font-size:.82rem;font-weight:600;white-space:nowrap}.badge-ok{background:var(--credit-bg);color:var(--credit)}.badge-info{background:#2563eb1a;color:#2563eb}.badge-warn{background:var(--agent-bg);color:var(--agent)}.forecast-track-section{display:flex;flex-direction:column;gap:12px}.forecast-section-title{font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;justify-content:space-between}.forecast-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.forecast-item-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.forecast-clickable-card{cursor:pointer;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;-webkit-user-select:none;user-select:none}.forecast-clickable-card:hover{transform:translateY(-1px);border-color:var(--teal);box-shadow:0 4px 12px #0000000d}.forecast-clickable-card:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.forecast-spent-action{display:inline-flex;align-items:center;gap:4px;color:var(--text);font-weight:500;transition:color .12s ease}.forecast-clickable-card:hover .forecast-spent-action{color:var(--teal)}.forecast-quote-link{display:inline-flex;align-items:center;gap:3px;background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:inherit;font-weight:inherit}.forecast-quote-link:hover{opacity:.85}.dashboard-metrics-section{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}.dashboard-section-label{display:flex;align-items:baseline;gap:10px;font-size:.88rem;font-weight:600;color:var(--text)}.dashboard-kpi-grid.daily-grid,.dashboard-kpi-grid.monthly-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.forecast-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.forecast-item-month{font-weight:600;font-size:.92rem}.forecast-bar-track{position:relative;height:10px;background:var(--line-strong);border-radius:99px;overflow:visible;margin:6px 0}.forecast-bar-range{position:absolute;top:0;bottom:0;background:var(--teal-soft);border:1.5px solid var(--teal);border-radius:99px;opacity:.9}.forecast-bar-pin{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;background:var(--card);border:3.5px solid var(--credit);box-shadow:0 1px 3px #00000040;z-index:2}.forecast-bar-pin.pin-under{border-color:#2563eb}.forecast-bar-pin.pin-over{border-color:var(--agent)}.forecast-item-meta{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--muted)}.forecast-current-box{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 14px;background:var(--surface);border:1px dashed var(--line-strong);border-radius:12px;font-size:.85rem}.forecast-current-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.forecast-current-right{display:flex;align-items:center;gap:10px}.forecast-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:10px;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.forecast-footer-text{display:flex;align-items:center;gap:6px;max-width:720px}.purchase-simulator-card{display:flex;flex-direction:column;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.sim-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.sim-title-wrap{display:flex;align-items:center;gap:12px}.sim-icon-box{width:38px;height:38px;border-radius:12px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;flex:none}.sim-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.sim-kpi-tile{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.sim-num{font-size:1.45rem;line-height:1.2}.sim-verdict-banner{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:12px;padding:12px 16px;line-height:1.45}.sim-chart-wrap{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px}.sim-chart-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.sim-bars-container{position:relative;height:160px;padding-top:24px;margin:10px 0 4px}.sim-income-line{position:absolute;left:0;right:0;border-top:1.5px dashed var(--credit);pointer-events:none;z-index:3}.sim-income-label{position:absolute;right:0;bottom:2px;font-size:.72rem;font-weight:600;color:var(--credit);background:var(--surface);padding:0 4px}.sim-bars-track{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;height:100%;align-items:end}.sim-bar-col{display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;gap:6px}.sim-bar-stack{width:100%;max-width:28px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;border-radius:6px;overflow:hidden;background:var(--line)}.sim-bar-base{background:#0d9488;width:100%;min-height:2px;transition:height .2s ease}.sim-bar-emi{background:#f97316;width:100%;min-height:2px;transition:height .2s ease}.sim-bar-month{font-size:.72rem;white-space:nowrap}.sim-chart-legend{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:.8rem;padding-top:4px;border-top:1px solid var(--line)}.sim-leg-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:4px}.leg-base{background:#0d9488}.leg-emi{background:#f97316}.leg-inc{background:var(--credit)}.sim-adjuster{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.sim-adjuster-head{display:flex;align-items:center;justify-content:space-between}.sim-adjuster-row{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}.sim-input-group{display:flex;flex-direction:column;gap:4px}.sim-input{max-width:140px;padding:6px 10px}.sim-dur-pills{display:flex;gap:4px;flex-wrap:wrap}.sim-presets-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.sim-presets-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sim-preset-chip{background:var(--card);border:1px solid var(--line);border-radius:9999px;padding:4px 12px;font-size:.8rem;font-weight:500;color:var(--ink);cursor:pointer;transition:all .15s ease}.sim-preset-chip:hover{border-color:var(--teal);color:var(--teal)}.sim-preset-chip.active{background:var(--teal);border-color:var(--teal);color:#fff;font-weight:600}.purchase-simulator-dashboard-card{margin-top:20px}.test-purchase-banner{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--surface);border:1px dashed var(--line-strong);border-radius:12px;flex-wrap:wrap}.test-purchase-btn{background:var(--card);font-weight:600;white-space:nowrap}.pay-cycle-card{display:flex;flex-direction:column;gap:14px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:var(--radius);padding:18px 22px;box-shadow:var(--shadow);position:relative}.pay-cycle-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pay-cycle-title-wrap{display:flex;align-items:center;gap:10px}.pay-cycle-icon-box{width:36px;height:36px;border-radius:10px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;flex:none}.pay-cycle-hero-row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.pay-cycle-amount{font-size:2.2rem;font-weight:700;line-height:1.1;color:var(--ink);display:flex;align-items:baseline;gap:6px}.pay-cycle-unit{font-size:1rem;font-weight:500;color:var(--muted)}.pay-cycle-today-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pay-cycle-headroom-pill{padding:4px 12px;border-radius:9999px;font-size:.84rem;font-weight:600;display:inline-flex;align-items:center;gap:6px}.headroom-ok{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.headroom-warn{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.headroom-tight{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.pay-cycle-progress-wrap{display:flex;flex-direction:column;gap:6px}.pay-cycle-progress-track{width:100%;height:8px;background:var(--line);border-radius:9999px;overflow:hidden;position:relative}.pay-cycle-progress-fill{height:100%;background:var(--teal);border-radius:9999px;transition:width .3s ease}.pay-cycle-meta-row{display:flex;align-items:center;justify-content:space-between;font-size:.82rem;color:var(--muted);flex-wrap:wrap;gap:10px}.pay-cycle-pill-btn{background:var(--surface);border:1px solid var(--line);border-radius:9999px;padding:4px 12px;font-size:.8rem;font-weight:600;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.pay-cycle-pill-btn:hover{border-color:var(--teal);color:var(--teal)}.pay-day-picker-popover{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-top:6px}.dashboard-alerts-strip{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.early-alert-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:var(--card)}.early-alert-card.warn{border-color:#ef44444d;background:#ef44440a}.early-alert-card.info{border-color:#3b82f64d;background:#3b82f60a}.early-alert-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;flex-shrink:0}.early-alert-card.warn .early-alert-icon{background:#ef44441f;color:#ef4444}.early-alert-card.info .early-alert-icon{background:#3b82f61f;color:#3b82f6}.early-alert-title{display:block;font-size:.88rem;font-weight:600;margin-bottom:2px}.early-alert-message{margin:0;line-height:1.4}.early-alert-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.forecast-spent-link{cursor:pointer;transition:opacity .15s ease,transform .15s ease}.forecast-spent-link:hover{opacity:.8;transform:translate(2px)}.forecast-spent-link .num{text-decoration:underline;text-underline-offset:2px}.segmented-control{display:inline-flex;align-items:center;background:var(--bg-subtle, rgba(0,0,0,.04));padding:3px;border-radius:999px;border:1px solid var(--line);gap:3px}.segmented-control-btn{border:none;background:transparent;color:var(--muted);font-size:.8rem;font-weight:500;padding:4px 12px;border-radius:999px;cursor:pointer;transition:all .15s ease;line-height:1.2}.segmented-control-btn:hover{color:var(--ink);background:#0000000d}.segmented-control-btn.active{background:var(--ink);color:#fff;font-weight:600;box-shadow:0 1px 3px #0000001f}.sinking-funds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;margin-top:12px}.sinking-fund-card{padding:16px;display:flex;flex-direction:column;gap:12px;border-radius:14px}.sinking-fund-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.sinking-fund-title{font-size:.95rem;font-weight:600;display:block}.sinking-fund-hero{display:flex;align-items:baseline;gap:8px}.sinking-fund-monthly{font-size:1.35rem;font-weight:700;color:var(--teal)}.sinking-fund-advice{background:var(--surface);padding:10px 12px;border-radius:10px;font-size:.82rem;color:var(--ink);line-height:1.4;border-left:3px solid var(--teal)}.sinking-fund-meta{display:flex;align-items:center;justify-content:space-between;font-size:.8rem;color:var(--muted)}
