:root{--bf-bg:#fff;--bf-surface:#f6f7f9;--bf-ink:#15181d;--bf-ink-soft:#5c636e;--bf-line:#e6e8ec;--bf-accent:#e8521e;--bf-accent-ink:#fff;--bf-green:#2bb24c;--bf-orange:#f0a020;--bf-red:#e03b3b;--bf-track:#e9ecf1;--bf-radius:14px;--bf-shadow:0 1px 2px #14181d0f, 0 2px 8px #14181d0d;color:var(--bf-ink);background:var(--bf-surface);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bf-surface)}.app[data-v-4a38b69b]{background:var(--bf-bg);max-width:440px;height:100%;box-shadow:var(--bf-shadow);flex-direction:column;margin:0 auto;display:flex}.topbar[data-v-4a38b69b]{z-index:5;background:var(--bf-bg);border-bottom:1px solid var(--bf-line);flex:none;padding:10px 12px 8px;position:sticky;top:0}.daterow[data-v-4a38b69b]{align-items:center;gap:6px;display:flex}.date[data-v-4a38b69b]{text-align:center;flex:1;font-size:15px;font-weight:700}.ghost[data-v-4a38b69b]{color:var(--bf-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;width:32px;height:32px;font-size:18px}.ghost[data-v-4a38b69b]:disabled{color:var(--bf-line);cursor:default}.ghost[data-v-4a38b69b]:not(:disabled):active{background:var(--bf-surface)}.gear[data-v-4a38b69b]{font-size:15px}.toggle[data-v-4a38b69b]{background:var(--bf-surface);border-radius:10px;gap:4px;margin-top:8px;padding:3px;display:flex}.toggle button[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:6px;font-size:13px;font-weight:600}.toggle button.on[data-v-4a38b69b]{background:var(--bf-bg);color:var(--bf-accent);box-shadow:var(--bf-shadow)}.scroll[data-v-4a38b69b]{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:12px 12px 14px;overflow-y:auto}.pad[data-v-4a38b69b]{padding:24px 12px}.muted[data-v-4a38b69b]{color:var(--bf-ink-soft)}.error[data-v-4a38b69b]{color:var(--bf-red)}.card[data-v-4a38b69b]{background:var(--bf-bg);border:1px solid var(--bf-line);border-radius:var(--bf-radius);box-shadow:var(--bf-shadow)}.dash[data-v-4a38b69b]{padding:14px}.metrics[data-v-4a38b69b]{gap:16px;display:flex}.metric[data-v-4a38b69b]{flex-direction:column;flex:1;display:flex}.label[data-v-4a38b69b]{letter-spacing:.08em;color:var(--bf-ink-soft);font-size:10.5px;font-weight:800}.big[data-v-4a38b69b]{margin:2px 0 6px;font-size:24px;font-weight:800}.big.green[data-v-4a38b69b]{color:var(--bf-green)}.big.orange[data-v-4a38b69b]{color:var(--bf-orange)}.big.red[data-v-4a38b69b]{color:var(--bf-red)}.of[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:13px;font-weight:600}.bar[data-v-4a38b69b]{background:var(--bf-track);border-radius:999px;height:10px;display:flex;position:relative;overflow:hidden}.fill[data-v-4a38b69b]{height:100%;transition:width .3s}.fill.green[data-v-4a38b69b]{background:var(--bf-green)}.fill.orange[data-v-4a38b69b]{background:var(--bf-orange)}.fill.red[data-v-4a38b69b]{background:var(--bf-red)}.over-seg[data-v-4a38b69b]{background:var(--bf-red);height:100%}.sub[data-v-4a38b69b]{margin-top:5px;font-size:11.5px;font-weight:700}.sub.green[data-v-4a38b69b]{color:var(--bf-green)}.sub.orange[data-v-4a38b69b]{color:var(--bf-orange)}.sub.red[data-v-4a38b69b]{color:var(--bf-red)}.sub-muted[data-v-4a38b69b]{color:var(--bf-ink-soft);font-weight:600}.secondary[data-v-4a38b69b]{border-top:1px solid var(--bf-line);color:var(--bf-ink-soft);align-items:center;gap:14px;margin-top:14px;padding-top:12px;font-size:12.5px;font-weight:600;display:flex}.secondary .conf[data-v-4a38b69b]{color:var(--bf-ink);align-items:center;gap:5px;margin-left:auto;display:flex}.coach[data-v-4a38b69b]{color:var(--bf-ink);border-left:3px solid var(--bf-accent);background:#fff6f1;border-radius:0 8px 8px 0;margin:12px 0 0;padding:9px 11px;font-size:13px;line-height:1.4}.buffer[data-v-4a38b69b]{border-top:1px solid var(--bf-line);margin-top:14px;padding-top:12px}.buffer-head[data-v-4a38b69b]{justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.buffer-label[data-v-4a38b69b]{letter-spacing:.04em;text-transform:uppercase;color:var(--bf-ink-soft);font-size:10.5px;font-weight:700}.buffer-val[data-v-4a38b69b]{color:var(--bf-ink-soft);font-weight:700}.buffer-val.neg[data-v-4a38b69b]{color:var(--bf-orange)}.buffer-bar[data-v-4a38b69b]{background:var(--bf-line);border-radius:999px;height:7px;margin-top:6px;overflow:hidden}.buffer-fill[data-v-4a38b69b]{background:var(--bf-ink-soft);opacity:.55;border-radius:999px;height:100%;transition:width .3s}.buffer-fill.neg[data-v-4a38b69b]{background:var(--bf-orange);opacity:.5}.buffer-notes[data-v-4a38b69b]{color:var(--bf-ink-soft);flex-wrap:wrap;gap:10px;margin-top:5px;font-size:11px;display:flex}.buffer-warn[data-v-4a38b69b]{color:var(--bf-orange)}.insights-card[data-v-4a38b69b]{padding:14px}.ins-head[data-v-4a38b69b]{letter-spacing:.08em;text-transform:uppercase;color:var(--bf-ink-soft);margin-bottom:12px;font-size:10.5px;font-weight:800}.ins-head .ins-sub[data-v-4a38b69b]{text-transform:none;letter-spacing:0;font-weight:600}.ins-row[data-v-4a38b69b]{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.ins-label[data-v-4a38b69b]{color:var(--bf-ink);font-size:13.5px;font-weight:600}.ins-dots[data-v-4a38b69b]{gap:7px;display:flex}.ins-dot[data-v-4a38b69b]{background:var(--bf-line);cursor:pointer;box-sizing:border-box;appearance:none;border:0;border-radius:50%;flex:none;align-self:center;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;max-height:20px;margin:0;padding:0}.ins-dot.empty[data-v-4a38b69b]{background:var(--bf-line)}.ins-dot.filled.c-green[data-v-4a38b69b]{background:var(--bf-green)}.ins-dot.filled.c-amber[data-v-4a38b69b]{background:var(--bf-orange)}.ins-dot.filled.c-red[data-v-4a38b69b]{background:var(--bf-red)}.ins-box[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);width:100%;min-height:160px;color:var(--bf-ink);resize:vertical;box-sizing:border-box;border-radius:10px;outline:none;padding:9px 11px;font-family:inherit;font-size:13px;line-height:1.45}.ins-box[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.ins-box.outbox[data-v-4a38b69b]{min-height:84px}.ins-meta.sent[data-v-4a38b69b]{color:var(--bf-green);font-weight:700}.ins-actions[data-v-4a38b69b]{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.ins-meta[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:10.5px}.ins-save[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:9px;padding:7px 18px;font-size:13px;font-weight:700}.ins-save[data-v-4a38b69b]:disabled{opacity:.4;cursor:default}.day-complete[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);width:100%;color:var(--bf-ink-soft);cursor:pointer;border-radius:10px;margin-top:12px;padding:9px 0;font-size:13px;font-weight:700}.day-complete.done[data-v-4a38b69b]{color:var(--bf-green);background:#eef7ee;border-color:#cfe6cf}.meal-head[data-v-4a38b69b]{letter-spacing:.06em;color:var(--bf-ink-soft);align-items:center;margin:18px 6px 7px;font-size:10.5px;font-weight:800;display:flex}.mh-title[data-v-4a38b69b]{flex:1}.mh-cal[data-v-4a38b69b]{text-align:right;width:46px}.mh-pro[data-v-4a38b69b]{text-align:right;width:40px}.mh-dot[data-v-4a38b69b]{width:22px}.meals[data-v-4a38b69b]{overflow:hidden}.meal[data-v-4a38b69b]{cursor:pointer;border:0;border-bottom:1px solid var(--bf-line);text-align:left;background:0 0;align-items:center;width:100%;padding:10px 12px;display:flex}.meal[data-v-4a38b69b]:last-child{border-bottom:0}.meal[data-v-4a38b69b]:active{background:var(--bf-surface)}.meal-icon[data-v-4a38b69b]{width:30px;font-size:20px}.meal-text[data-v-4a38b69b]{flex-direction:column;flex:1;min-width:0;display:flex}.meal-name[data-v-4a38b69b]{font-size:14px;font-weight:700}.meal-detail[data-v-4a38b69b]{color:var(--bf-ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.meal-cal[data-v-4a38b69b]{text-align:right;width:46px;color:var(--bf-ink);font-size:14px;font-weight:800}.meal-pro[data-v-4a38b69b]{text-align:right;color:#3f6fe0;width:40px;font-size:14px;font-weight:800}.meal-pro.green[data-v-4a38b69b]{color:var(--bf-green)}.meal-pro.orange[data-v-4a38b69b]{color:var(--bf-orange)}.meal-pro.red[data-v-4a38b69b]{color:var(--bf-red)}.meal .dot[data-v-4a38b69b]{width:10px;margin-left:12px}.meal.planned[data-v-4a38b69b],.meal.expanded[data-v-4a38b69b]{background:var(--bf-surface)}.planned-badge[data-v-4a38b69b]{text-transform:uppercase;letter-spacing:.05em;color:var(--bf-ink-soft);background:var(--bf-track);border:1px solid var(--bf-line);border-radius:5px;margin-left:7px;padding:1px 5px;font-size:9.5px;font-weight:800}.planned-num[data-v-4a38b69b]{color:var(--bf-ink-soft)!important}.dot.pending[data-v-4a38b69b]{background:var(--bf-line)}.meal-wrap[data-v-4a38b69b]{border-bottom:1px solid var(--bf-line)}.meal-wrap[data-v-4a38b69b]:last-child{border-bottom:0}.meal[data-v-4a38b69b]{border-bottom:0!important}.accordion[data-v-4a38b69b]{background:var(--bf-surface);padding:4px 12px 8px 42px}.acc-item[data-v-4a38b69b]{border-bottom:1px solid var(--bf-line);align-items:flex-start;padding:5px 0;display:flex}.acc-item[data-v-4a38b69b]:last-of-type{border-bottom:0}.acc-name[data-v-4a38b69b]{color:var(--bf-ink);flex:1;min-width:0;font-size:12.5px}.acc-cal[data-v-4a38b69b]{text-align:right;width:46px;color:var(--bf-ink-soft);font-size:12.5px;font-weight:700}.acc-pro[data-v-4a38b69b]{text-align:right;color:#3f6fe0;width:40px;font-size:12.5px;font-weight:700}.accordion .dot[data-v-4a38b69b]{width:8px;height:8px;margin-left:12px}.acc-actions[data-v-4a38b69b]{align-items:center;gap:8px;margin-top:8px;display:flex}.acc-move[data-v-4a38b69b]{border:1px solid var(--bf-line);color:var(--bf-ink-soft);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:14px;display:flex}.acc-move[data-v-4a38b69b]:disabled{opacity:.25;cursor:default}.acc-move[data-v-4a38b69b]:not(:disabled):active{background:var(--bf-surface)}.acc-finalize[data-v-4a38b69b]{background:var(--bf-green);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:5px 16px;font-size:12.5px;font-weight:700}.acc-finalize[data-v-4a38b69b]:active{opacity:.85}.acc-edit[data-v-4a38b69b]{border:1px solid var(--bf-accent);color:var(--bf-accent);cursor:pointer;background:0 0;border-radius:999px;padding:5px 16px;font-size:12.5px;font-weight:700}.acc-edit[data-v-4a38b69b]:active{background:#fff0e8}.acc-delete[data-v-4a38b69b]{border:1px solid var(--bf-line);color:var(--bf-ink-soft);cursor:pointer;background:0 0;border-radius:999px;margin-left:auto;padding:5px 14px;font-size:12.5px;font-weight:700}.acc-delete[data-v-4a38b69b]:active{background:var(--bf-surface)}.acc-delete.armed[data-v-4a38b69b]{border-color:var(--bf-red);background:var(--bf-red);color:#fff}.refine-items[data-v-4a38b69b]{background:var(--bf-surface);border:1px solid var(--bf-line);border-radius:var(--bf-radius);margin-bottom:10px;padding:10px 12px}.ri-head[data-v-4a38b69b]{letter-spacing:.07em;text-transform:uppercase;color:var(--bf-ink-soft);margin-bottom:7px;font-size:10.5px;font-weight:800}.ri-row[data-v-4a38b69b]{border-bottom:1px solid var(--bf-line);align-items:flex-start;gap:6px;padding:4px 0;display:flex}.ri-row[data-v-4a38b69b]:last-child{border-bottom:0}.ri-name[data-v-4a38b69b]{color:var(--bf-ink);flex:1;min-width:0;font-size:12.5px}.ri-nums[data-v-4a38b69b]{color:var(--bf-ink-soft);white-space:nowrap;font-size:12px;font-weight:700}.ri-row .dot[data-v-4a38b69b]{flex:none;width:8px;height:8px}.empty[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;padding:18px 12px;font-size:13px}.repeat-pill[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);width:100%;color:var(--bf-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:7px;margin-top:14px;padding:9px 0;font-size:13px;font-weight:700;display:flex}.repeat-pill[data-v-4a38b69b]:active{background:var(--bf-track)}.creatine-check[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);width:100%;color:var(--bf-ink-soft);cursor:pointer;border-radius:12px;align-items:center;gap:9px;margin-top:10px;padding:10px 14px;font-size:13px;display:flex}.creatine-check[data-v-4a38b69b]:active{background:var(--bf-track)}.creatine-check .cc-box[data-v-4a38b69b]{border:1.5px solid var(--bf-line);width:20px;min-width:20px;height:20px;color:var(--bf-bg);border-radius:6px;justify-content:center;align-items:center;font-size:13px;line-height:1;display:flex}.creatine-check.done[data-v-4a38b69b]{color:var(--bf-ink)}.creatine-check.done .cc-box[data-v-4a38b69b]{background:var(--bf-accent);border-color:var(--bf-accent);color:#fff}.sheet-backdrop[data-v-4a38b69b]{z-index:30;background:#0006;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet[data-v-4a38b69b]{background:var(--bf-bg);border-radius:18px 18px 0 0;flex-direction:column;width:100%;max-width:440px;max-height:80vh;margin:0 auto;display:flex;box-shadow:0 -8px 30px #0000002e}.sheet-head[data-v-4a38b69b]{border-bottom:1px solid var(--bf-line);align-items:center;gap:8px;padding:14px 16px 10px;display:flex}.sheet-title[data-v-4a38b69b]{text-align:center;flex:1;margin:0;font-size:16px;font-weight:800}.sheet-back[data-v-4a38b69b],.sheet-close[data-v-4a38b69b]{color:var(--bf-ink);cursor:pointer;background:0 0;border:0;border-radius:8px;width:30px;height:30px;font-size:18px}.sheet-back[data-v-4a38b69b]:active,.sheet-close[data-v-4a38b69b]:active{background:var(--bf-surface)}.repeat-toggle[data-v-4a38b69b]{background:var(--bf-surface);border-radius:10px;gap:4px;margin:12px 16px 4px;padding:3px;display:flex}.repeat-toggle button[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:7px;font-size:13px;font-weight:700}.repeat-toggle button.on[data-v-4a38b69b]{background:var(--bf-bg);color:var(--bf-accent);box-shadow:var(--bf-shadow)}.sheet-body[data-v-4a38b69b]{padding:10px 16px 22px;overflow-y:auto}.sheet-empty[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;padding:24px 12px;font-size:13px}.type-grid[data-v-4a38b69b]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.type-chip[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:14px 6px 10px;display:flex;position:relative}.type-chip[data-v-4a38b69b]:active{background:var(--bf-track)}.type-icon[data-v-4a38b69b]{font-size:24px}.type-name[data-v-4a38b69b]{color:var(--bf-ink);font-size:12.5px;font-weight:700}.type-count[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:10px;font-weight:800;position:absolute;top:6px;right:8px}.repeat-row[data-v-4a38b69b]{border:0;border-bottom:1px solid var(--bf-line);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:10px;width:100%;padding:12px 2px;display:flex}.repeat-row[data-v-4a38b69b]:last-child{border-bottom:0}.repeat-row[data-v-4a38b69b]:active{background:var(--bf-surface)}.repeat-row[data-v-4a38b69b]:disabled{opacity:.5;cursor:default}.rr-text[data-v-4a38b69b]{flex-direction:column;flex:1;min-width:0;display:flex}.rr-summary[data-v-4a38b69b]{color:var(--bf-ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.rr-date[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:11.5px}.rr-cal[data-v-4a38b69b]{text-align:right;width:46px;color:var(--bf-ink);font-size:14px;font-weight:800}.rr-pro[data-v-4a38b69b]{text-align:right;color:#3f6fe0;width:36px;font-size:14px;font-weight:800}.confirm-backdrop[data-v-4a38b69b]{z-index:40;background:#00000073;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.confirm-card[data-v-4a38b69b]{background:var(--bf-bg);width:100%;max-width:340px;box-shadow:var(--bf-shadow);border-radius:14px;padding:20px}.confirm-msg[data-v-4a38b69b]{color:var(--bf-ink);margin:0 0 16px;font-size:14px;line-height:1.45}.confirm-actions[data-v-4a38b69b]{justify-content:flex-end;gap:10px;display:flex}.confirm-cancel[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);cursor:pointer;border-radius:9px;padding:8px 16px;font-size:13px;font-weight:700}.confirm-replace[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:9px;padding:8px 18px;font-size:13px;font-weight:700}.confirm-replace[data-v-4a38b69b]:disabled{opacity:.6;cursor:default}.context[data-v-4a38b69b]{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chip[data-v-4a38b69b]{color:var(--bf-ink);background:#eef3ff;border:1px solid #dce6ff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600}.refine-bar[data-v-4a38b69b]{border-top:1px solid var(--bf-line);color:var(--bf-ink);background:#fff6f1;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;display:flex}.refine-bar strong[data-v-4a38b69b]{color:var(--bf-accent)}.refine-bar button[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;background:0 0;border:0;font-size:14px}.dot[data-v-4a38b69b]{border-radius:999px;flex:none;width:10px;height:10px;display:inline-block}.dot.green[data-v-4a38b69b]{background:var(--bf-green)}.dot.orange[data-v-4a38b69b]{background:var(--bf-orange)}.dot.red[data-v-4a38b69b]{background:var(--bf-red)}.chat-tab[data-v-4a38b69b]{flex-direction:column;gap:8px;padding-bottom:4px;display:flex}.chat-empty[data-v-4a38b69b]{margin:0}.msg[data-v-4a38b69b]{display:flex}.msg.user[data-v-4a38b69b]{justify-content:flex-end}.bubble[data-v-4a38b69b]{white-space:pre-wrap;border-radius:16px;max-width:82%;padding:9px 13px;font-size:13.5px;line-height:1.4}.msg.user .bubble[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);border-bottom-right-radius:5px}.msg.assistant .bubble[data-v-4a38b69b]{background:var(--bf-surface);color:var(--bf-ink);border:1px solid var(--bf-line);border-bottom-left-radius:5px}.bubble.typing[data-v-4a38b69b]{align-items:center;gap:4px;padding:12px 14px;display:inline-flex}.bubble.typing i[data-v-4a38b69b]{background:var(--bf-ink-soft);border-radius:999px;width:7px;height:7px;animation:1.2s ease-in-out infinite typing-4a38b69b;display:inline-block}.bubble.typing i[data-v-4a38b69b]:nth-child(2){animation-delay:.2s}.bubble.typing i[data-v-4a38b69b]:nth-child(3){animation-delay:.4s}@keyframes typing-4a38b69b{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chatbar[data-v-4a38b69b]{border-top:1px solid var(--bf-line);background:var(--bf-bg);align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.chat-input[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);resize:none;border-radius:18px;outline:none;flex:1;min-height:38px;max-height:132px;padding:9px 16px;font-family:inherit;font-size:14px;line-height:1.4;display:block;overflow-y:auto}.chat-input[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.send[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:999px;flex:none;width:38px;height:38px;margin-bottom:0;font-size:15px}.tab-icon-wrap[data-v-4a38b69b]{display:inline-flex;position:relative}.tab-badge[data-v-4a38b69b]{background:var(--bf-red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9px;font-weight:800;display:flex;position:absolute;top:-4px;right:-6px}.confirm-card[data-v-4a38b69b]{padding:18px 16px}.confirm-q[data-v-4a38b69b]{color:var(--bf-ink);margin:0 0 16px;font-size:16px;font-weight:700;line-height:1.4}.confirm-chips[data-v-4a38b69b]{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.chip-btn[data-v-4a38b69b]{border:1.5px solid var(--bf-accent);color:var(--bf-accent);cursor:pointer;background:0 0;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:700}.chip-btn[data-v-4a38b69b]:not(:disabled):active{background:#fff0e8}.chip-btn.dismiss[data-v-4a38b69b]{border-color:var(--bf-line);color:var(--bf-ink-soft)}.chip-btn.dismiss[data-v-4a38b69b]:not(:disabled):active{background:var(--bf-surface)}.chip-btn[data-v-4a38b69b]:disabled{opacity:.5;cursor:default}.confirm-other[data-v-4a38b69b]{margin-top:4px}.other-link[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:600;text-decoration:underline}.confirm-freetext[data-v-4a38b69b]{gap:8px;margin-top:10px;display:flex}.confirm-input[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);border-radius:10px;outline:none;flex:1;padding:9px 12px;font-family:inherit;font-size:13.5px}.confirm-input[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.confirm-send[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:10px;flex:none;padding:0 16px;font-size:13.5px;font-weight:700}.confirm-send[data-v-4a38b69b]:disabled{opacity:.5;cursor:default}.confirm-note[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;margin:10px 0 0;font-size:11.5px}.confirm-empty[data-v-4a38b69b]{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:60px 24px;display:flex}.confirm-icon[data-v-4a38b69b]{font-size:40px}.confirm-empty p[data-v-4a38b69b]{color:var(--bf-ink);margin:0;font-size:15px;font-weight:700}.confirm-sub[data-v-4a38b69b]{font-size:12.5px;font-weight:400;line-height:1.5;color:var(--bf-ink-soft)!important}.weight-card[data-v-4a38b69b]{padding:14px}.weigh-in[data-v-4a38b69b]{gap:8px;margin-bottom:14px;display:flex}.weigh-input[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);border-radius:10px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:15px}.weigh-input[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.weigh-save[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:10px;flex:none;padding:0 18px;font-size:14px;font-weight:700}.weigh-save[data-v-4a38b69b]:disabled{opacity:.45;cursor:default}.day-weight[data-v-4a38b69b]{color:var(--bf-ink);border-bottom:1px solid var(--bf-line);margin:0 0 14px;padding-bottom:12px;font-size:12.5px}.day-weight strong[data-v-4a38b69b]{font-weight:800}.day-weight span[data-v-4a38b69b],.day-weight.none[data-v-4a38b69b]{color:var(--bf-ink-soft)}.wchart-wrap[data-v-4a38b69b]{margin-top:10px;position:relative}.wchart[data-v-4a38b69b]{width:100%;height:196px;display:block}.zoom-btn[data-v-4a38b69b]{z-index:1;background:var(--bf-surface);border:1px solid var(--bf-line);color:var(--bf-ink-soft);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.wline[data-v-4a38b69b]{fill:none;stroke:var(--bf-accent);stroke-width:1.4px;stroke-linejoin:round;stroke-linecap:round;opacity:.45}.wline-smooth[data-v-4a38b69b]{fill:none;stroke:var(--bf-accent);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.wpt[data-v-4a38b69b]{fill:var(--bf-accent);opacity:.55}.goal-line[data-v-4a38b69b]{stroke:var(--bf-green);stroke-width:1.2px;stroke-dasharray:4 3;opacity:.7}.fan-line[data-v-4a38b69b]{fill:none;stroke:var(--bf-ink-soft);stroke-width:1px;stroke-dasharray:3 3;opacity:.6}.fan-band[data-v-4a38b69b]{fill:var(--bf-accent);opacity:.07;stroke:none}.gridline[data-v-4a38b69b]{stroke:var(--bf-line);stroke-width:.6px;opacity:.7}.divider[data-v-4a38b69b]{stroke:var(--bf-line);stroke-width:1px;opacity:.45}.wviews[data-v-4a38b69b]{gap:6px;margin-top:14px;display:flex}.wview[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink-soft);cursor:pointer;border-radius:8px;flex:1;padding:6px 0;font-size:12px;font-weight:700}.wview.on[data-v-4a38b69b]{background:var(--bf-accent);color:var(--bf-accent-ink);border-color:var(--bf-accent)}.wpager[data-v-4a38b69b]{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.warrow[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);cursor:pointer;border-radius:8px;width:30px;height:28px;font-size:16px;line-height:1}.warrow[data-v-4a38b69b]:disabled{opacity:.3;cursor:default}.wrange[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:12px;font-weight:700}.wlegend[data-v-4a38b69b]{color:var(--bf-ink-soft);flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;font-size:11px;font-weight:600;display:flex}.wlegend i[data-v-4a38b69b]{vertical-align:middle;width:14px;height:0;margin-right:4px;display:inline-block}.wlegend .lg-raw[data-v-4a38b69b]{border-top:1.4px solid var(--bf-accent);opacity:.5}.wlegend .lg-smooth[data-v-4a38b69b]{border-top:2.4px solid var(--bf-accent)}.wlegend .lg-band[data-v-4a38b69b]{background:var(--bf-accent);opacity:.12;border-radius:2px;height:9px}.proj-caveat[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;margin:3px 0 0;font-size:10.5px;font-style:italic}.proj-pt[data-v-4a38b69b]{fill:none;stroke:var(--bf-ink-soft);stroke-width:1.4px}.axis[data-v-4a38b69b]{fill:var(--bf-ink-soft);font-size:9px;font-weight:600}.goal-tag[data-v-4a38b69b]{fill:var(--bf-green)}.proj-note[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;margin:6px 0 0;font-size:11.5px;font-weight:600}.wrow[data-v-4a38b69b]{justify-content:space-between;align-items:baseline;padding:5px 0;font-size:13.5px;display:flex}.wrow.lead[data-v-4a38b69b]{padding-bottom:8px}.wrow.lead span[data-v-4a38b69b]{letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.wrow.lead strong[data-v-4a38b69b]{font-size:22px}.wrow span[data-v-4a38b69b]{color:var(--bf-ink-soft);font-weight:600}.wrow strong[data-v-4a38b69b]{color:var(--bf-ink);font-weight:800}.wrow strong em[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:11.5px;font-style:normal;font-weight:600}.wrow strong.pos[data-v-4a38b69b]{color:var(--bf-green)}.wrow strong.neg[data-v-4a38b69b]{color:var(--bf-orange)}.wrow.note[data-v-4a38b69b]{color:var(--bf-ink-soft);justify-content:flex-start;padding-top:8px;font-size:11.5px;font-weight:600}.wsettings[data-v-4a38b69b]{border-top:1px solid var(--bf-line);gap:10px;margin-top:14px;padding-top:12px;display:flex}.wsettings label[data-v-4a38b69b]{letter-spacing:.06em;color:var(--bf-ink-soft);text-transform:uppercase;flex-direction:column;flex:1;gap:4px;font-size:10.5px;font-weight:800;display:flex}.wsettings select[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);border-radius:8px;outline:none;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:600}.week-card[data-v-4a38b69b]{padding:16px 14px}.wk-h[data-v-4a38b69b]{letter-spacing:.07em;text-transform:uppercase;color:var(--bf-ink-soft);margin:0 0 14px;font-size:11px;font-weight:800}.week-card .metrics[data-v-4a38b69b]{margin-bottom:12px}.week-card .secondary[data-v-4a38b69b]{margin-top:0}.bars[data-v-4a38b69b]{align-items:flex-end;gap:6px;height:150px;margin-top:10px;display:flex}.bars.sm[data-v-4a38b69b]{border-top:1px solid var(--bf-line);height:80px;margin-top:14px;padding-top:12px}.barcol[data-v-4a38b69b]{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:3px;height:100%;display:flex}.bar-track[data-v-4a38b69b]{background:var(--bf-track);border-radius:6px;flex:1;align-items:flex-end;width:100%;min-height:4px;display:flex;overflow:hidden}.bar-fill[data-v-4a38b69b]{background:var(--bf-ink-soft);border-radius:6px 6px 0 0;width:100%;min-height:2px;transition:height .3s}.bar-fill.green[data-v-4a38b69b]{background:var(--bf-green)}.bar-fill.orange[data-v-4a38b69b]{background:var(--bf-orange)}.bar-fill.red[data-v-4a38b69b]{background:var(--bf-red)}.bar-fill.none[data-v-4a38b69b]{background:var(--bf-track)}.bar-cal[data-v-4a38b69b]{color:var(--bf-ink);font-size:11px;font-weight:800}.bar-pro[data-v-4a38b69b]{color:#3f6fe0;font-size:9.5px;font-weight:700}.bar-pro.empty[data-v-4a38b69b]{color:var(--bf-line)}.bar-day[data-v-4a38b69b]{color:var(--bf-ink-soft);font-size:10px;font-weight:700}.wk-legend[data-v-4a38b69b]{color:var(--bf-ink-soft);text-align:center;margin:14px 0 0;font-size:10.5px;line-height:1.4}.settings-card[data-v-4a38b69b]{padding:14px 14px 18px}.set-h[data-v-4a38b69b]{letter-spacing:.07em;text-transform:uppercase;color:var(--bf-ink-soft);margin:18px 0 8px;font-size:11px;font-weight:800}.set-h[data-v-4a38b69b]:first-child{margin-top:2px}.set-sub[data-v-4a38b69b]{text-transform:none;letter-spacing:0;color:var(--bf-ink-soft);font-weight:600}.set-grid[data-v-4a38b69b]{grid-template-columns:1fr 1fr;gap:10px;display:grid}.settings-card label[data-v-4a38b69b]{color:var(--bf-ink-soft);flex-direction:column;gap:4px;font-size:11px;font-weight:700;display:flex}.set-full[data-v-4a38b69b]{margin-top:10px}.settings-card input[data-v-4a38b69b],.settings-card select[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);box-sizing:border-box;border-radius:8px;outline:none;width:100%;min-width:0;padding:9px 10px;font-family:inherit;font-size:14px;font-weight:600}.settings-card input[data-v-4a38b69b]:focus,.settings-card select[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.set-note[data-v-4a38b69b]{color:var(--bf-ink-soft);margin:10px 0 7px;font-size:11.5px;line-height:1.4}.set-days[data-v-4a38b69b]{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.set-days-8[data-v-4a38b69b]{grid-template-columns:repeat(4,1fr)}.set-days label[data-v-4a38b69b]{align-items:center;gap:3px}.set-days span[data-v-4a38b69b]{text-transform:capitalize;font-size:10px}.set-days input[data-v-4a38b69b]{text-align:center;width:100%;padding:7px 2px;font-size:12px}.set-days .buffer-box span[data-v-4a38b69b]{color:var(--bf-accent);font-weight:800}.set-calc[data-v-4a38b69b]{color:var(--bf-ink-soft);gap:18px;margin-top:10px;font-size:12px;display:flex}.set-calc strong[data-v-4a38b69b]{color:var(--bf-ink);font-weight:800}.set-about[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);color:var(--bf-ink);resize:vertical;box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:10px;font-family:inherit;font-size:13px}.set-about[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.set-save[data-v-4a38b69b]{background:var(--bf-accent);width:100%;color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:10px;margin-top:18px;padding:12px;font-size:14px;font-weight:800}.set-save[data-v-4a38b69b]:disabled{opacity:.6;cursor:default}.set-divider[data-v-4a38b69b]{border-top:1px solid var(--bf-line);margin:24px 0 0}.set-logout[data-v-4a38b69b]{border:1px solid var(--bf-line);width:100%;color:var(--bf-ink-soft);cursor:pointer;background:0 0;border-radius:10px;margin-top:12px;padding:11px;font-size:14px;font-weight:700}.set-logout[data-v-4a38b69b]:active{background:var(--bf-surface)}.login-overlay[data-v-4a38b69b]{background:var(--bf-bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card[data-v-4a38b69b]{background:var(--bf-bg);border:1px solid var(--bf-line);border-radius:var(--bf-radius);width:100%;max-width:360px;box-shadow:var(--bf-shadow);padding:32px 24px}.login-title[data-v-4a38b69b]{color:var(--bf-ink);margin:0 0 6px;font-size:22px;font-weight:800}.login-sub[data-v-4a38b69b]{color:var(--bf-ink-soft);margin:0 0 24px;font-size:13px}.login-input[data-v-4a38b69b]{border:1px solid var(--bf-line);background:var(--bf-surface);width:100%;color:var(--bf-ink);box-sizing:border-box;border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:15px}.login-input[data-v-4a38b69b]:focus{border-color:var(--bf-accent);background:var(--bf-bg)}.login-error[data-v-4a38b69b]{color:var(--bf-red);margin:8px 0 0;font-size:12.5px;font-weight:700}.login-remember[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;align-items:center;gap:8px;margin:14px 0;font-size:13px;display:flex}.login-remember input[data-v-4a38b69b]{width:16px;height:16px;accent-color:var(--bf-accent);cursor:pointer}.login-btn[data-v-4a38b69b]{background:var(--bf-accent);width:100%;color:var(--bf-accent-ink);cursor:pointer;border:0;border-radius:10px;padding:13px;font-size:15px;font-weight:800}.login-btn[data-v-4a38b69b]:disabled{opacity:.6;cursor:default}.tabs[data-v-4a38b69b]{border-top:1px solid var(--bf-line);background:var(--bf-bg);padding-bottom:env(safe-area-inset-bottom);flex:none;display:flex}.tabs button[data-v-4a38b69b]{color:var(--bf-ink-soft);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 0 10px;display:flex}.tabs button.on[data-v-4a38b69b]{color:var(--bf-accent)}.tab-icon[data-v-4a38b69b]{font-size:18px}.tab-label[data-v-4a38b69b]{font-size:10.5px;font-weight:700}
