/*
 * Self-hosted Latin Modern Roman for yearly past-paper question UI.
 * Stable paths under dist/fonts/lm-roman/ (not Vite-hashed asset names).
 */

@font-face {
  font-family: "Latin Modern Roman";
  font-style: normal;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-regular.woff2") format("woff2"),
    url("./lm-roman/lmroman-regular.woff") format("woff");
}

@font-face {
  font-family: "Latin Modern Roman";
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bold.woff2") format("woff2"),
    url("./lm-roman/lmroman-bold.woff") format("woff");
}

@font-face {
  font-family: "Latin Modern Roman";
  font-style: italic;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-italic.woff2") format("woff2"),
    url("./lm-roman/lmroman-italic.woff") format("woff");
}

@font-face {
  font-family: "Latin Modern Roman";
  font-style: italic;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bolditalic.woff2") format("woff2"),
    url("./lm-roman/lmroman-bolditalic.woff") format("woff");
}

@font-face {
  font-family: "LM Roman";
  font-style: normal;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-regular.woff2") format("woff2"),
    url("./lm-roman/lmroman-regular.woff") format("woff");
}

@font-face {
  font-family: "LM Roman";
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bold.woff2") format("woff2"),
    url("./lm-roman/lmroman-bold.woff") format("woff");
}

@font-face {
  font-family: "LM Roman";
  font-style: italic;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-italic.woff2") format("woff2"),
    url("./lm-roman/lmroman-italic.woff") format("woff");
}

@font-face {
  font-family: "LM Roman";
  font-style: italic;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bolditalic.woff2") format("woff2"),
    url("./lm-roman/lmroman-bolditalic.woff") format("woff");
}

/* Keep KaTeX_Main usable for prose even when hashed Vite font files 404. */
@font-face {
  font-family: KaTeX_Main;
  font-style: normal;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-regular.woff2") format("woff2"),
    url("./lm-roman/lmroman-regular.woff") format("woff");
}

@font-face {
  font-family: KaTeX_Main;
  font-style: normal;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bold.woff2") format("woff2"),
    url("./lm-roman/lmroman-bold.woff") format("woff");
}

@font-face {
  font-family: KaTeX_Main;
  font-style: italic;
  font-weight: 100 500;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-italic.woff2") format("woff2"),
    url("./lm-roman/lmroman-italic.woff") format("woff");
}

@font-face {
  font-family: KaTeX_Main;
  font-style: italic;
  font-weight: 600 900;
  font-display: swap;
  src:
    url("./lm-roman/lmroman-bolditalic.woff2") format("woff2"),
    url("./lm-roman/lmroman-bolditalic.woff") format("woff");
}

#target-math-app,
.target-math-app-wrapper {
  --font-math: "Latin Modern Roman", "LM Roman", "KaTeX_Main", serif;
  font-family: var(--font-math) !important;
}

.target-math-app-wrapper .katex-question-wrapper,
.target-math-app-wrapper .markdown-body,
.target-math-app-wrapper .question,
.target-math-app-wrapper .qbody,
.target-math-app-wrapper .qbody p,
.target-math-app-wrapper .part,
.target-math-app-wrapper .display,
.target-math-app-wrapper .instructions,
.target-math-app-wrapper .formula,
.target-math-app-wrapper .qhead,
.target-math-app-wrapper .cover,
.target-math-app-wrapper .meta,
.target-math-app-wrapper .sidebar,
.target-math-app-wrapper .ms-image-container,
.target-math-app-wrapper .ms-image-container:before {
  font-family: "Latin Modern Roman", "LM Roman", "KaTeX_Main", serif !important;
}
