:root{--bg:#f4f5f8;--surface:#fff;--surface-2:#eef0f4;--line:#e1e4ea;--ink:#1b1e24;--ink-2:#4b5260;--muted:#636a77;--accent:#2459c4;--accent-fill:#2459c4;--accent-soft:#e6eefc;--sun:#c62f2f;--sat:#2459c4;--ok:#18753f;--ok-soft:#e3f4ea;--warn:#b23a0a;--warn-soft:#fdeee4;--chart-line:#2f6fde;--grid:#e6e8ee;--shadow:0 6px 24px #141e321f;--radius:14px;--backdrop:#0006;--sheet-edge:transparent;--sheet-shadow:0 -4px 20px #141e321f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--surface:#181b21;--surface-2:#22262e;--line:#2c313a;--ink:#eceef2;--ink-2:#b8bdc8;--muted:#9aa0ab;--accent:#6d9cf0;--accent-fill:#2f63c9;--accent-soft:#1f2c44;--sun:#f07a7a;--sat:#6d9cf0;--ok:#4cc382;--ok-soft:#173225;--warn:#f59a5b;--warn-soft:#3a2416;--chart-line:#6d9cf0;--grid:#2a2f38;--shadow:0 6px 24px #00000080;--backdrop:#000000b8;--sheet-edge:#4a505c;--sheet-shadow:0 -10px 32px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;font:15px/1.45 -apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Noto Sans KR,Malgun Gothic,sans-serif}body.no-scroll{overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#app{max-width:560px;padding:env(safe-area-inset-top) 12px calc(150px + env(safe-area-inset-bottom));margin:0 auto}.muted{color:var(--muted)}.small{font-size:12px}.center{text-align:center}.warn{color:var(--warn)}.ok{color:var(--ok)}.top{align-items:center;gap:4px;padding:10px 0 4px;display:flex}.month-title{padding:4px 8px;font-size:20px;font-weight:700}.icon-btn{width:40px;height:40px;color:var(--ink-2);border-radius:10px;place-items:center;font-size:22px;display:grid}.icon-btn:active{background:var(--surface-2)}.top .settings{margin-left:auto;font-size:20px}.hero{background:var(--surface);border-radius:var(--radius);margin:6px 0 10px;padding:14px 16px}.hero-label{color:var(--muted);margin:0;font-size:13px}.hero-num{letter-spacing:-.5px;font-variant-numeric:tabular-nums;margin:2px 0;font-size:28px;font-weight:800}.hero-sub{color:var(--ink-2);margin:0;font-size:13px}.calendar{background:var(--surface);border-radius:var(--radius);padding:8px 6px 10px}.dow,.days{grid-template-columns:repeat(7,1fr);display:grid}.dow span{text-align:center;color:var(--muted);padding:2px 0 6px;font-size:12px}.dow span:first-child{color:var(--sun)}.dow span:last-child{color:var(--sat)}.cell{border-radius:10px;flex-direction:column;justify-content:flex-start;align-items:center;min-height:56px;margin:2px;padding:6px 0 4px;display:flex}.cell .d{font-size:14px;font-weight:600;position:relative}.cell.sun .d{color:var(--sun)}.cell.sat .d{color:var(--sat)}.cell.today .d{background:var(--accent-fill);color:#fff;border-radius:999px;padding:0 7px}.cell .amt{color:var(--accent);font-variant-numeric:tabular-nums;letter-spacing:-.3px;margin-top:4px;font-size:11.5px;font-weight:700}.cell.has{background:var(--accent-soft)}.cell:not(.empty):active{background:var(--surface-2)}.pend{background:var(--warn);border-radius:50%;width:6px;height:6px;position:absolute;top:-1px;right:-7px}.summary{background:var(--surface);border-radius:var(--radius);margin-top:12px;padding:10px}.seg{background:var(--surface-2);border-radius:10px;gap:3px;margin-bottom:10px;padding:3px;display:flex}.seg button{color:var(--ink-2);border-radius:8px;flex:1;padding:8px 4px;font-size:14px;font-weight:600}.seg button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001f}.sum-row{border-bottom:1px solid var(--line)}.sum-row:last-child{border-bottom:0}.sum-head{text-align:left;grid-template-columns:1fr auto;gap:4px 8px;width:100%;padding:10px 4px;display:grid}.sum-head .name{font-weight:600}.sum-head .val{font-variant-numeric:tabular-nums;font-weight:700}.sum-head .val small{color:var(--muted);margin-left:4px;font-weight:500}.sum-head .bar{background:var(--surface-2);border-radius:4px;grid-column:1/-1;height:4px;overflow:hidden}.sum-head .bar i{background:var(--accent);border-radius:4px;height:100%;display:block}.sum-row.open .sum-head{padding-bottom:6px}.empty-msg{text-align:center;color:var(--muted);margin:0;padding:22px 0}.item-list{margin:0 0 6px;padding:0;list-style:none}.item-btn{text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:9px 6px;display:flex}.item-btn:active{background:var(--surface-2)}.iname{flex-direction:column;min-width:0;display:flex}.iname small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.iamt{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-weight:600;display:flex}.chev{opacity:.7;font-size:13px}.sub{color:var(--ink-2);margin:16px 0 8px;font-size:14px}.pending-list{margin:0;padding:0;list-style:none}.pending-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 2px;display:flex}.pending-list li span{flex-direction:column;display:flex}.pending-list small{flex-wrap:wrap;gap:6px;display:flex}.link{color:var(--accent);text-underline-offset:2px;padding:2px 0;font-size:13px;text-decoration:underline}.link.danger{color:var(--sun)}.fab-wrap{left:0;right:0;bottom:calc(78px + env(safe-area-inset-bottom));pointer-events:none;z-index:5;justify-content:center;display:flex;position:fixed}.fab{pointer-events:auto;background:var(--accent-fill);color:#fff;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:8px;padding:14px 24px;font-size:20px;display:flex}.fab span{font-size:16px;font-weight:700}.fab:active{transform:scale(.97)}.sheet-wrap{left:0;right:0;top:var(--vv-top,0px);height:var(--vv-h,100%);z-index:20;justify-content:center;align-items:flex-end;display:flex;position:fixed}.sheet-backdrop{background:var(--backdrop);opacity:0;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0;right:0}.sheet{width:100%;max-width:560px;max-height:92vh;max-height:92dvh;max-height:calc(var(--vv-h,100dvh) - 12px);background:var(--bg);border-top:1px solid var(--sheet-edge);box-shadow:var(--sheet-shadow);border-radius:18px 18px 0 0;flex-direction:column;transition:transform .25s;display:flex;position:relative;transform:translateY(100%)}.sheet-wrap.open .sheet{transform:none}.sheet-grip{background:var(--muted);opacity:.45;border-radius:3px;width:38px;height:5px;margin-left:-19px;position:absolute;top:6px;left:50%}.sheet-head{touch-action:none}.sheet-wrap.open .sheet-backdrop{opacity:1}.sheet-head{justify-content:space-between;align-items:center;padding:16px 8px 6px 16px;display:flex}.sheet-head h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.sheet-body{padding:4px 12px calc(16px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overflow-y:auto}.day-total{background:var(--surface);border-radius:12px;justify-content:space-between;align-items:baseline;margin-bottom:8px;padding:12px 14px;display:flex}.day-total strong{font-variant-numeric:tabular-nums;font-size:20px}.day-pay{background:var(--surface);border-radius:12px;margin-bottom:10px;padding:4px 14px}.card{background:var(--surface);border-radius:12px;margin-bottom:10px;padding:12px 10px 6px}.card>header{justify-content:space-between;align-items:baseline;gap:8px;padding:0 4px 6px;display:flex}.card h3{margin:0;font-size:16px}.card strong{font-variant-numeric:tabular-nums}.pay-checks{border-bottom:1px solid var(--line);margin-bottom:4px;padding:0 2px 10px}.receipts{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:4px 14px;padding:6px 4px;font-size:13px;display:flex}.receipt{align-items:center;gap:8px;display:inline-flex}.actions{gap:8px;margin-top:14px;display:flex}.actions .btn{flex:1}.btn{text-align:center;border-radius:12px;padding:12px 14px;font-size:15px;font-weight:700}.btn.primary{background:var(--accent-fill);color:#fff}.btn.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn-col{flex-direction:column;gap:8px;display:flex}.editor,.settings{flex-direction:column;gap:10px;display:flex}.editor label,.settings label{color:var(--ink-2);flex-direction:column;gap:4px;font-size:13px;display:flex}input,select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:10px;width:100%;min-width:0;padding:10px;font-size:16px}.row2{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8px;display:grid}.row2>label{min-width:0}input[type=date]{-webkit-appearance:none;appearance:none;text-align:left;min-height:44px;display:block}input[type=date]::-webkit-date-and-time-value{text-align:left}input,select,textarea{font-size:max(16px,1em)}fieldset.pay{border:0;min-width:0;margin:0;padding:0}fieldset.pay legend{color:var(--ink-2);margin-bottom:4px;padding:0;font-size:13px}.items{flex-direction:column;gap:8px;display:flex}.item-edit{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex}.row-name{gap:6px;display:flex}.row-name input{font-weight:600}.row-nums{grid-template-columns:1.9fr .6fr .8fr 1.25fr 1.35fr;gap:4px;display:grid}.row-nums input,.row-nums select{padding:8px 6px;font-size:16px}.item-head{color:var(--muted);margin-bottom:-4px;padding:0 9px;font-size:11.5px}.total-bar{border-top:2px solid var(--line);justify-content:space-between;align-items:baseline;padding:10px 4px;display:flex}.total-bar strong{font-size:20px}.notice{background:var(--warn-soft);color:var(--warn);border-radius:10px;margin:0 0 10px;padding:10px 12px;font-size:13px}.photo{margin-bottom:10px}.photo summary{color:var(--accent);padding:4px 0;font-size:14px}.photo img{border-radius:10px;width:100%;margin-top:6px}@media (max-width:380px){.row-nums{grid-template-columns:1fr 1fr 1fr}.row-nums select{grid-column:1/-1}.item-head{display:none}}.menu{flex-direction:column;gap:8px;display:flex}.menu-btn{background:var(--surface);text-align:left;border-radius:12px;grid-template-columns:36px 1fr;align-items:center;padding:14px;font-size:16px;font-weight:700;display:grid}.menu-btn span{grid-row:span 2;font-size:24px}.menu-btn small{color:var(--muted);font-size:13px;font-weight:400}.chips{gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;flex:none;padding:6px 12px;font-size:13px}.chip[aria-pressed=true]{background:var(--accent-fill);color:#fff;border-color:var(--accent-fill)}.stats{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:8px;display:grid}.stats div{background:var(--surface);border-radius:10px;min-width:0;padding:8px}.stats p{color:var(--muted);margin:0;font-size:11.5px}.stats b{font-variant-numeric:tabular-nums;font-size:13.5px;display:block}.stats small{font-size:11px;display:block}.stats .up{color:var(--sun)}.stats .down{color:var(--sat)}.chart-host{background:var(--surface);border-radius:12px;padding:8px 4px 2px;position:relative}.chart svg{touch-action:pan-y;width:100%;height:auto;display:block}.chart .grid{stroke:var(--grid);stroke-width:1px}.chart .axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:10.5px}.chart .line{fill:none;stroke:var(--chart-line);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .dot{fill:var(--chart-line);stroke:var(--surface);stroke-width:2px}.chart .cross{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.chart .hit{fill:#0000}.chart .tip{background:var(--ink);color:var(--surface);white-space:nowrap;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:12px;line-height:1.35;position:absolute;transform:translate(-50%,calc(-100% - 12px))}.chart .tip span{opacity:.8}.hist{border-collapse:collapse;background:var(--surface);border-radius:12px;width:100%;margin-top:10px;font-size:13px;overflow:hidden}.hist th,.hist td{text-align:right;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:8px 6px}.hist th{color:var(--muted);font-size:12px;font-weight:600}.hist th:nth-child(-n+2),.hist td:nth-child(-n+2){text-align:left}.hist tr:last-child td{border-bottom:0}.toast{left:50%;bottom:calc(150px + env(safe-area-inset-bottom));background:var(--ink);color:var(--surface);opacity:0;z-index:50;border-radius:10px;max-width:calc(100% - 32px);padding:10px 16px;font-size:14px;transition:all .25s;position:fixed;transform:translate(-50%,20px)}.toast.show{opacity:1;transform:translate(-50%)}.busy{z-index:40;background:#00000073;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.busy-box{background:var(--surface);text-align:center;border-radius:14px;min-width:220px;padding:22px 26px}.busy-box p{margin:12px 0 0}.spinner{border:3px solid var(--surface-2);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop,.toast{transition:none}}.pay-choice{grid-template-columns:1fr 1fr;align-items:start;gap:8px;display:grid}.pay-opt{border:1.5px solid var(--line);background:var(--surface-2);border-radius:12px;overflow:hidden}.pay-opt.on{border-color:var(--accent);background:var(--accent-soft)}.pay-opt input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.pay-main{color:var(--ink);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:10px 12px;font-size:15px;font-weight:600;display:flex}.editor .pay-main{color:var(--ink);flex-direction:row;gap:8px;font-size:15px}.editor .pay-sub{flex-direction:row;gap:8px;font-size:14px}.pay-sub{background:var(--surface);-webkit-user-select:none;user-select:none;border-left:3px solid;border-radius:8px;align-items:center;gap:8px;margin:0 8px 8px 22px;padding:8px 10px;font-size:14px;display:flex}.pay-sub span{color:var(--ink)}.pay-sub em{margin-left:auto;font-size:12px;font-style:normal;font-weight:700}.pay-sub.ok{color:var(--ok)}.pay-sub.ok input{accent-color:var(--ok)}.pay-sub.warn{color:var(--warn)}.pay-mixed{margin:6px 2px 0}.pay-break{margin:0;padding:0;list-style:none}.pb-group{border-bottom:1px solid var(--line);padding:10px 0}.pb-group:last-child{border-bottom:0}.pb-group.muted .pb-row{color:var(--muted)}.pb-row,.pb-total,.pb-subs li{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.pb-row{font-weight:600}.pb-bar{border-radius:4px;gap:2px;height:6px;margin:6px 0 2px;display:flex;overflow:hidden}.pb-bar i{height:100%;display:block}.pb-bar i:first-child{border-radius:4px 0 0 4px}.pb-bar i:last-child{border-radius:0 4px 4px 0}.pb-bar i[style*="width:0%"]{display:none}.pb-bar .ok{background:var(--ok)}.pb-bar .warn{background:var(--warn)}.pb-subs{border-left:2px solid var(--line);margin:6px 0 0 6px;padding:0 0 0 12px;font-size:14px;list-style:none}.pb-subs li{padding:3px 0}.pb-subs li span:before{content:"";vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.pb-subs .ok span:before{background:var(--ok)}.pb-subs .warn span:before{background:var(--warn)}.pb-subs .ok b{color:var(--ok)}.pb-subs .warn b{color:var(--warn)}.pb-total{border-top:2px solid var(--line);padding:10px 0 2px;font-size:16px;font-weight:700}.menu-note{margin:10px 2px 0}.iname .disc{color:var(--ok);font-size:12px}.iamt s{color:var(--muted);font-size:12px;font-weight:400}.hist small.disc{color:var(--ok);font-size:11px;line-height:1.3;display:block}.row-disc{align-items:center;gap:6px;padding-left:4px;font-size:13px;display:flex}.disc-label{color:var(--ok);white-space:nowrap;font-weight:600}.row-disc input{flex:none;width:110px;padding:6px 8px;font-size:16px}.disc-net{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:12px}.add-disc{font-size:12.5px}.photo img+img{margin-top:4px}.tabbar{z-index:6;background:var(--surface);border-top:1px solid var(--line);padding:6px 12px calc(6px + env(safe-area-inset-bottom));justify-content:center;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar button{max-width:200px;color:var(--muted);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:1px;padding:4px 0;font-size:12px;font-weight:600;display:flex}.tabbar button span{filter:grayscale();opacity:.6;font-size:20px}.tabbar button[aria-current=page]{color:var(--accent)}.tabbar button[aria-current=page] span{filter:none;opacity:1}.month-title.static{margin:0;padding:4px}.target-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.target-card .btn{flex:none}.cost-summary{color:var(--ink-2);margin:4px 4px 10px;font-size:14px}.menu-list{flex-direction:column;gap:8px;display:flex}.menu-card{text-align:left;background:var(--surface);border:1.5px solid #0000;border-radius:12px;flex-direction:column;gap:4px;width:100%;padding:12px 14px;display:flex}.menu-card.over{border-color:var(--warn)}.mc-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.mc-name{font-size:16px;font-weight:700}.menu-card.over .mc-name,.mc-rate.over{color:var(--warn)}.mc-bottle{color:var(--ink-2);font-variant-numeric:tabular-nums;border-top:1px dashed var(--line);padding-top:4px;font-size:13px}.mc-bottle.over,.mc-bottle.over b{color:var(--warn)}.mc-bottle small{color:var(--muted)}.bottle-sec{margin-top:10px}.bottle-sec>.stats{margin-bottom:8px}.suggest.ref small{font-size:12px}.bottle-price{margin-top:2px}.bottle-info{margin:4px 2px 0;line-height:1.6}.total-bar[hidden],.bottle-info[hidden]{display:none}.fill-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:6px;display:grid}.fill-chip.below b{color:var(--warn)}.fill-chip.below[aria-pressed=true] b{color:#fff}.fill-hint{margin-top:6px;display:block}.fill-chip{white-space:nowrap;border-radius:10px;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:6px 8px;font-size:11.5px;line-height:1.3;display:flex;overflow:hidden}.fill-chip b{font-variant-numeric:tabular-nums;font-size:13.5px}.mc-rate{font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.mc-rate small{color:var(--muted);font-size:13px;font-weight:600}.mc-sub{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:13px}.mc-sub em,.iamt em,.stats small{font-size:12px;font-style:normal}.up{color:var(--sun)}.down{color:var(--sat)}.mc-bar{background:var(--surface-2);border-radius:4px;height:6px;margin-top:4px;position:relative}.mc-bar i{background:var(--accent);border-radius:4px;position:absolute;top:0;bottom:0;left:0}.menu-card.over .mc-bar i{background:var(--warn)}.mc-bar b{background:var(--ink);border-radius:1px;width:2px;position:absolute;top:-3px;bottom:-3px}.detail-name{margin:0 2px 10px;font-size:20px}.stats .over b,.stats .over p{color:var(--warn)}.ing-list{background:var(--surface);border-radius:12px;margin:0 0 8px;padding:0;list-style:none}.ing-list>li{border-bottom:1px solid var(--line)}.ing-list>li:last-child{border-bottom:0}.ing-list>li:not(:has(.item-btn)){justify-content:space-between;align-items:center;padding:9px 6px;display:flex}.iamt small{color:var(--muted);font-size:12px;font-weight:400}.danger-text{color:var(--sun)}.target-hist{background:var(--surface);border-radius:12px;margin:0;padding:0;list-style:none}.target-hist li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;padding:10px 14px;display:flex}.target-hist li:last-child{border-bottom:0}.target-hist li span{color:var(--muted);font-size:13px}.target-hist li.cur b{color:var(--accent)}.ings{flex-direction:column;gap:8px;display:flex}.ing-edit{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;padding:8px;display:flex}.ing-row{color:var(--ink-2);align-items:center;gap:6px;font-size:13px;display:flex}.ing-row span{white-space:nowrap}.ing-row input,.ing-row select{flex:60px;width:auto;padding:8px 6px;font-size:16px}.ing-row .unit{flex:0 0 72px}.ing-info{margin:0 2px}.ing-info b{color:var(--ink)}.btn-row{gap:8px;display:flex}.btn-row .btn{flex:1;padding:10px 8px;font-size:14px}.row-spec{flex-wrap:wrap;align-items:center;gap:6px;padding-left:4px;font-size:13px;display:flex}.spec-label{color:var(--ink-2);white-space:nowrap}.row-spec input,.row-spec select{flex:none;width:84px;padding:6px 8px;font-size:16px}.row-spec .unit{width:72px}.spec-tag{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 8px;font-size:11.5px;font-style:normal}.row-spec .add-disc{margin-left:auto}.spec-note{margin:0 2px}.pick-btn{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:10px 12px;font-size:16px;font-weight:600;display:flex}.pick-btn.empty{color:var(--accent);border-style:dashed;border-color:var(--accent)}.pick-btn span{color:var(--muted)}.pick-search{margin-bottom:4px}.pick-ul{background:var(--surface);border-radius:12px;margin:0;padding:0;list-style:none}.pick-ul li+li{border-top:1px solid var(--line)}.pick-item{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:12px;display:flex}.pick-item.cur{background:var(--accent-soft)}.pick-item:active{background:var(--surface-2)}.pick-item>span:last-child{color:var(--muted);font-size:20px}.ings-empty{margin:0 4px}.sheet-body input,.sheet-body select,.sheet-body textarea{scroll-margin:16px 0 28px}.backup-banner{background:var(--warn-soft);border-radius:var(--radius);flex-direction:column;gap:8px;margin:0 0 10px;padding:12px 14px;display:flex}.backup-banner p{color:var(--ink);margin:0;font-size:14px}.backup-banner b{color:var(--warn)}.backup-actions{justify-content:flex-end;gap:8px;display:flex}.small-btn{padding:8px 14px;font-size:14px}.backup-line{margin:4px 2px 0}.load-error{background:var(--surface);border-radius:var(--radius);text-align:center;margin:20vh 8px 0;padding:20px}.load-error h1{margin:0 0 8px;font-size:18px}.stale-banner{margin-top:10px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sheet:focus{outline:none}.pay-sub{flex-wrap:wrap;row-gap:2px}.pay-sub span,.pay-sub em{white-space:nowrap}.cat-chips{margin:2px 0 6px;padding:2px 2px 8px}.chip small{color:inherit;opacity:.75;margin-left:2px;font-size:12px}.chip-edit{color:var(--accent);border-style:dashed}.group-title{color:var(--ink-2);margin:16px 4px 8px;font-size:15px}.group-title small{color:var(--muted);font-weight:500}.menu-group:first-of-type .group-title{margin-top:4px}fieldset.cat-pick{border:0;min-width:0;margin:0;padding:0}fieldset.cat-pick legend{color:var(--ink-2);margin-bottom:4px;padding:0;font-size:13px}fieldset.cat-pick .chips{flex-wrap:wrap;padding-bottom:0;overflow:visible}.radio-chip{cursor:pointer;align-items:center;display:inline-flex}.radio-chip input{opacity:0;pointer-events:none;position:absolute}.radio-chip:has(input:checked){background:var(--accent-fill);color:#fff;border-color:var(--accent-fill)}.radio-chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.editor .radio-chip{color:var(--ink);flex-direction:row;font-size:14px}.editor .radio-chip:has(input:checked){color:#fff}.cat-edit{background:var(--surface);border-radius:12px;margin:8px 0;padding:0;list-style:none}.cat-edit li{border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:6px 6px 6px 10px;display:flex}.cat-edit li:last-child{border-bottom:0}.cat-edit input{flex:1;padding:8px 10px}.cat-edit .icon-btn{width:36px;height:36px;font-size:18px}.cat-edit .icon-btn[disabled]{opacity:.25}.cat-count{text-align:right;min-width:30px}.cat-add{gap:8px;display:flex}.cat-add .btn{flex:none}.key-status{margin:0 2px}.key-status code{background:var(--surface-2);border-radius:6px;padding:2px 6px;font-family:ui-monospace,Menlo,monospace}.margin-line{background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;margin:-2px 0 10px;padding:8px 10px 8px 14px;display:flex}.margin-line p{color:var(--ink-2);margin:0;font-size:13.5px}.margin-line .btn{flex:none}.menu-card.by-margin{border-color:var(--ok)}.mc-badge{color:var(--ok);background:var(--ok-soft);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:12px;font-weight:700}.stats .good b,.stats .good p,.stats .good small{color:var(--ok)}.ok-notice{background:var(--ok-soft);color:var(--ok)}.notice p{margin:0}.suggest-title{font-weight:700;margin-top:6px!important}.suggest{margin:2px 0 0;padding-left:18px}.sum-margin{color:var(--ink-2);text-align:right;font-size:13px;font-weight:600;display:block}.margin-list{background:var(--surface);border-radius:12px;margin:0;padding:0;list-style:none}.margin-list li{border-bottom:1px solid var(--line);padding:8px 12px}.margin-list li:last-child{border-bottom:0}.margin-list li{grid-template-columns:auto 1fr;align-items:center;column-gap:8px;display:grid}.mname{font-size:15px;font-weight:600}.mpair{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.margin-form .margin-list label.minput{color:var(--ink-2);flex-direction:row;align-items:center;gap:6px;font-size:14px}.minput .mk{text-align:right;min-width:2.2em}.minput input{text-align:right;width:110px}.mdate{text-align:right;grid-column:1/-1;margin-top:2px;display:block}.same-item{background:var(--surface);border-radius:12px;margin-top:10px;padding:4px 12px 12px}.same-item .sub{margin-top:10px}.same-item .sub small{color:var(--muted);font-weight:500}.same-list{margin:0 0 8px;padding:0;list-style:none}.same-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.same-list li:last-child{border-bottom:0}.same-list em{font-style:normal}.same-ask{flex-direction:column;gap:8px;margin:8px 0;padding:0;list-style:none;display:flex}.same-ask li{background:var(--surface);border-radius:12px;padding:10px 12px}.same-ask p{margin:0 0 4px}.same-arrow{color:var(--ink-2)}.same-actions{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.stats small{white-space:nowrap}
