# Operator console strings
ui.plat.title=Operator console
ui.plat.lead=Tenants, plans, self-hosted licenses and instance health — for the people who run Keyright.
ui.plat.signIn=Operator sign-in
ui.plat.token=Platform token
ui.plat.gateLead=Paste the platform operator token (KEYRIGHT_PLATFORM_TOKEN). Operator mode also needs a self-license with the "operator" entitlement.
ui.plat.notLicensed=The operator console isn't enabled on this instance: it needs a platform token and a Keyright license with the "operator" entitlement. Self-hosted installs use the dashboard instead.
ui.plat.operator=operator
ui.plat.nav.overview=Overview
ui.plat.nav.tenants=Tenants
ui.plat.nav.plans=Plans
ui.plat.nav.selfLic=Self-hosted licenses
ui.plat.nav.system=System
ui.plat.overviewSub=Everything on this platform at a glance.
ui.plat.newTenant=New tenant
ui.plat.nDisabled={0} disabled
ui.plat.allEnabled=all enabled
ui.plat.byPlan=Tenants by plan
ui.plat.health=Instance health
ui.plat.ready=Ready
ui.plat.uptime=up {0} h
ui.plat.publicPlans={0} public
ui.plat.recentTenants=Newest tenants
ui.plat.tenant=Tenant
ui.plat.noTenants=No tenants yet
ui.plat.searchTenants=Search by name, slug, plan or id
ui.plat.anyPlan=Any plan
ui.plat.nTenants={0} tenant|{0} tenants
ui.plat.ownerEmail=Owner email
ui.plat.ownerEmailHint=Optional. Lets the owner sign in with a hosted account; a bootstrap owner token is created either way.
ui.plat.tenantCreated=Tenant {0} created
ui.plat.onceTitle=Shown once — save these now.
ui.plat.onceBody=These secrets are not stored in a readable form. Copy them to your password manager before closing this dialog.
ui.plat.ownerToken=Owner token
ui.plat.savedThem=I've saved them
ui.plat.openAsOwner=Open as owner
ui.plat.t.summary=Summary
ui.plat.t.plan=Plan & subscription
ui.plat.t.keys=Keys & secrets
ui.plat.t.workspace=Workspace
ui.plat.m.products=Products
ui.plat.m.licenses=Licenses
ui.plat.m.activeLicenses=Active
ui.plat.m.activeDevices=Active devices
ui.plat.m.activations=Activations
ui.plat.m.expiringSoon=Expiring (60 d)
ui.plat.m.revoked=Revoked
ui.plat.onboarded=Onboarded
ui.plat.yes=yes
ui.plat.no=no
ui.plat.baseUrl=Base URL
ui.plat.features=Capabilities
ui.plat.featuresNote=What the tenant's dashboard unlocks right now, from its plan.
ui.plat.private=private
ui.plat.planHint=Takes effect on the tenant's next request — quotas and locked features follow the plan.
ui.plat.enabled=Enabled
ui.plat.enabledHint=disabling blocks the tenant's fulfilment webhook and dashboard sign-in; licenses already issued keep validating.
ui.plat.planEffects=What changing the plan does
ui.plat.planEffectsBody=Quotas (active devices, products), outbound webhooks, usage history, credit-block size and the release-coverage feature follow the plan immediately. Existing licenses, keys and data are untouched. Downgrading from the top plan pauses coverage enforcement for the tenant's customers after the grace period — it never locks them out.
ui.plat.signingKey=Tenant signing key
ui.plat.signingKeyBody=Signs every license and lease this tenant issues (unless a product has its own key). The private half is stored encrypted under the KEK; only the public half is shown.
ui.plat.generateKey=Generate key
ui.plat.rotateKey=Rotate key…
ui.plat.importKey=Import a key (PKCS#8)
ui.plat.keyWarn=Shipped apps must embed the new public key; licenses signed with the old key keep verifying only while the old public key is also embedded. The new value is shown once.
ui.plat.webhookBody=The HMAC secret the tenant's store signs fulfilment webhooks with. Rotating invalidates the old one immediately.
ui.plat.usage=Usage
ui.plat.seatsAllocated=Seats allocated
ui.plat.seatsUsed=Seats used
ui.plat.plansSub=The pricing catalogue: prices, quotas and feature flags. Changes take effect without a redeploy.
ui.plat.newPlan=New plan
ui.plat.highlight=featured
ui.plat.price=Price
ui.plat.limits=Limits
ui.plat.featureFlags=Feature flags
ui.plat.edit=Edit
ui.plat.editPlan=Edit plan — {0}
ui.plat.planKey=Key
ui.plat.currency=Currency
ui.plat.sortOrder=Sort order
ui.plat.priceMonthly=Price / month
ui.plat.priceHint=Leave blank for "custom / contact sales".
ui.plat.priceAnnual=Price / year
ui.plat.maxDevices=Max active devices
ui.plat.maxProducts=Max products
ui.plat.blankUnlimited=Blank = unlimited.
ui.plat.usageDays=Usage history (days)
ui.plat.maxBlock=Max offline credit block
ui.plat.syncHours=Credit block sync window (hours)
ui.plat.maxLicensesLegacy=Max active licenses (legacy)
ui.plat.f.coreTypesOnly=Core license types only
ui.plat.f.sso=SSO
ui.plat.f.sla=SLA
ui.plat.f.whiteLabel=White-label
ui.plat.f.selfServe=Self-serve checkout
ui.plat.f.isPublic=Shown on the pricing page
ui.plat.f.highlight=Featured card
ui.plat.f.eventWebhooksEnabled=Outbound event webhooks
ui.plat.tagline=Tagline
ui.plat.limitLabel=Headline limit label
ui.plat.lsMonthly=Lemon Squeezy variant (monthly)
ui.plat.lsAnnual=Lemon Squeezy variant (annual)
ui.plat.bullets=Feature bullets
ui.plat.bulletsHint=One per line, shown on the pricing card.
ui.plat.selfSub=Licenses for customers who run Keyright themselves. The signed document is shown once at issue.
ui.plat.issueSelf=Issue self-hosted license
ui.plat.entitlements=Entitlements
ui.plat.issued=Issued
ui.plat.noSelf=No self-hosted licenses issued yet
ui.plat.noSelfBody=Issuing needs KEYRIGHT_SELF_LICENSE_TENANT to point at the tenant whose keyright-self-hosted product key signs them.
ui.plat.issueLead=Caps and features come from the named tier of the keyright-self-hosted product; the fields below override them.
ui.plat.tierName=Tier
ui.plat.tierHint=A tier of the keyright-self-hosted product, e.g. standard, enterprise or trial.
ui.plat.days=Valid for (days)
ui.plat.perpetualIfBlank=blank = perpetual (trial tiers default to 30)
ui.plat.maxLicenses=Max active licenses
ui.plat.issue=Issue
ui.plat.selfIssued=License {0} issued
ui.plat.selfOnceBody=Send this signed document to the customer (KEYRIGHT_SELF_LICENSE or KEYRIGHT_SELF_LICENSE_FILE). It is not stored.
ui.plat.licenseDoc=License document
ui.plat.download=Download
ui.plat.readiness=Readiness
ui.plat.diagnostics=Diagnostics
ui.plat.version=Version
ui.plat.uptimeLabel=Uptime
ui.plat.database=Database
ui.plat.pendingMigrations=Pending migrations
ui.plat.smtp=SMTP
ui.plat.alerts=Alerts
ui.plat.configured=Configured on this instance
ui.plat.configuredNote=From environment variables; see docs/self-hosting.md and docs/deploy-saas-free.md.
ui.plat.jobs=Scheduled jobs
ui.plat.jobsBody=On a scale-to-zero host the in-process timers never fire; trigger a run here or from your scheduler.
ui.plat.runNotifications=Run expiry notifications now
ui.plat.runWebhooks=Deliver pending webhooks now

ui.plat.nav.platform=Platform
ui.plat.keysAdvanced=Advanced: rotate or import keys
