*,*:before,*:after{box-sizing:border-box}body{margin:0;-webkit-text-size-adjust:100%}html,body{touch-action:pan-x pan-y}button,a,label{-webkit-tap-highlight-color:transparent;touch-action:manipulation}:root{--bg: #faf7ea;--surface: #fffdf5;--surface-2: #f2edd8;--fg: #0b1166;--muted: #4b5090;--line: #e6e0c6;--accent: #1726d9;--accent-lip: #0b1166;--on-accent: #faf7ea;--accent-soft: #fff1dc;--accent-hi: #fdcd29;--gold: #fdcd29;--gold-lip: #c99a00;--gold-soft: #fff4c7;--gold-ink: #1726d9;--plum: #8a3f6b;--plum-soft: #f3e2ec;--walk: #1726d9;--walk-soft: #e3e6fb;--water: #1726d9;--warn: #b3261e;--warn-soft: #fbe3df;--face-ink: #0b1166;--orange: #f96803;--on-orange: #0b1166;--head: var(--accent);--hero: var(--accent);--on-hero: var(--on-accent);--lip: 0;--f1: #fdcd29;--f2: #fedd6a;--f3: #f9a15a;--f4: #e6e0c6;--f5: #cfc6a3;--h1: #fff4c7;--h2: #fde58a;--h3: #fdcd29;--h4: #fb9a3d;--h5: #f96803;--font-display: "Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 20px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0b1166;--surface: #1726d9;--surface-2: #2433e6;--fg: #faf7ea;--muted: #d4d7f7;--line: #3442ea;--accent: #fdcd29;--accent-lip: #c99a00;--on-accent: #0b1166;--accent-soft: #3a2a7a;--accent-hi: #0b1166;--gold: #fdcd29;--gold-lip: #c99a00;--gold-soft: #3d3a6e;--gold-ink: #0b1166;--plum: #f2b8dc;--plum-soft: #3b2a7a;--walk: #fdcd29;--walk-soft: #2433e6;--water: #9fd8ff;--warn: #ffb4a6;--warn-soft: #4a2470;--face-ink: #0b1166;--head: var(--fg);--hero: var(--surface-2);--on-hero: var(--fg);color-scheme:dark}}:root[data-theme=dark]{--bg: #0b1166;--surface: #1726d9;--surface-2: #2433e6;--fg: #faf7ea;--muted: #d4d7f7;--line: #3442ea;--accent: #fdcd29;--accent-lip: #c99a00;--on-accent: #0b1166;--accent-soft: #3a2a7a;--accent-hi: #0b1166;--gold: #fdcd29;--gold-lip: #c99a00;--gold-soft: #3d3a6e;--gold-ink: #0b1166;--plum: #f2b8dc;--plum-soft: #3b2a7a;--walk: #fdcd29;--walk-soft: #2433e6;--water: #9fd8ff;--warn: #ffb4a6;--warn-soft: #4a2470;--face-ink: #0b1166;--head: var(--fg);--hero: var(--surface-2);--on-hero: var(--fg);color-scheme:dark}[hidden]{display:none!important}html,body{height:100%;overflow:hidden}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.45;display:flex;flex-direction:column}.scroller{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-left:max(var(--sp-side, 16px),env(safe-area-inset-left,0px));padding-right:max(var(--sp-side, 16px),env(safe-area-inset-right,0px));padding-block:max(16px,env(safe-area-inset-top,0px)) 24px}body.noflowbar .scroller{padding-bottom:calc(40px + env(safe-area-inset-bottom,0px))}.app{max-width:calc(480px + max(0px,100vw - 480px) * var(--sp-wide, 0));margin:0 auto;display:flex;flex-direction:column;gap:var(--sp-app, 18px)}h1,h2,h3{font-family:var(--font-display);margin:0;text-wrap:balance;letter-spacing:-.02em;color:var(--head)}h1{font-size:32px;line-height:1.1;font-weight:800}h2{font-size:25px;line-height:1.15;font-weight:800}h3{font-size:20px;line-height:1.2;font-weight:800}p{margin:0}.muted{color:var(--muted)}.small{font-size:14px}.stack{display:flex;flex-direction:column;gap:var(--sp-stack, 6px)}.stack-lg{display:flex;flex-direction:column;gap:var(--sp-cgap, 14px)}:is(.app,.screen)>.stack-lg{gap:var(--sp-sec, 14px)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.between{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:5px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted)}.pill svg{width:18px;height:18px;flex-shrink:0}.pill.gold{background:var(--gold);color:var(--gold-ink);font-weight:700}.pill.outline{background:var(--surface);border:2px solid var(--line);color:var(--fg)}.pill.outline b{font-weight:700}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.ok{background:var(--accent-soft);color:var(--fg)}.btn{font-family:var(--font-body);font-weight:700;font-size:16px;letter-spacing:0;border:0;border-radius:14px;padding:calc(13px * var(--sp-btn, 1)) calc(18px * var(--sp-btn, 1));cursor:pointer;width:100%;text-align:center;background:var(--accent);color:var(--on-accent);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--accent-lip);transition:transform 80ms ease,box-shadow 80ms ease,opacity .12s ease;min-height:max(40px,calc(48px * var(--sp-btn, 1)))}.btn:active{transform:translateY(calc(4px * var(--lip, 1)));box-shadow:0 0 0 var(--accent-lip)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.secondary{background:transparent;color:var(--accent);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--line);border:2px solid var(--accent)}.btn.gold{background:var(--gold);color:var(--gold-ink);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--gold-lip)}.btn.small{font-size:15px;padding:calc(9px * var(--sp-btn, 1)) calc(14px * var(--sp-btn, 1));min-height:max(36px,calc(44px * var(--sp-btn, 1)));width:auto}.btn.done{background:var(--accent-soft);color:var(--fg);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--orange);border:2px solid var(--orange)}.btnrow{display:flex;gap:10px;flex-wrap:wrap}.pillrow{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.btnrow .btn{flex:1 1 0;min-width:0;width:auto}.linkbtn{background:none;border:0;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;padding:8px 0;min-height:40px;text-align:left}a.link{color:var(--accent);font-weight:700;text-decoration:none}a.link:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:10px}.card{background:var(--surface);border:2px solid var(--line);border-radius:calc(var(--card-r, var(--radius)) * var(--sp-r, 1));padding:var(--sp-cpy, 16px) var(--sp-cpx, 16px);display:flex;flex-direction:column;gap:var(--sp-cgap, 14px)}.card.hero{background:var(--hero);border-color:var(--hero);color:var(--on-hero)}.card.hero :is(h1,h2,h3),.card.hero .muted{color:var(--on-hero)}.card.hero .btn:not(.secondary){background:var(--gold);color:var(--gold-ink);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--gold-lip)}.card.hero .btn.secondary{color:var(--on-hero);border-color:var(--on-hero)}.card.hero .empty{color:var(--on-hero);border-color:color-mix(in srgb,var(--on-hero) 55%,transparent)}.card.goodcard{background:var(--accent-soft);border-color:var(--orange)}.card.warncard{background:var(--warn-soft);border-color:var(--warn)}.sechead{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.stones{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.stone{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(--muted)}.stone .disc{width:100%;max-width:48px;aspect-ratio:1;border-radius:50%;border:2px solid var(--line);background:var(--surface);display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--muted)}.stone .disc svg{width:64%;height:64%}.stone.today .disc{border:3px solid var(--accent);color:var(--accent)}.stone.done .disc{background:var(--orange);border-color:var(--orange);color:var(--on-orange)}.stone.part .disc{background:var(--accent-soft);border-color:var(--orange);color:var(--fg)}.stone.part.today .disc,.stone.lazy.today .disc{border:3px solid var(--accent)}.stone.lazy .disc{background:var(--plum-soft);border-color:var(--plum);color:var(--plum)}.stone.miss .disc{background:var(--surface-2)}.trdot{display:block;width:7px;height:7px;border-radius:50%;background:var(--accent)}.trdot.off{visibility:hidden}.qhead{display:flex;align-items:center;gap:12px}.iconbtn{width:max(36px,calc(44px * var(--sp-btn, 1)));height:max(36px,calc(44px * var(--sp-btn, 1)));border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--fg);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.iconbtn svg{width:20px;height:20px}.iconbtn:disabled{opacity:.35;cursor:default}.bar{flex:1;height:14px;border-radius:999px;background:var(--surface-2);overflow:hidden}.card>.bar,.stack>.bar{flex:none}.bar>span{display:block;height:100%;width:0;border-radius:999px;background:var(--orange);transition:width .26s ease}.bar.goldbar>span{background:var(--orange)}.bar{box-shadow:inset 0 0 0 1px var(--line)}.bar>span:not([style="width: 0%"]){min-width:28px}.bar>span[style="width: 0%"]{display:none}.swatch .bar{flex:none;width:80%;height:6px}.swatch .bar>span:not([style="width: 0%"]){min-width:6px}.count{font-size:14px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;min-width:44px;text-align:right}.qtext{min-height:64px;display:flex;align-items:flex-end}.qtext>.stack{flex:1;min-width:0;gap:4px}.faces{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.face{background:none;border:0;padding:6px 2px 8px;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--fg);transition:transform .12s ease,background .12s ease}.face svg{width:100%;max-width:64px;height:auto;display:block}.face span{font-size:13px;font-weight:600;line-height:1.2;text-align:center;color:var(--muted)}@media(hover:hover){.face:hover{background:var(--surface-2)}}.face[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--orange);transform:translateY(-3px)}.face:active{transform:scale(.92);transition-duration:60ms}.qanswers .face[aria-pressed=true] svg,.qanswers .tile[aria-pressed=true] svg{animation:tapbounce .24s cubic-bezier(.3,1.6,.5,1) both}@keyframes tapbounce{0%{transform:scale(.85)}60%{transform:scale(1.12)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.qanswers .face[aria-pressed=true] svg,.qanswers .tile[aria-pressed=true] svg{animation:none}}.face[aria-pressed=true] span{color:var(--fg)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile{border:2px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:16px 10px 14px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;color:var(--fg);font-family:var(--font-display);font-size:18px;font-weight:600;box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--line);transition:transform 80ms ease}.tile svg{width:52px;height:52px}.tile[aria-pressed=true]{border-color:var(--orange);background:var(--accent-soft);box-shadow:0 calc(4px * var(--lip, 1)) 0 var(--orange)}.tile:active{transform:translateY(3px)}.msgrid{display:flex;flex-direction:column;gap:8px}.msrow{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600}.note{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--muted);background:var(--surface-2);border-radius:14px;padding:10px 12px}.note svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.opts{display:flex;flex-direction:column;gap:10px}.optwrap{display:flex;flex-direction:column;gap:4px}.opt{position:relative;display:block;width:100%;text-align:left;font:inherit;color:var(--fg);border:2px solid var(--line);background:var(--surface);border-radius:16px;padding:12px 14px 12px 48px;cursor:pointer;box-shadow:0 calc(3px * var(--lip, 1)) 0 var(--line);transition:transform 80ms ease}.opt:before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;border:2px solid var(--line);background:var(--surface);box-sizing:border-box}.opt[aria-pressed=true]{border-color:var(--orange);background:var(--accent-soft);box-shadow:0 calc(3px * var(--lip, 1)) 0 var(--orange)}.opt[aria-pressed=true]:before{border:6px solid var(--orange)}.opt:active{transform:translateY(2px)}.opt .rank{font-size:12px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--muted);display:block}.opt .rank.best{color:var(--gold-ink)}.opt .title{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.2;display:block;margin-top:2px}.opt .why{font-size:14px;color:var(--muted);display:block;margin-top:4px}.opt .meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:6px;font-size:13px;color:var(--muted)}.tag{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:3px 8px;border-radius:8px}.tag.pilates{background:var(--accent-soft);color:var(--accent)}.tag.yoga{background:var(--plum-soft);color:var(--plum)}.tag.walk{background:var(--walk-soft);color:var(--walk)}.tag.run{background:var(--accent-soft);color:var(--accent)}.tag.bike{background:var(--walk-soft);color:var(--walk)}.tag.swim{background:var(--plum-soft);color:var(--plum)}.tag.workout{background:var(--accent-soft);color:var(--accent)}.kcal{font-variant-numeric:tabular-nums;color:var(--muted)}.movebox{display:flex;flex-direction:column;gap:10px}.movebox .title{font-family:var(--font-display);font-size:21px;font-weight:600;line-height:1.2}.halfrow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-sec, 14px)}.halfrow>.card:only-child{grid-column:1 / -1}.card.halfcard{gap:10px}.card.halfcard>.btn{margin-top:auto;width:100%}.halftext{display:flex;flex-direction:column;gap:2px}.halfhead svg{width:34px;height:36px;display:block;color:var(--walk)}.halfhead.water svg{color:var(--water)}.halfhead.walk.on svg ellipse{fill:var(--walk)}.halfhead.water.on svg path:first-child{fill:var(--water);fill-opacity:.3}.steps{display:flex;align-items:center;gap:12px}.steps svg{width:34px;height:36px;flex-shrink:0;color:var(--walk)}.steps.on svg ellipse{fill:var(--walk)}.steps.water svg{color:var(--water)}.steps.water.on svg path:first-child{fill:var(--water);fill-opacity:.3}.meter{display:flex;flex-direction:column;gap:6px}.meter .bar{height:16px;flex:none}.meter .bar>span{background:var(--orange)}.meter .mrow{display:flex;justify-content:space-between;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;gap:8px;flex-wrap:wrap}.inglist.mtl{gap:8px}.mtlitem{display:grid;grid-template-columns:58px 1fr;gap:8px;align-items:center}.mtlitem>.swipe{min-width:0}.mtlrow{display:grid;grid-template-columns:1fr 18px;align-items:center;gap:10px;width:100%;min-height:56px;padding:10px 8px 10px 14px;border:2px solid var(--line);border-radius:12px;background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer;position:relative;transition:transform .18s ease,background .12s ease}.mtlrow:active{background:var(--surface-2)}.swipe.dragging .mtlrow{transition:none}.mtlat{font-size:13px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.mtlname{min-width:0;text-align:left;display:flex;flex-direction:column;gap:2px}.mtlname b{font-weight:600;line-height:1.3}.mtlk{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.mtlchev{color:var(--accent);display:grid;place-items:center}.mtlchev svg{width:20px;height:20px}.shoprow.mpart{align-items:center;gap:2px;padding-right:4px;min-height:56px}.mpart .qtybtns{flex-shrink:0;margin-left:4px}.mpart .ingbtn{align-items:center}.mpart .itxt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mpk{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.mpart div.ingbtn{cursor:default}.mpart .iconspace{flex-shrink:0;width:44px}.favstar{flex-shrink:0;width:44px;height:44px;border:0;background:none;padding:8px;color:var(--fg);cursor:pointer;display:grid;place-items:center}.favstar svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}.favstar.on{color:var(--orange)}.favstar.on svg{fill:var(--orange)}.bar.rangebar{position:relative}.bar.rangebar>.band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--accent) 22%,transparent);border-radius:999px}.bar.rangebar>span{position:relative}.sugnext{border-top:2px solid var(--surface-2);padding-top:12px}.sl{margin:0;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--muted)}.sugnext .sv{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.25}.slot{border-top:2px solid var(--surface-2);padding-top:12px;display:flex;flex-direction:column;gap:8px}.slot:first-of-type{border-top:0;padding-top:0}.slot .sv{font-family:var(--font-display);font-size:18px;font-weight:600;line-height:1.25}.slot .logged{display:flex;align-items:center;gap:10px}.slot .logged svg{width:26px;height:26px;flex-shrink:0}.mlist{display:flex;flex-direction:column;gap:6px}.mrowbtn{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;font:inherit;color:var(--fg);background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer;min-height:48px}.mrowbtn b{font-weight:600}.qlist{display:flex;flex-direction:column;gap:6px}.qrow .qmain{display:flex;flex-direction:column;gap:2px;font-size:inherit;color:var(--fg);white-space:normal}.qrow .qmain .qtag{font-size:12px;font-weight:600;color:var(--muted);white-space:normal}.mrowbtn span{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.curdesign{flex:none;align-self:center;padding:0 8px;white-space:nowrap}.card>h3+.capunder{margin-top:-10px}.draglist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-list, 6px)}.dragrow{display:flex;align-items:center;gap:8px;padding:6px 4px 6px 12px;border:2px solid var(--line);border-radius:12px;background:var(--surface);transition:transform .16s ease,background .16s ease;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.dragrow .itxt{flex:1;min-width:0}.dragrow.holding{background:var(--surface-2)}.dragrow.dragging{transition:none;position:relative;z-index:2;background:var(--surface-2);box-shadow:0 6px 16px #0000001f}.draghandle{width:32px;height:40px;display:grid;place-items:center;color:var(--muted);cursor:grab;touch-action:none}.draghandle svg,.dragbtn svg{width:22px;height:22px}.dragbtn{width:40px;height:40px}.dragbtn:disabled{opacity:.35}.dragbtn.vh:not(:focus-visible){position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%)}.dragbtn.vh:focus-visible{position:static;width:40px;height:40px;clip-path:none;overflow:visible}@media(prefers-reduced-motion:reduce){.dragrow,.foldchev{transition:none}}.plates{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plates svg{width:34px;height:34px}.chiprow{display:flex;flex-wrap:wrap;gap:8px}.chip{border:2px solid var(--line);background:var(--surface);border-radius:999px;padding:calc(8px * var(--sp-btn, 1)) calc(12px * var(--sp-btn, 1));font:inherit;font-weight:600;font-size:14px;cursor:pointer;box-shadow:0 calc(2px * var(--lip, 1)) 0 var(--line);color:var(--fg);min-height:max(44px,calc(44px * var(--sp-btn, 1)));text-align:left}.chip:active{transform:translateY(2px)}.task{display:flex;flex-direction:column;gap:10px}.task .tick{width:26px;height:26px;border-radius:8px;border:2px solid var(--line);display:grid;place-items:center;flex-shrink:0}.task .tick svg{width:16px;height:16px}.task.isdone .tick{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.task.ispass .tick{background:var(--plum-soft);border-color:var(--plum);color:var(--plum)}.task .chosen{font-weight:600}.sumgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sum{background:var(--surface-2);border-radius:12px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.sum b{font-family:var(--font-display);font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.sum span{font-size:12px;font-weight:600;color:var(--muted)}.sum.bad b{color:var(--warn)}.weeknav{display:flex;align-items:center;justify-content:space-between;gap:10px}.wild{display:flex;flex-direction:column;gap:10px}.wopt{display:flex;gap:12px;align-items:flex-start}.wopt svg{width:30px;height:30px;flex-shrink:0;color:var(--plum)}.wopt .wt{font-weight:700}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{background:var(--surface);border:2px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}.stat b{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--head);line-height:1.1;font-variant-numeric:tabular-nums}.stat span{font-size:13px;font-weight:600;color:var(--muted)}.stat.bad b{color:var(--warn)}.stats3 .stat b{font-size:24px}.badges{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:12px 8px}.badge{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.badge svg{width:58px;height:58px}.badge b{font-size:13px;line-height:1.2}.badge span{font-size:13px;color:var(--muted);line-height:1.25}.badge.locked b{color:var(--muted)}button.badge{border:0;background:none;color:inherit;font:inherit;padding:6px 2px;border-radius:14px;cursor:pointer}button.badge:active svg{transform:scale(.94)}.coinstage{perspective:700px;display:grid;place-items:center;padding:18px 0 6px}.coin{width:200px;height:200px;transform-style:preserve-3d;touch-action:none;cursor:grab;border-radius:50%;outline-offset:6px}.coin.locked{cursor:pointer}.coin:active{cursor:grabbing}.coin3d{position:relative;width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.coinface,.coinedge{position:absolute;inset:0;border-radius:50%}.coinface{backface-visibility:hidden;-webkit-backface-visibility:hidden;display:grid;place-items:center}.coinface.front{transform:translateZ(6px)}.coinface.back{transform:rotateY(180deg) translateZ(6px)}.coinface svg{width:100%;height:100%}.coinface.front svg{filter:drop-shadow(0 6px 10px rgba(0,0,0,.18))}.coinedge{background:var(--gold-lip)}.coin.locked .coinedge{background:var(--line)}.coinback{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;text-align:center;padding:30px;background:radial-gradient(circle at 35% 30%,var(--gold-soft),var(--gold) 140%);border:5px solid var(--gold-lip);color:var(--gold-ink)}.coinback{align-content:center;gap:2px}.coinback span{font-size:15px;font-weight:600}.coinback b{font-size:30px;line-height:1.1}.coin.locked .coinback{background:var(--surface-2);border:5px dashed var(--line);padding:44px}.coin.locked .coinback svg{width:100%;height:100%}.coin[data-anim=shake]{animation:lockshake .6s cubic-bezier(.36,.07,.19,.97) both;transform-origin:50% 20%}@keyframes lockshake{10%,90%{transform:translate(-2px) rotate(-3deg)}20%,80%{transform:translate(4px) rotate(6deg)}30%,50%,70%{transform:translate(-7px) rotate(-9deg)}40%,60%{transform:translate(7px) rotate(9deg)}}.coininfo{text-align:center;display:flex;flex-direction:column;gap:4px}.coininfo h2,.coininfo p{margin:0}.mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}.chart{display:flex;flex-direction:column;gap:4px;min-width:0}.chart h4{margin:0;font-size:14px;font-weight:700}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .cap{font-size:12px;color:var(--muted)}.hbars{display:flex;flex-direction:column;gap:8px}.hbar{display:grid;grid-template-columns:64px minmax(0,1fr) 28px;align-items:center;gap:8px;font-size:14px;font-weight:600}.hbar .track{height:14px;border-radius:4px;background:var(--surface-2);overflow:hidden}.hbar .fill{height:100%;border-radius:4px}.hbar .n{text-align:right;font-variant-numeric:tabular-nums}details.numbers summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--accent);padding:4px 0}details.numbers .tw,.usagetable .tw{overflow-x:auto}details.numbers table,.usagetable table{border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;margin-top:6px}details.numbers th,details.numbers td,.usagetable th,.usagetable td{text-align:left;padding:3px 12px 3px 0;border-bottom:1px solid var(--line)}.hist{display:flex;flex-direction:column;gap:8px}.monthgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 2px;margin-top:8px}.mhead{text-align:center;font-size:13px;font-weight:700;color:var(--muted)}.mday{position:relative;aspect-ratio:1;max-width:44px;width:100%;justify-self:center;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-variant-numeric:tabular-nums;color:var(--fg);border:2px solid transparent;box-sizing:border-box}.mday.blank{visibility:hidden}.mday.future{color:var(--muted);opacity:.55}.mday.today{border-color:var(--accent)}.mday.done{background:var(--orange);color:var(--fg);font-weight:700}.mday.freeze{background:var(--water);color:var(--on-accent);font-weight:700}.mday.plate:after,.mday.gold:after{content:"";position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:var(--warn);border:2px solid var(--surface)}.mday.gold:after{background:var(--gold)}button.mday{font:inherit;font-size:13px;background:none;padding:0;margin:0;cursor:pointer}button.mday.done{background:var(--orange)}button.mday.freeze{background:var(--water)}.monthsum{margin-top:8px;font-weight:700}.monthkey{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px}.mdot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-left:4px}.mdot.done{background:var(--orange)}.mdot.plate{background:var(--warn)}.mdot.freeze{background:var(--water)}.hrow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:14px}.hrow b{font-family:var(--font-display);font-weight:600;font-size:16px}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea){font:inherit;font-size:16px;line-height:1.3;width:100%;min-width:0;min-height:46px;padding:10px 12px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--fg);-webkit-appearance:none;appearance:none;transition:border-color .12s ease}:where(textarea){resize:vertical;min-height:88px}:where(input,textarea)::placeholder{color:var(--muted);opacity:.8}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea):focus{outline:none;border-color:var(--accent)}:where(input[type=date],input[type=time]){display:block;text-align:left}.field{display:flex;flex-direction:column;gap:6px}.field label{font-weight:700;font-size:14px}.inrow{display:flex;gap:8px}.inrow input{flex:1}.scancam{position:relative;overflow:hidden;border-radius:12px;background:#000;aspect-ratio:4 / 3}.scancam video{display:block;width:100%;height:100%;object-fit:cover}.scanframe{position:absolute;inset:32% 12%;border:2px solid #fff;border-radius:12px;box-shadow:0 0 0 999px #00000059;pointer-events:none}.tabbar{position:relative;flex:none;z-index:15;background:var(--surface);border-top:2px solid var(--line);padding:6px max(16px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.tabbar .inner{max-width:480px;margin:0 auto;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px}.tab{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:12px;color:var(--muted);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;min-height:52px}.tab svg{width:24px;height:24px}.tab[aria-current=page]{color:var(--accent);font-weight:700}.tab:after{content:"";width:6px;height:6px;border-radius:50%}.tab[aria-current=page]:after{background:var(--orange)}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(86px + env(safe-area-inset-bottom,0px));z-index:28;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:14px;font-weight:600;font-size:15px;max-width:calc(100% - 32px);text-align:center;box-shadow:0 4px #0000001f}.toast.hasact{z-index:40;display:flex;align-items:center;gap:14px;text-align:left;padding:6px 6px 6px 16px;width:max-content}.toast[hidden]{display:none}.toast{touch-action:none;cursor:grab}.toast .toastact{border:0;background:var(--gold);color:#0b1166;border-radius:12px;font:inherit;font-weight:700;min-height:40px;padding:0 14px;cursor:pointer}.toast{animation:toastin .2s ease-out}@keyframes toastin{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.banner{font-size:14px;color:var(--warn);background:var(--warn-soft);border-radius:12px;padding:10px 12px}.celebrate{position:fixed;inset:0;background:color-mix(in srgb,var(--bg) 82%,transparent);display:grid;place-items:center;padding:24px max(16px,env(safe-area-inset-right,0px)) 24px max(16px,env(safe-area-inset-left,0px));z-index:30}.celebrate .card{max-width:380px;width:100%;text-align:center;align-items:center;box-shadow:0 6px 0 var(--line)}.bigstar{width:110px;height:110px;animation:pop .6s cubic-bezier(.2,1.6,.4,1) both}@keyframes pop{0%{transform:scale(.2) rotate(-25deg)}to{transform:scale(1) rotate(0)}}.confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:31}.confetti i{position:absolute;top:-16px;width:10px;height:14px;border-radius:3px;animation:fall linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}.confetti[data-fx=sparkle] i{width:14px;height:14px;border-radius:0;animation-name:twinkle;animation-timing-function:ease-in-out;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0}@keyframes twinkle{30%{opacity:1;transform:scale(1.2) rotate(45deg)}to{opacity:0;transform:scale(.4) rotate(90deg)}}.confetti[data-fx=burst] i{left:50%;top:45%;width:16px;height:16px;border-radius:0;animation-name:burst;animation-timing-function:cubic-bezier(.2,.8,.3,1);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}@keyframes burst{0%{transform:translate(0) scale(.4);opacity:1}80%{opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1) rotate(180deg);opacity:0}}.confetti[data-fx=hearts] i{top:auto;bottom:-20px;width:16px;height:15px;border-radius:0;animation-name:rise;animation-timing-function:ease-out;clip-path:path("M8 15C8 15 0 10 0 4.5 0 2 2 0 4.3 0 6 0 7.3 1 8 2.3 8.7 1 10 0 11.7 0 14 0 16 2 16 4.5 16 10 8 15 8 15Z")}@keyframes rise{to{transform:translateY(-110vh) translate(20px);opacity:.2}}.confetti[data-fx=petals] i{width:12px;height:16px;border-radius:0 100%;animation-name:drift;animation-timing-function:ease-in-out;opacity:.85}@keyframes drift{50%{transform:translateY(55vh) translate(30px) rotate(200deg)}to{transform:translateY(110vh) translate(-10px) rotate(400deg)}}.enter{animation:enter .22s ease both}.qanswers{animation:qpop .2s cubic-bezier(.2,.9,.3,1.2) both}.qanswers.out{animation:qpopout .14s ease-in both;pointer-events:none}@keyframes qpop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}@keyframes qpopout{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.92)}}@media(prefers-reduced-motion:reduce){.qanswers,.qanswers.out{animation-duration:0s}}.scroller{position:relative;overflow-x:hidden;touch-action:pan-y}.swipe-ghost{position:absolute;margin:0;overflow:hidden;pointer-events:none}.swipe-ghost .enter,#root.swiped .enter{animation-duration:0s}@keyframes enter{0%{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}.spin{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:rot .9s linear infinite;flex-shrink:0}@keyframes rot{to{transform:rotate(360deg)}}.sheet{position:fixed;inset:0;z-index:25;background:color-mix(in srgb,var(--fg) 40%,transparent);display:flex;align-items:flex-end;justify-content:center}.linkbtn.small{font-size:14px}.sheet-panel{animation:sheetup .24s cubic-bezier(.2,.9,.3,1) both}@keyframes sheetup{0%{transform:translateY(48px)}to{transform:none}}.sheet-panel{background:var(--bg);width:100%;max-width:560px;max-height:92vh;overflow-y:auto;border-radius:28px 28px 0 0;padding:18px max(16px,env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:16px;box-shadow:0 -4px 0 var(--line)}.serves{display:flex;align-items:center;gap:12px}.serves b{font-family:var(--font-display);font-size:20px;font-weight:600;min-width:84px;text-align:center;font-variant-numeric:tabular-nums}.stepper{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;width:100%}.stepper .serves{justify-content:center}.stepper .serves b{min-width:110px}.steptitle{font-weight:700}.inglist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-list, 6px)}.ingbtn{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;font:inherit;color:var(--fg);background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:calc(10px * var(--sp-btn, 1)) 12px;cursor:pointer;min-height:max(38px,calc(44px * var(--sp-btn, 1)))}.ingbtn .box{width:24px;height:24px;border-radius:7px;border:2px solid var(--accent);flex-shrink:0;display:grid;place-items:center}.ingbtn .box svg{width:14px;height:14px}.ingbtn .amt{font-weight:700;font-variant-numeric:tabular-nums}.ingbtn[aria-pressed=true]{background:var(--surface-2);color:var(--muted)}.ingbtn[aria-pressed=true] .box{background:var(--orange);border-color:var(--orange);color:var(--on-orange)}.ingbtn[aria-pressed=true] .itxt{text-decoration:line-through}.ingbtn[aria-pressed=true]:not(:has(.box,.stepnum)){color:var(--fg)}.ingbtn[aria-pressed=true]:not(:has(.box,.stepnum)) .itxt{text-decoration:none}.shoprow:has(>.ingbtn[aria-pressed=true]):not(:has(>.ingbtn :is(.box,.stepnum))){border-color:var(--orange);background:var(--accent-soft)}.stepnum{width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-family:var(--font-display);font-weight:700;display:grid;place-items:center;flex-shrink:0;font-size:14px}.ingbtn[aria-pressed=true] .stepnum{background:var(--accent);color:var(--on-accent)}.qrbox{display:flex;gap:14px;align-items:center}.qrbox svg{width:112px;height:112px;flex-shrink:0;border-radius:8px}.mrowwrap{display:flex;gap:6px;align-items:stretch}.mrowwrap .mrowbtn{flex:1;min-width:0}.mrowwrap .iconbtn{height:auto;min-height:48px;width:48px}.screen{display:contents}.bignum{font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.calcl{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:15px}.testnote{font-size:13px;font-weight:700;color:#6b3d00;background:#ffe39a;border-radius:10px;padding:6px 10px;text-align:center}.stonecell{display:flex;justify-content:center}.stonebtn{background:none;border:0;padding:0;margin:0;font-family:inherit;line-height:inherit;cursor:pointer;width:100%}.stonebtn .disc{transition:transform .12s ease}.stonebtn:active .disc{transform:scale(.94)}.stone.viewing .disc{outline:3px solid var(--gold);outline-offset:2px}.pastnote{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:var(--fg);background:var(--gold-soft);border:2px solid var(--gold);border-radius:14px;padding:10px 12px}.pastnote svg{width:18px;height:18px;flex-shrink:0;color:var(--gold-ink)}.pastnote span{flex:1 1 180px}.netnote{font-size:14px;color:var(--muted);background:var(--surface-2);border-radius:12px;padding:8px 12px}.loginbunny{width:96px;height:auto;overflow:visible;align-self:center}.loginform{padding-top:6vh}.loginform h1{text-align:center}.loginform>.stack>p{text-align:center}.note.okcheck{background:var(--accent-soft);color:var(--fg)}.note.warn{background:var(--warn-soft);color:var(--warn)}.shoprow>.rowtag{display:flex;align-items:center;flex-shrink:0;padding:0 12px 0 4px}.chips{display:flex;gap:6px;justify-content:space-between;flex-wrap:wrap}.chips .pill{font-size:14px;padding:5px 9px;white-space:nowrap;gap:5px}.btn>svg{width:20px;height:20px;vertical-align:-4px;margin-right:6px}.popblob{position:fixed;z-index:40;background:var(--gold);pointer-events:none}.popstar{position:fixed;z-index:41;width:72px;height:72px;pointer-events:none}.popstar svg{width:100%;height:100%;display:block}.daypath svg{width:100%;height:auto;display:block;overflow:visible}.daypath .pill svg{width:14px;height:14px}.jobchips{display:flex;flex-wrap:wrap;gap:6px}.jobchip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:4px 10px 4px 5px;border-radius:999px;background:var(--surface-2);color:var(--muted)}.jobchip .jb{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;background:var(--surface);box-sizing:border-box}.jobchip .jb svg{width:11px;height:11px}.jobchip.on{background:var(--accent-soft);color:var(--fg)}.jobchip.on .jb{background:var(--orange);border-color:var(--orange);color:var(--on-orange)}.levelcard{flex-direction:row;align-items:center;gap:14px}.levelcard .plant{width:84px;flex-shrink:0}.levelcard>.stack{flex:1;min-width:0}.levelcard .plant svg{width:100%;height:auto;display:block}.ice{display:flex;gap:6px;flex-shrink:0}.ice svg{width:40px;height:40px;display:block}.chalcard{background:var(--walk-soft);border-color:var(--walk)}.pillbtn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:14px;font-weight:700;padding:6px 12px;border-radius:999px;border:2px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;min-height:44px;box-shadow:0 2px 0 var(--line)}.pillbtn svg{width:18px;height:18px}.slotchips{display:flex;flex-wrap:wrap;gap:8px}.slotchips .chip[aria-pressed=true]{border-color:var(--orange);background:var(--accent-soft);color:var(--fg);box-shadow:0 calc(2px * var(--lip, 1)) 0 var(--orange)}.mealchip{cursor:default;display:inline-flex;align-items:center;gap:8px;padding-right:6px}.xbtn{border:0;background:var(--surface-2);color:var(--fg);width:30px;height:30px;border-radius:50%;font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.vh:focus-visible+label{outline:3px solid var(--gold);outline-offset:3px}.addphoto,.mealphoto{width:100%;max-height:260px;object-fit:cover;border-radius:14px;border:2px solid var(--line);display:block}.recaphero{display:flex;align-items:center;gap:14px}.recapbunny{width:84px;height:auto;flex-shrink:0;overflow:visible}.recapgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recapgrid>:last-child:nth-child(odd){grid-column:1 / -1}.greet{min-height:72vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;text-align:center}.greet .btn{max-width:360px}.bunnybig{width:150px;height:auto;overflow:visible}.bunnybig.hop{animation:hop .9s ease-in-out infinite}@keyframes hop{0%,to{transform:translateY(0)}40%,60%{transform:translateY(-14px)}}.waves{display:flex;gap:5px;align-items:center;height:40px}.waves i{display:block;width:6px;height:12px;border-radius:3px;background:var(--accent);animation:wave .9s ease-in-out infinite}.waves i:nth-child(2),.waves i:nth-child(6){animation-delay:.12s}.waves i:nth-child(3),.waves i:nth-child(5){animation-delay:.24s}.waves i:nth-child(4){animation-delay:.36s}.waves.still i{animation:none}@keyframes wave{0%,to{height:10px}50%{height:36px}}.wkblock+.wkblock{border-top:2px solid var(--surface-2);padding-top:14px}.iconbtn.danger{border-color:var(--warn);color:var(--warn)}.plantpop svg{width:100%;height:100%;display:block}#cel-icon{display:grid;place-items:center}@media(min-width:700px){.sheet{align-items:center}.sheet-panel{border-radius:22px;max-height:88vh}.scroller{padding-top:36px}h1{font-size:36px}h2{font-size:29px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.confetti{display:none}}.meter .bar.overbar>span{background:var(--warn)}.serves.mini{gap:8px}.serves.mini .iconbtn{width:36px;height:36px;border-radius:10px}.serves.mini .iconbtn svg{width:16px;height:16px}.serves.mini b{font-size:16px;min-width:72px}.btnrow.three{gap:8px}.btnrow.three .btn{flex:1 1 0;padding-left:10px;padding-right:10px;font-size:15px}@media(max-width:360px){.btnrow.three .btn{font-size:14px;padding-left:7px;padding-right:7px}}.swipe{position:relative;touch-action:pan-y}.swipe .swipebg{position:absolute;inset:0;border-radius:14px;background:color-mix(in srgb,var(--orange) 20%,var(--surface));color:var(--on-orange);font-weight:700;display:flex;align-items:center;padding:0 20px;opacity:0;transition:opacity .12s ease,background .14s ease,color .14s ease}.swipe[data-dir=left] .swipebg{justify-content:flex-end}.swipe[data-dir=right] .swipebg{justify-content:flex-start}.swipe.swiping .swipebg{opacity:1}.swipe .ingbtn{position:relative;transition:transform .18s ease}.swipe.dragging .ingbtn{transition:none}.shoprow{display:flex;align-items:center;gap:4px;position:relative;transition:transform .18s ease;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding-right:6px}.shoprow .ingbtn{flex:1;min-width:0;border:0;background:transparent;border-radius:10px}.shoprow.on{background:var(--surface-2)}.shoprow .ingbtn[aria-pressed=true]{background:transparent}.swipe.dragging .shoprow{transition:none}.qtybtns{display:flex;gap:8px;align-items:center}.edrow{display:flex;align-items:center;gap:8px;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:6px 6px 6px 12px;min-height:48px}.edrow .itxt{flex:1;min-width:0}.edrow .amt{font-weight:700;font-variant-numeric:tabular-nums}.edrow .amt.muted{font-weight:600}.fixrow{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:6px 8px 6px 12px}.fixrow .itxt{flex:1 1 140px;min-width:0}.rvopt{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:8px 8px 8px 12px}.rvtype{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rvrow{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--line)}.rvrow .itxt{flex:1 1 200px;min-width:0}.linkbtn.reserve:disabled{visibility:hidden}.qtybtns .iconbtn{width:36px;height:36px;border-radius:10px;position:relative}.qtybtns .iconbtn:before{content:"";position:absolute;inset:-6px -4px}.qtybtns .iconbtn svg{width:16px;height:16px}.setlist{padding:4px 0;gap:0}.setrow{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:60px;padding:10px 16px;background:none;border:0;border-top:2px solid var(--line);font:inherit;color:var(--fg);text-align:left;cursor:pointer}.setrow:first-child{border-top:0}.setrow svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.navico{width:36px;height:36px;border-radius:calc(10px * var(--sp-r, 1));background:var(--accent);color:var(--accent-hi);display:grid;place-items:center;flex-shrink:0}.setrow .navico svg{width:20px;height:20px;color:inherit}.setrow b{font-weight:700}.setrow .row>.iconspace{width:80px;flex-shrink:0}.setrow .pill{margin-left:auto;flex-shrink:0}.navtxt{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}.navmain{flex:1;min-width:0;display:flex;background:none;border:0;padding:4px 0;font:inherit;color:var(--fg);text-align:left;cursor:pointer}.setrow.off .navtxt{opacity:.55}.ingbtn>.mtlchev{margin-left:auto;align-self:center;flex-shrink:0}.ingbtn>.itxt{min-width:0}.ingbtn:not(:has(.stepnum))>.itxt{font-weight:700}.flabel{font-weight:700;font-size:14px}label.btn{display:block}.stepnum svg{width:16px;height:16px}.rowpic{width:32px;height:32px;display:grid;place-items:center;flex-shrink:0;color:var(--accent)}.rowpic svg{width:24px;height:24px;display:block}.fold>summary{list-style:none}.fold>summary::-webkit-details-marker{display:none}.foldhead{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;color:var(--fg)}.foldhead .pill{margin-left:auto}.foldchev{display:grid;place-items:center;width:24px;height:24px;color:var(--accent);margin-left:auto;transition:transform .15s}.foldhead .pill+.foldchev{margin-left:0}.foldchev svg{width:20px;height:20px}.fold[open] .foldchev{transform:rotate(90deg)}.foldbody{margin-top:8px}.herohead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.herotext{display:flex;flex-direction:column;gap:6px;min-width:0}.herokick{margin:0;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gold)}.herosub{margin:0;font-size:15px;color:var(--on-hero)}.card.heroshape{position:relative;overflow:hidden;padding-top:24px;padding-bottom:24px}.card.heroshape .herotext{position:relative;z-index:1;padding-right:64px}.heroart{position:absolute;top:-22px;right:-22px;width:118px;height:118px;color:var(--orange);pointer-events:none}.heroart svg{width:100%;height:100%;display:block}.heroart [data-gold]{fill:var(--gold)}.heroart [data-gold-line]{stroke:var(--gold)}.heropic{width:64px;height:64px;flex-shrink:0;color:var(--on-hero)}.heropic svg{width:100%;height:100%;display:block}.weeknav>.stack{text-align:center;gap:2px}.task.isdone .box{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.task.ispass .box{background:var(--plum-soft);border-color:var(--plum);color:var(--plum)}.between:has(>.backbtn+h1){flex-wrap:nowrap}.between>.backbtn+h1{flex:1;min-width:0;text-align:center}.between>h1+.iconspace{width:max(36px,calc(44px * var(--sp-btn, 1)));flex-shrink:0}.swatch[aria-pressed=true]{background:var(--accent-soft)}.stats.stats3{grid-template-columns:repeat(3,1fr)}.alrow{padding:6px 0;gap:12px}.alrow.off .altime,.alrow.off .muted{opacity:.55}.alpick{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:0;background:none;border:0;padding:4px 0;font:inherit;color:var(--fg);text-align:left;cursor:pointer}.altime{font-family:var(--font-display);font-size:32px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}.tgl{position:relative;width:56px;height:34px;border-radius:999px;border:0;background:var(--line);padding:3px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;transition:background .15s}.tgl:before{content:"";position:absolute;inset:-5px 0}.tgl span{width:28px;height:28px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #00000040;transition:transform .15s}.tgl[aria-checked=true]{background:var(--accent)}.tgl[aria-checked=true] span{transform:translate(22px);background:var(--accent-hi)}.daychips{display:flex;gap:6px;justify-content:space-between}.daychip{width:42px;min-width:0;padding:8px 0;text-align:center;border-radius:50%}.daychip[aria-pressed=true]{background:var(--accent);border-color:var(--accent-lip);box-shadow:0 2px 0 var(--accent-lip);color:var(--on-accent)}.altimein{font-family:var(--font-display);font-size:28px}@media(prefers-reduced-motion:reduce){.tgl,.tgl span{transition:none}}.tllist{padding:4px 16px;gap:0}.tlarea{font-size:13px;font-weight:700;color:var(--muted);padding:12px 0 2px}.tlrow{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:6px 0;border-top:1px solid var(--line)}.tlarea+.tlrow{border-top:0}.smallcard{padding-top:12px;padding-bottom:12px;gap:8px}.smallcard .ice svg{width:26px;height:26px}.smallcard .btn.small{min-height:40px}.peekcard{display:flex;flex-direction:column;align-items:stretch;width:100%;text-align:left;font:inherit;color:var(--fg);cursor:pointer}.peekcard .sechead{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap}.peekcard .sechead>:first-child{min-width:0}.peekend{display:flex;align-items:center;gap:6px}.peekend svg{width:20px;height:20px;color:var(--muted)}.peekcard .badges{grid-template-columns:repeat(3,minmax(0,1fr))}.peekcard .bignum{margin:0;display:block}.peekviz{display:block;height:96px}.peekviz svg{width:100%;height:96px;display:block}.mmwrap{display:flex;align-items:center;gap:14px}.mmgrid{display:grid;grid-template-columns:repeat(7,20px);grid-auto-rows:18px;gap:1px 2px;flex-shrink:0}.mmhead,.mmday{font-size:13px;line-height:18px;text-align:center;color:var(--muted)}.mmhead{font-weight:700}.mmday.future{opacity:.4}.mmday.today{color:var(--fg);font-weight:700}.mmday svg{width:16px;height:16px;display:block;margin:0 auto}.pillpair{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}#sheet-panel.short .sheethead [data-act=sheet-close]{display:none}.foodunits .pillpair{justify-content:center}.foodunits .pillbtn[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.pantryrow{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit;color:var(--fg);background:var(--surface);border:2px solid var(--line);border-radius:14px;padding:10px 12px;cursor:pointer}.pantryrow .amt,.donerow .amt{font-weight:700;white-space:nowrap}.warn{color:var(--warn)}.donerow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.donerow label{display:flex;flex-direction:column;gap:2px}.donerow .inrow{display:flex;align-items:center;gap:6px}.donerow input{width:92px;text-align:right}.pantryline{display:flex;align-items:center;justify-content:space-between;gap:10px;border:2px solid var(--line);border-radius:14px;padding:6px 6px 6px 12px;background:var(--surface)}.pantryline .amt{font-weight:700}:root[data-glass] .card,:root[data-glass] .tabbar,:root[data-glass] .stat,:root[data-glass] .tile,:root[data-glass] .opt,:root[data-glass] .chip,:root[data-glass] .swatch,:root[data-glass] .iconbtn:not(.plain),:root[data-glass] .btn.secondary{background:var(--glass-surface, var(--surface))}:root[data-glass] .card.hero{background:var(--hero)}:root[data-glass] .card.goodcard,:root[data-glass] .slotchips .chip[aria-pressed=true],:root[data-glass] .tile[aria-pressed=true],:root[data-glass] .opt[aria-pressed=true]{background:var(--glass-accent-soft, var(--accent-soft))}:root[data-glass] .card.warncard{background:var(--glass-warn-soft, var(--warn-soft))}:root[data-bg] body{background-attachment:fixed}:root[data-bg=dots] body{background-image:radial-gradient(var(--accent-soft) 2.2px,transparent 2.8px);background-size:22px 22px}:root[data-bg=grid] body{background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:28px 28px}:root[data-bg=stripes] body{background-image:repeating-linear-gradient(135deg,var(--accent-soft) 0 12px,transparent 12px 30px)}:root[data-bg=waves] body{background-image:radial-gradient(circle at 50% 0,transparent 12px,var(--accent-soft) 13px 16px,transparent 17px);background-size:36px 18px}:root[data-bg=confetti] body{background-image:radial-gradient(circle at 20% 30%,var(--gold) 2px,transparent 3px),radial-gradient(circle at 70% 60%,var(--plum) 2px,transparent 3px),radial-gradient(circle at 45% 85%,var(--accent) 2px,transparent 3px),radial-gradient(circle at 85% 15%,var(--water) 2px,transparent 3px);background-size:90px 90px}:root[data-bg=glow] body{background-image:radial-gradient(circle at 15% 10%,var(--accent-soft),transparent 55%),radial-gradient(circle at 90% 85%,var(--gold-soft),transparent 50%)}:root[data-bg=photo] body{background-image:var(--bg-photo);background-size:cover;background-position:center}:root[data-weight=thin] svg [stroke=currentColor],:root[data-weight=thin] svg [style*="stroke: currentColor"],:root[data-weight=thin] .favstar svg{stroke-width:1.3px!important}:root[data-weight=bold] svg [stroke=currentColor],:root[data-weight=bold] svg [style*="stroke: currentColor"],:root[data-weight=bold] .favstar svg{stroke-width:3.2px!important}:root:is([data-icons=sharp],[data-icons=square]) svg :is([stroke=currentColor],[style*="stroke: currentColor"]){stroke-linecap:square!important;stroke-linejoin:miter!important;stroke-miterlimit:10!important}:root[data-weight=thin] :is(.chip,.tile,.opt,.swatch,.pillbtn){box-shadow:0 0 0 var(--line)}:root[data-weight=thin] :is(.pillbtn,.pill.outline,.shoprow,.dragrow,.ingbtn){border-width:1px}:root[data-weight=bold] :is(.pillbtn,.pill.outline,.shoprow,.dragrow,.ingbtn){border-width:3px}:root[data-weight=bold] .pillbtn{box-shadow:0 3px 0 var(--line)}:root[data-weight=thin] .iconbtn{box-shadow:none}:root[data-weight=thin] .btn{box-shadow:0 0 0 var(--accent-lip)}:root[data-weight=thin] .btn.secondary{box-shadow:0 0 0 var(--line)}:root[data-weight=thin] .btn.gold{box-shadow:0 0 0 var(--gold-lip)}:root[data-weight=thin] .btn.done{box-shadow:0 0 0 var(--accent)}:root[data-weight=thin] :is(.btn.secondary,.btn.done,.chip,.tile,.opt,.iconbtn,.swatch){border-width:1px}:root[data-weight=bold] :is(.btn.secondary,.btn.done,.chip,.tile,.opt,.iconbtn,.swatch){border-width:3px}:root[data-weight=bold] .btn{box-shadow:0 6px 0 var(--accent-lip)}:root[data-weight=bold] .btn.secondary{box-shadow:0 6px 0 var(--line)}:root[data-weight=bold] .btn.gold{box-shadow:0 6px 0 var(--gold-lip)}:root[data-weight=thin] .card{border-width:1px}:root[data-weight=bold] .card{border-width:3px}:root[data-weight=thin] :is(.bar,.costbar,.hbar .track){height:8px}:root[data-weight=thin] .meter .bar{height:10px}:root[data-weight=bold] :is(.bar,.hbar .track){height:18px}:root[data-weight=bold] .meter .bar{height:20px}:root[data-weight=bold] .costbar{height:7px}:root[data-weight=thin] .glassrange{--track: 8px}:root[data-weight=bold] .glassrange{--track: 18px}:root[data-icons=soft] :is(.btn,.chip,.tile,.opt,.iconbtn,.swatch,.stat,.pill){border-radius:10px}:root[data-icons=soft]{--card-r: 12px}:root[data-icons=soft] :is(.bar,.bar>span,.costbar,.costbar i,.hbar .track,.hbar .fill){border-radius:5px}:root[data-icons=soft] .glassrange{--track-r: 6px}:root[data-icons=soft] .slotchips.seg{border-radius:14px}:root[data-icons=sharp] :is(.btn,.chip,.tile,.opt,.iconbtn,.swatch,.stat,.pill){border-radius:4px}:root[data-icons=sharp]{--card-r: 5px}:root[data-icons=sharp] .slotchips.seg{border-radius:5px}:root[data-icons=sharp] .opt:before{border-radius:2px}:root[data-icons=sharp] :is(.bar,.bar>span,.costbar,.costbar i,.hbar .track,.hbar .fill){border-radius:2px}:root[data-icons=sharp] .glassrange{--track-r: 2px}:root[data-icons=sharp] .glassrange::-webkit-slider-thumb{border-radius:4px}:root[data-icons=square]{--card-r: 0px}:root[data-icons=square] :is(.btn,.chip,.tile,.opt,.iconbtn,.swatch,.stat,.pill,.slotchips.seg){border-radius:0}:root[data-icons=square] .opt:before{border-radius:0}:root[data-icons=square] :is(.bar,.bar>span,.costbar,.costbar i,.hbar .track,.hbar .fill){border-radius:0}:root[data-icons=square] .glassrange{--track-r: 0}:root[data-icons=square] .glassrange::-webkit-slider-thumb{border-radius:0}:root.styleswap :is(.btn,.chip,.tile,.opt,.iconbtn,.swatch,.card,.bar,.costbar,.hbar .track,.dragrow,.shoprow,.ingbtn,.pillbtn,.pill),:root.styleswap svg :is([stroke=currentColor],[style*="stroke: currentColor"]){transition:border-radius .22s ease,box-shadow .22s ease,stroke-width .22s ease,border-width .22s ease,height .22s ease!important}:root .slotchips .chip[data-icon-demo]{display:inline-flex;flex-direction:row;align-items:center;gap:8px;padding:10px 12px;text-align:center}:root .slotchips .chip[data-icon-demo] svg.icdemo{width:20px;height:20px;flex:none}:root .slotchips .chip[data-icon-demo=rounded]{border-radius:18px;border-width:2px;box-shadow:0 2px 0 var(--line)}:root .slotchips .chip[data-icon-demo=rounded] svg.icdemo path{stroke-width:2px!important;stroke-linecap:round!important;stroke-linejoin:round!important}:root .slotchips .chip[data-icon-demo=thin]{border-radius:18px;border-width:1px;box-shadow:none}:root .slotchips .chip[data-icon-demo=thin] svg.icdemo path{stroke-width:1.3px!important;stroke-linecap:round!important;stroke-linejoin:round!important}:root .slotchips .chip[data-icon-demo=normal]{border-radius:18px;border-width:2px;box-shadow:0 2px 0 var(--line)}:root .slotchips .chip[data-icon-demo=normal] svg.icdemo path{stroke-width:2px!important;stroke-linecap:round!important;stroke-linejoin:round!important}:root .slotchips .chip[data-icon-demo=bold]{border-radius:18px;border-width:3px;box-shadow:0 3px 0 var(--line)}:root .slotchips .chip[data-icon-demo=bold] svg.icdemo path{stroke-width:3.2px!important;stroke-linecap:round!important;stroke-linejoin:round!important}:root .slotchips .chip[data-icon-demo=soft]{border-radius:10px;border-width:2px;box-shadow:0 2px 0 var(--line)}:root .slotchips .chip[data-icon-demo=soft] svg.icdemo path{stroke-width:2px!important;stroke-linecap:round!important;stroke-linejoin:round!important}:root .slotchips .chip[data-icon-demo=square]{border-radius:0;border-width:2px;box-shadow:0 2px 0 var(--line)}:root .slotchips .chip[data-icon-demo=square] svg.icdemo path{stroke-width:2px!important;stroke-linecap:square!important;stroke-linejoin:miter!important}:root .slotchips .chip[data-icon-demo=sharp]{border-radius:4px;border-width:2px;box-shadow:0 2px 0 var(--line)}:root .slotchips .chip[data-icon-demo=sharp] svg.icdemo path{stroke-width:2px!important;stroke-linecap:square!important;stroke-linejoin:miter!important}:root .slotchips .chip[data-icon-demo][aria-pressed=true]{border-color:var(--orange)}.slotchips.onerow{flex-wrap:nowrap;gap:8px}.slotchips.seg{background:var(--surface-2);padding:6px;border-radius:22px}.slotchips.seg+.slotchips.seg{margin-top:-4px}.slotchips.seg.shape{gap:6px;padding:6px 8px}:root .slotchips.seg.shape .chip[data-icon-demo]{flex-direction:column;gap:4px;padding:10px 4px 8px}.slotchips.onerow .chip{flex:1 1 0;min-width:0;justify-content:center;font-size:13px}.glassrange{--track: 14px;--track-r: 999px;-webkit-appearance:none;appearance:none;width:100%;height:32px;background:none;margin:0;cursor:pointer;touch-action:pan-y}.glassrange::-webkit-slider-runnable-track{height:var(--track);border-radius:var(--track-r);background:linear-gradient(90deg,var(--orange) 0 var(--fill, 0%),var(--surface-2) var(--fill, 0%) 100%)}.glassrange::-moz-range-track{height:var(--track);border-radius:var(--track-r);background:var(--surface-2)}.glassrange::-moz-range-progress{height:var(--track);border-radius:var(--track-r);background:var(--orange)}.glassrange::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--surface);border:3px solid var(--accent);box-shadow:0 calc(2px * var(--lip, 1)) 0 var(--accent-lip);margin-top:calc((var(--track) - 28px) / 2)}.glassrange::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--surface);border:3px solid var(--accent)}.buynote{display:grid;grid-template-rows:1fr;animation:buyopen .28s ease both}.buynote>div{min-height:0;overflow:hidden}@keyframes buyopen{0%{grid-template-rows:0fr;opacity:0;transform:translateY(-4px)}to{grid-template-rows:1fr;opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.buynote{animation:none}:root.styleswap *{transition:none!important}}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;border-radius:14px;border:2px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-size:14px;cursor:pointer}.swatch[aria-pressed=true]{border-color:var(--orange);box-shadow:0 0 0 2px var(--accent-soft)}.swatch .dots{display:flex;gap:3px}.swatch .dots i{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15)}.swatch svg{width:64px;height:64px}.swatch .cost{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:3px}.swatch .cost svg{width:13px;height:13px}.swatch.locked svg{opacity:.55}.swatch.locked .cost svg{opacity:1}.costbar{display:block;width:80%;height:5px;border-radius:999px;background:var(--surface-2);overflow:hidden}.costbar i{display:block;height:100%;background:var(--gold);border-radius:999px}.costbar.ready i{background:var(--accent)}svg.bag.full{animation:bagbob 2.4s ease-in-out infinite}@keyframes bagbob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){svg.bag.full{animation:none}}.bankstat{font:inherit;color:var(--fg);text-align:left;cursor:pointer}div.bankstat{cursor:default}.bankstat .bankline{display:flex;align-items:center;gap:4px;color:var(--fg);font-size:inherit}.bankstat svg.bag{width:30px;height:32px;flex:none;margin-left:-4px}.colourrow{display:flex;justify-content:space-between;align-items:center;gap:12px}.colourrow input[type=color]{width:48px;height:34px;padding:0;border:2px solid var(--line);border-radius:10px;background:none}#library .libpart{gap:12px}#library .libwhat,#library .librule{margin:0}#library .libdemo{padding:12px;border-radius:12px;background:var(--bg)}#library .libcode{font-size:13px;background:var(--surface-2);padding:2px 6px;border-radius:6px}#library .libused{margin:0}#library .pillbtn.on{background:var(--accent);color:var(--on-accent)}.rsub{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums}.iconbtn.plain{border:0;background:transparent}.iconbtn.plain svg{width:28px;height:28px}.addrow .shoprow{padding:0}.addrow .shoprow:focus-within{border-color:var(--accent)}.addrow input{flex:1;min-width:0;border:0;background:transparent;font:inherit;color:var(--fg);padding:10px 12px;min-height:44px;outline:none}.findbar{width:100%;font:inherit;color:var(--fg);background:var(--surface);border:2px solid var(--line);border-radius:12px;padding:10px 14px;min-height:48px}.findbar:focus{border-color:var(--accent);outline:none}.sheethead .backbtn{margin-right:8px}.btn.is-pressed{transform:translateY(4px);box-shadow:0 0 0 var(--accent-lip);filter:brightness(.94)}.btn.secondary.is-pressed{background:var(--surface-2);box-shadow:0 0 0 var(--line);filter:none}.iconbtn.is-pressed,.pillbtn.is-pressed,.qrow.is-pressed,.mrowbtn.is-pressed,.mtlrow.is-pressed{background:var(--surface-2)}.shoprow:has(>.ingbtn.is-pressed){background:var(--surface-2)}.shoprow .ingbtn.is-pressed{background:transparent}.favstar.is-pressed{transform:scale(.9)}@media(prefers-reduced-motion:reduce){.btn.is-pressed,.favstar.is-pressed{transform:none}}.shoprow,.mtlrow,.btn,.iconbtn,.pillbtn,.favstar{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.addrow input,.addrow input:focus{background:transparent;border:0;box-shadow:none;-webkit-tap-highlight-color:transparent}.addrow input:-webkit-autofill{-webkit-box-shadow:0 0 0 100px var(--surface) inset;-webkit-text-fill-color:var(--fg)}html.pointer :focus-visible{outline:none}.iconbtn.plain{color:var(--fg)}.swipe .swipebg span,.swipe .swipebg{will-change:opacity}.swipe.armed .swipebg{background:var(--orange);color:var(--on-orange)}.swipe .swipebg{font-size:15px}.swipe.armed .swipebg{font-size:16px}.sheet-panel{touch-action:pan-y}.sheet-panel.noanim{animation:none}.sheet-panel.backdrag{will-change:transform}.addrow .shoprow{transition:border-radius .18s ease,border-color .18s ease}.addrow.open .shoprow{border-radius:12px 12px 0 0;border-bottom-color:transparent;border-color:var(--accent)}.addsug{list-style:none;margin:-2px 0 0;padding:0 4px;border:0 solid var(--accent);border-width:0 2px;border-radius:0 0 12px 12px;background:var(--surface);display:flex;flex-direction:column;gap:2px;overflow:hidden;height:0;opacity:0;transition:height .22s cubic-bezier(.2,.8,.2,1),opacity .16s ease,padding .22s cubic-bezier(.2,.8,.2,1),border-bottom-width .22s ease}.addsug.show{opacity:1;padding:4px;border-bottom-width:2px}.addsug.measure{padding:4px;border-bottom-width:2px}.addsug .sugbtn{transition:background .12s ease}.sugbtn{width:100%;text-align:left;font:inherit;color:var(--fg);background:transparent;border:0;border-radius:8px;padding:10px;min-height:44px;cursor:pointer}.sugbtn b{font-weight:700}.sugbtn.is-pressed,.sugbtn:hover{background:var(--surface-2)}@media(prefers-reduced-motion:reduce){.addsug,.addrow .shoprow{transition:none}}:root[data-space=merged] :is(.app,.screen>.stack-lg)>.card+.card{margin-top:-2px}:root[data-space=merged] :is(.app,.screen>.stack-lg)>.card{border-left-width:0;border-right-width:0}:root:is([data-space=tight],[data-space=merged]) :is(.app,.screen>.stack-lg)>:not(.card,.screen,.stack-lg){margin:max(0px,(16px - var(--sp-side, 16px)) / 3) max(0px,16px - var(--sp-side, 16px))}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important}:root[data-motion=reduced] .confetti,:root[data-motion=off] .confetti{display:none}:root[data-motion=off] *,:root[data-motion=off] *:before,:root[data-motion=off] *:after{animation:none!important;transition:none!important}.wsets{display:flex;flex-direction:column;gap:var(--sp-list, 6px)}.wsetrow{display:grid;grid-template-columns:30px minmax(0,1fr) 68px 58px max(36px,calc(44px * var(--sp-btn, 1)));gap:8px;align-items:center}.wsethead{font-size:13px;font-weight:700;color:var(--muted);text-align:center}.wsethead span:nth-child(2){text-align:left}.wsetrow .setn{font-family:var(--font-display);font-weight:600;text-align:center}.wsetrow .setlast{font-size:14px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.setbox{width:100%;height:max(36px,calc(44px * var(--sp-btn, 1)));border-radius:calc(12px * var(--sp-r, 1));border:2px solid var(--line);background:var(--bg);color:var(--fg);font:inherit;font-weight:700;text-align:center;padding:0 4px;font-variant-numeric:tabular-nums}.setbox:focus{border-color:var(--accent);outline:none}.setbox::placeholder{color:var(--muted);font-weight:600;opacity:.8}.wsetrow.done .setbox{background:var(--accent-soft);border-color:var(--accent-soft)}.settick{width:max(36px,calc(44px * var(--sp-btn, 1)));height:max(36px,calc(44px * var(--sp-btn, 1)));border-radius:calc(12px * var(--sp-r, 1));border:2px solid var(--line);background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0}.settick svg{width:20px;height:20px}.settick[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:var(--on-orange)}.swipe>.wsetrow{position:relative;background:var(--surface);border-radius:calc(12px * var(--sp-r, 1));transition:transform .18s ease}.swipe.dragging>.wsetrow{transition:none}.restbar{position:sticky;bottom:0;z-index:2;background:var(--fg);color:var(--bg);border-radius:calc(14px * var(--sp-r, 1));padding:10px 12px;display:flex;flex-direction:column;gap:8px;box-shadow:0 4px #0000001f}.restfill{display:block;height:6px;border-radius:999px;background:color-mix(in srgb,var(--bg) 25%,transparent);overflow:hidden}.restfill i{display:block;height:100%;background:var(--orange);transition:width 1s linear}.restline{display:flex;align-items:center;gap:8px}.resttime{font-family:var(--font-display);font-size:26px;font-weight:600;font-variant-numeric:tabular-nums;flex:1}.restbtn{font-family:var(--font-display);font-weight:600;font-size:16px;padding:calc(8px * var(--sp-btn, 1)) 11px;min-height:max(36px,calc(40px * var(--sp-btn, 1)));border:0;border-radius:calc(12px * var(--sp-r, 1));background:color-mix(in srgb,var(--bg) 16%,transparent);color:var(--bg);cursor:pointer}:root[data-weight=thin] :is(.setbox,.settick){border-width:1px}:root[data-weight=bold] :is(.setbox,.settick){border-width:3px}:root[data-weight=bold] .restfill{height:10px}:root[data-glass] :is(.settick,.swipe>.wsetrow){background:var(--glass-surface, var(--surface))}:root[data-glass] .settick[aria-pressed=true]{background:var(--orange)}:root:is([data-motion=reduced],[data-motion=off]) .restfill i{transition:none}@media(prefers-reduced-motion:reduce){.restfill i{transition:none}}.rpre{display:block}.row>.findbar{flex:1;min-width:0}:root[data-space=merged] .inglist:has(>li .shoprow){gap:0;border:2px solid var(--line);border-radius:12px;overflow:hidden}:root[data-space=merged] .inglist>li .shoprow{border:0;border-radius:0}:root[data-space=merged] .inglist>li+li .shoprow{border-top:1px solid var(--line)}.fieldbox{display:flex;align-items:center;gap:8px}.fieldbox>.in-full,.fieldbox>.in-big{flex:1;min-width:0}.fieldbox>.in-short{width:110px;flex:none;text-align:right;font-variant-numeric:tabular-nums}.fieldbox>.in-big{font-family:var(--font-display);font-size:34px;font-weight:600;text-align:center}.fieldbox>.unit{color:var(--muted);font-weight:600}.fieldbox>.in-big+.unit{font-family:var(--font-display);font-size:22px}.empty{border:2px dashed color-mix(in srgb,var(--muted) 30%,var(--line));border-radius:12px;min-height:56px;display:flex;align-items:center;justify-content:center;padding:10px 16px;color:var(--muted);font-size:15px;text-align:center}
