/* Cultist Armoury cipher fonts for the Keeper's Console.
 * Wired 2026-06-14. Source pack: handout-packs/cultist-armoury/ (MANIFEST.md).
 *
 * All 10 faces ship under ONE system family ("Cultist Armoury"), so we declare
 * a DISTINCT @font-face family per cipher here to make each selectable by name.
 * src order: local() uses the user-installed copy (~/Library/Fonts) when present;
 * url() falls back to the bundled OTF so this works in every mode —
 *   file://  (galaxidi-pilot.html opened from disk)
 *   served   (keeper-console.html via python3 -m http.server in this dir)
 *   cast/TV  (browser without the system font installed)
 *
 * These are SYMBOL/CIPHER faces: type normal Latin, render occult glyphs.
 * Use for "unreadable Mythos text", grimoire pages, handout overlays — NOT body copy.
 */

@font-face{ font-family:'CA Theban';        src:local('CultistArmouryTheban'),        url('fonts/CultistArmoury-Theban.otf')        format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Enochian';      src:local('CultistArmouryEnochian'),      url('fonts/CultistArmoury-Enochian.otf')      format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Dark Rlyehain'; src:local('CultistArmouryDarkRlyehain'),  url('fonts/CultistArmoury-DarkRlyehain.otf')  format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Minor Rlyehain';src:local('CultistArmouryMinorRlyehain'), url('fonts/CultistArmoury-MinorRlyehain.otf') format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Great Runes';   src:local('CultistArmouryGreatRunes'),    url('fonts/CultistArmoury-GreatRunes.otf')    format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Celestial';     src:local('CultistArmouryCelestial'),     url('fonts/CultistArmoury-Celestial.otf')     format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Magi';          src:local('CultistArmouryMagi'),          url('fonts/CultistArmoury-Magi.otf')          format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Ancient Arabica';src:local('CultistArmouryAncientArabica'),url('fonts/CultistArmoury-AncientArabica.otf')format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Ancient Cults'; src:local('CultistArmouryAncientCults'),   url('fonts/CultistArmoury-AncientCults.otf')   format('opentype'); font-display:swap; }
@font-face{ font-family:'CA Strange Aeons'; src:local('CultistArmouryStrangeAeons'),   url('fonts/CultistArmoury-StrangeAeons.otf')   format('opentype'); font-display:swap; }

/* Utility classes — apply to any element to cipher its text.
 * .cipher is the default "unreadable Mythos" look (Theban).
 * Generous letter-spacing/line-height keeps dense glyphs legible-as-glyphs. */
.cipher,
.ca-theban         { font-family:'CA Theban', serif; }
.ca-enochian       { font-family:'CA Enochian', serif; }
.ca-dark-rlyehain  { font-family:'CA Dark Rlyehain', serif; }
.ca-minor-rlyehain { font-family:'CA Minor Rlyehain', serif; }
.ca-great-runes    { font-family:'CA Great Runes', serif; }
.ca-celestial      { font-family:'CA Celestial', serif; }
.ca-magi           { font-family:'CA Magi', serif; }
.ca-ancient-arabica{ font-family:'CA Ancient Arabica', serif; }
.ca-ancient-cults  { font-family:'CA Ancient Cults', serif; }
.ca-strange-aeons  { font-family:'CA Strange Aeons', serif; }

.cipher,[class^='ca-'],[class*=' ca-']{
  letter-spacing:.06em;
  line-height:1.5;
  /* slight ink-bleed so cipher text reads as inscribed, not typeset */
  text-shadow:0 0 1px rgba(0,0,0,.35);
}
