:root{--bv-bg: #10151d;--bv-bg-elevated: #171e29;--bv-bg-input: #0d1219;--bv-border: #232d3d;--bv-text: #e8edf4;--bv-text-muted: #8b98ab;--bv-accent: #22d3ee;--bv-accent-press: #06b6d4;--bv-accent-text: #06222a;--bv-danger: #f87171;--bv-success: #34d399;--bv-warning: #fbbf24;--bv-radius: 18px;--bv-radius-sm: 12px;--bv-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bv-bg);color:var(--bv-text);font-family:var(--bv-font);font-size:16px;-webkit-font-smoothing:antialiased}.ui-btn[data-v-02e0655c]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--bv-radius-sm);font:inherit;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.ui-btn[data-v-02e0655c]:disabled{opacity:.55;cursor:not-allowed}.ui-btn--block[data-v-02e0655c]{width:100%}.ui-btn--primary[data-v-02e0655c]{background:var(--bv-accent);color:var(--bv-accent-text)}.ui-btn--primary[data-v-02e0655c]:not(:disabled):hover{background:var(--bv-accent-press)}.ui-btn--ghost[data-v-02e0655c]{background:transparent;color:var(--bv-text);border:1px solid var(--bv-border)}.ui-btn--danger[data-v-02e0655c]{background:var(--bv-danger);color:#2a0808}.ui-btn__spinner[data-v-02e0655c]{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-btn-spin-02e0655c .7s linear infinite}@keyframes ui-btn-spin-02e0655c{to{transform:rotate(360deg)}}.ui-input[data-v-199c7c15]{display:flex;flex-direction:column;gap:6px}.ui-input__label[data-v-199c7c15]{font-size:14px;color:var(--bv-text-muted)}.ui-input__field[data-v-199c7c15]{padding:12px 14px;border:1px solid var(--bv-border);border-radius:var(--bv-radius-sm);background:var(--bv-bg-input);color:var(--bv-text);font:inherit;outline:none;transition:border-color .15s}.ui-input__field[data-v-199c7c15]:focus{border-color:var(--bv-accent)}.ui-input__field--error[data-v-199c7c15]{border-color:var(--bv-danger)}.ui-input__error[data-v-199c7c15]{font-size:13px;color:var(--bv-danger)}.ui-card[data-v-2ec39a39]{background:var(--bv-bg-elevated);border:1px solid var(--bv-border);border-radius:var(--bv-radius);padding:20px}.ui-card__head[data-v-2ec39a39]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ui-card__title[data-v-2ec39a39]{margin:0;font-size:17px;font-weight:600}.ui-alert[data-v-3ee49ffb]{padding:12px 14px;border-radius:var(--bv-radius-sm);font-size:14px;border:1px solid}.ui-alert--info[data-v-3ee49ffb]{color:var(--bv-accent);border-color:color-mix(in srgb,var(--bv-accent) 40%,transparent);background:color-mix(in srgb,var(--bv-accent) 10%,transparent)}.ui-alert--error[data-v-3ee49ffb]{color:var(--bv-danger);border-color:color-mix(in srgb,var(--bv-danger) 40%,transparent);background:color-mix(in srgb,var(--bv-danger) 10%,transparent)}.ui-alert--success[data-v-3ee49ffb]{color:var(--bv-success);border-color:color-mix(in srgb,var(--bv-success) 40%,transparent);background:color-mix(in srgb,var(--bv-success) 10%,transparent)}.ui-alert--warning[data-v-3ee49ffb]{color:var(--bv-warning);border-color:color-mix(in srgb,var(--bv-warning) 40%,transparent);background:color-mix(in srgb,var(--bv-warning) 10%,transparent)}.ui-badge[data-v-3cd32e5d]{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600}.ui-badge--ok[data-v-3cd32e5d]{color:var(--bv-success);background:color-mix(in srgb,var(--bv-success) 14%,transparent)}.ui-badge--fail[data-v-3cd32e5d]{color:var(--bv-danger);background:color-mix(in srgb,var(--bv-danger) 14%,transparent)}.ui-badge--muted[data-v-3cd32e5d]{color:var(--bv-text-muted);background:color-mix(in srgb,var(--bv-text-muted) 14%,transparent)}.ui-toggle[data-v-5e8a256a]{--w: 44px;--h: 26px;width:var(--w);height:var(--h);padding:3px;border:1px solid var(--bv-border);border-radius:999px;background:var(--bv-bg-input);cursor:pointer;display:inline-flex;align-items:center;transition:background .15s,border-color .15s}.ui-toggle[data-v-5e8a256a]:disabled{opacity:.55;cursor:not-allowed}.ui-toggle--on[data-v-5e8a256a]{background:var(--bv-accent);border-color:var(--bv-accent)}.ui-toggle__knob[data-v-5e8a256a]{width:18px;height:18px;border-radius:50%;background:var(--bv-text);transition:transform .15s}.ui-toggle--on .ui-toggle__knob[data-v-5e8a256a]{background:var(--bv-accent-text);transform:translate(18px)}.layout[data-v-eef23f8e]{max-width:860px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:16px}.layout__head[data-v-eef23f8e]{display:flex;align-items:center;justify-content:space-between;gap:12px}.layout__brand[data-v-eef23f8e]{font-weight:700;font-size:18px}.layout__user[data-v-eef23f8e]{display:flex;align-items:center;gap:10px}.layout__username[data-v-eef23f8e]{color:var(--bv-text-muted);font-size:14px}.layout__weblink[data-v-eef23f8e]{padding:9px 14px;border:1px solid var(--bv-border);border-radius:999px;color:var(--bv-accent);font-size:14px;text-decoration:none;white-space:nowrap}.layout__weblink[data-v-eef23f8e]:hover{border-color:var(--bv-accent)}.layout__nav[data-v-eef23f8e]{display:flex;gap:8px;overflow-x:auto}.layout__navitem[data-v-eef23f8e]{padding:9px 16px;border:1px solid var(--bv-border);border-radius:999px;background:transparent;color:var(--bv-text-muted);font:inherit;font-size:14px;cursor:pointer;white-space:nowrap}.layout__navitem--active[data-v-eef23f8e]{background:color-mix(in srgb,var(--bv-accent) 14%,transparent);border-color:var(--bv-accent);color:var(--bv-accent)}.login-form[data-v-e6a3e36f],.pwd-form[data-v-adf3b44c]{display:flex;flex-direction:column;gap:14px}.overview[data-v-37fd1694]{display:flex;flex-direction:column;gap:16px}.checks[data-v-37fd1694]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.checks__row[data-v-37fd1694]{display:flex;align-items:center;justify-content:space-between;gap:12px}.table-wrap[data-v-37fd1694]{overflow-x:auto}.inbounds[data-v-37fd1694]{width:100%;border-collapse:collapse;font-size:14px}.inbounds th[data-v-37fd1694],.inbounds td[data-v-37fd1694]{text-align:left;padding:8px 10px;border-bottom:1px solid var(--bv-border);white-space:nowrap}.inbounds th[data-v-37fd1694]{color:var(--bv-text-muted);font-weight:500}.muted[data-v-37fd1694]{color:var(--bv-text-muted);margin:0}.users[data-v-700d616e]{display:flex;flex-direction:column;gap:16px}.users__backrow[data-v-700d616e]{display:flex}.search[data-v-700d616e]{display:flex;gap:8px;margin-bottom:14px}.search[data-v-700d616e]>:first-child{flex:1}.table-wrap[data-v-700d616e]{overflow-x:auto}.table[data-v-700d616e]{width:100%;border-collapse:collapse;font-size:14px}.table th[data-v-700d616e],.table td[data-v-700d616e]{text-align:left;padding:8px 10px;border-bottom:1px solid var(--bv-border);white-space:nowrap}.table th[data-v-700d616e]{color:var(--bv-text-muted);font-weight:500}.table__row[data-v-700d616e]{cursor:pointer}.table__row:hover td[data-v-700d616e]{background:color-mix(in srgb,var(--bv-accent) 7%,transparent)}.props[data-v-700d616e]{margin:0 0 14px;display:flex;flex-direction:column;gap:8px}.props__row[data-v-700d616e]{display:flex;justify-content:space-between;gap:12px;font-size:14px}.props__row dt[data-v-700d616e]{color:var(--bv-text-muted)}.props__row dd[data-v-700d616e]{margin:0;text-align:right;word-break:break-all}.row[data-v-700d616e]{display:flex;gap:8px}.sublink[data-v-700d616e]{display:flex;align-items:center;gap:8px;margin-bottom:14px}.sublink__url[data-v-700d616e]{flex:1;padding:10px 12px;border:1px solid var(--bv-border);border-radius:var(--bv-radius-sm);background:var(--bv-bg-input);font-size:13px;overflow-x:auto;white-space:nowrap}.controls[data-v-700d616e]{display:flex;flex-direction:column;gap:14px}.controls__group[data-v-700d616e]{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.controls__group[data-v-700d616e]>*{min-width:120px}.controls__group--end[data-v-700d616e]{justify-content:flex-start}.create[data-v-700d616e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0 0 14px}.create__field[data-v-700d616e]{display:flex;flex-direction:column;gap:6px}.create__label[data-v-700d616e]{font-size:14px;color:var(--bv-text-muted)}.create__select[data-v-700d616e]{padding:12px 14px;border:1px solid var(--bv-border);border-radius:var(--bv-radius-sm);background:var(--bv-bg-input);color:var(--bv-text);font:inherit;outline:none}.create__select[data-v-700d616e]:focus{border-color:var(--bv-accent)}.muted[data-v-700d616e]{color:var(--bv-text-muted);margin:0 0 12px}.muted[data-v-1e388c0c]{color:var(--bv-text-muted);margin:0}.log-list[data-v-1e388c0c]{display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow-y:auto;font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.log-row[data-v-1e388c0c]{display:flex;align-items:baseline;gap:8px;padding:6px 0;border-bottom:1px solid var(--bv-border)}.log-row__time[data-v-1e388c0c]{color:var(--bv-text-muted);white-space:nowrap}.log-row__msg[data-v-1e388c0c]{overflow-wrap:anywhere}.log-row__attrs[data-v-1e388c0c]{color:var(--bv-text-muted);margin-left:6px}.logs-settings[data-v-70e1769c]{display:flex;flex-direction:column;gap:14px}.logs-settings__desc[data-v-70e1769c]{margin:0;color:var(--bv-text-muted);font-size:14px}.logs-settings__row[data-v-70e1769c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.xui__desc[data-v-9c307396]{margin:0 0 14px;color:var(--bv-text-muted);font-size:14px}.xui__props[data-v-9c307396]{margin:0 0 14px;display:flex;flex-direction:column;gap:8px}.xui__row[data-v-9c307396]{display:flex;justify-content:space-between;gap:12px;font-size:14px}.xui__row dt[data-v-9c307396]{color:var(--bv-text-muted)}.xui__row dd[data-v-9c307396]{margin:0;text-align:right;word-break:break-all}.xui__password[data-v-9c307396]{font-family:monospace}.xui__actions[data-v-9c307396]{display:flex;flex-direction:column;gap:10px}.xui__open[data-v-9c307396]{text-align:center;padding:11px 14px;border:1px solid var(--bv-border);border-radius:var(--bv-radius-sm);color:var(--bv-accent);font-size:14px;font-weight:600;text-decoration:none}.xui__open[data-v-9c307396]:hover{border-color:var(--bv-accent)}
