.icon[data-v-810e6f07]{flex:none}.shell[data-v-e0a35fb8]{min-height:100dvh}.brand[data-v-e0a35fb8]{display:inline-flex;align-items:center;gap:var(--s2);color:var(--text);text-decoration:none;font-weight:800;font-size:var(--fs-lg);letter-spacing:-.01em;border-radius:var(--radius-sm)}.sidebar[data-v-e0a35fb8]{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);display:flex;flex-direction:column;gap:var(--s4);padding:var(--s5) var(--s3) var(--s4);background:var(--surface);border-right:1px solid var(--border);overflow-y:auto}.sidebar .brand[data-v-e0a35fb8]{padding:0 var(--s2)}.profile-switch[data-v-e0a35fb8]{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);border-radius:var(--radius);background:var(--card);border:1px solid var(--border);color:var(--text-2);text-decoration:none}.profile-switch[data-v-e0a35fb8]:hover{border-color:var(--border-strong);color:var(--text)}.profile-switch__avatar[data-v-e0a35fb8]{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:var(--primary);color:var(--on-primary);font-weight:800}.profile-switch__text[data-v-e0a35fb8]{display:flex;flex-direction:column;min-width:0;flex:1}.profile-switch__label[data-v-e0a35fb8]{font-size:var(--fs-xs);color:var(--text-3)}.profile-switch__name[data-v-e0a35fb8]{color:var(--text);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav[data-v-e0a35fb8]{display:flex;flex-direction:column;gap:2px}.nav__link[data-v-e0a35fb8]{display:flex;align-items:center;gap:var(--s3);min-height:44px;padding:0 var(--s3);border-radius:var(--radius);color:var(--text-2);text-decoration:none;font-weight:600}.nav__link[data-v-e0a35fb8]:hover{background:var(--surface-2);color:var(--text)}.nav__link--active[data-v-e0a35fb8]{background:#00d4aa1f;color:var(--primary)}.sidebar__foot[data-v-e0a35fb8]{margin-top:auto;display:flex;align-items:center;gap:var(--s2);padding:var(--s3) var(--s2) 0;border-top:1px solid var(--border)}.account[data-v-e0a35fb8]{flex:1;min-width:0;display:flex;flex-direction:column}.account__name[data-v-e0a35fb8]{font-weight:700;font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account__email[data-v-e0a35fb8]{font-size:var(--fs-xs);color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main[data-v-e0a35fb8]{margin-left:var(--sidebar-w);min-height:100dvh;outline:none}.topbar[data-v-e0a35fb8],.bottom-nav[data-v-e0a35fb8]{display:none}@media(max-width:899px){.sidebar[data-v-e0a35fb8]{display:none}.main[data-v-e0a35fb8]{margin-left:0;padding-bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom))}.topbar[data-v-e0a35fb8]{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:calc(var(--s2) + env(safe-area-inset-top)) var(--s4) var(--s2);background:#0d0d0deb;backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.topbar__profile[data-v-e0a35fb8]{display:inline-flex;align-items:center;gap:var(--s2);max-width:55%;padding:4px var(--s3) 4px 4px;border-radius:var(--round);background:var(--surface);border:1px solid var(--border);color:var(--text);text-decoration:none;font-weight:600;font-size:var(--fs-sm)}.topbar__profile .profile-switch__avatar[data-v-e0a35fb8]{width:28px;height:28px;font-size:var(--fs-sm)}.topbar__profile-name[data-v-e0a35fb8]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav[data-v-e0a35fb8]{position:fixed;z-index:30;inset:auto 0 0;display:grid;grid-template-columns:repeat(5,1fr);height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--border)}.bottom-nav__item[data-v-e0a35fb8]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;border:0;background:none;color:var(--text-3);text-decoration:none;font-size:.6875rem;font-weight:600;cursor:pointer}.bottom-nav__item span[data-v-e0a35fb8]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bottom-nav__item--active[data-v-e0a35fb8]{color:var(--primary)}}.sheet[data-v-e0a35fb8]{margin:auto auto 0;width:100%;max-width:560px;padding:0;border:1px solid var(--border-strong);border-bottom:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface);color:var(--text)}.sheet[data-v-e0a35fb8]::backdrop{background:var(--overlay)}.sheet__body[data-v-e0a35fb8]{padding:var(--s4) var(--s4) calc(var(--s5) + env(safe-area-inset-bottom))}.sheet__head[data-v-e0a35fb8]{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--s2)}.sheet__title[data-v-e0a35fb8]{font-size:var(--fs-lg)}.sheet__list[data-v-e0a35fb8]{display:flex;flex-direction:column;gap:2px}.sheet__link[data-v-e0a35fb8]{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:52px;padding:0 var(--s3);border:0;border-radius:var(--radius);background:none;color:var(--text);text-decoration:none;font-weight:600;font-size:var(--fs-md);cursor:pointer;text-align:left}.sheet__link[data-v-e0a35fb8]:hover,.sheet__link[aria-current=page][data-v-e0a35fb8]{background:var(--surface-2)}.sheet__link[aria-current=page][data-v-e0a35fb8]{color:var(--primary)}.dialog[data-v-cb8daf69]{width:min(460px,calc(100vw - 32px));padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.dialog[data-v-cb8daf69]::backdrop{background:var(--overlay)}.dialog__body[data-v-cb8daf69]{display:flex;flex-direction:column;gap:var(--s4);padding:var(--s5)}.dialog__title[data-v-cb8daf69]{font-size:var(--fs-lg)}.dialog__message[data-v-cb8daf69]{color:var(--text-2);white-space:pre-line}.dialog__actions[data-v-cb8daf69]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s2)}.toasts[data-v-5e57022f]{position:fixed;z-index:60;right:var(--s4);bottom:calc(var(--s4) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--s2);width:min(380px,calc(100vw - 32px));pointer-events:none}@media(max-width:899px){.toasts[data-v-5e57022f]{bottom:calc(var(--bottom-nav-h) + var(--s3) + env(safe-area-inset-bottom));left:50%;right:auto;transform:translate(-50%)}}.toast[data-v-5e57022f]{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s3) var(--s3) var(--s4);border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border-strong);box-shadow:var(--shadow)}.toast--success[data-v-5e57022f]{border-left:4px solid var(--success)}.toast--success>.icon[data-v-5e57022f]{color:var(--success)}.toast--error[data-v-5e57022f]{border-left:4px solid var(--error)}.toast--error>.icon[data-v-5e57022f]{color:var(--error)}.toast--info[data-v-5e57022f]{border-left:4px solid var(--secondary)}.toast>.icon[data-v-5e57022f]{margin-top:2px}.toast__text[data-v-5e57022f]{flex:1;min-width:0}.toast__title[data-v-5e57022f]{font-weight:700}.toast__message[data-v-5e57022f]{color:var(--text-2);font-size:var(--fs-sm)}.toast__close[data-v-5e57022f]{width:32px;height:32px}.toast-enter-active[data-v-5e57022f],.toast-leave-active[data-v-5e57022f]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-5e57022f],.toast-leave-to[data-v-5e57022f]{opacity:0;transform:translateY(8px)}.splash{min-height:100dvh;display:grid;place-items:center}.load-state[data-v-83fb22e0]{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.load-state--busy[data-v-83fb22e0]{justify-content:center;color:var(--text-2);padding:var(--s6) 0}.shead[data-v-fad9f746]{display:flex;align-items:center;gap:var(--s3);margin-top:var(--s4)}.shead__icon[data-v-fad9f746]{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--tint);color:var(--primary);flex:none}.shead__title[data-v-fad9f746]{font-size:var(--fs-lg);font-weight:800}.shead__sub[data-v-fad9f746]{font-size:var(--fs-sm);color:var(--text-2)}.shead__extra[data-v-fad9f746]{margin-left:auto}.spark[data-v-7ee5ea7a]{min-width:0}.spark svg[data-v-7ee5ea7a]{display:block;width:100%;overflow:visible}.spark__line[data-v-7ee5ea7a]{stroke:var(--text-3);opacity:.75}.spark__dot[data-v-7ee5ea7a]{stroke:var(--card);stroke-width:2}.tile[data-v-cb1ddb64]{display:flex;flex-direction:column;gap:4px;min-height:168px}.tile__head[data-v-cb1ddb64]{display:flex;align-items:center;gap:var(--s2);margin-bottom:2px}.tile__icon[data-v-cb1ddb64]{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--tint);color:var(--primary);flex:none}.tile__label[data-v-cb1ddb64]{font-size:var(--fs-sm);font-weight:600;color:var(--text-2)}.tile__value[data-v-cb1ddb64]{font-size:1.75rem;font-weight:800;line-height:1.15;letter-spacing:-.01em}.tile__unit[data-v-cb1ddb64]{font-size:var(--fs-md);font-weight:600;color:var(--text-2);margin-left:4px}.tile__delta[data-v-cb1ddb64]{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:var(--fs-sm);color:var(--text-2)}.tile__delta strong[data-v-cb1ddb64]{color:var(--text);font-weight:700}.tile__sub[data-v-cb1ddb64]{font-size:var(--fs-sm);color:var(--text-2)}.tile__foot[data-v-cb1ddb64]{margin-top:auto;padding-top:var(--s2);display:flex;flex-direction:column;gap:var(--s2)}.tile__link[data-v-cb1ddb64]{font-size:var(--fs-sm);font-weight:600;text-decoration:none;border-radius:var(--radius-sm)}.tile__link[data-v-cb1ddb64]:hover{text-decoration:underline}.ctable__toggle[data-v-605bddff]{background:none;border:0;padding:var(--s1) 0;color:var(--text-2);font-size:var(--fs-xs);text-decoration:underline;text-underline-offset:2px;cursor:pointer;border-radius:var(--radius-sm)}.ctable__toggle[data-v-605bddff]:hover{color:var(--text)}.ctable__wrap[data-v-605bddff]{margin-top:var(--s2);max-height:320px;overflow:auto}.tip[data-v-bb2848f1]{position:absolute;z-index:2;transform:translate(-50%,calc(-100% - 14px));min-width:112px;max-width:240px;padding:8px 10px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border-strong);box-shadow:var(--shadow);pointer-events:none;font-size:var(--fs-xs);line-height:1.35;white-space:nowrap}.tip--below[data-v-bb2848f1]{transform:translate(-50%,14px)}.tip__title[data-v-bb2848f1]{color:var(--text-2);margin-bottom:2px}.tip__row[data-v-bb2848f1]{display:flex;align-items:center;gap:6px}.tip__row strong[data-v-bb2848f1]{color:var(--text);font-size:var(--fs-sm);font-weight:700}.tip__label[data-v-bb2848f1]{color:var(--text-2)}.tip__key[data-v-bb2848f1]{width:12px;height:3px;border-radius:2px;flex:none}.tsc[data-v-10a099a8]{position:relative;margin:0;display:flex;flex-direction:column;gap:var(--s1);min-width:0}.tsc__svg[data-v-10a099a8]{display:block;width:100%;overflow:visible;touch-action:pan-y;border-radius:var(--radius-sm)}.tsc__grid line[data-v-10a099a8]{stroke:var(--chart-grid);stroke-width:1}.tsc__axis[data-v-10a099a8]{font-size:11px;fill:var(--text-3);font-variant-numeric:tabular-nums}.tsc__ref[data-v-10a099a8]{stroke:var(--text-3);stroke-width:1;stroke-dasharray:4 4}.tsc__guide[data-v-10a099a8]{stroke:var(--border-strong);stroke-width:1}.tsc__line[data-v-10a099a8]{stroke-dasharray:1;stroke-dashoffset:0;animation:tsc-draw-10a099a8 .7s ease-out both}.tsc__area[data-v-10a099a8]{animation:tsc-fade-10a099a8 .7s ease-out both}.tsc__dot[data-v-10a099a8]{stroke:var(--card);stroke-width:2;transition:r .12s}.tsc__end[data-v-10a099a8]{font-size:12px;font-weight:700;fill:var(--text)}.tsc__empty[data-v-10a099a8]{color:var(--text-3);text-align:center;padding:var(--s6) 0;font-size:var(--fs-sm)}@keyframes tsc-draw-10a099a8{0%{stroke-dashoffset:1}}@keyframes tsc-fade-10a099a8{0%{opacity:0}}.hero[data-v-3b97fa43]{display:flex;flex-direction:column;gap:var(--s3);background:radial-gradient(120% 90% at 0% 0%,rgba(0,212,170,.1),transparent 55%),var(--card)}.hero__top[data-v-3b97fa43]{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s4);flex-wrap:wrap}.hero__label[data-v-3b97fa43]{display:flex;align-items:center;gap:var(--s2);font-size:var(--fs-sm);font-weight:600;color:var(--text-2)}.hero__label .icon[data-v-3b97fa43]{color:var(--primary)}.hero__value[data-v-3b97fa43]{font-size:3.25rem;font-weight:800;line-height:1.05;letter-spacing:-.02em;margin-top:2px}.hero__unit[data-v-3b97fa43]{font-size:var(--fs-xl);font-weight:600;color:var(--text-2);margin-left:6px}.hero__delta[data-v-3b97fa43]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--text-2);font-size:var(--fs-sm);margin-top:4px}.hero__delta strong[data-v-3b97fa43]{color:var(--text);font-size:var(--fs-md)}.hero__stats[data-v-3b97fa43]{display:flex;gap:var(--s5);margin:0}.hero__stats dt[data-v-3b97fa43]{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.hero__stats dd[data-v-3b97fa43]{margin:2px 0 0;font-weight:700;font-size:var(--fs-md)}.hero__hint[data-v-3b97fa43]{color:var(--text-2);font-size:var(--fs-sm);padding:var(--s4) 0}.weighin[data-v-3b97fa43]{display:flex;align-items:flex-start;gap:var(--s2);padding-top:var(--s3);border-top:1px solid var(--border)}.weighin[data-v-3b97fa43] .field{flex:1;max-width:260px}.weighin .btn[data-v-3b97fa43]{margin-top:28px}.body[data-v-e0930413]{display:block;width:100%;height:auto;max-height:420px;overflow:visible;user-select:none}.body__floor[data-v-e0930413]{fill:#00000059}.body__zone[data-v-e0930413]{transition:fill .18s,stroke .18s,opacity .18s;animation:body-in-e0930413 .5s ease-out both}.body--entry .body__zone[data-v-e0930413],.body--entry .body__scale[data-v-e0930413],.body--entry .body__pill[data-v-e0930413]{cursor:pointer}.body--entry .body__zone[data-v-e0930413]:hover{opacity:.8}.body__scale-base[data-v-e0930413]{fill:var(--surface-2);stroke:var(--border-strong);stroke-width:1}.body__pill rect[data-v-e0930413]{fill:var(--surface);stroke:var(--border-strong);stroke-width:1}.body__pill text[data-v-e0930413]{font-size:10.5px;font-weight:700;fill:var(--text);font-variant-numeric:tabular-nums}@keyframes body-in-e0930413{0%{opacity:0}}.empty[data-v-e0074a09]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--s2);padding:var(--s6) var(--s4)}.empty__icon[data-v-e0074a09]{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--surface-2);color:var(--primary);margin-bottom:var(--s2)}.empty__title[data-v-e0074a09]{font-size:var(--fs-lg);font-weight:700}.empty__subtitle[data-v-e0074a09]{color:var(--text-2);max-width:44ch}.empty__action[data-v-e0074a09]{margin-top:var(--s3)}.body-panel[data-v-c0de2b1d]{display:flex;flex-direction:column;gap:var(--s3)}.body-panel__grid[data-v-c0de2b1d]{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:var(--s5);align-items:start}@media(max-width:719px){.body-panel__grid[data-v-c0de2b1d]{grid-template-columns:1fr}.body-panel__figure[data-v-c0de2b1d]{max-width:240px;margin:0 auto}}.body-panel__grid--single[data-v-c0de2b1d]{grid-template-columns:1fr}.body-panel__note[data-v-c0de2b1d]{font-size:var(--fs-sm);color:var(--text-2);margin-bottom:var(--s2)}.body-panel__caption[data-v-c0de2b1d]{margin-top:var(--s2);font-size:var(--fs-xs);color:var(--text-3);text-align:center}.body-panel__table[data-v-c0de2b1d]{min-width:0;overflow-x:auto}.body-table th[scope=row][data-v-c0de2b1d]{font-weight:600;color:var(--text)}.body-table td strong[data-v-c0de2b1d]{font-weight:700}.body-table td.num[data-v-c0de2b1d]{white-space:nowrap}.body-table__since[data-v-c0de2b1d]{display:block;font-size:var(--fs-xs);color:var(--text-3)}.body-table__trend[data-v-c0de2b1d]{width:84px}.ratios[data-v-c0de2b1d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--s3);padding-top:var(--s3);border-top:1px solid var(--border)}.ratio[data-v-c0de2b1d]{background:var(--surface);border-radius:var(--radius);padding:var(--s3)}.ratio--wide[data-v-c0de2b1d]{grid-column:span 2}@media(max-width:599px){.ratio--wide[data-v-c0de2b1d]{grid-column:auto}}.ratio__label[data-v-c0de2b1d]{font-size:var(--fs-xs);color:var(--text-2);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.ratio__value[data-v-c0de2b1d]{font-size:var(--fs-xl);font-weight:800;margin:2px 0}.ratio__note[data-v-c0de2b1d]{font-size:var(--fs-xs);color:var(--text-3)}.sym[data-v-c0de2b1d]{display:flex;flex-direction:column;gap:4px;margin:6px 0;font-size:var(--fs-sm)}.sym li[data-v-c0de2b1d]{display:grid;grid-template-columns:1fr auto auto;gap:var(--s3)}.sym li span[data-v-c0de2b1d]:first-child{color:var(--text-2)}.cc[data-v-6bf194d9]{margin:0;display:flex;flex-direction:column;gap:var(--s1);min-width:0}.cc__plot[data-v-6bf194d9]{position:relative}.cc__svg[data-v-6bf194d9]{display:block;width:100%;overflow:visible;touch-action:pan-y;border-radius:var(--radius-sm)}.cc__grid line[data-v-6bf194d9]{stroke:var(--chart-grid);stroke-width:1}.cc__axis[data-v-6bf194d9]{font-size:11px;fill:var(--text-3);font-variant-numeric:tabular-nums}.cc__value[data-v-6bf194d9]{font-size:11px;font-weight:700;fill:var(--text-2)}.cc__ref[data-v-6bf194d9]{stroke:var(--text-3);stroke-width:1;stroke-dasharray:4 4}.cc__bar[data-v-6bf194d9]{transition:opacity .12s,filter .12s}.cc__svg:hover .cc__bar[data-v-6bf194d9],.cc__svg:focus-visible .cc__bar[data-v-6bf194d9]{opacity:.55}.cc__svg .cc__bar--active[data-v-6bf194d9]{opacity:1;filter:brightness(1.15)}.cc__legend[data-v-6bf194d9]{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);font-size:var(--fs-xs);color:var(--text-2)}.cc__legend span[data-v-6bf194d9]{display:inline-flex;align-items:center;gap:6px}.cc__legend i[data-v-6bf194d9]{width:10px;height:10px;border-radius:3px;display:inline-block}.heat[data-v-c5797724]{margin:0;display:flex;flex-direction:column;gap:var(--s2);min-width:0}.heat__scroll[data-v-c5797724]{overflow-x:auto;overflow-y:visible;padding-top:4px;scrollbar-width:thin}.heat__inner[data-v-c5797724]{position:relative}.heat svg[data-v-c5797724]{display:block;overflow:visible;border-radius:var(--radius-sm)}.heat__label[data-v-c5797724]{font-size:10px;fill:var(--text-3)}.heat__cell[data-v-c5797724]{transition:stroke .1s}.heat__cell--0[data-v-c5797724]{fill:var(--heat-0);background:var(--heat-0)}.heat__cell--1[data-v-c5797724]{fill:var(--heat-1);background:var(--heat-1)}.heat__cell--2[data-v-c5797724]{fill:var(--heat-2);background:var(--heat-2)}.heat__cell--3[data-v-c5797724]{fill:var(--heat-3);background:var(--heat-3)}.heat__cell--4[data-v-c5797724]{fill:var(--heat-4);background:var(--heat-4)}.heat__cell--active[data-v-c5797724]{stroke:var(--text);stroke-width:1.5}.heat__legend[data-v-c5797724]{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:var(--fs-xs);color:var(--text-3)}.heat__legend i[data-v-c5797724]{width:11px;height:11px;border-radius:3px;display:inline-block}.heat__legend span[data-v-c5797724]:first-child{margin-right:4px}.heat__legend span[data-v-c5797724]:last-child{margin-left:4px}.hbars[data-v-bdf3d8a8]{display:flex;flex-direction:column;gap:10px}.hbars__row[data-v-bdf3d8a8]{display:grid;grid-template-columns:minmax(72px,28%) 1fr auto;align-items:center;gap:var(--s3);font-size:var(--fs-sm)}.hbars__label[data-v-bdf3d8a8]{color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbars__track[data-v-bdf3d8a8]{height:12px;display:flex;align-items:center}.hbars__bar[data-v-bdf3d8a8]{display:block;height:12px;border-radius:0 4px 4px 0;transform-origin:left center;animation:hbars-grow-bdf3d8a8 .6s ease-out both}.hbars__value[data-v-bdf3d8a8]{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap}.hbars__value strong[data-v-bdf3d8a8]{font-weight:700}.hbars__detail[data-v-bdf3d8a8]{color:var(--text-3);font-size:var(--fs-xs)}@keyframes hbars-grow-bdf3d8a8{0%{transform:scaleX(0)}}.kpi-line[data-v-400e373d]{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s3);color:var(--text-2);font-size:var(--fs-sm)}.kpi-line strong[data-v-400e373d]{color:var(--text);font-size:var(--fs-xl);font-weight:800}.panel-empty[data-v-400e373d]{color:var(--text-2);font-size:var(--fs-sm);padding:var(--s4) 0}.records[data-v-400e373d]{display:flex;flex-direction:column}.record[data-v-400e373d]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s3);padding:10px 0;border-bottom:1px solid var(--border)}.record[data-v-400e373d]:last-child{border-bottom:0}.record__icon[data-v-400e373d]{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#ffb74d1f;color:var(--warning)}.record__main[data-v-400e373d]{min-width:0}.record__name[data-v-400e373d]{font-weight:700;display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.record__new[data-v-400e373d]{background:var(--tint);color:var(--primary)}.record__meta[data-v-400e373d]{font-size:var(--fs-xs);color:var(--text-3)}.record__value[data-v-400e373d]{text-align:right;white-space:nowrap}.record__value strong[data-v-400e373d]{font-size:var(--fs-md)}.records__note[data-v-400e373d]{margin-top:var(--s2);font-size:var(--fs-xs);color:var(--text-3)}.cal-stats[data-v-400e373d]{display:flex;gap:var(--s5);flex-wrap:wrap;margin-bottom:var(--s3)}.cal-stats p[data-v-400e373d]{display:flex;flex-direction:column}.cal-stats strong[data-v-400e373d]{font-size:var(--fs-xl);font-weight:800}.cal-stats span[data-v-400e373d]{font-size:var(--fs-xs);color:var(--text-2)}.kpi-line[data-v-8463fbed]{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s3);color:var(--text-2);font-size:var(--fs-sm)}.kpi-line strong[data-v-8463fbed]{color:var(--text);font-size:var(--fs-xl);font-weight:800}.panel-empty[data-v-8463fbed]{color:var(--text-2);font-size:var(--fs-sm);padding:var(--s4) 0}.macro-bar[data-v-8463fbed]{display:flex;gap:2px;height:18px;border-radius:4px;overflow:hidden;margin:var(--s2) 0 var(--s4)}.macro-bar__seg[data-v-8463fbed]{display:flex;align-items:center;justify-content:center;min-width:4px;flex-basis:0}.macro-legend[data-v-8463fbed]{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm)}.macro-legend li[data-v-8463fbed]{display:grid;grid-template-columns:auto 1fr auto 3.5em;align-items:center;gap:var(--s2)}.macro-legend i[data-v-8463fbed]{width:10px;height:10px;border-radius:3px;display:inline-block}.macro-legend__name[data-v-8463fbed]{color:var(--text-2)}.macro-legend__pct[data-v-8463fbed]{color:var(--text-3);text-align:right}.macro-note[data-v-8463fbed]{margin-top:var(--s2);font-size:var(--fs-xs);color:var(--text-3)}.protein-kg[data-v-8463fbed]{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--border)}.protein-kg__value[data-v-8463fbed]{font-size:var(--fs-xl);font-weight:800}.protein-kg__value span[data-v-8463fbed]{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.protein-kg__label[data-v-8463fbed]{font-size:var(--fs-xs);color:var(--text-2)}.nutri__cross[data-v-8463fbed]{grid-column:1 / -1}.cross[data-v-8463fbed]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--s5)}.cross__label[data-v-8463fbed]{font-size:var(--fs-xs);color:var(--text-2);font-weight:600;margin-bottom:var(--s1)}.steps[data-v-209959c5]{display:flex;flex-direction:column;gap:var(--s3)}.steps__stats[data-v-209959c5]{display:flex;gap:var(--s5);flex-wrap:wrap;margin:0}.steps__stats dt[data-v-209959c5]{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.steps__stats dd[data-v-209959c5]{margin:2px 0 0;font-size:var(--fs-xl);font-weight:800}.steps__when[data-v-209959c5]{font-size:var(--fs-xs);color:var(--text-2);font-weight:600;margin-left:4px}.panel-empty[data-v-209959c5]{color:var(--text-2);font-size:var(--fs-sm);padding:var(--s4) 0}.steps__form[data-v-209959c5]{display:flex;align-items:flex-start;gap:var(--s2);padding-top:var(--s3);border-top:1px solid var(--border)}.steps__form[data-v-209959c5] .field{flex:1;max-width:320px}.steps__form .btn[data-v-209959c5]{margin-top:28px}.dash__actions[data-v-0657abb0]{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.dash__add[data-v-0657abb0]{flex:none}@media(max-width:599px){.dash__actions[data-v-0657abb0]{width:100%}.dash__add[data-v-0657abb0]{width:100%;order:-1}.dash__quick[data-v-0657abb0]{flex:1}}.dash__filters[data-v-0657abb0]{display:flex;align-items:center;gap:var(--s3);min-width:0}.dash__filters-label[data-v-0657abb0]{font-size:var(--fs-sm);color:var(--text-2);font-weight:600;flex:none}.dash__overview[data-v-0657abb0]{display:grid;grid-template-columns:1fr;gap:var(--s4)}@media(min-width:1000px){.dash__overview[data-v-0657abb0]{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch}}.dash__tiles[data-v-0657abb0]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}@media(min-width:640px)and (max-width:999px){.dash__tiles[data-v-0657abb0]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:380px){.dash__tiles[data-v-0657abb0]{grid-template-columns:1fr}}.dash__section[data-v-0657abb0]{display:flex;flex-direction:column;gap:var(--s3)}.welcome[data-v-0657abb0]{background:radial-gradient(100% 120% at 100% 0%,rgba(124,92,252,.16),transparent 60%),radial-gradient(90% 100% at 0% 100%,rgba(0,212,170,.12),transparent 60%),var(--card);padding:var(--s5)}.welcome__title[data-v-0657abb0]{font-size:var(--fs-xl);font-weight:800}.welcome__text[data-v-0657abb0]{color:var(--text-2);margin-top:var(--s2);max-width:60ch}.welcome__actions[data-v-0657abb0]{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s4)}:root{color-scheme:dark;--bg: #0d0d0d;--surface: #1a1a2e;--surface-2: #252542;--card: #16162a;--border: #2a2a3e;--border-strong: #3b3b58;--text: #ffffff;--text-2: #a0a0b0;--text-3: #8c8ca6;--primary: #00d4aa;--primary-strong: #00a88a;--on-primary: #04211b;--secondary: #7c5cfc;--secondary-btn: #6947f4;--secondary-text: #a08cff;--accent: #ff6b6b;--error: #ff5c5c;--success: #00d4aa;--warning: #ffb74d;--avatar-a: #00d4aa;--avatar-b: #7c5cfc;--overlay: rgba(0, 0, 0, .7);--tint: rgba(0, 212, 170, .12);--chart-grid: #24243a;--series-1: #00a88a;--series-2: #8b6dff;--series-3: #d27c22;--heat-0: #20203a;--heat-1: #1a6359;--heat-2: #0c8873;--heat-3: #04ac8c;--heat-4: #00d4aa;--figure-top: #3b3b66;--figure-bottom: #2a2a4a;--zone-empty: #45456c;--radius-sm: 6px;--radius: 12px;--radius-lg: 16px;--radius-xl: 24px;--round: 9999px;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--fs-xs: .75rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.5rem;--fs-xxl: 1.875rem;--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--focus-ring: 0 0 0 3px rgba(0, 212, 170, .6);--shadow: 0 10px 30px rgba(0, 0, 0, .35);--sidebar-w: 248px;--bottom-nav-h: 64px;--content-max: 1120px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-md);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;line-height:1.25;font-weight:700}h1{font-size:var(--fs-xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-md)}p{margin:0}a{color:var(--primary)}img,svg,canvas{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:none;box-shadow:var(--focus-ring)}[tabindex="-1"]:focus{box-shadow:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--s2);left:var(--s2);z-index:100;padding:var(--s2) var(--s4);background:var(--primary);color:var(--on-primary);border-radius:var(--radius);font-weight:700;transform:translateY(-200%)}.skip-link:focus{transform:none}.page{width:100%;max-width:var(--content-max);margin:0 auto;padding:var(--s5) var(--s4) var(--s7);display:flex;flex-direction:column;gap:var(--s4)}.page--narrow{max-width:720px}.page__head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.page__head h1:focus{outline:none}.page__sub{color:var(--text-2);font-size:var(--fs-sm)}.back-link{display:inline-flex;align-items:center;gap:var(--s1);color:var(--text-2);text-decoration:none;font-size:var(--fs-sm);font-weight:600;border-radius:var(--radius-sm);padding:var(--s1) 0}.back-link:hover{color:var(--text)}.grid{display:grid;gap:var(--s4)}.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.grid--panel{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.stack{display:flex;flex-direction:column;gap:var(--s3)}.row{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.row--between{justify-content:space-between}.muted{color:var(--text-3)}.secondary-text{color:var(--text-2)}.small{font-size:var(--fs-sm)}.tabular{font-variant-numeric:tabular-nums}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--s4);min-width:0}.card--pad-lg{padding:var(--s5)}.card__title{font-size:var(--fs-sm);font-weight:600;color:var(--text-2);margin-bottom:var(--s3)}.section-title{font-size:var(--fs-lg);font-weight:700;margin-top:var(--s2)}.group-label{font-size:var(--fs-sm);font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.08em}.btn{--btn-bg: var(--primary);--btn-fg: var(--on-primary);--btn-border: transparent;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:10px var(--s5);border-radius:var(--radius);border:1.5px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-fg);font-weight:700;font-size:var(--fs-md);line-height:1.2;text-decoration:none;cursor:pointer;transition:filter .15s,background-color .15s,transform .05s;-webkit-tap-highlight-color:transparent;white-space:nowrap}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;filter:none;transform:none}.btn--secondary{--btn-bg: var(--secondary-btn);--btn-fg: #fff}.btn--outline{--btn-bg: transparent;--btn-fg: var(--primary);--btn-border: var(--primary)}.btn--outline:hover{background:#00d4aa14;filter:none}.btn--ghost{--btn-bg: transparent;--btn-fg: var(--text-2)}.btn--ghost:hover{background:var(--surface-2);color:var(--text);filter:none}.btn--danger{--btn-bg: #d93a3a;--btn-fg: #fff}.btn--danger-outline{--btn-bg: transparent;--btn-fg: var(--error);--btn-border: var(--error)}.btn--danger-outline:hover{background:#ff5c5c14;filter:none}.btn--sm{min-height:36px;padding:6px var(--s4);font-size:var(--fs-sm)}.btn--lg{min-height:52px;padding:14px var(--s5);font-size:var(--fs-lg)}.btn--block{width:100%}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--text-2);cursor:pointer;flex:none}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn--danger:hover{color:var(--error)}.icon-btn[aria-pressed=true]{color:var(--primary);border-color:#00d4aa66}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field__label{font-size:var(--fs-sm);font-weight:600;color:var(--text-2)}.field__hint{font-size:var(--fs-xs);color:var(--text-3)}.field__error{font-size:var(--fs-sm);color:var(--error)}.control{display:flex;align-items:center;min-height:44px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}.control:focus-within{border-color:var(--primary);box-shadow:var(--focus-ring)}.control[data-invalid=true]{border-color:var(--error)}.control input,.control select,.control textarea{flex:1;min-width:0;width:100%;border:0;background:transparent;padding:10px var(--s3);outline:none;box-shadow:none}.control textarea{resize:vertical;min-height:84px}.control select{appearance:none;cursor:pointer;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23A0A0B0' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}.control select option{background:var(--surface)}.control input::placeholder,.control textarea::placeholder{color:var(--text-3)}.control__suffix{padding-right:var(--s3);color:var(--text-3);font-size:var(--fs-sm);white-space:nowrap}.control input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.chips--scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:var(--s1)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px var(--s4);border-radius:var(--round);background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);font-size:var(--fs-sm);font-weight:500;cursor:pointer;white-space:nowrap;flex:none}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip[aria-pressed=true],.chip[aria-checked=true],.chip[aria-current=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:700}.badge{display:inline-flex;align-items:center;padding:2px var(--s2);border-radius:var(--round);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.stat{display:flex;flex-direction:column;gap:2px}.stat__label{font-size:var(--fs-sm);color:var(--text-2)}.stat__value{font-size:var(--fs-xxl);font-weight:800;font-variant-numeric:tabular-nums;line-height:1.15}.stat__delta{font-size:var(--fs-sm);font-weight:600}.list-reset{list-style:none;margin:0;padding:0}.divider{height:1px;background:var(--border);border:0;margin:var(--s2) 0}.data-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:6px var(--s2);text-align:left;border-bottom:1px solid var(--border)}.data-table th{color:var(--text-2);font-weight:600}.data-table td.num,.data-table th.num{text-align:right}.delta-up{color:var(--success)}.delta-down{color:var(--accent)}.delta-zero{color:var(--text-3)}.spinner{width:22px;height:22px;border-radius:50%;border:3px solid rgba(255,255,255,.15);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{border-radius:var(--radius);padding:var(--s3) var(--s4);font-size:var(--fs-sm);border:1px solid}.alert--error{background:#ff5c5c1a;border-color:#ff5c5c73;color:#ffc9c9}.alert--info{background:#00d4aa14;border-color:#00d4aa59;color:#bff5e8}.alert--warning{background:#ffb74d1a;border-color:#ffb74d66;color:#ffe2b8}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
