.toast-enter-active[data-v-6f320f5e],.toast-leave-active[data-v-6f320f5e]{transition:opacity .22s var(--ease-out, cubic-bezier(.22, 1, .36, 1)),transform .22s var(--ease-out, cubic-bezier(.22, 1, .36, 1))}.toast-enter-from[data-v-6f320f5e],.toast-leave-to[data-v-6f320f5e]{opacity:0;transform:translateY(-8px) scale(.98)}.toast-move[data-v-6f320f5e]{transition:transform .22s var(--ease-out, cubic-bezier(.22, 1, .36, 1))}.ui-btn[data-v-326b23e7]{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-control);font-family:var(--font-display);font-weight:650;letter-spacing:-.01em;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s var(--ease-out, cubic-bezier(.22, 1, .36, 1))}.ui-btn[data-v-326b23e7]:focus-visible{outline:2px solid color-mix(in srgb,var(--info) 45%,transparent);outline-offset:2px}.ui-btn[data-v-326b23e7]:disabled{cursor:not-allowed;opacity:.5}.ui-btn.is-block[data-v-326b23e7]{width:100%}.ui-btn--sm[data-v-326b23e7]{min-height:34px;padding:0 14px;font-size:12.5px}.ui-btn--md[data-v-326b23e7]{min-height:40px;padding:0 18px;font-size:13.5px}.ui-btn--primary[data-v-326b23e7]{color:var(--on-accent);background:var(--accent);box-shadow:none}.ui-btn--primary[data-v-326b23e7]:hover:not(:disabled){background:var(--accent-strong);transform:translateY(-1px);box-shadow:none}.ui-btn--primary[data-v-326b23e7]:active:not(:disabled){transform:translateY(0);box-shadow:0 1px color-mix(in srgb,var(--surface) 8%,transparent) inset}.ui-btn--secondary[data-v-326b23e7]{color:var(--ink);background:var(--surface);border-color:var(--hairline-strong);box-shadow:none}.ui-btn--secondary[data-v-326b23e7]:hover:not(:disabled){border-color:var(--info-border);background:var(--info-weak);color:var(--info);transform:translateY(-1px)}.ui-btn--ghost[data-v-326b23e7]{color:var(--ink-2);background:transparent;border-color:transparent;font-weight:600;font-family:var(--font-body)}.ui-btn--ghost[data-v-326b23e7]:hover:not(:disabled){color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.ui-btn--danger[data-v-326b23e7]{color:var(--on-accent);background:var(--critical-text);box-shadow:none}.ui-btn--danger[data-v-326b23e7]:hover:not(:disabled){background:var(--critical-strong);transform:translateY(-1px)}.ui-btn-icon[data-v-326b23e7],.ui-btn-spinner[data-v-326b23e7]{display:inline-flex;width:14px;height:14px;align-items:center;justify-content:center;flex-shrink:0}.ui-btn-spinner[data-v-326b23e7]{border:1.5px solid currentColor;border-right-color:transparent;border-radius:50%;opacity:.85;animation:ui-btn-spin-326b23e7 .7s linear infinite}.ui-btn-label[data-v-326b23e7]{display:inline-flex;align-items:center}@keyframes ui-btn-spin-326b23e7{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ui-btn[data-v-326b23e7],.ui-btn-spinner[data-v-326b23e7]{transition:none;animation:none}.ui-btn--primary[data-v-326b23e7]:hover:not(:disabled),.ui-btn--secondary[data-v-326b23e7]:hover:not(:disabled),.ui-btn--danger[data-v-326b23e7]:hover:not(:disabled){transform:none}}.ui-overlay[data-v-2e2c4601]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6100;display:grid;place-items:center;padding:20px;background:var(--overlay)}.ui-modal[data-v-2e2c4601]{width:min(420px,100%);padding:22px 22px 18px;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--shadow-pop)}.ui-modal h3[data-v-2e2c4601]{margin:0;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:-.03em}.ui-modal p[data-v-2e2c4601]{margin:10px 0 0;color:var(--ink-2);font-size:13px;line-height:1.55}.ui-modal-input[data-v-2e2c4601]{width:100%;margin-top:14px;padding:10px 12px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.ui-modal-input[data-v-2e2c4601]:focus{outline:2px solid color-mix(in srgb,var(--accent) 28%,transparent);outline-offset:1px;border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.ui-modal-actions[data-v-2e2c4601]{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.ui-alert[data-v-d7b33098]{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface)}.ui-alert-mark[data-v-d7b33098]{display:inline-flex;width:18px;height:18px;flex-shrink:0;align-items:center;justify-content:center;margin-top:1px;border-radius:50%;color:var(--on-accent);font-size:11px;font-weight:700}.ui-alert-body[data-v-d7b33098]{min-width:0;flex:1}.ui-alert-body strong[data-v-d7b33098]{display:block;color:var(--ink);font-size:13px;font-weight:650}.ui-alert-body p[data-v-d7b33098]{margin:4px 0 0;color:var(--ink-2);font-size:12px;line-height:1.55}.ui-alert-body strong+p[data-v-d7b33098]{margin-top:3px}.ui-alert-close[data-v-d7b33098]{border:0;margin:-2px -4px 0 0;padding:2px 6px;color:var(--ink-3);background:transparent;font-size:16px;line-height:1;cursor:pointer;border-radius:6px}.ui-alert-close[data-v-d7b33098]:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.ui-alert--error[data-v-d7b33098]{border-color:color-mix(in srgb,var(--critical) 18%,transparent);background:var(--critical-weak)}.ui-alert--error .ui-alert-mark[data-v-d7b33098]{background:var(--critical-text)}.ui-alert--warning[data-v-d7b33098]{border-color:color-mix(in srgb,var(--warning) 20%,transparent);background:var(--warning-weak)}.ui-alert--warning .ui-alert-mark[data-v-d7b33098]{background:var(--warning-text)}.ui-alert--success[data-v-d7b33098]{border-color:color-mix(in srgb,var(--good) 18%,transparent);background:var(--good-weak)}.ui-alert--success .ui-alert-mark[data-v-d7b33098]{background:var(--good-text)}.ui-alert--info[data-v-d7b33098]{border-color:color-mix(in srgb,var(--accent) 16%,transparent);background:var(--accent-weak)}.ui-alert--info .ui-alert-mark[data-v-d7b33098]{background:var(--accent)}.ui-field[data-v-35f410e9]{position:relative;display:inline-flex;width:100%;align-items:center}.ui-control[data-v-35f410e9]{width:100%;min-height:40px;padding:9px 14px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--ink);font:inherit;font-size:13.5px;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.ui-control[data-v-35f410e9]:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.ui-control[data-v-35f410e9]:disabled{color:var(--ink-3);background:var(--surface-2);cursor:not-allowed}.is-textarea .ui-control[data-v-35f410e9]{min-height:84px;resize:vertical}.ui-clear[data-v-35f410e9]{position:absolute;right:8px;border:0;padding:0 4px;color:var(--ink-3);background:transparent;font-size:16px;cursor:pointer}.ui-number[data-v-3f547ddf]{display:inline-flex;align-items:stretch;width:148px;max-width:100%;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);overflow:hidden}.ui-number.is-disabled[data-v-3f547ddf]{opacity:.55}.ui-number-btn[data-v-3f547ddf]{width:32px;border:0;background:var(--surface-2);color:var(--ink-2);font-size:14px;cursor:pointer}.ui-number-btn[data-v-3f547ddf]:hover:not(:disabled){background:var(--accent-weak);color:var(--accent)}.ui-number-btn[data-v-3f547ddf]:disabled{cursor:not-allowed;opacity:.4}.ui-number-input[data-v-3f547ddf]{width:100%;min-width:0;border:0;padding:8px 4px;text-align:center;font:inherit;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink);background:transparent}.ui-number-input[data-v-3f547ddf]:focus{outline:none}.ui-select[data-v-fa107c19]{position:relative;width:100%}.ui-select-trigger[data-v-fa107c19]{display:flex;width:100%;min-height:40px;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--ink);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.ui-select.open .ui-select-trigger[data-v-fa107c19],.ui-select-trigger[data-v-fa107c19]:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.placeholder[data-v-fa107c19]{color:var(--ink-3)}.value[data-v-fa107c19]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.caret[data-v-fa107c19]{color:var(--ink-3);font-size:11px}.ui-select-clear[data-v-fa107c19]{border:0;background:transparent;color:var(--ink-3);font-size:14px;line-height:1;cursor:pointer;padding:0 2px}.ui-select-clear[data-v-fa107c19]:hover{color:var(--ink)}.ui-select-panel[data-v-fa107c19]{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow:auto;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-pop)}.ui-select-search[data-v-fa107c19]{width:100%;border:0;border-bottom:1px solid var(--hairline);padding:10px 12px;font:inherit;font-size:13px}.ui-select-search[data-v-fa107c19]:focus{outline:none}.ui-select-option[data-v-fa107c19]{display:flex;width:100%;align-items:center;gap:8px;border:0;padding:9px 12px;background:transparent;color:var(--ink);font:inherit;font-size:13px;text-align:left;cursor:pointer}.ui-select-option[data-v-fa107c19]:hover{background:var(--accent-weak)}.ui-select-option.active[data-v-fa107c19]{color:var(--accent);font-weight:600}.check[data-v-fa107c19]{width:12px;color:var(--accent)}.ui-select-empty[data-v-fa107c19]{padding:14px 12px;color:var(--ink-3);font-size:12px;text-align:center}.disabled[data-v-fa107c19]{opacity:.55;pointer-events:none}.ui-check[data-v-10d773da]{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;color:var(--ink-2)}.ui-check input[data-v-10d773da]{position:absolute;opacity:0;pointer-events:none}.box[data-v-10d773da]{width:16px;height:16px;border:1.5px solid var(--hairline-strong);border-radius:4px;background:var(--surface);position:relative;flex-shrink:0}.ui-check input:checked+.box[data-v-10d773da]{border-color:var(--accent);background:var(--accent)}.ui-check input:checked+.box[data-v-10d773da]:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid var(--surface);border-width:0 2px 2px 0;transform:rotate(45deg)}.ui-check input:focus-visible+.box[data-v-10d773da]{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.disabled[data-v-10d773da]{opacity:.5;cursor:not-allowed}.ui-switch[data-v-cdf1643a]{position:relative;width:40px;height:22px;border:0;border-radius:999px;background:var(--disabled-bg);cursor:pointer;transition:background .18s ease;padding:0;flex-shrink:0}.ui-switch[aria-checked=true][data-v-cdf1643a]{background:var(--accent)}.ui-switch i[data-v-cdf1643a]{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px color-mix(in srgb,var(--ink) 20%,transparent);transition:transform .18s var(--ease-out, cubic-bezier(.22, 1, .36, 1))}.ui-switch[aria-checked=true] i[data-v-cdf1643a]{transform:translate(18px)}.ui-switch[data-v-cdf1643a]:disabled{opacity:.5;cursor:not-allowed}.ui-switch[data-v-cdf1643a]:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:2px}.ui-radio-group[data-v-e667907a]{display:inline-flex;flex-wrap:wrap;gap:8px}.ui-radio[data-v-e667907a]{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--ink-2)}.ui-radio input[data-v-e667907a]{accent-color:var(--accent)}.ui-radio.button[data-v-e667907a]{padding:7px 12px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface)}.ui-radio.button input[data-v-e667907a]{display:none}.ui-radio.button.on[data-v-e667907a]{border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-weak);color:var(--accent-strong);font-weight:600}.ui-form-item[data-v-9d03b1a7]{display:grid;grid-template-columns:var(--form-label-w) minmax(0,1fr);gap:10px 12px;align-items:start;margin-bottom:14px}.ui-form-item.is-top[data-v-9d03b1a7]{grid-template-columns:1fr;gap:6px}.ui-form-label[data-v-9d03b1a7]{padding-top:8px;color:var(--ink-2);font-size:13px;line-height:1.4;text-align:right}.is-top .ui-form-label[data-v-9d03b1a7]{padding-top:0;text-align:left;font-weight:600;color:var(--ink)}.ui-form-control[data-v-9d03b1a7]{min-width:0}.ui-dialog-overlay[data-v-05883fc3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;display:grid;place-items:center;padding:24px;background:var(--overlay)}.ui-dialog[data-v-05883fc3]{width:min(var(--dialog-w, 520px),100%);max-height:min(88vh,900px);display:flex;flex-direction:column;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--shadow-pop);overflow:hidden}.ui-dialog-head[data-v-05883fc3]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--hairline)}.ui-dialog-head h3[data-v-05883fc3]{margin:0;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.02em}.ui-dialog-x[data-v-05883fc3]{border:0;background:transparent;color:var(--ink-3);font-size:20px;line-height:1;cursor:pointer;border-radius:6px;padding:2px 6px}.ui-dialog-x[data-v-05883fc3]:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.ui-dialog-body[data-v-05883fc3]{padding:16px 18px;overflow:auto}.ui-dialog-foot[data-v-05883fc3]{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px;border-top:1px solid var(--hairline)}.ui-fade-enter-active[data-v-05883fc3],.ui-fade-leave-active[data-v-05883fc3]{transition:opacity .18s ease}.ui-fade-enter-from[data-v-05883fc3],.ui-fade-leave-to[data-v-05883fc3]{opacity:0}.ui-drawer-overlay[data-v-36731544]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;background:var(--overlay)}.ui-drawer[data-v-36731544]{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(var(--drawer-w, 560px),100%);max-width:100vw;background:var(--surface);border-left:1px solid var(--hairline);box-shadow:-12px 0 32px color-mix(in srgb,var(--ink) 8%,transparent)}.ui-drawer-head[data-v-36731544]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--hairline)}.ui-drawer-title[data-v-36731544]{min-width:0;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:-.02em;line-height:1.35}.ui-drawer-x[data-v-36731544]{border:0;background:transparent;color:var(--ink-3);font-size:22px;line-height:1;cursor:pointer;border-radius:6px;padding:0 4px}.ui-drawer-x[data-v-36731544]:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 5%,transparent)}.ui-drawer-body[data-v-36731544]{flex:1;overflow:auto;padding:18px 20px}.ui-drawer-foot[data-v-36731544]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--hairline)}.ui-fade-enter-active[data-v-36731544],.ui-fade-leave-active[data-v-36731544]{transition:opacity .18s ease}.ui-fade-enter-from[data-v-36731544],.ui-fade-leave-to[data-v-36731544]{opacity:0}.ui-table-wrap[data-v-0e4e64d0]{position:relative;overflow:auto;border:1px solid var(--hairline);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-card)}.ui-table[data-v-0e4e64d0]{width:100%;border-collapse:collapse;font-size:13px}.ui-table th[data-v-0e4e64d0],.ui-table td[data-v-0e4e64d0]{padding:14px 16px;border-bottom:1px solid var(--hairline);text-align:left;vertical-align:middle}.ui-table th[data-v-0e4e64d0]{color:var(--ink-3);font-family:var(--font-display);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;background:var(--surface-2);white-space:nowrap}.ui-table tbody tr:hover td[data-v-0e4e64d0]{background:color-mix(in srgb,var(--accent) 3.5%,transparent)}.ui-table tbody tr:last-child td[data-v-0e4e64d0]{border-bottom:0}.ui-table tbody tr.clickable[data-v-0e4e64d0]{cursor:pointer}.align-center[data-v-0e4e64d0]{text-align:center}.align-right[data-v-0e4e64d0]{text-align:right}.col-check[data-v-0e4e64d0]{width:42px}.empty-cell[data-v-0e4e64d0]{padding:40px 16px!important;color:var(--ink-3);text-align:center}.ui-table-loading[data-v-0e4e64d0]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--ink-2);font-size:13px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ui-pagination[data-v-d9b1eb3d]{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:14px}.page-btn[data-v-d9b1eb3d]{min-height:32px;padding:0 12px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);font:inherit;font-size:12px;cursor:pointer}.page-btn[data-v-d9b1eb3d]:disabled{opacity:.45;cursor:not-allowed}.page-info[data-v-d9b1eb3d]{color:var(--ink-3);font-size:12px;font-variant-numeric:tabular-nums}.page-size[data-v-d9b1eb3d]{min-height:32px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);padding:0 8px;font:inherit;font-size:12px;background:var(--surface)}.ui-empty[data-v-ea0ba8a8]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:36px 16px;text-align:center}.ui-empty-mark[data-v-ea0ba8a8]{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--info-weak);border:1px solid var(--info-border);color:var(--info);font-family:var(--font-display);font-weight:700}.ui-empty-title[data-v-ea0ba8a8]{color:var(--ink-3);font-size:13px}.ui-empty-actions[data-v-ea0ba8a8]{margin-top:8px}.ui-tag[data-v-44d6e974]{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.4;background:var(--surface-2);color:var(--ink-2)}.ui-tag.accent[data-v-44d6e974]{background:var(--info-weak);color:var(--info)}.ui-tag.good[data-v-44d6e974]{background:var(--good-weak);color:var(--good-text)}.ui-tag.warning[data-v-44d6e974]{background:var(--warning-weak);color:var(--warning-text)}.ui-tag.danger[data-v-44d6e974]{background:var(--critical-weak);color:var(--critical-text)}.ui-progress[data-v-5fa25ca7]{display:inline-flex;align-items:center;gap:8px;width:100%}.bar[data-v-5fa25ca7]{flex:1;height:8px;overflow:hidden;border-radius:999px;background:var(--surface-3)}.bar i[data-v-5fa25ca7]{display:block;height:100%;border-radius:inherit;background:var(--accent)}.bar i.success[data-v-5fa25ca7]{background:var(--good)}.bar i.exception[data-v-5fa25ca7]{background:var(--critical)}.bar i.warning[data-v-5fa25ca7]{background:var(--warning)}.label[data-v-5fa25ca7]{color:var(--ink-3);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.ui-date[data-v-04a70208]{width:100%;min-height:36px;padding:7px 12px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:13px}.ui-date[data-v-04a70208]:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.ui-collapse-item[data-v-0da17503]{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:8px;overflow:hidden}.ui-collapse-item summary[data-v-0da17503]{cursor:pointer;padding:12px 14px;font-size:13px;font-weight:600;color:var(--ink);list-style:none}.ui-collapse-item summary[data-v-0da17503]::-webkit-details-marker{display:none}.ui-collapse-body[data-v-0da17503]{padding:0 14px 14px;color:var(--ink-2);font-size:13px;line-height:1.6}.ui-desc[data-v-e8990d4e]{border-radius:var(--radius-sm);overflow:hidden}.ui-desc.border[data-v-e8990d4e]{border:1px solid var(--hairline)}.ui-desc-row[data-v-e8990d4e]{display:grid;grid-template-columns:140px minmax(0,1fr);border-bottom:1px solid var(--hairline)}.ui-desc-row[data-v-e8990d4e]:last-child{border-bottom:0}.ui-desc-label[data-v-e8990d4e]{padding:10px 12px;background:var(--surface-2);color:var(--ink-3);font-size:12px}.ui-desc-value[data-v-e8990d4e]{padding:10px 12px;color:var(--ink);font-size:13px}@media (max-width: 640px){.ui-desc-row[data-v-e8990d4e]{grid-template-columns:1fr}}.ui-cascader[data-v-95152ab1]{position:relative;width:100%}.ui-cascader-trigger[data-v-95152ab1]{display:flex;width:100%;min-height:36px;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:13px;cursor:pointer}.placeholder[data-v-95152ab1]{color:var(--ink-3)}.caret[data-v-95152ab1]{color:var(--ink-3);font-size:11px}.ui-cascader-panel[data-v-95152ab1]{position:absolute;z-index:40;top:calc(100% + 4px);left:0;display:grid;grid-template-columns:1fr 1fr;min-width:280px;max-height:260px;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-pop)}.ui-cascader-panel.has-district[data-v-95152ab1]{grid-template-columns:1fr 1fr 1fr;min-width:420px}.col[data-v-95152ab1]{overflow:auto;max-height:260px;border-right:1px solid var(--hairline)}.col[data-v-95152ab1]:last-child{border-right:0}.col button[data-v-95152ab1]{display:block;width:100%;border:0;padding:8px 12px;background:transparent;text-align:left;font:inherit;font-size:12px;cursor:pointer}.col button[data-v-95152ab1]:hover,.col button.on[data-v-95152ab1]{background:var(--accent-weak);color:var(--accent-strong)}.ui-icon[data-v-dd5c04f4]{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;line-height:0}.ui-tip[data-v-3f9681d3]{position:relative;display:inline-flex}.ui-tip-bubble[data-v-3f9681d3]{position:absolute;z-index:30;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);max-width:260px;padding:8px 10px;border-radius:8px;background:var(--tooltip-bg);color:var(--on-accent);font-size:12px;line-height:1.45;white-space:normal;pointer-events:none}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--font-weight-bold:700;--radius-sm:.25rem;--radius-md:var(--radius);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-body);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-x-0{inset-inline:0}.top-4{top:calc(var(--spacing) * 4)}.z-\[6000\]{z-index:6000}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.h-4{height:calc(var(--spacing) * 4)}.w-4{width:calc(var(--spacing) * 4)}.max-w-\[min\(420px\,92vw\)\]{max-width:min(420px,92vw)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.rounded-\[12px\]{border-radius:12px}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius)}.border{border-style:var(--tw-border-style);border-width:1px}.border-accent\/20{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/20{border-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.border-critical\/20{border-color:var(--critical)}@supports (color:color-mix(in lab,red,red)){.border-critical\/20{border-color:color-mix(in oklab,var(--critical) 20%,transparent)}}.border-good\/20{border-color:var(--good)}@supports (color:color-mix(in lab,red,red)){.border-good\/20{border-color:color-mix(in oklab,var(--good) 20%,transparent)}}.border-hairline{border-color:var(--hairline)}.border-warning\/25{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/25{border-color:color-mix(in oklab,var(--warning) 25%,transparent)}}.bg-accent{background-color:var(--accent)}.bg-accent-weak\/95{background-color:var(--accent-weak)}@supports (color:color-mix(in lab,red,red)){.bg-accent-weak\/95{background-color:color-mix(in oklab,var(--accent-weak) 95%,transparent)}}.bg-critical-text{background-color:var(--critical-text)}.bg-critical-weak\/95{background-color:var(--critical-weak)}@supports (color:color-mix(in lab,red,red)){.bg-critical-weak\/95{background-color:color-mix(in oklab,var(--critical-weak) 95%,transparent)}}.bg-good-text{background-color:var(--good-text)}.bg-good-weak\/95{background-color:var(--good-weak)}@supports (color:color-mix(in lab,red,red)){.bg-good-weak\/95{background-color:color-mix(in oklab,var(--good-weak) 95%,transparent)}}.bg-ink-3{background-color:var(--ink-3)}.bg-surface\/95{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/95{background-color:color-mix(in oklab,var(--surface) 95%,transparent)}}.bg-warning-text{background-color:var(--warning-text)}.bg-warning-weak\/95{background-color:var(--warning-weak)}@supports (color:color-mix(in lab,red,red)){.bg-warning-weak\/95{background-color:color-mix(in oklab,var(--warning-weak) 95%,transparent)}}.px-1{padding-inline:var(--spacing)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.text-\[10px\]{font-size:10px}.text-\[13px\]{font-size:13px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-ink{color:var(--ink)}.text-ink-3{color:var(--ink-3)}.text-white{color:var(--color-white)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-pop\)\]{--tw-shadow:var(--shadow-pop);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.hover\:bg-surface-3:hover{background-color:var(--surface-3)}.hover\:text-ink:hover{color:var(--ink)}}}:root{color-scheme:light;--bg-page:#f5f8fd;--surface:#fff;--surface-2:#f6f9ff;--surface-3:#eaf1fc;--ink:#111827;--ink-2:#526078;--ink-3:#617188;--hairline:#e1e9f4;--hairline-strong:#cbd8ea;--accent:#0664f4;--accent-strong:#0054d6;--accent-weak:#eff5ff;--info:var(--accent);--info-strong:var(--accent-strong);--info-weak:var(--accent-weak);--info-border:#c8dcff;--good:#00c896;--good-text:#007f65;--good-weak:#edf9f6;--good-border:#bcece0;--warning:#f5a000;--warning-text:#9c5c00;--warning-weak:#fff9ea;--warning-border:#f3dfaf;--opportunity:var(--warning);--opportunity-strong:var(--warning-text);--opportunity-weak:var(--warning-weak);--critical:#ef455c;--critical-text:#c52b42;--critical-strong:#b62238;--critical-weak:#fff1f3;--critical-border:#f6cbd2;--on-accent:#fff;--focus-ring:#88b7ff;--overlay:#1627445c;--tooltip-bg:#20334f;--disabled-bg:#e7edf6;--disabled-ink:#7b899d;--side-bg:#f0f5fb;--side-ink:var(--ink-2);--side-ink-muted:var(--ink-3);--side-active:var(--info-weak);--side-rail:var(--accent);--side-border:var(--hairline);--font-display:"SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-body:"PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--radius:12px;--radius-md:var(--radius);--radius-sm:10px;--radius-control:10px;--shadow-card:0 3px 14px #26457009;--shadow-pop:0 18px 48px #26457021;--ease-out:cubic-bezier(.22, 1, .36, 1);--space-section:24px;--nav-active:#e6eeff;--nav-ink:#4f6287;--photo-wash:#edf2f9;--price:#ff2020;--positive:#00b65b;--positive-wash:#e0fbef;--hot-wash:#fff0ec;--hot-ink:#ed4135;--orange:#ff850d;--orange-wash:#fff3df;--violet:#8271ff;--hero-button:#3b4556;--window-red:#ff6059;--window-yellow:#ffbc28;--window-green:#28c840;--line:var(--hairline);--muted:var(--ink-3);--paper:var(--surface);--wash:var(--surface-2)}*{box-sizing:border-box}html,body{height:100%;margin:0}body{color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background:var(--bg-page);font-size:15px;line-height:1.55}body:before,body:after{display:none}#app{z-index:1;min-height:100vh;position:relative}.num{font-variant-numeric:tabular-nums;font-family:var(--font-display)}.muted{color:var(--ink-3)}.good-text{color:var(--good-text)}.bad-text,.risk-text{color:var(--critical-text)}.warn-text{color:var(--warning-text)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}::selection{background:var(--info-border);color:var(--ink)}a.deep-link,a.ext-link,.tab-link{color:var(--info);text-decoration:none;transition:color .18s}a.deep-link:hover,a.ext-link:hover,.tab-link:hover{color:var(--info-strong)}.page-head{background-image:linear-gradient(90deg,var(--hairline-strong),var(--hairline) 58%,transparent);animation:rise-in .5s var(--ease-out) both;background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;padding-bottom:14px;display:flex}.page-head h2{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);margin:0;font-size:clamp(27px,2.6vw,34px);font-weight:720;line-height:1.08}.page-desc,.page-head .sub,.page-head .subtitle,.page-head .greet,.page-head .sub-hint{color:var(--ink-3);max-width:40rem;margin-top:8px;font-size:14px;line-height:1.55}.page-head .actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding-bottom:4px;display:flex}.head-fact{border:1px solid var(--hairline);background:var(--surface-2);color:var(--ink-3);white-space:nowrap;border-radius:6px;padding:5px 8px;font-size:11px}@media (max-width:700px){.page-head{flex-direction:column;align-items:stretch;margin-bottom:16px;padding-bottom:12px}.page-head h2{font-size:25px}.page-head .actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding-bottom:0;display:grid}.page-head .actions .ui-btn{width:100%}}.eyebrow{display:none}.section-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.03em;margin:0;font-size:18px;font-weight:650}.section-note{color:var(--ink-3);margin-top:4px;font-size:13px;line-height:1.5}.kpi-row,.metrics{margin-bottom:var(--space-section);grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px;display:grid}.kpi-row-4{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.kpi,.panel.metric,.metric{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:none;transition:border-color .22s ease,transform .22s var(--ease-out),box-shadow .22s ease;animation:kpi-rise .48s var(--ease-out) both;padding:18px 20px;position:relative;overflow:hidden}.kpi-row>:first-child,.metrics>:first-child{animation-delay:20ms}.kpi-row>:nth-child(2),.metrics>:nth-child(2){animation-delay:70ms}.kpi-row>:nth-child(3),.metrics>:nth-child(3){animation-delay:.12s}.kpi-row>:nth-child(4),.metrics>:nth-child(4){animation-delay:.17s}.kpi-row>:nth-child(5),.metrics>:nth-child(5){animation-delay:.22s}.kpi-row>:nth-child(6),.metrics>:nth-child(6){animation-delay:.27s}.kpi:hover,.metric:hover{border-color:var(--info-border);box-shadow:none;transform:translateY(-1px)}.kpi:before,.metric:before{content:"";background:var(--info);opacity:0;width:2px;transition:opacity .22s;position:absolute;top:0;bottom:0;left:0}.kpi:hover:before,.metric:hover:before{opacity:1}.kpi:after,.metric:after{display:none}.kpi .kpi-label,.metric .m-label{color:var(--ink-3);white-space:nowrap;letter-spacing:.02em;margin-bottom:10px;font-size:12px}.kpi .kpi-value,.metric .m-value{font-family:var(--font-display);letter-spacing:-.04em;animation:num-tick .55s var(--ease-out) both;animation-delay:inherit;font-size:30px;font-weight:700;line-height:1}.kpi .kpi-value.accent,.metric .m-value.accent{color:var(--info-strong)}.kpi .kpi-value.good,.metric .m-value.good-text{color:var(--good-text)}.metric .m-note,.metric .denom{color:var(--ink-3);margin-top:8px;font-size:12px}.metric .denom{color:var(--ink-3);font-size:14px;font-weight:500}.panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:none;transition:border-color .2s,background-color .2s}.panel:hover{border-color:var(--info-border)}.panel-head,.block-head{border-bottom:1px solid var(--hairline);font-family:var(--font-display);letter-spacing:-.02em;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;font-size:15px;font-weight:650;display:flex}.panel.block,.panel .block{padding:0}.panel.block>.block-head+*,.panel.block .block-body{padding:16px 20px}.panel.block+.panel.block{margin-top:14px}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:14px 16px;display:flex}.filters-more{border-top:1px dashed var(--hairline);flex-wrap:wrap;align-items:center;gap:10px;width:100%;margin-top:4px;padding-top:10px;display:flex}.f-item{align-items:center;gap:6px;display:inline-flex}.f-label{color:var(--ink-3);white-space:nowrap;font-size:12px}.empty-state{text-align:center;background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:64px 24px;display:flex;position:relative;overflow:hidden}.empty-state:before{content:"";background:var(--info-weak);border:1px solid var(--info-border);width:76px;height:76px;box-shadow:inset 0 0 0 12px var(--surface-2);border-radius:22px;margin-bottom:10px;animation:4.2s ease-in-out infinite empty-float;position:relative}.empty-state:after{content:"";border:1px solid var(--info-border);pointer-events:none;border-radius:50%;width:120px;height:120px;animation:4.2s ease-in-out infinite empty-ring;position:absolute;top:36px;left:50%;transform:translate(-50%)}.empty-state .empty-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.02em;z-index:1;font-size:18px;font-weight:650;position:relative}.empty-state .empty-desc,.empty-actions{z-index:1;position:relative}.empty-state.compact{padding:28px 16px}.empty-state.compact:before,.empty-state.compact:after{display:none}.empty-state .empty-desc{color:var(--ink-3);max-width:28rem;margin-bottom:8px;font-size:13px;line-height:1.6}.empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.tabs{border-bottom:1px solid var(--hairline);flex-wrap:wrap;gap:0;margin-bottom:20px;display:flex}.tab{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:0;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:500;transition:color .18s;display:inline-flex;position:relative}.tab:after{content:"";background:var(--info);opacity:0;border-radius:2px;height:2px;transition:opacity .18s,transform .18s;position:absolute;bottom:-1px;left:16px;right:16px;transform:scaleX(.4)}.tab:hover{color:var(--ink-2)}.tab.on{color:var(--info);background:0 0;border-color:#0000;font-weight:650}.tab.on:after{opacity:1;transform:scaleX(1)}.tab.danger.on{color:var(--critical-text)}.tab.danger.on:after{background:var(--critical)}.tab-n{font-family:var(--font-display);font-variant-numeric:tabular-nums;opacity:.55;font-size:12px}.chip{font-variant-numeric:tabular-nums;background:0 0;border-radius:0;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.chip:before{content:"";opacity:.85;background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0}@supports (color:color-mix(in lab,red,red)){.chip:before{box-shadow:0 0 color-mix(in srgb,currentColor 28%,transparent)}}.chip.accent:before,.chip.good:before,.chip.warn:before,.chip.risk:before{animation:2.2s ease-out infinite status-ping}.chip .dot{display:none}.chip.accent{color:var(--accent-strong)}.chip.good{color:var(--good-text)}.chip.warn{color:var(--warning-text)}.chip.risk{color:var(--critical-text)}.chip.muted{color:var(--ink-3)}.chip.muted:before{opacity:.45}.status-text{color:var(--ink-2);font-size:12px;font-weight:600}.status-text.good{color:var(--good-text)}.status-text.warn{color:var(--warning-text)}.status-text.risk{color:var(--critical-text)}.status-text.accent{color:var(--accent-strong)}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{border-color:var(--hairline-strong);background:var(--surface);color:var(--ink)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--info)}@supports (color:color-mix(in lab,red,red)){input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in srgb,var(--info) 24%,transparent)}}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px;border-color:var(--info)}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--info)}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade-slide{0%{opacity:0}to{opacity:1}}@keyframes soft-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.88)}}@keyframes kpi-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes num-tick{0%{opacity:0;letter-spacing:.04em;transform:translateY(8px)}to{opacity:1;letter-spacing:-.04em;transform:none}}@keyframes status-ping{0%{box-shadow:0 0 color-mix(in srgb,currentColor 32%,transparent)}70%{box-shadow:0 0 0 6px #0000}to{box-shadow:0 0 #0000}}@keyframes empty-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes empty-ring{0%,to{opacity:.55;transform:translate(-50%)scale(.92)}50%{opacity:1;transform:translate(-50%)scale(1.06)}}.page-enter{animation:fade-slide .48s var(--ease-out) both}.hover-lift{transition:transform .2s var(--ease-out),border-color .2s ease,box-shadow .2s ease}.hover-lift:hover{border-color:var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.hover-lift:hover{border-color:color-mix(in srgb,var(--accent) 22%,transparent)}}.hover-lift:hover{box-shadow:0 10px 24px var(--ink)}@supports (color:color-mix(in lab,red,red)){.hover-lift:hover{box-shadow:0 10px 24px color-mix(in srgb,var(--ink) 6%,transparent)}}@media (prefers-reduced-motion:reduce){.page-enter,.page-head,.kpi,.metric,.kpi .kpi-value,.metric .m-value,.empty-state:before,.empty-state:after,.chip.accent:before,.chip.good:before,.chip.warn:before,.chip.risk:before,body:after{opacity:1;filter:none;transform:none;transition:none!important;animation:none!important}.kpi:hover,.metric:hover,.hover-lift:hover{transform:none}body:after{opacity:0!important}}.ui-loading-overlay{z-index:20;background:var(--surface);justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.ui-loading-overlay{background:color-mix(in srgb,var(--surface) 72%,transparent)}}.ui-loading-overlay{color:var(--ink-2);font-size:13px}.ui-loading-spinner{border:2px solid var(--accent);border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.shell[data-v-ef15a213]{--sidebar-width: 243px;min-height:100vh;padding-left:var(--sidebar-width)}.app-sidebar[data-v-ef15a213]{position:fixed;inset:0 auto 0 0;z-index:45;display:flex;flex-direction:column;width:var(--sidebar-width);background:var(--side-bg)}.brand[data-v-ef15a213]{display:flex;align-items:flex-start;gap:12px;padding:26px 28px 24px;text-decoration:none;color:var(--ink)}.brand-fish[data-v-ef15a213]{width:42px;height:40px;color:var(--accent);flex-shrink:0}.brand strong[data-v-ef15a213]{display:block;font-size:25px;line-height:1.3;letter-spacing:1px;font-weight:750}.brand small[data-v-ef15a213]{display:block;white-space:nowrap;color:var(--ink-3);font-size:13px;margin-top:3px}.sidebar-nav[data-v-ef15a213]{padding:4px 14px 16px 21px;flex:1;overflow-y:auto;scrollbar-width:thin}.nav-caption[data-v-ef15a213]{padding:0 12px;margin-bottom:8px;color:var(--ink-3);font-size:14px}.sidebar-item[data-v-ef15a213]{width:100%;min-height:44px;margin:3px 0;padding:10px 15px;display:flex;align-items:center;gap:20px;border:0;border-radius:6px;position:relative;background:transparent;color:var(--nav-ink);font-size:16px;font-weight:550;text-decoration:none;cursor:pointer;text-align:left}.sidebar-item[data-v-ef15a213]:hover{background:var(--nav-active)}.sidebar-item.active[data-v-ef15a213]{background:var(--nav-active);color:var(--accent)}.sidebar-item.active[data-v-ef15a213]:before{content:"";position:absolute;width:4px;left:0;top:4px;bottom:4px;border-radius:3px;background:var(--accent)}.nav-divider[data-v-ef15a213]{height:1px;background:var(--hairline-strong);opacity:.65;margin:23px 5px 18px 0}.group-toggle[data-v-ef15a213]{min-height:52px}.group-chevron[data-v-ef15a213]{margin-left:auto;transition:transform .15s}.group-chevron.expanded[data-v-ef15a213]{transform:rotate(90deg)}.group-current[data-v-ef15a213]{color:var(--accent)}.nav-children[data-v-ef15a213]{margin:0 0 8px 27px;padding-left:17px;border-left:1px solid var(--hairline-strong)}.child-link[data-v-ef15a213]{display:block;padding:8px 10px;border-radius:5px;font-size:13px;text-decoration:none;color:var(--ink-2)}.child-link[data-v-ef15a213]:hover,.child-link.active[data-v-ef15a213]{color:var(--accent);background:var(--nav-active)}.sidebar-foot[data-v-ef15a213]{margin:0 20px;padding:12px 0;border-top:1px solid var(--hairline)}.sidebar-runtime[data-v-ef15a213]{display:block;padding:10px 14px;background:var(--surface-2);border-radius:10px;color:var(--ink-3);text-decoration:none}.runtime-title[data-v-ef15a213]{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:13px;font-weight:600}.runtime-title.running[data-v-ef15a213]{color:var(--positive)}.runtime-title>.ui-icon[data-v-ef15a213]{margin-left:auto}.status-dot[data-v-ef15a213]{width:10px;height:10px;border-radius:50%;background:currentColor;flex-shrink:0}.sidebar-runtime small[data-v-ef15a213]{display:block;font-size:11px;margin-top:6px;white-space:nowrap}.app-main[data-v-ef15a213]{min-width:0}.app-header[data-v-ef15a213]{height:68px;display:flex;gap:24px;align-items:center;padding:16px 18px 16px 24px}.global-search[data-v-ef15a213]{height:43px;max-width:736px;flex:1;display:flex;align-items:center;gap:12px;padding:0 16px;border-radius:10px;background:var(--photo-wash);color:var(--nav-ink)}.global-search input[type=search][data-v-ef15a213]{width:100%;min-width:0;border:none;outline:none;background:transparent;font:inherit;font-size:14px;color:var(--ink)}.global-search input[type=search][data-v-ef15a213]::placeholder{color:var(--ink-3)}.global-search[data-v-ef15a213]:focus-within{box-shadow:0 0 0 2px var(--focus-ring)}.global-search kbd[data-v-ef15a213]{flex-shrink:0;font-family:inherit;color:var(--ink-3);background:var(--surface-2);padding:0 5px;border-radius:4px;font-size:13px}.header-actions[data-v-ef15a213]{display:flex;align-items:center;gap:20px;margin-left:auto}.header-status[data-v-ef15a213]{display:flex;align-items:center;gap:13px;color:var(--ink-3);font-size:13px;text-decoration:none;white-space:nowrap}.header-status .ui-icon[data-v-ef15a213]{color:var(--positive)}.demo-label[data-v-ef15a213]{color:var(--ink-3);font-size:11px;text-decoration:none;white-space:nowrap}.notification-button[data-v-ef15a213]{position:relative;padding:7px 19px;border:0;border-left:1px solid var(--hairline);border-right:1px solid var(--hairline);background:transparent;color:var(--nav-ink);cursor:pointer}.notification-button i[data-v-ef15a213]{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--price);top:3px;right:17px}.profile-button[data-v-ef15a213]{display:flex;align-items:center;gap:13px;color:var(--nav-ink)}.profile-button>.ui-icon[data-v-ef15a213]{transform:rotate(90deg)}.avatar[data-v-ef15a213]{width:42px;height:42px;border-radius:50%;overflow:hidden}.container[data-v-ef15a213]{padding:14px 24px 40px;max-width:1800px;margin:auto}.home-container[data-v-ef15a213]{padding:0 18px 12px 24px;max-width:none}.context-banner[data-v-ef15a213]{padding:10px 24px;font-size:13px;color:var(--ink-2);background:var(--info-weak)}.context-banner a[data-v-ef15a213]{margin-left:20px;color:var(--accent)}.mobile-menu-btn[data-v-ef15a213],.bottom-nav[data-v-ef15a213]{display:none}@media (min-width: 1800px){.home-container[data-v-ef15a213]{max-width:1800px}}@media (max-width: 1400px){.shell[data-v-ef15a213]{--sidebar-width: 218px}.sidebar-item[data-v-ef15a213]{gap:16px}.brand[data-v-ef15a213]{padding-left:23px;gap:8px}.brand strong[data-v-ef15a213]{font-size:23px}.brand small[data-v-ef15a213]{font-size:11px}.app-header[data-v-ef15a213]{gap:16px}.header-actions[data-v-ef15a213]{gap:12px}.header-status[data-v-ef15a213]{gap:8px}.global-search[data-v-ef15a213]{max-width:650px}.demo-label[data-v-ef15a213]{font-size:10px}}@media (max-width: 1100px){.header-status span[data-v-ef15a213]{display:none}.global-search[data-v-ef15a213]{max-width:none}.header-actions[data-v-ef15a213]{gap:12px}}@media (max-width: 900px){.shell[data-v-ef15a213]{padding-left:0;padding-bottom:74px}.app-sidebar[data-v-ef15a213]{width:260px;visibility:hidden;transform:translate(-100%);transition:transform .18s ease}.mobile-menu-open .app-sidebar[data-v-ef15a213]{visibility:visible;transform:translate(0)}.sidebar-overlay[data-v-ef15a213]{position:fixed;top:0;right:0;bottom:0;left:260px;z-index:44;background:var(--overlay);border:0}.mobile-menu-btn[data-v-ef15a213]{display:flex;background:transparent;border:0;padding:5px;color:var(--nav-ink)}.app-header[data-v-ef15a213]{height:70px;padding:12px 16px;gap:12px}.header-actions[data-v-ef15a213]{gap:10px}.header-status[data-v-ef15a213],.notification-button[data-v-ef15a213],.profile-button>.ui-icon[data-v-ef15a213]{display:none}.avatar[data-v-ef15a213]{width:34px;height:34px}.global-search[data-v-ef15a213]{padding:0 12px}.global-search kbd[data-v-ef15a213]{display:none}.global-search input[type=search][data-v-ef15a213]{font-size:12px}.container[data-v-ef15a213],.home-container[data-v-ef15a213]{padding:5px 16px 25px}.bottom-nav[data-v-ef15a213]{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);padding:10px 5px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--hairline)}.bottom-nav a[data-v-ef15a213]{display:flex;align-items:center;flex-direction:column;gap:3px;color:var(--ink-3);text-decoration:none;font-size:11px}.bottom-nav a.active[data-v-ef15a213]{color:var(--accent)}}@media (prefers-reduced-motion: reduce){[data-v-ef15a213],[data-v-ef15a213]:before,[data-v-ef15a213]:after{transition:none!important}}@media (min-width: 1251px) and (max-height: 800px){.app-header[data-v-ef15a213]{height:64px}}
