/*
 * @aurbis/ui — font bundle (@font-face declarations)
 *
 * Mirrored from aurbis/cef/assets/fonts.css with adjusted relative paths
 * (this file lives at ui/fonts.css; font files at ui/assets/fonts/).
 *
 * Pages import via:
 *   <link rel="stylesheet" href="/ui/fonts.css">
 * or relative for the preview harness:
 *   <link rel="stylesheet" href="../../ui/fonts.css">
 *
 * All fonts are SIL OFL 1.1. Per-font attribution lives in
 * assets/fonts/<name>/README.md.
 */

/* === Cinzel — display / headings / mastheads / faction titles === */
@font-face {
  font-family: "Cinzel";
  src: url("assets/fonts/cinzel/Cinzel-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cinzel";
  src: url("assets/fonts/cinzel/Cinzel-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cinzel";
  src: url("assets/fonts/cinzel/Cinzel-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cinzel";
  src: url("assets/fonts/cinzel/Cinzel-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Cinzel";
  src: url("assets/fonts/cinzel/Cinzel-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* === IM Fell English — decorative paper ephemera / marginalia === */
@font-face {
  font-family: "IM Fell English";
  src: url("assets/fonts/im-fell-english/IMFellEnglish-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IM Fell English";
  src: url("assets/fonts/im-fell-english/IMFellEnglish-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

/* === Sovngarde — Nordic surface body (chat, event log, cards) === */
@font-face {
  font-family: "Sovngarde";
  src:
    url("assets/fonts/sovngarde/Sovngarde-Book.ttf") format("truetype"),
    url("assets/fonts/sovngarde/base/light.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Sovngarde";
  src:
    url("assets/fonts/sovngarde/Sovngarde-Bold.ttf") format("truetype"),
    url("assets/fonts/sovngarde/base/bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* === EB Garamond — clean body / default readable UI text === */
@font-face {
  font-family: "EB Garamond";
  src: url("assets/fonts/eb-garamond/EBGaramond-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("assets/fonts/eb-garamond/EBGaramond-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("assets/fonts/eb-garamond/EBGaramond-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("assets/fonts/eb-garamond/EBGaramond-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "EB Garamond";
  src: url("assets/fonts/eb-garamond/EBGaramond-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* Canonical font-family tokens — overlays reference these, not the raw families. */
:root {
  --font-display:        "Cinzel", "EB Garamond", Georgia, serif;
  --font-nordic-body:    "Sovngarde", "EB Garamond", Georgia, serif;
  --font-parchment-body: "EB Garamond", Georgia, serif;
  --font-clean-body:     "EB Garamond", Georgia, serif;
  --font-decorative:     "IM Fell English", "EB Garamond", Georgia, serif;
}

/* OpenType feature utility classes */
.tabular   { font-feature-settings: "tnum"; font-variant-numeric: tabular-nums; }
.smallcaps { font-feature-settings: "smcp"; font-variant-caps: small-caps; }
.oldstyle  { font-feature-settings: "onum"; font-variant-numeric: oldstyle-nums; }
.ligatures { font-feature-settings: "liga", "dlig"; font-variant-ligatures: common-ligatures discretionary-ligatures; }
