Languages
PocketSeed ships in English by default, but credentials live on products that travel. The font stack is layered so the same component reads cleanly in Japanese, Chinese, and Korean without redesigning anything, and the editorial italic accent gracefully steps aside in scripts where it doesn't apply.
Switch by language, not per glyph
Inter is the default for Latin, Cyrillic, and Greek — everything else the brand normally encounters. When a page is intentionally localised, the product sets lang="ja" (or zh, ko) and a :lang() rule promotes the matching Noto Sans family. The whole localised context renders in one harmonised family, no mixing of Inter Latin with Noto CJK.
--ps-font-sans
Default = Inter + system fallbacks (incl. system CJK as a quiet hedge for stray characters in unmarked content). When :lang(ja|zh|ko) matches, the token is redefined to 'Noto Sans JP' (or SC / TC / KR) at the front. Set the lang attribute when switching language and every component picks it up.
--ps-font-serif (Playfair Display)
Covers Latin + Latin Extended + Cyrillic + Vietnamese, with proper italic at every weight up to 900. For Greek (and any glyph Playfair lacks) the cascade falls through Inter italic so the accent stays visually consistent. Italic isn't a CJK convention, so .ps-serif drops the italic + serif inside :lang(ja|zh|ko) passages and keeps the accent colour as the emphasis cue. The flourish exits gracefully; the meaning stays.
--ps-font-mono
JetBrains Mono for codes, IDs, timestamps — all Latin/numeric. Stays the same regardless of locale. If user-supplied content forces CJK into a mono context (rare), system mono fallbacks (Hiragino Kaku Gothic ProN, etc.) take over.
The italic accent, every script
Same component (h2 + .ps-serif on one word). The italic + serif treatment shows in Latin; in Japanese, Chinese, and Korean it falls back to bold weight in the accent colour, since italics don't carry the same emphasis cue in those scripts.
We make every claim verifiable.
すべての主張を検証可能に。
让每一项声明都可验证。
讓每一項聲明都可驗證。
모든 주장을 검증 가능하게.
Мы делаем каждое утверждение проверяемым.
Κάνουμε κάθε ισχυρισμό επαληθεύσιμο.
Cyrillic and Greek work because --ps-font-serif cascades through Inter before falling to Times New Roman, so the italic accent stays in the same family as the rest of the headline.
Inter and Noto, harmonised
Body copy uses --ps-font-sans. Noto Sans is designed to share Latin-style metrics, so Japanese sits at roughly the same x-height and rhythm as Inter without manual tuning.
A PocketSeed credential carries the proof with the claim — issuer, evidence, and signatures travelling alongside the data so any reader can verify it themselves.
PocketSeedのクレデンシャルは主張とその証拠を一体で運びます。発行者、証跡、署名がデータと一緒に届くので、誰でも自分で検証できます。
PocketSeed 凭证将主张与证据一起承载——发行方、证据和签名随数据同行,任何读者都可以自行验证。
PocketSeed 자격 증명은 주장과 함께 그 증거를 전달합니다. 발급자, 근거, 서명이 데이터와 함께 이동하므로 누구나 직접 검증할 수 있습니다.
Mono is for IDs, not prose
JetBrains Mono only covers Latin, Cyrillic, and Greek. Codes, IDs, hashes, and timestamps stay readable everywhere because they're already Latin/numeric. Prose should never be set in mono.
Pills, buttons, cards
No CSS changes per locale — the same components render natively in any script. The cascade does the work.
How to use
Set the lang attribute on the document or on the localised section. The font stack and the .ps-serif graceful-degrade rule do the rest.
<!-- Whole document is Japanese --> <html lang="ja"> <!-- Mixed: English page with a Japanese product name --> <p>Made in <span lang="ja">水滴</span>, Tokyo</p> <!-- The italic accent gracefully degrades inside lang(ja|zh|ko) --> <h2>すべての主張を<span class="ps-serif">検証可能に</span>。</h2>
Tokens you don't need to think about — they're already wired:
/* tokens.css — default stack: Inter + system fallbacks */ --ps-font-sans: 'Inter', -apple-system, 'Hiragino Sans', 'Yu Gothic UI', 'PingFang SC', 'Apple SD Gothic Neo', sans-serif; /* type.css — set lang and the token redefines */ :lang(ja) { --ps-font-sans: 'Noto Sans JP', 'Hiragino Sans', sans-serif; } :lang(zh-CN) { --ps-font-sans: 'Noto Sans SC', 'PingFang SC', sans-serif; } :lang(zh-TW) { --ps-font-sans: 'Noto Sans TC', 'PingFang TC', sans-serif; } :lang(ko) { --ps-font-sans: 'Noto Sans KR', 'Apple SD Gothic Neo', sans-serif; } /* The italic accent gracefully degrades inside CJK */ .ps-serif:lang(ja), .ps-serif:lang(zh), .ps-serif:lang(ko) { font-family: var(--ps-font-sans); font-style: normal; font-weight: var(--ps-w-bold); }
What this seed does not cover
Right-to-left scripts (Arabic, Hebrew) need more than a font swap — layout direction, mirroring of icons, padding flips. Thai and Indic scripts (Devanagari, Tamil) need their own Noto stack additions. Both are deliberate next steps; for now the system is robust for English, Latin Extended (Vietnamese, Polish, Turkish, &c.), Cyrillic, Greek, and East Asian locales — which covers the planned credential surfaces.