.badge[data-v-66454d4c]{border-radius:var(--radius-pill);font-size:.78rem;font-weight:var(--font-weight-strong);white-space:nowrap;border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);background:var(--color-surface);align-items:center;padding:4px 10px;text-decoration:none;display:inline-flex}.badge.trial[data-v-66454d4c],.badge.pro[data-v-66454d4c]{border-color:var(--color-accent);color:var(--color-accent-strong);background:color-mix(in srgb, var(--color-accent) 10%, var(--color-surface))}.badge.pro[data-v-66454d4c]{background:var(--color-accent);color:var(--color-on-accent)}.badge.near[data-v-66454d4c]{border-color:var(--color-warn);color:var(--color-warn)}.badge.full[data-v-66454d4c]{border-color:var(--color-bad);color:var(--color-bad)}.profile-badge[data-v-b10f2f23]{border-radius:var(--radius-pill);border:var(--border-width) solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font-size:.8rem;font-weight:var(--font-weight-strong);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;text-decoration:none;display:inline-flex}.profile-badge[data-v-b10f2f23]:hover{color:var(--color-accent-strong);border-color:var(--color-accent)}.profile-badge svg[data-v-b10f2f23]{width:15px;height:15px}@media (width<=400px){.profile-badge[data-v-b10f2f23]{padding:5px 8px}.label[data-v-b10f2f23]{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.top-bar[data-v-9090e115]{z-index:999;height:var(--nav-height);background:color-mix(in srgb, var(--color-surface) 90%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:var(--border-width) solid var(--color-divider);position:fixed;top:0;left:0;right:0}.inner[data-v-9090e115]{height:100%;max-width:var(--content-width);padding:0 var(--page-gutter);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.brand[data-v-9090e115]{align-items:center;gap:10px;display:flex}.logo[data-v-9090e115]{width:auto;height:30px;display:block}.tabs[data-v-9090e115]{gap:6px;display:flex}.tab[data-v-9090e115]{border-radius:var(--radius-pill);color:var(--color-text-muted);font-weight:var(--font-weight-medium);align-items:center;gap:8px;padding:10px 16px;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.tab svg[data-v-9090e115]{width:18px;height:18px}.tab[data-v-9090e115]:hover{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent-strong)}.tab.active[data-v-9090e115]{background:var(--color-accent);color:var(--color-on-accent)}@media (width<=767px){.tabs[data-v-9090e115]{display:none}.brand[data-v-9090e115]{flex:1;min-width:0}.brand[data-v-9090e115] .profile-badge{margin-left:auto}}.tab-bar[data-v-d766b6d3]{z-index:999;padding-bottom:env(safe-area-inset-bottom);background:var(--color-surface);border-top:var(--border-width) solid var(--color-divider);display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #2d251d0f}.tab[data-v-d766b6d3]{height:var(--tabbar-height);color:var(--color-text-muted);font-size:.75rem;font-weight:var(--font-weight-medium);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:flex}.tab svg[data-v-d766b6d3]{width:22px;height:22px}.tab.active[data-v-d766b6d3]{color:var(--color-accent)}.tab.active svg[data-v-d766b6d3]{stroke-width:2.4px}@media (width<=767px){.tab-bar[data-v-d766b6d3]{display:flex}}.overlay[data-v-6c9e4512]{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog[data-v-6c9e4512]{background:var(--color-surface);border-radius:var(--radius-xl);width:90%;max-width:420px;max-height:85vh;box-shadow:var(--shadow-dialog);flex-direction:column;padding:32px;animation:.3s slide-in-6c9e4512;display:flex}.dialog.wide[data-v-6c9e4512]{max-width:480px}@keyframes slide-in-6c9e4512{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}h2[data-v-6c9e4512]{margin:0 0 12px;font-size:1.2rem}.content[data-v-6c9e4512]{min-height:0;color:var(--color-text-muted);line-height:var(--line-height-text);flex:1;overflow-y:auto}.content.inner[data-v-6c9e4512]{flex-direction:column;display:flex;overflow:hidden}.content.inner.stacked[data-v-6c9e4512]{display:block;overflow-y:auto}.content.inner.stacked .inner-scroll[data-v-6c9e4512-s]{flex:none;min-height:0;max-height:none;overflow:visible}@media (height<=520px){.dialog[data-v-6c9e4512]{max-height:94vh;padding:20px 24px}}.buttons[data-v-6c9e4512]{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.buttons button[data-v-6c9e4512-s]{flex:1}.message[data-v-10e230cb]{margin:0}h2[data-v-4b8269ba]{color:var(--color-text);margin:0 0 12px;font-size:1.2rem}.form[data-v-4b8269ba]{gap:14px;display:grid}.form label[data-v-4b8269ba]{font-weight:var(--font-weight-medium);margin-bottom:6px}textarea[data-v-4b8269ba]{min-height:130px}.hint[data-v-4b8269ba]{color:var(--color-text-muted);margin:4px 0 0;font-size:.8rem}.form-error[data-v-4b8269ba]{margin:0}.buttons[data-v-4b8269ba]{gap:12px;margin-top:10px;display:flex}.buttons button[data-v-4b8269ba]{flex:1}.honeypot[data-v-4b8269ba]{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.email-prompt[data-v-02b58202]{z-index:900;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);width:min(380px,100vw - 32px);box-shadow:var(--shadow-float);padding:20px;animation:.3s rise-02b58202;position:fixed;bottom:20px;right:20px}@keyframes rise-02b58202{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}h2[data-v-02b58202]{margin:0 32px 8px 0;font-size:1.1rem}p[data-v-02b58202]{color:var(--color-text-muted);margin:0 0 14px;font-size:.95rem;line-height:1.5}form[data-v-02b58202]{gap:8px;display:flex}form input[type=email][data-v-02b58202]{flex:1;min-width:0}.form-error[data-v-02b58202]{margin:10px 0 0}.close[data-v-02b58202]{width:32px;height:32px;color:var(--color-text-muted);background:0 0;border-radius:50%;padding:0;font-size:1.3rem;line-height:1;position:absolute;top:12px;right:12px}.close[data-v-02b58202]:hover{background:var(--color-surface-alt);color:var(--color-text);transform:none}.footer[data-v-02b58202]{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-size:.8rem;display:flex}.link[data-v-02b58202]{color:var(--color-text-muted);background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:underline}.link[data-v-02b58202]:hover{color:var(--color-text);background:0 0;transform:none}.honeypot[data-v-02b58202]{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}@media (width<=600px){.email-prompt[data-v-02b58202]{width:auto;bottom:16px;left:16px;right:16px}}.row[data-v-03b4a2e4]{flex-wrap:wrap;gap:8px;display:flex}.row[data-v-03b4a2e4]>*{text-align:center;flex:1;justify-content:center;padding:10px 14px;font-size:.95rem}.note[data-v-03b4a2e4]{color:var(--color-text-muted);margin:8px 0 0;font-size:.88rem;line-height:1.45}.install-prompt[data-v-8bc41382]{z-index:900;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);width:min(380px,100vw - 32px);box-shadow:var(--shadow-float);padding:20px;animation:.3s rise-8bc41382;position:fixed;bottom:20px;right:20px}@keyframes rise-8bc41382{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}h2[data-v-8bc41382]{align-items:center;gap:8px;margin:0 32px 8px 0;font-size:1.1rem;display:flex}h2 svg[data-v-8bc41382]{width:20px;height:20px;color:var(--color-accent);flex-shrink:0}p[data-v-8bc41382]{color:var(--color-text-muted);margin:0 0 14px;font-size:.95rem;line-height:1.5}.actions[data-v-8bc41382]{flex-wrap:wrap;gap:8px;display:flex}.actions button[data-v-8bc41382]{flex:1;padding:10px 14px;font-size:.95rem}.close[data-v-8bc41382]{width:32px;height:32px;color:var(--color-text-muted);background:0 0;border-radius:50%;padding:0;font-size:1.3rem;line-height:1;position:absolute;top:12px;right:12px}.close[data-v-8bc41382]:hover{background:var(--color-surface-alt);color:var(--color-text);transform:none}.link[data-v-8bc41382]{color:var(--color-text-muted);background:0 0;border:none;margin:12px auto 0;padding:0;font-size:.8rem;text-decoration:underline;display:block}.link[data-v-8bc41382]:hover{color:var(--color-text);background:0 0;transform:none}.link.how[data-v-8bc41382]{color:var(--color-accent-strong);margin-top:10px;font-size:.88rem}@media (width<=767px){.install-prompt[data-v-8bc41382]{left:16px;right:16px;bottom:calc(var(--tabbar-height) + 12px + env(safe-area-inset-bottom));width:auto}}.why[data-v-15366a55]{margin:0 0 14px}.steps[data-v-15366a55]{color:var(--color-text);gap:12px;margin:0;padding-left:1.4em;display:grid}.steps li[data-v-15366a55]{line-height:1.5}.ui-icon[data-v-15366a55]{vertical-align:middle;border:var(--border-width) solid var(--color-border);width:28px;height:28px;color:var(--color-accent-strong);border-radius:8px;justify-content:center;align-items:center;margin-left:6px;display:inline-flex}.ui-icon svg[data-v-15366a55]{width:18px;height:18px}.backup[data-v-15366a55],.open[data-v-15366a55]{margin-top:8px}.backup button[data-v-15366a55]{padding:10px 16px}.done[data-v-15366a55]{color:var(--color-good);font-weight:var(--font-weight-medium);align-items:center;gap:6px;margin:0;display:flex}.done svg[data-v-15366a55]{width:18px;height:18px}.update-banner[data-v-760a1dc4]{z-index:950;background:var(--color-text);width:min(520px,100vw - 32px);color:var(--color-surface);border-radius:var(--radius-button);box-shadow:var(--shadow-float);align-items:center;gap:14px;padding:12px 14px 12px 18px;font-size:.95rem;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}span[data-v-760a1dc4]{flex:1}button[data-v-760a1dc4]{padding:9px 14px;font-size:.9rem}h2[data-v-ff111c64]{color:var(--color-text);margin:0 0 12px;font-size:1.2rem}.reassure[data-v-ff111c64]{background:var(--color-info-bg);border:var(--border-width) solid var(--color-info-border);border-radius:var(--radius-button);color:var(--color-info-text);margin:0 0 14px;padding:10px 14px;font-size:.92rem}.lead[data-v-ff111c64]{color:var(--color-text);font-weight:var(--font-weight-medium);margin:0 0 8px}.features[data-v-ff111c64]{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.features li[data-v-ff111c64]{color:var(--color-text);align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.features svg[data-v-ff111c64]{width:18px;height:18px;color:var(--color-good);flex-shrink:0;margin-top:2px}.features li.soon[data-v-ff111c64],.features li.soon svg[data-v-ff111c64]{color:var(--color-text-muted)}.soon-tag[data-v-ff111c64]{border-radius:var(--radius-pill);background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);font-size:.75rem;font-weight:var(--font-weight-medium);white-space:nowrap;vertical-align:1px;margin-left:8px;padding:1px 8px;display:inline-block}.soon[data-v-ff111c64]{margin:0 0 8px;font-size:.9rem}.buttons[data-v-ff111c64]{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.buttons button[data-v-ff111c64]{flex:1;min-width:160px}.have-pro[data-v-ff111c64]{text-align:center;margin:14px 0 0;font-size:.9rem}.have-pro .link[data-v-ff111c64]{color:var(--color-accent);font-weight:var(--font-weight-medium);background:0 0;border:none;padding:0;text-decoration:underline}.have-pro .link[data-v-ff111c64]:hover{color:var(--color-accent-strong);background:0 0;transform:none}h2[data-v-63eee307]{color:var(--color-text);margin:0 0 12px;font-size:1.2rem}p[data-v-63eee307]{margin:0 0 12px}.form[data-v-63eee307]{gap:14px;display:grid}.form label[data-v-63eee307]{font-weight:var(--font-weight-medium);margin-bottom:6px}.form-error[data-v-63eee307]{margin:0 0 12px}.form .form-error[data-v-63eee307]{margin:0}.hint[data-v-63eee307]{font-size:.85rem}.waiting[data-v-63eee307]{color:var(--color-text);align-items:center;gap:10px;display:flex}.dot[data-v-63eee307]{background:var(--color-accent);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.4s ease-in-out infinite pulse-63eee307}@keyframes pulse-63eee307{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.dot[data-v-63eee307]{animation:none}}.devices[data-v-63eee307]{gap:10px;margin:0 0 12px;padding:0;list-style:none;display:grid}.devices li[data-v-63eee307]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.device[data-v-63eee307]{gap:2px;font-size:.9rem;display:grid}.device strong[data-v-63eee307]{color:var(--color-text);font-weight:var(--font-weight-medium)}.devices button[data-v-63eee307]{padding:8px 14px}.buttons[data-v-63eee307]{flex-wrap:wrap;gap:12px;margin-top:10px;display:flex}.buttons button[data-v-63eee307]{flex:1;min-width:150px}.license-notice[data-v-4fd0fe6f]{max-width:var(--content-width);width:calc(100% - 2 * var(--page-gutter));background:var(--color-info-bg);border:var(--border-width) solid var(--color-info-border);border-radius:var(--radius-button);color:var(--color-info-text);flex-wrap:wrap;align-items:center;gap:10px;margin:16px auto 0;padding:10px 14px;font-size:.92rem;display:flex}.license-notice svg[data-v-4fd0fe6f]{flex-shrink:0;width:18px;height:18px}.license-notice span[data-v-4fd0fe6f]{flex:1;min-width:200px}.license-notice button[data-v-4fd0fe6f]{padding:6px 14px;font-size:.9rem}.tile[data-v-28817de5]{aspect-ratio:4/3;border-radius:var(--radius-lg);background:var(--color-surface-alt);width:100%;box-shadow:var(--shadow-card);text-align:left;cursor:pointer;border:0;padding:0;display:block;position:relative;overflow:hidden}.tile[data-v-28817de5]:hover{transform:none}.tile img[data-v-28817de5]{object-fit:cover;width:100%;height:100%;transition:transform .3s;position:absolute;inset:0}.tile:hover img[data-v-28817de5]{transform:scale(1.04)}.tile[data-v-28817de5]:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.shade[data-v-28817de5]{background:linear-gradient(#140e0a00 28%,#140e0a73 58%,#140e0ad1 100%);position:absolute;inset:0}.text[data-v-28817de5]{color:#fff;gap:2px;padding:14px 16px;display:grid;position:absolute;bottom:0;left:0;right:0}.text strong[data-v-28817de5]{text-shadow:0 1px 3px #0006;font-size:1.05rem;line-height:1.25}.text small[data-v-28817de5]{opacity:.92;font-size:.85rem;line-height:1.3}.compact .text[data-v-28817de5]{padding:10px 12px}.compact .text strong[data-v-28817de5]{font-size:.92rem}.compact .text small[data-v-28817de5]{display:none}.selected[data-v-28817de5]{box-shadow:0 0 0 3px var(--color-accent), var(--shadow-card)}.check[data-v-28817de5]{background:var(--color-accent);width:28px;height:28px;color:var(--color-on-accent);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:10px;right:10px}.check svg[data-v-28817de5]{width:16px;height:16px}@media (width<=560px){.text[data-v-28817de5]{padding:10px 12px}.text strong[data-v-28817de5]{font-size:.92rem}.text small[data-v-28817de5]{display:none}}.text[data-v-dc46fea7],.keep[data-v-dc46fea7]{line-height:var(--line-height-text);margin:0 0 8px}.keep[data-v-dc46fea7]{color:var(--color-text-muted);font-size:.92rem}.count[data-v-dc46fea7]{font-weight:var(--font-weight-strong);color:var(--color-text-muted);margin:12px 0 8px}.count.full[data-v-dc46fea7]{color:var(--color-accent-strong)}.list[data-v-dc46fea7]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);flex:auto;min-height:120px;margin:0;padding:4px;list-style:none;overflow-y:auto}.list label[data-v-dc46fea7]{border-radius:calc(var(--radius-button) - 2px);color:var(--color-text);cursor:pointer;align-items:center;gap:10px;margin:0;padding:8px 10px;font-size:1rem;display:flex}.list label[data-v-dc46fea7]:hover{background:var(--color-surface-alt)}.list label.disabled[data-v-dc46fea7]{color:var(--color-text-muted);cursor:not-allowed}.list input[data-v-dc46fea7]{width:18px;height:18px;accent-color:var(--color-accent);flex-shrink:0;margin:0;padding:0}.name[data-v-dc46fea7]{overflow-wrap:anywhere;flex:auto;min-width:0}.name .uses[data-v-dc46fea7]{white-space:normal;color:var(--color-accent-strong);display:block}.list small[data-v-dc46fea7]{color:var(--color-text-muted);white-space:nowrap;font-size:.8rem}@media (width<=560px){button.main.main[data-v-dc46fea7]{flex:100%}}.profile-welcome[data-v-2a34ff4a]{z-index:1000;background:linear-gradient(180deg, var(--color-page-top) 0%, var(--color-page-bottom) 100%);position:fixed;inset:0;overflow-y:auto}.inner[data-v-2a34ff4a]{max-width:640px;padding:48px var(--page-gutter) 32px;text-align:center;margin:0 auto}.logo[data-v-2a34ff4a]{width:auto;height:44px;margin:0 auto 28px;display:block}h1[data-v-2a34ff4a]{margin:0 0 10px;font-size:clamp(1.7rem,5vw,2.3rem)}.lead[data-v-2a34ff4a]{max-width:480px;color:var(--color-text-muted);line-height:var(--line-height-text);margin:0 auto 28px}.options[data-v-2a34ff4a]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.restore[data-v-2a34ff4a]{color:var(--color-text-muted);margin:22px 0 0;font-size:.95rem}.link[data-v-2a34ff4a],.lang[data-v-2a34ff4a]{color:var(--color-accent-strong);font-weight:var(--font-weight-medium);box-shadow:none;background:0 0;border:none;text-decoration:underline}.link[data-v-2a34ff4a]{font-size:inherit;padding:0}.link[data-v-2a34ff4a]:hover,.lang[data-v-2a34ff4a]:hover{background:0 0;transform:none}.lang[data-v-2a34ff4a]{margin-top:18px}@media (width<=560px){.inner[data-v-2a34ff4a]{padding-top:32px}.options[data-v-2a34ff4a]{gap:10px}}.card[data-v-821e1cfb]{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;padding:18px;display:flex}hr[data-v-821e1cfb]{border:none;border-top:var(--border-width) solid var(--color-divider);margin:16px 0}.head[data-v-821e1cfb]{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}h3[data-v-821e1cfb]{overflow-wrap:anywhere;margin:0 0 10px;font-size:1.22rem;line-height:1.15}.via[data-v-821e1cfb]{color:var(--color-accent-strong);font-size:.8rem;font-weight:var(--font-weight-medium);margin-bottom:6px;display:block}.missing[data-v-821e1cfb]{font-size:.8rem;font-weight:var(--font-weight-medium);color:var(--color-warn);align-items:center;gap:5px;margin-bottom:6px;display:inline-flex}.missing svg[data-v-821e1cfb]{width:14px;height:14px}.metrics[data-v-821e1cfb]{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.metric[data-v-821e1cfb]{text-align:center;justify-items:center;gap:8px;padding:12px 0;display:grid}.metric-icon[data-v-821e1cfb]{color:var(--color-note-icon);display:inline-flex}.metric-icon svg[data-v-821e1cfb]{width:28px;height:28px}.label[data-v-821e1cfb]{color:var(--color-text-muted);font-size:.8rem}.value[data-v-821e1cfb]{font-size:1rem;font-weight:var(--font-weight-strong);line-height:1.2}.after-labor[data-v-821e1cfb]{color:var(--color-text-muted);justify-content:space-between;gap:12px;margin:8px 4px 0;font-size:.85rem;display:flex}.after-labor strong[data-v-821e1cfb]{color:var(--color-text)}.after-labor.short strong[data-v-821e1cfb]{color:var(--color-bad-text)}.profit[data-v-821e1cfb]{--level:var(--color-good);--level-text:var(--color-good-text);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--level) 12%, transparent);border:var(--border-width) solid color-mix(in srgb, var(--level) 24%, transparent);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:12px 16px;display:flex}.profit.warn[data-v-821e1cfb]{--level:var(--color-warn);--level-text:var(--color-warn-text)}.profit.bad[data-v-821e1cfb]{--level:var(--color-bad);--level-text:var(--color-bad-text)}.profit-left[data-v-821e1cfb]{align-items:center;gap:14px;display:flex}.profit-icon[data-v-821e1cfb]{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--level-text) 14%, transparent);width:42px;height:42px;color:var(--level-text);justify-content:center;align-items:center;display:flex}.profit-icon svg[data-v-821e1cfb]{width:20px;height:20px}.profit-label[data-v-821e1cfb]{font-size:.85rem;font-weight:var(--font-weight-medium)}.profit-value[data-v-821e1cfb]{font-size:1.35rem;font-weight:var(--font-weight-strong);color:var(--level-text)}.extra[data-v-821e1cfb]{justify-content:space-between;align-items:center;padding:22px 10px 6px;display:flex}.extra-metric[data-v-821e1cfb]{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex}.extra .label[data-v-821e1cfb]{font-size:14px}.extra-value[data-v-821e1cfb]{font-size:1.35rem;font-weight:var(--font-weight-strong)}.extra-divider[data-v-821e1cfb]{background:var(--color-divider);align-self:stretch;width:1px}.prep-tag[data-v-821e1cfb]{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent-strong)}.used-in[data-v-821e1cfb]{border-radius:var(--radius-lg);background:var(--color-surface-alt);color:var(--color-text-muted);overflow-wrap:anywhere;margin:16px 0 0;padding:12px 14px;font-size:.9rem}.used-in strong[data-v-821e1cfb]{color:var(--color-text);font-weight:var(--font-weight-strong)}.foot[data-v-821e1cfb]{margin-top:auto}.actions[data-v-821e1cfb]{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:12px;display:flex}.action[data-v-821e1cfb]{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.action span[data-v-821e1cfb]{white-space:nowrap;font-size:.95rem}@media (width<=440px){.actions[data-v-821e1cfb]{gap:8px}.action[data-v-821e1cfb]{flex-direction:column;gap:4px}.action span[data-v-821e1cfb]{font-size:.8rem}}.grid[data-v-55b0d61c]{grid-template-columns:1fr;gap:18px;display:grid}@media (width>=720px){.grid[data-v-55b0d61c]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1080px){.grid[data-v-55b0d61c]{grid-template-columns:repeat(3,minmax(0,1fr))}}.table-wrapper[data-v-a6ec3978]{margin-top:4px}.name[data-v-a6ec3978]{color:var(--color-text);font-weight:var(--font-weight-medium);text-decoration:none}.name[data-v-a6ec3978]:hover{color:var(--color-accent-strong);text-decoration:underline}.via[data-v-a6ec3978]{color:var(--color-accent-strong);font-size:.78rem;display:block}.missing[data-v-a6ec3978]{color:var(--color-warn);font-size:.78rem;display:block}.whole[data-v-a6ec3978]{color:var(--color-text-muted);font-size:.78rem;display:block}.profit[data-v-a6ec3978]{--level-text:var(--color-good-text);align-items:center;gap:10px;display:flex}.profit.warn[data-v-a6ec3978]{--level-text:var(--color-warn-text)}.profit.bad[data-v-a6ec3978]{--level-text:var(--color-bad-text)}.profit-icon[data-v-a6ec3978]{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--level-text) 14%, transparent);width:28px;height:28px;color:var(--level-text);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.profit-icon svg[data-v-a6ec3978]{width:14px;height:14px}.profit-value[data-v-a6ec3978]{font-weight:var(--font-weight-medium)}td.short[data-v-a6ec3978]{color:var(--color-bad-text);font-weight:var(--font-weight-medium)}.backup-reminder[data-v-1463e376]{background:var(--color-info-bg);border:var(--border-width) solid var(--color-info-border);border-radius:var(--radius-button);color:var(--color-info-text);flex-wrap:wrap;align-items:center;gap:12px 14px;margin:0 0 20px;padding:14px 16px;display:flex}.backup-reminder>svg[data-v-1463e376]{flex-shrink:0;width:22px;height:22px}.body[data-v-1463e376]{flex:1;gap:2px;min-width:220px;font-size:.92rem;line-height:1.45;display:grid}.body strong[data-v-1463e376]{font-weight:var(--font-weight-strong)}.actions[data-v-1463e376]{flex-wrap:wrap;gap:8px;display:flex}.actions button[data-v-1463e376]{padding:8px 14px;font-size:.92rem}.costs-tip[data-v-7a7f87c0]{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);font-size:.95rem;line-height:var(--line-height-text);align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px;display:flex}.tip-icon[data-v-7a7f87c0]{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-accent) 14%, transparent);width:46px;height:46px;color:var(--color-accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tip-icon svg[data-v-7a7f87c0]{width:24px;height:24px}.tip-actions[data-v-7a7f87c0]{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.switch[data-v-3ce4a484]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);padding:3px;display:inline-flex}.switch button[data-v-3ce4a484]{border-radius:var(--radius-pill);color:var(--color-text-muted);font-size:.9rem;font-weight:var(--font-weight-medium);background:0 0;align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.switch button svg[data-v-3ce4a484]{width:16px;height:16px}.switch button[data-v-3ce4a484]:hover{color:var(--color-text);background:0 0;transform:none}.switch button.on[data-v-3ce4a484]{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 4px #00000014}.guidance[data-v-3ce4a484]{background:var(--color-note-bg);border:var(--border-width) solid var(--color-note-border);border-radius:var(--radius-lg);color:var(--color-note-text);font-size:.95rem;line-height:var(--line-height-text);align-items:flex-start;gap:14px;margin-bottom:20px;padding:16px;display:flex}.guidance-icon[data-v-3ce4a484]{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-note-icon) 18%, transparent);width:46px;height:46px;color:var(--color-note-icon);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.guidance-icon svg[data-v-3ce4a484]{width:24px;height:24px}.subtitle[data-v-3ce4a484]{color:var(--color-text-muted);margin:0 0 6px}.subtitle.note[data-v-3ce4a484]{font-size:.88rem}.filter[data-v-3ce4a484]{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.filter button[data-v-3ce4a484]{border-radius:var(--radius-pill);background:var(--color-surface);border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:.9rem;font-weight:var(--font-weight-medium);padding:7px 14px}.filter button[data-v-3ce4a484]:hover{color:var(--color-text);background:var(--color-surface);transform:none}.filter button.on[data-v-3ce4a484]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.search-row[data-v-3ce4a484]{margin-bottom:16px}.search-count[data-v-3ce4a484]{color:var(--color-text-muted);margin:6px 0 0;font-size:.85rem}.no-results[data-v-3ce4a484]{background:var(--color-surface);padding:32px 24px}.no-results p[data-v-3ce4a484]{margin:0 0 12px}.plan-line[data-v-3ce4a484]{color:var(--color-text-muted);margin:-8px 0 16px;font-size:.9rem}.plan-line.warn[data-v-3ce4a484]{color:var(--color-warn);font-weight:var(--font-weight-medium)}.plan-line .link[data-v-3ce4a484]{color:var(--color-accent-strong);font-size:inherit;font-weight:var(--font-weight-medium);background:0 0;border:none;margin-left:6px;padding:0;text-decoration:underline}.plan-line .link[data-v-3ce4a484]:hover{background:0 0;transform:none}.welcome[data-v-3ce4a484]{background:var(--color-surface);padding:56px 24px}.welcome .restore[data-v-3ce4a484]{color:var(--color-text-muted);margin:18px auto 0;font-size:.92rem}.welcome .link[data-v-3ce4a484]{color:var(--color-accent-strong);font-size:inherit;font-weight:var(--font-weight-medium);background:0 0;border:none;padding:0;text-decoration:underline}.welcome .link[data-v-3ce4a484]:hover{background:0 0;transform:none}.welcome p[data-v-3ce4a484]{max-width:560px}.welcome-photo[data-v-3ce4a484]{border-radius:var(--radius-lg);width:100%;max-width:360px;height:auto;box-shadow:var(--shadow-card);margin:0 auto 18px;display:block}@media (width<=767px){.welcome[data-v-3ce4a484]{padding:24px 18px 28px}.welcome-photo[data-v-3ce4a484]{max-width:300px;margin-bottom:14px}.view-actions[data-v-3ce4a484]{flex-wrap:nowrap;width:100%}.switch span[data-v-3ce4a484],.print span[data-v-3ce4a484]{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.print[data-v-3ce4a484]{padding:10px 12px}.view-actions>.button-link[data-v-3ce4a484]{flex:1;justify-content:center}}.combo[data-v-61cb2d2f]{position:relative}.combo input[data-v-61cb2d2f]{width:100%;padding-right:36px}.toggle[data-v-61cb2d2f]{width:36px;color:var(--color-text-muted);cursor:pointer;box-shadow:none;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:0;bottom:0;right:0}.toggle[data-v-61cb2d2f]:hover{color:var(--color-accent-strong);background:0 0}.toggle svg[data-v-61cb2d2f]{width:18px;height:18px}.options[data-v-61cb2d2f]{z-index:20;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);width:max-content;min-width:100%;max-width:min(360px,90vw);max-height:280px;box-shadow:var(--shadow-menu);margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.options li[data-v-61cb2d2f]{border-radius:calc(var(--radius-button) - 2px);cursor:pointer;flex-direction:column;gap:1px;padding:8px 10px;display:flex}.options li[aria-selected=true][data-v-61cb2d2f]{background:var(--color-surface-alt)}.options li.group[data-v-61cb2d2f]{cursor:default;font-size:.75rem;font-weight:var(--font-weight-strong);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);padding:8px 10px 4px}.options li.group[data-v-61cb2d2f]:not(:first-child){border-top:var(--border-width) solid var(--color-divider);margin-top:4px}.option-name[data-v-61cb2d2f]{color:var(--color-text);font-weight:var(--font-weight-medium);align-items:center;gap:6px;display:flex}.option-name svg[data-v-61cb2d2f]{width:15px;height:15px;color:var(--color-accent-strong)}.options small[data-v-61cb2d2f]{color:var(--color-text-muted);font-size:.8rem}.options li.create[data-v-61cb2d2f]{color:var(--color-accent-strong);font-weight:var(--font-weight-medium);border-top:var(--border-width) solid var(--color-divider);flex-direction:row;align-items:center;gap:6px}.options li.create[data-v-61cb2d2f]:first-child{border-top:0}.options li.create svg[data-v-61cb2d2f]{flex-shrink:0;width:16px;height:16px}.ingredients[data-v-4befbaa0]{gap:12px;margin-top:18px;display:grid}.money-label[data-v-4befbaa0]{color:var(--color-text-muted);font-size:.85rem}.add-line[data-v-4befbaa0]{width:100%;color:var(--color-accent-strong);border:var(--border-width) dashed var(--color-accent);background:0 0;justify-content:center;align-items:center;gap:8px;margin-top:12px;display:flex}.add-line[data-v-4befbaa0]:hover{background:color-mix(in srgb, var(--color-accent) 8%, transparent)}.add-line svg[data-v-4befbaa0]{width:18px;height:18px}.ref[data-v-4befbaa0]{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:2px 6px;margin-top:4px;font-size:.8rem;display:flex}.ref.missing[data-v-4befbaa0]{color:var(--color-warn);font-weight:var(--font-weight-medium)}.ref.new[data-v-4befbaa0]{color:var(--color-accent-strong)}.ref .tag[data-v-4befbaa0]{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent-strong);font-size:.72rem;font-weight:var(--font-weight-strong);border-radius:999px;padding:1px 7px}.ref .link[data-v-4befbaa0]{box-shadow:none;color:var(--color-accent-strong);font-size:inherit;font-weight:var(--font-weight-medium);background:0 0;border:none;padding:0;text-decoration:underline}.ref .link[data-v-4befbaa0]:hover{background:0 0;transform:none}.ref .link.edit[data-v-4befbaa0]{color:var(--color-text-muted);padding:2px;display:inline-flex}.ref .link.edit[data-v-4befbaa0]:hover{color:var(--color-accent-strong)}.ref .link.edit svg[data-v-4befbaa0]{width:14px;height:14px}.with-unit[data-v-4befbaa0]{position:relative}.with-unit input[data-v-4befbaa0]{appearance:textfield;width:100%;padding-right:34px!important}.with-unit input[data-v-4befbaa0]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.with-unit input[data-v-4befbaa0]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.unit[data-v-4befbaa0]{color:var(--color-text-muted);pointer-events:none;font-size:.9rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}@media (width>=1000px){.ingredients[data-v-4befbaa0]{gap:0}.line[data-v-4befbaa0]{border-bottom:var(--border-width) solid var(--color-divider);grid-template-columns:minmax(200px,1fr) 150px 120px 96px 52px;align-items:start;gap:10px;padding:8px;display:grid}.packaging .line[data-v-4befbaa0]{grid-template-columns:minmax(200px,1fr) 150px 96px 52px}.head[data-v-4befbaa0]{color:var(--color-text-muted);font-size:.9rem;font-weight:var(--font-weight-strong);padding:14px 8px;line-height:1.3}.field label[data-v-4befbaa0],.money-label[data-v-4befbaa0]{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.field[data-v-4befbaa0] input{padding:12px 10px}.field[data-v-4befbaa0] .combo input{padding-right:36px}.money[data-v-4befbaa0]{padding-top:12px;font-size:.96rem}.money strong[data-v-4befbaa0]{font-weight:400}.actions[data-v-4befbaa0]{justify-content:center;display:flex}}@media (width<=999px){.line.head[data-v-4befbaa0]{display:none}.line[data-v-4befbaa0]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;padding:14px;display:grid}.field[data-v-4befbaa0]{flex-direction:column;justify-content:flex-end;display:flex}.field label[data-v-4befbaa0]{margin-bottom:4px;font-size:.8rem;line-height:1.25}.field[data-v-4befbaa0] input{background:var(--color-surface);padding:10px 12px}.field[data-v-4befbaa0] .combo input{padding-right:36px}.name[data-v-4befbaa0]{grid-column:1/3}.actions[data-v-4befbaa0]{grid-area:1/3;justify-content:flex-end;align-items:flex-start;padding-top:22px;display:flex}.money[data-v-4befbaa0]{flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:2px;padding-bottom:8px;display:flex}.packaging .money[data-v-4befbaa0]{grid-column:3}.money-label[data-v-4befbaa0]{font-size:.8rem}.money strong[data-v-4befbaa0]{font-size:1.15rem}}.type[data-v-1e277c44]{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.type-label[data-v-1e277c44]{font-size:.85rem;font-weight:var(--font-weight-strong)}.type .choices[data-v-1e277c44]{gap:8px;display:flex}.type .choices button[data-v-1e277c44]{padding:6px 14px;font-size:.9rem}.type-hint[data-v-1e277c44]{color:var(--color-text-muted);margin:6px 0 12px;font-size:.82rem}.grid[data-v-1e277c44]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.wide[data-v-1e277c44]{grid-column:1/-1}.grid>div[data-v-1e277c44]{flex-direction:column;justify-content:flex-end;display:flex}label[data-v-1e277c44]{margin-bottom:4px;font-size:.85rem}input[data-v-1e277c44]{padding:10px 12px}.form-error[data-v-1e277c44]{margin:12px 0 0}.buttons[data-v-1e277c44]{gap:10px;margin-top:14px;display:flex}.shared[data-v-019cf12f]{color:var(--color-warn);font-size:.9rem;font-weight:var(--font-weight-medium);margin:0 0 14px}.other-costs[data-v-29cfe53d]{margin-top:22px}.other-costs h2[data-v-29cfe53d]{margin-bottom:0}.hint[data-v-29cfe53d]{color:var(--color-text-muted);margin:4px 0 12px;font-size:.82rem}.labor-note[data-v-29cfe53d]{border-radius:var(--radius-md,10px);background:var(--color-note-bg);border:var(--border-width) solid var(--color-note-border);color:var(--color-note-text);margin:12px 0 0;padding:10px 14px;font-size:.88rem}td[data-v-29cfe53d]{padding:10px 8px}td input[data-v-29cfe53d]{padding:12px 10px}.labor[data-v-50eea43d]{margin-top:28px}.labor h2[data-v-50eea43d]{margin:0}.field-hint[data-v-50eea43d]{color:var(--color-text-muted);margin:4px 0 0;font-size:.82rem}.labor-row[data-v-50eea43d]{flex-wrap:wrap;align-items:flex-start;gap:16px 32px;margin-top:12px;display:flex}.time[data-v-50eea43d]{border:0;min-width:0;margin:0;padding:0}.time legend[data-v-50eea43d]{font-weight:var(--font-weight-strong);margin-bottom:6px;padding:0}.time-boxes[data-v-50eea43d]{gap:10px;display:flex}.box[data-v-50eea43d]{align-items:center;gap:6px;margin:0;font-weight:400;display:inline-flex}.box input[data-v-50eea43d]{width:84px}.rate[data-v-50eea43d]{flex:1;min-width:240px;max-width:420px}.rate label[data-v-50eea43d],.rate-label[data-v-50eea43d]{font-weight:var(--font-weight-strong);margin-bottom:6px;display:block}.rate-input[data-v-50eea43d]{gap:8px;display:flex}.rate-input input[data-v-50eea43d]{flex:1;min-width:0}.rate-value[data-v-50eea43d]{flex-wrap:wrap;align-items:baseline;gap:10px;margin:8px 0 0;display:flex}.link[data-v-50eea43d]{color:var(--color-accent-strong);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.link[data-v-50eea43d]:hover{background:0 0;transform:none}.labor-total[data-v-50eea43d]{font-weight:var(--font-weight-medium);margin:12px 0 0}.from-preps[data-v-50eea43d]{color:var(--color-text-muted);font-size:.85rem;font-weight:400;display:block}.totals[data-v-d62fe7c0]{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-top:24px;display:grid}.retail[data-v-d62fe7c0]{margin-top:24px}.card[data-v-d62fe7c0]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:18px 20px}.card strong[data-v-d62fe7c0]{color:var(--color-text-muted);margin-bottom:8px;font-size:.9rem;display:block}.value[data-v-d62fe7c0]{font-size:1.9rem;line-height:1.05}.card p[data-v-d62fe7c0]{color:var(--color-text-muted);margin:8px 0 0}.labor-profit[data-v-d62fe7c0]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt);margin-top:16px;padding:14px 18px}.labor-profit p[data-v-d62fe7c0]{margin:0}.labor-profit strong[data-v-d62fe7c0]{margin-left:6px;font-size:1.15rem}.labor-profit.short[data-v-d62fe7c0]{border-color:var(--color-bad)}.labor-profit.short strong[data-v-d62fe7c0],.labor-profit .warn-text[data-v-d62fe7c0]{color:var(--color-bad)}.labor-profit .warn-text[data-v-d62fe7c0]{font-weight:var(--font-weight-medium);margin-top:6px}.card p.per-person[data-v-d62fe7c0]{font-weight:var(--font-weight-strong);color:var(--color-text);margin-top:6px}.scale[data-v-e00ddefd]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);margin-top:24px;padding:14px 18px}.scale summary[data-v-e00ddefd]{cursor:pointer;font-weight:var(--font-weight-strong);color:var(--color-accent-strong);align-items:center;gap:10px;display:flex}.pro-tag[data-v-e00ddefd]{background:var(--color-surface);border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.75rem;display:inline-flex}.pro-tag svg[data-v-e00ddefd]{width:12px;height:12px}.locked p[data-v-e00ddefd],.muted[data-v-e00ddefd],.base[data-v-e00ddefd],.note[data-v-e00ddefd]{color:var(--color-text-muted)}.locked[data-v-e00ddefd]{margin-top:10px}.locked p[data-v-e00ddefd]{margin:0 0 10px}.body[data-v-e00ddefd]{margin-top:12px}.base[data-v-e00ddefd]{margin:0 0 10px}.target[data-v-e00ddefd]{max-width:260px}.summary[data-v-e00ddefd]{gap:4px;margin:14px 0 6px;padding:0;list-style:none;display:grid}.summary li.total[data-v-e00ddefd]{font-weight:var(--font-weight-strong)}.note[data-v-e00ddefd]{margin:0 0 12px;font-size:.85rem}.prices[data-v-e00ddefd]{margin-bottom:12px}.prices ul[data-v-e00ddefd]{flex-wrap:wrap;gap:6px 18px;margin:6px 0 0;padding:0;list-style:none;display:flex}.prices .pct[data-v-e00ddefd]{color:var(--color-text-muted)}.prices .per[data-v-e00ddefd]{color:var(--color-text-muted);font-size:.88rem}.net[data-v-e00ddefd]{margin-bottom:12px}.net ul[data-v-e00ddefd]{gap:4px;margin:0;padding:0;list-style:none;display:grid}.net p[data-v-e00ddefd]{font-weight:var(--font-weight-strong);margin:6px 0 0}.amounts[data-v-e00ddefd]{border-collapse:collapse;width:100%;font-size:.92rem}.amounts th[data-v-e00ddefd],.amounts td[data-v-e00ddefd]{text-align:left;border-bottom:var(--border-width) solid var(--color-divider);padding:6px 8px}.amounts th[data-v-e00ddefd]{color:var(--color-text-muted);font-weight:var(--font-weight-medium)}.amounts td[data-v-e00ddefd]:not(:first-child){white-space:nowrap}@media (width<=480px){.scale[data-v-e00ddefd]{padding:12px}.amounts[data-v-e00ddefd]{font-size:.82rem}.amounts th[data-v-e00ddefd],.amounts td[data-v-e00ddefd]{padding:6px 4px}.amounts td[data-v-e00ddefd]:not(:first-child){white-space:normal}}.save-actions[data-v-05bf0cce]{margin-top:20px}.packaging-block[data-v-05bf0cce]{margin-top:28px}.packaging-block h2[data-v-05bf0cce]{margin:0}.packaging-block .field-hint[data-v-05bf0cce]{margin-top:4px}.packaging-block[data-v-05bf0cce] .ingredients{margin-top:10px}.field-hint[data-v-05bf0cce]{color:var(--color-text-muted);margin:6px 0 0;font-size:.82rem}.choice-group[data-v-05bf0cce]{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:18px;display:flex}.choice-label[data-v-05bf0cce]{font-weight:var(--font-weight-strong)}.choice-group .choices[data-v-05bf0cce]{flex-wrap:wrap;gap:8px;display:flex}.prep-hint[data-v-05bf0cce]{margin:-8px 0 14px}.plan-note[data-v-05bf0cce]{color:var(--color-text-muted);margin:-6px 0 18px;font-size:.88rem}.plan-note.full[data-v-05bf0cce]{color:var(--color-warn)}.plan-note .link[data-v-05bf0cce]{color:var(--color-accent-strong);font:inherit;font-weight:var(--font-weight-strong);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.also-inside[data-v-05bf0cce]{margin:4px 0 8px}.also-inside summary[data-v-05bf0cce]{cursor:pointer;font-weight:var(--font-weight-medium);color:var(--color-accent-strong)}.also-inside .field-hint[data-v-05bf0cce]{margin:8px 0 10px}@media (width<=767px){.save-actions[data-v-05bf0cce]{bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom) + 8px);z-index:5;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);margin:20px -12px 0;padding:10px 12px;position:sticky}}.back[data-v-620d5a43]{color:var(--color-text-muted);font-weight:var(--font-weight-medium);align-items:center;gap:6px;margin-bottom:10px;text-decoration:none;display:inline-flex}.back[data-v-620d5a43]:hover{color:var(--color-accent-strong)}.trail ol[data-v-620d5a43]{flex-wrap:wrap;align-items:center;gap:4px 0;margin:0 0 8px;padding:0;font-size:.92rem;list-style:none;display:flex}.trail li[data-v-620d5a43]{align-items:center;display:inline-flex}.trail li+li[data-v-620d5a43]:before{content:"›";color:var(--color-text-muted);margin:0 8px}.trail a[data-v-620d5a43]{color:var(--color-accent-strong);font-weight:var(--font-weight-medium)}.trail li[aria-current][data-v-620d5a43]{color:var(--color-text);font-weight:var(--font-weight-strong)}.back svg[data-v-620d5a43]{width:18px;height:18px}.history[data-v-7145825b]{margin-top:10px}.chart[data-v-7145825b]{width:100%}svg[data-v-7145825b]{display:block;overflow:visible}.guide[data-v-7145825b]{stroke:var(--color-divider);stroke-width:1px;stroke-dasharray:3 3}.label[data-v-7145825b]{fill:var(--color-text-muted);stroke:none;font-size:11px;font-weight:400}.label.price[data-v-7145825b]{text-anchor:end;dominant-baseline:middle}.label.end[data-v-7145825b]{text-anchor:end}.line[data-v-7145825b]{fill:none;stroke:var(--color-accent);stroke-width:2px;stroke-linejoin:round}.dot[data-v-7145825b]{fill:var(--color-accent);stroke:var(--color-surface);stroke-width:2px}.dot.last[data-v-7145825b]{fill:var(--color-accent-strong)}.hit[data-v-7145825b]{fill:#0000;stroke:none}.changes[data-v-7145825b]{margin-top:8px;font-size:.85rem}.changes th[data-v-7145825b],.changes td[data-v-7145825b]{padding:6px 8px}.changes th[data-v-7145825b]{font-size:.8rem}.up[data-v-7145825b]{color:var(--color-bad);font-weight:var(--font-weight-medium)}.down[data-v-7145825b]{color:var(--color-good);font-weight:var(--font-weight-medium)}.more[data-v-7145825b]{box-shadow:none;color:var(--color-accent-strong);font-size:.85rem;font-weight:var(--font-weight-medium);background:0 0;border:none;margin-top:6px;padding:4px 8px;text-decoration:underline}.more[data-v-7145825b]:hover{background:0 0;transform:none}.item[data-v-39955d50]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.item.editing[data-v-39955d50]{background:var(--color-surface);border-color:var(--color-accent);grid-column:1/-1;display:block}.info[data-v-39955d50]{flex-direction:column;flex:1 1 0;gap:3px;min-width:0;display:flex}.name[data-v-39955d50]{font-weight:var(--font-weight-strong);overflow-wrap:anywhere}.tag[data-v-39955d50]{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent-strong);font-size:.72rem;font-weight:var(--font-weight-strong);vertical-align:2px;border-radius:999px;margin-left:8px;padding:1px 8px;display:inline-block}.price[data-v-39955d50]{font-size:.92rem}.price small[data-v-39955d50]{color:var(--color-text-muted);white-space:nowrap}.price.missing[data-v-39955d50]{color:var(--color-warn);font-weight:var(--font-weight-medium)}.meta[data-v-39955d50]{color:var(--color-text-muted);font-size:.8rem}.stale[data-v-39955d50]{color:var(--color-warn);font-weight:var(--font-weight-medium)}.actions[data-v-39955d50]{flex-shrink:0;gap:8px;display:flex}.history[data-v-39955d50]{flex-basis:100%}.trend[data-v-39955d50]{text-align:left;color:var(--color-accent-strong);font-size:.82rem;line-height:1.4;font-weight:var(--font-weight-medium);background:0 0;border:none;align-self:flex-start;margin-top:4px;padding:0;display:block}.trend[data-v-39955d50]:hover{background:0 0;text-decoration:underline;transform:none}.trend svg[data-v-39955d50]{vertical-align:-2px;width:13px;height:13px;margin-right:4px}.trend .up[data-v-39955d50]{color:var(--color-bad)}.trend .down[data-v-39955d50]{color:var(--color-good)}.secondary-link[data-v-4811cb33]{background:var(--color-button-secondary);color:var(--color-text);border:var(--border-width) solid var(--color-border)}.secondary-link[data-v-4811cb33]:hover{background:var(--color-surface-alt)}@media (width<=767px){.view-actions[data-v-4811cb33]{width:100%}.view-actions[data-v-4811cb33]>*{flex:1;justify-content:center}}.intro[data-v-4811cb33]{color:var(--color-text-muted);line-height:var(--line-height-text);margin:0 0 12px}.hint[data-v-4811cb33]{background:var(--color-note-bg);border:var(--border-width) solid var(--color-note-border);border-radius:var(--radius-button);color:var(--color-note-text);margin:0 0 16px;padding:10px 14px;font-size:.92rem}.hint a[data-v-4811cb33]{color:var(--color-accent-strong);font-weight:var(--font-weight-medium)}.new[data-v-4811cb33]{border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-button);margin-bottom:16px;padding:14px}.search[data-v-4811cb33]{margin-bottom:6px}.filter[data-v-4811cb33]{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.filter button[data-v-4811cb33]{border-radius:var(--radius-pill);background:var(--color-surface);border:var(--border-width) solid var(--color-border);color:var(--color-text-muted);font-size:.9rem;font-weight:var(--font-weight-medium);padding:7px 14px}.filter button[data-v-4811cb33]:hover{color:var(--color-text);background:var(--color-surface);transform:none}.filter button.on[data-v-4811cb33]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.count[data-v-4811cb33]{color:var(--color-text-muted);margin:0 0 12px;font-size:.85rem}.list[data-v-4811cb33]{gap:10px;display:grid}@media (width>=900px){.list[data-v-4811cb33]{grid-template-columns:repeat(2,minmax(0,1fr))}}.empty[data-v-4811cb33]{color:var(--color-text-muted)}h2[data-v-ef15b560]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-ef15b560]{width:20px;height:20px;color:var(--color-accent)}.muted[data-v-ef15b560]{color:var(--color-text-muted)}.changes[data-v-ef15b560]{gap:8px;margin:0;padding:0;list-style:none;display:grid}.changes li[data-v-ef15b560]{border-bottom:var(--border-width) solid var(--color-divider);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.changes .name[data-v-ef15b560]{font-weight:var(--font-weight-medium)}.values[data-v-ef15b560]{text-align:right}.pct[data-v-ef15b560]{font-weight:var(--font-weight-strong);margin-left:8px;font-size:.9rem}.pct.up[data-v-ef15b560]{color:var(--color-bad)}.pct.down[data-v-ef15b560]{color:var(--color-good)}.pct.first[data-v-ef15b560]{color:var(--color-text-muted);font-weight:400}.preps[data-v-ef15b560]{margin-bottom:16px}.preps h3[data-v-ef15b560]{color:var(--color-text-muted);margin:0 0 6px;font-size:.95rem}.preps .name[data-v-ef15b560]{color:var(--color-text)}.via[data-v-ef15b560]{color:var(--color-accent-strong);font-size:.82rem;font-weight:var(--font-weight-medium);flex-basis:100%}.recipes[data-v-ef15b560]{gap:12px;display:grid}@media (width>=900px){.recipes[data-v-ef15b560]{grid-template-columns:repeat(2,minmax(0,1fr))}}.recipe[data-v-ef15b560]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px}.recipe.dropped[data-v-ef15b560]{border-color:var(--color-warn);background:color-mix(in srgb, var(--color-warn) 8%, var(--color-surface))}.recipe header[data-v-ef15b560]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.recipe-name[data-v-ef15b560]{font-weight:var(--font-weight-strong);color:var(--color-text);text-decoration:none}.recipe-name[data-v-ef15b560]:hover{color:var(--color-accent-strong);text-decoration:underline}.warning[data-v-ef15b560]{font-size:.8rem;font-weight:var(--font-weight-medium);color:var(--color-warn);align-items:center;gap:5px;display:inline-flex}.warning svg[data-v-ef15b560]{width:14px;height:14px}.rows[data-v-ef15b560]{gap:8px;display:grid}.rows>div[data-v-ef15b560]{justify-content:space-between;align-items:center;gap:12px;font-size:.92rem;display:flex}.label[data-v-ef15b560]{color:var(--color-text-muted)}.keep[data-v-ef15b560]{border-top:var(--border-width) solid var(--color-divider);padding-top:8px}.keep strong[data-v-ef15b560]{color:var(--color-accent-strong)}.keep-value[data-v-ef15b560]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 10px;display:inline-flex}.use[data-v-ef15b560]{border-radius:var(--radius-pill);padding:5px 12px;font-size:.85rem}.done[data-v-ef15b560]{color:var(--color-good);font-size:.85rem;font-weight:var(--font-weight-medium);align-items:center;gap:4px;display:inline-flex}.done svg[data-v-ef15b560]{width:14px;height:14px}.apply-all[data-v-ef15b560]{background:var(--color-info-bg);border:var(--border-width) solid var(--color-info-border);border-radius:var(--radius-button);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:14px;padding:12px 14px;display:flex}.apply-all p[data-v-ef15b560]{color:var(--color-info-text);margin:0;font-size:.92rem}.locked[data-v-ef15b560]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-accent-strong);font-size:.85rem;font-weight:var(--font-weight-medium);background:0 0;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.locked[data-v-ef15b560]:hover{background:var(--color-surface-alt);transform:none}.locked svg[data-v-ef15b560]{width:14px;height:14px}.back[data-v-37613f0d]{color:var(--color-text-muted);font-weight:var(--font-weight-medium);align-items:center;gap:6px;margin-bottom:10px;text-decoration:none;display:inline-flex}.back[data-v-37613f0d]:hover{color:var(--color-accent-strong)}.back svg[data-v-37613f0d]{width:18px;height:18px}.intro[data-v-37613f0d],.muted[data-v-37613f0d]{color:var(--color-text-muted);line-height:var(--line-height-text)}.intro[data-v-37613f0d]{margin:0 0 14px}.search[data-v-37613f0d]{margin-bottom:12px}.rows[data-v-37613f0d]{gap:8px;display:grid}@media (width>=900px){.rows[data-v-37613f0d]{grid-template-columns:repeat(2,minmax(0,1fr))}}.row[data-v-37613f0d]{background:var(--color-surface-alt);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.row.changed[data-v-37613f0d]{border-color:var(--color-accent);background:var(--color-surface)}.info[data-v-37613f0d]{flex-direction:column;gap:2px;min-width:0;display:flex}.name[data-v-37613f0d]{color:var(--color-text);font-weight:var(--font-weight-strong);overflow-wrap:anywhere;margin:0;font-size:1rem}.info small[data-v-37613f0d]{color:var(--color-text-muted);font-size:.82rem}.stale[data-v-37613f0d]{color:var(--color-warn);font-weight:var(--font-weight-medium)}.entry[data-v-37613f0d]{flex-shrink:0;align-items:center;gap:8px;display:flex}.entry input[data-v-37613f0d]{text-align:right;width:110px;padding:10px 12px}.pct[data-v-37613f0d]{font-size:.85rem;font-weight:var(--font-weight-strong)}.pct.up[data-v-37613f0d]{color:var(--color-bad)}.pct.down[data-v-37613f0d]{color:var(--color-good)}.button-row[data-v-37613f0d]{margin-top:4px}.save-bar[data-v-37613f0d]{z-index:5;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-float);justify-content:space-between;align-items:center;gap:12px;margin:18px -12px 0;padding:10px 12px;display:flex;position:sticky;bottom:12px}@media (width<=767px){.save-bar[data-v-37613f0d]{bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom) + 8px)}}.subtitle[data-v-5e1b910c]{color:var(--color-text-muted);margin:0}.picker[data-v-5e1b910c]{margin-top:18px;margin-bottom:12px}h3[data-v-5e1b910c]{margin:18px 0 0}.selections[data-v-5e1b910c]{flex-wrap:wrap;gap:14px;margin-top:18px;display:flex}.selection[data-v-5e1b910c]{background:var(--color-surface-soft);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);flex:320px;justify-content:space-between;align-items:center;gap:18px;min-width:260px;max-width:420px;padding:14px 16px;display:flex}.selection-info[data-v-5e1b910c]{flex-direction:column;gap:4px;min-width:0;display:flex}.selection-name[data-v-5e1b910c]{font-weight:var(--font-weight-strong);overflow-wrap:anywhere;line-height:1.35}.selection-qty[data-v-5e1b910c]{color:var(--color-text-muted);font-size:.92rem}.summary[data-v-5e1b910c]{grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0;display:grid}.summary-card[data-v-5e1b910c]{background:var(--color-surface-soft);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:18px}.summary-label[data-v-5e1b910c]{color:var(--color-text-muted);margin-bottom:8px;font-size:.9rem;display:block}.summary-card strong[data-v-5e1b910c]{font-size:1.6rem}.notes[data-v-5e1b910c]{margin-top:18px}.store[data-v-5e1b910c]{color:var(--color-text-muted)}tr.section th[data-v-5e1b910c]{text-align:left;color:var(--color-accent-strong);background:var(--color-surface);padding-top:16px;font-size:.9rem}@media (width<=600px){.selection[data-v-5e1b910c]{min-width:0;max-width:none}.summary[data-v-5e1b910c]{gap:8px;margin:20px 0}.summary-card[data-v-5e1b910c]{padding:12px 10px}.summary-label[data-v-5e1b910c]{margin-bottom:4px;font-size:.75rem}.summary-card strong[data-v-5e1b910c]{font-size:1.15rem}}h2[data-v-0f9856c1]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-0f9856c1]{width:20px;height:20px;color:var(--color-accent)}.text[data-v-0f9856c1]{color:var(--color-text-muted);line-height:var(--line-height-text)}.last[data-v-0f9856c1]{color:var(--color-text);font-size:.9rem;font-weight:var(--font-weight-medium);margin:-4px 0 16px}.button-row[data-v-0f9856c1]{margin-top:20px}.big[data-v-0f9856c1]{padding:18px 28px;font-size:1.05rem}h2[data-v-86d6e699]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-86d6e699]{width:20px;height:20px;color:var(--color-accent)}h3[data-v-86d6e699]{margin:18px 0 10px;font-size:1rem}p[data-v-86d6e699]{color:var(--color-text-muted);line-height:var(--line-height-text)}.strong[data-v-86d6e699]{color:var(--color-text);font-weight:var(--font-weight-medium)}.facts[data-v-86d6e699]{gap:6px;margin:0 0 8px;display:grid}.facts div[data-v-86d6e699]{flex-wrap:wrap;gap:4px 10px;display:flex}.facts dt[data-v-86d6e699]{min-width:90px;color:var(--color-text-muted)}.facts dd[data-v-86d6e699]{color:var(--color-text);overflow-wrap:anywhere;margin:0}.devices[data-v-86d6e699]{gap:10px;margin:0 0 16px;padding:0;list-style:none;display:grid}.devices li[data-v-86d6e699]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-button);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.device[data-v-86d6e699]{color:var(--color-text-muted);gap:2px;font-size:.9rem;display:grid}.device strong[data-v-86d6e699]{color:var(--color-text);font-weight:var(--font-weight-medium)}.tag-current[data-v-86d6e699]{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-accent) 12%, var(--color-surface));color:var(--color-accent-strong);vertical-align:1px;margin-left:8px;padding:1px 8px;font-size:.75rem;display:inline-block}.devices button[data-v-86d6e699]{padding:8px 14px}h2[data-v-503c5fb0]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-503c5fb0]{width:20px;height:20px;color:var(--color-accent);flex-shrink:0}.text[data-v-503c5fb0]{color:var(--color-text-muted);line-height:var(--line-height-text);margin:0 0 14px}.choices[data-v-503c5fb0]{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=760px){.choices[data-v-503c5fb0]{grid-template-columns:repeat(2,minmax(0,1fr))}}h2[data-v-71397181]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-71397181]{width:20px;height:20px;color:var(--color-accent)}p[data-v-71397181]{color:var(--color-text-muted);line-height:var(--line-height-text)}label[data-v-71397181]{font-weight:var(--font-weight-strong);margin-bottom:6px;display:block}.rate-input[data-v-71397181]{gap:8px;max-width:420px;display:flex}.rate-input input[data-v-71397181]{flex:1;min-width:0}h2[data-v-521df61c]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-521df61c]{width:20px;height:20px;color:var(--color-accent)}p[data-v-521df61c]{color:var(--color-text-muted);line-height:var(--line-height-text)}label[data-v-521df61c]{font-weight:var(--font-weight-strong);margin-bottom:6px;display:block}.row[data-v-521df61c]{gap:8px;max-width:420px;display:flex}.pct-input[data-v-521df61c]{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.pct-input input[data-v-521df61c]{flex:1;min-width:0}.hint[data-v-521df61c]{margin:8px 0 0;font-size:.85rem}h2[data-v-92fb391d]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-92fb391d]{width:20px;height:20px;color:var(--color-accent)}p[data-v-92fb391d]{color:var(--color-text-muted);line-height:var(--line-height-text)}.choices[data-v-92fb391d]{flex-wrap:wrap;gap:10px;display:flex}.choices button[data-v-92fb391d]{min-width:140px}.links[data-v-92fb391d]{flex-wrap:wrap;gap:8px;margin:0;display:flex}.social[data-v-92fb391d]{flex-wrap:wrap;gap:10px;display:flex}.social a[data-v-92fb391d]{border:var(--border-width) solid var(--color-border);min-height:44px;color:var(--color-text);font-weight:var(--font-weight-medium);border-radius:999px;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;display:inline-flex}.social a[data-v-92fb391d]:hover{border-color:var(--color-accent);color:var(--color-accent-strong)}.social svg[data-v-92fb391d]{width:18px;height:18px}.links a[data-v-92fb391d]{color:var(--color-accent-strong);font-weight:var(--font-weight-medium)}h2[data-v-9ff656aa]{align-items:center;gap:10px;font-size:1.15rem;display:flex}h2 svg[data-v-9ff656aa]{width:20px;height:20px;color:var(--color-accent)}p[data-v-9ff656aa]{color:var(--color-text-muted);line-height:var(--line-height-text)}:root{--font-body:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-strong:700;--font-weight-medium:600;--line-height-text:1.6;--color-accent:#b35d4f;--color-accent-strong:#8f3f35;--color-on-accent:#fff;--color-page-top:#fbf7f1;--color-page-bottom:#f1e9df;--color-surface:#fff;--color-surface-alt:#f1ece4;--color-surface-soft:#f8fafc;--color-button-secondary:#fcfcfc;--color-text:#2f2b27;--color-text-muted:#70675f;--color-border:#ded3c5;--color-divider:#22222217;--color-good:#2f7d43;--color-good-text:#5f8d46;--color-warn:#b1812c;--color-warn-text:#d4a017;--color-bad:#b02a2a;--color-bad-text:#c94b4b;--color-note-bg:#fff8e5;--color-note-border:#f1d1a6;--color-note-text:#5f4723;--color-note-icon:#8f6021;--color-info-bg:#eef6ff;--color-info-border:#b6d4f7;--color-info-text:#1a4a7a;--border-width:1px;--radius-sm:10px;--radius-md:12px;--radius-button:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--shadow-panel:0 18px 45px #2d251d14;--shadow-card:0 6px 18px #2d251d12;--shadow-nav:0 20px 45px #2d251d14;--shadow-float:0 16px 40px #00000024;--shadow-dialog:0 20px 60px #00000026;--shadow-menu:0 8px 20px #2d251d1f;--content-width:1200px;--nav-height:64px;--tabbar-height:62px;--page-gutter:20px}html{scroll-behavior:smooth}*{box-sizing:border-box}body{padding-top:var(--nav-height);font-family:var(--font-body);background:linear-gradient(180deg, var(--color-page-top) 0%, var(--color-page-bottom) 100%);color:var(--color-text);min-height:100vh;margin:0;overflow-x:hidden}main{max-width:var(--content-width);padding:24px var(--page-gutter) 40px;margin:0 auto}@media (width<=767px){body{padding-bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom))}:root{--page-gutter:16px}}.view-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:20px;display:flex}.view-head h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,4vw,2rem)}.view-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}section{scroll-margin-top:calc(var(--nav-height) + 12px)}.panel{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-panel);margin-bottom:32px;padding:24px}.panel h2{margin-top:0;font-size:1.3rem}.split{align-items:start;gap:20px;display:grid}.two-up{grid-template-columns:1fr 1fr}.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=860px){.two-up{grid-template-columns:1fr}}@media (width<=639px){.three-up{grid-template-columns:1fr}}label{color:var(--color-text-muted);margin-bottom:8px;font-size:.92rem;display:block}input,select,textarea{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);width:100%;font:inherit;color:var(--color-text);background:var(--color-surface);outline:none;padding:12px 14px;font-size:1rem}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--color-accent)}button{font:inherit;background:var(--color-accent);color:var(--color-on-accent);border:var(--border-width) solid transparent;border-radius:var(--radius-button);cursor:pointer;padding:12px 16px;font-size:1rem;transition:transform .2s,background .2s,border-color .2s}button:hover{background:var(--color-accent-strong);transform:translateY(-1px)}button:disabled,button:disabled:hover{opacity:.6;cursor:not-allowed;transform:none}button.secondary{background:var(--color-button-secondary);color:var(--color-text);border-color:var(--color-border)}button.secondary:hover{background:var(--color-surface-alt)}.button-link{border-radius:var(--radius-button);background:var(--color-accent);color:var(--color-on-accent);align-items:center;gap:8px;padding:12px 16px;font-size:1rem;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button-link:hover{background:var(--color-accent-strong);transform:translateY(-1px)}.button-link svg{width:18px;height:18px}.icon-btn{border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:8px;padding:12px 14px;line-height:1;display:inline-flex}.icon-btn svg{flex-shrink:0;width:18px;height:18px}.icon-btn.small{width:42px;height:42px;padding:0}.icon-btn.danger{background:color-mix(in srgb, var(--color-bad) 12%, transparent);color:var(--color-bad);border-color:color-mix(in srgb, var(--color-bad) 20%, transparent)}.icon-btn.danger:hover{background:color-mix(in srgb, var(--color-bad) 24%, transparent)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--color-accent) 35%, transparent);outline-offset:2px}.button-row{flex-wrap:wrap;gap:12px;display:flex}@media (width<=768px){.button-row{flex-wrap:nowrap}.button-row>button{white-space:normal;flex:50%;min-width:0;line-height:1.3}}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%;margin-top:14px}th,td{text-align:left;border-bottom:var(--border-width) solid var(--color-divider);padding:14px 12px}th{color:var(--color-text-muted);font-size:.95rem}td{font-size:.96rem}table.striped tbody tr:nth-child(2n){background:color-mix(in srgb, var(--color-surface-alt) 60%, transparent)}table.striped tbody tr:hover{background:color-mix(in srgb, var(--color-accent) 6%, transparent)}.tag{border-radius:var(--radius-pill);font-size:.85rem;font-weight:var(--font-weight-medium);color:var(--color-on-accent);justify-content:center;align-items:center;padding:6px 10px;display:inline-flex}.tag.good{background:var(--color-good)}.tag.warn{background:var(--color-warn)}.tag.bad{background:var(--color-bad)}.empty-state{border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-xl);background:color-mix(in srgb, var(--color-surface) 35%, transparent);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;margin-top:8px;padding:40px 24px;display:flex}.empty-state>svg{width:48px;height:48px;color:var(--color-text-muted);opacity:.75}.empty-state h4{font-size:1.1rem;font-weight:var(--font-weight-strong);margin:0}.empty-state p{max-width:420px;color:var(--color-text-muted);margin:0;font-size:.95rem;line-height:1.5}.form-error{background:color-mix(in srgb, var(--color-bad) 7%, transparent);border:var(--border-width) solid color-mix(in srgb, var(--color-bad) 25%, transparent);border-radius:var(--radius-button);color:var(--color-bad);font-size:.9rem;font-weight:var(--font-weight-medium);align-items:flex-start;gap:10px;padding:10px 14px;line-height:1.4;display:flex}.form-error svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.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}
