# -*- coding: utf-8 -*-
"""Unified application entrypoint.

No arguments starts the GUI. Any argument is delegated to the CLI so the
packaged ``main`` executable keeps the same behavior in both modes.
"""

import sys


def main() -> None:
    if len(sys.argv) > 1:
        from entrypoints.cli.main import main as cli_main

        cli_main()
    else:
        from entrypoints.gui.bootstrap import main as gui_main

        gui_main()


if __name__ == "__main__":
    main()
