Actions
Primary, secondary, and quiet actions share sizing, contrast, focus rings, and loading-safe minimum dimensions.
Component kit
Shared components keep the Svelte landing, login, registration, and license request surfaces visually consistent while pages stay independently lazy-loaded.
Primary, secondary, and quiet actions share sizing, contrast, focus rings, and loading-safe minimum dimensions.
Information cards use compact 8px surfaces for capabilities, provider state, and license summaries.
Login, registration, and license requests share labels, validation text, and provider status feedback.
Provider readiness is shown with small status pills so operational state stays scannable.
Form standard
Inputs keep fixed rhythm and generous focus rings so login, registration, and license request flows can scan quickly on desktop and mobile.
Providers
All browser-to-server calls go through a shared ky client with retry, timeout, and signed JSON helpers.
Cloudflare Turnstile is loaded only when a form asks for a token, with backend verification kept behind signed requests.
Registration and remembered-device login can use Twilio Verify through backend OTP endpoints without exposing Twilio secrets in the browser.
The same OTP endpoints can route phone or email verification through Prelude Verify when PRELUDE_API_KEY is configured server-side.
License requests and sales mail are prepared for a backend SendGrid endpoint so templates and API keys stay server-side.
Short-lived sales sessions are stored with explicit expiry and can be persisted only when the visitor opts in.
License requests are captured now; checkout handoff is intentionally reserved for a later payment gateway integration.