Enforced by the build graph
The crypto package lives under tui/internal; Go's rules make it physically unreachable from
the server binary. CI fails if that ever changes. It's a property of the import graph, not marketing.