/*! Typlet's fonts: Typlet NewCM Math, derived from New Computer Modern Math Book
 * by Antonis Tsolomitis, under the GUST Font License (GUST-FONT-LICENSE.txt).
 * The styles for MathML, from the "Alignment" rules on, are ported from Typst's
 * HTML export: Copyright The Typst Project Developers, Apache License 2.0. The
 * other styles are Typlet's, under the MIT License. See THIRD_PARTY_NOTICES.md.
 * Generated by tools/fonts/build.mjs. */

@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-bold-latin.woff2) format("woff2");
  font-weight: bold;
  font-display: block;
  unicode-range: U+20-7E, U+A0-FF;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-other.woff2) format("woff2");
  font-display: block;
  unicode-range: U+306E, U+FE00-FE01, U+FEFF;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-arabic-math.woff2) format("woff2");
  font-display: block;
  unicode-range: U+EA35-EA36, U+1EE00-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-devanagari.woff2) format("woff2");
  font-display: block;
  unicode-range: U+900-97F, U+EBEC-ECEB;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-latin.woff2) format("woff2");
  font-display: block;
  unicode-range: U+A1-A6, U+A8-AB, U+AD-AF, U+B2-B6, U+B8-D6, U+D8-F6, U+F8-130, U+132-180, U+1A0-1A1, U+1AF-1B0, U+1B5, U+218-21B, U+2C6-2C7, U+2D8-2DD, U+309, U+30F-312, U+315, U+31A, U+323, U+326, U+32C-333, U+338, U+33F, U+34D, U+428, U+448, U+606-608, U+1EA0-1EF9, U+E000, U+E007, U+E00C, U+E00F-E011, U+E013-E014, U+E01A-E01B, U+E01E-E023, U+E026-E027, U+E02B, U+E02E, U+E036-E039, U+E03B-E03C, U+E03E, U+E041-E044, U+E046, U+E04A, U+E04F, U+E052-E053, U+E055-E056, U+E05C-E05E, U+E061-E062, U+E06A-E06E, U+E070-E073, U+E07E, U+E088-E089, U+E08C-E08D, U+E092, U+E095-E096, U+E098, U+E09D-E09E, U+E0A0-E0A1, U+E0AA, U+E0AF-E0B0, U+E0B6-E18D, U+E191, U+E194-E196, U+E198-E199, U+E19F-E1A0, U+E1A3-E1A8, U+E1AB-E1AC, U+E1B0, U+E1B3, U+E1BB-E1BE, U+E1C0-E1C1, U+E1C3, U+E1C6-E1C9, U+E1CB, U+E1CF, U+E1D4, U+E1D7-E1D8, U+E1DA-E1DB, U+E1E1-E1E3, U+E1E6-E1E7, U+E1EF-E1F3, U+E1F5-E1F8, U+E203, U+E20D-E20E, U+E211-E212, U+E217, U+E21A-E21B, U+E21D, U+E222-E223, U+E225-E226, U+E22F, U+E234-E235, U+E23B-E313, U+E317, U+E49E-E4A1, U+E5BD-E5C4, U+E5C9-E5CC, U+E5CE-E5D0, U+E5D2, U+E5D4, U+E5D6, U+E5D8-E5DA, U+E5DC, U+E5DE, U+E5E0, U+E5E2-E5E4, U+E5E6, U+E5E8, U+E5EA, U+E5EC-E5EE, U+E5F0, U+E5F2, U+E5F4, U+E5F6-E5F8, U+E5FA, U+E5FC, U+E5FE, U+E600-E602, U+E604, U+E606, U+E608, U+E60A-E60C, U+E60E, U+E610, U+E612, U+FB00-FB04, U+FB29;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-symbols.woff2) format("woff2");
  font-display: block;
  unicode-range: U+200B-200D, U+2010-2012, U+2017, U+201A-201B, U+201E-201F, U+2023-2025, U+2027, U+202F-2031, U+2038-2056, U+2058-2064, U+20A1, U+20AC, U+20D2-20D5, U+20D8, U+20DD-20DF, U+20E4-20F0, U+2100-2101, U+2103-2109, U+2114, U+2116-2117, U+211E-2123, U+2125-2126, U+2129-212B, U+212E, U+2132, U+2139-213B, U+2141-2144, U+214A-214F, U+2422-2423, U+2460-2600, U+2605-2606, U+2609, U+2621, U+2639-263E, U+2640, U+2642, U+2660-2667, U+2669-266B, U+266D-266F, U+267E, U+2680-2689, U+26A5, U+26AA-26AE, U+26B2, U+2713, U+2717, U+2720, U+272A, U+2736, U+273D, U+275A, U+2772-2773, U+279B, U+27A1, U+27C0-27C1, U+27C3-27D7, U+27DA-27DC, U+27DF-27E5, U+2E18, U+3012, U+3016-3017, U+3030, U+3036, U+E001-E002, U+E025, U+E02C, U+E03A, U+E04B, U+E054, U+E063, U+E077-E078, U+E07A, U+E082, U+E086-E087, U+E08F, U+E099, U+E0AE, U+E0B1-E0B3, U+E18F, U+E1AA, U+E1B1, U+E1BF, U+E1D0, U+E1D9, U+E1E8, U+E1FC-E1FD, U+E1FF, U+E207, U+E20B-E20C, U+E214, U+E21E, U+E233, U+E236-E238, U+E315, U+E48E-E49D, U+E5A6, U+E5AA-E5AC, U+E6F7, U+E6FC, U+E701, U+E706, U+E70B, U+E710, U+E715, U+E84E, U+E868, U+EA16-EA17, U+EA28, U+EBE6-EBEB, U+1F780-1F7D8, U+1F7E0-1F7EB;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-arrows.woff2) format("woff2");
  font-display: block;
  unicode-range: U+219A-21A5, U+21A7-21A8, U+21AB-21BB, U+21C5-21CF, U+21D6-21DC, U+21DE-21FF, U+27F0-27F4, U+27FD-27FE, U+2900-297F, U+2B00-2B73, U+2B76-2B95, U+2B97-2BFF, U+E4B0-E4B9, U+E4C1-E4C5, U+E4CA-E4E4, U+E4E8-E4EF, U+E4F8-E505, U+E527, U+E52B-E555, U+E56B-E5A5, U+E5A7-E5A9, U+E5AD-E5BC, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F8D0-1F8D8;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-operators.woff2) format("woff2");
  font-display: block;
  unicode-range: U+2246-2247, U+2249-224C, U+224E-224F, U+2251-2253, U+2255-225B, U+225D-225F, U+2274-2279, U+227C-2281, U+228C-228D, U+228F-2292, U+229A, U+229C-229F, U+22AA-22B9, U+22BB-22BF, U+22C7-22CD, U+22D0-22ED, U+22F2-2307, U+230C-231F, U+2322-239A, U+23AA, U+23AF-23B3, U+23B6, U+23B8-23DB, U+23E2-23FF, U+2980-29FF, U+2A03, U+2A07-2A7C, U+2A7F-2AAE, U+2AB1-2AFF, U+E6F4, U+E724, U+E743, U+E748, U+EA18-EA27, U+EA2A-EA34, U+EA6B-EA94, U+EAA9-EAAA, U+EABB-EABC, U+EAC5-EAFC, U+EB74-EB7F, U+EB82-EB8B, U+FE00-FE0F;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-mono.woff2) format("woff2");
  font-display: block;
  unicode-range: U+E83E-E83F, U+1D670-1D6A3, U+1D7F6-1D7FF;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-sans-bold.woff2) format("woff2");
  font-display: block;
  unicode-range: U+1D5D4-1D607, U+1D63C-1D66F, U+1D756-1D7C9, U+1D7EC-1D7F5;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-sans.woff2) format("woff2");
  font-display: block;
  unicode-range: U+E75C-E75F, U+1D5A0-1D5D3, U+1D608-1D63B, U+1D7E2-1D7EB;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-double-struck.woff2) format("woff2");
  font-display: block;
  unicode-range: U+2102, U+210D, U+2115, U+2119-211A, U+211D, U+2124, U+213C-2140, U+2145-2149, U+E760-E761, U+EA29, U+1D538-1D539, U+1D53B-1D53E, U+1D540-1D544, U+1D546, U+1D54A-1D550, U+1D552-1D56B, U+1D7D8-1D7E1;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-bold-fraktur.woff2) format("woff2");
  font-display: block;
  unicode-range: U+E7D0-E83D, U+1D56C-1D59F;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-fraktur.woff2) format("woff2");
  font-display: block;
  unicode-range: U+210C, U+2111, U+211C, U+2128, U+212D, U+E762-E7CF, U+1D504-1D505, U+1D507-1D50A, U+1D50D-1D514, U+1D516-1D51C, U+1D51E-1D537;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-bold-script.woff2) format("woff2");
  font-display: block;
  unicode-range: U+EA51-EA6A, U+EB31-EB64, U+EBB2-EBE5, U+FE00-FE0F, U+1D4D0-1D503;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-script.woff2) format("woff2");
  font-display: block;
  unicode-range: U+210A-210B, U+2110, U+2112, U+211B, U+212C, U+212F-2131, U+2133-2134, U+EA37-EA50, U+EAFD-EB30, U+EB8C-EBB1, U+FE00-FE0F, U+1D49C, U+1D49E-1D49F, U+1D4A2, U+1D4A5-1D4A6, U+1D4A9-1D4AC, U+1D4AE-1D4B9, U+1D4BB, U+1D4BD-1D4C3, U+1D4C5-1D4CF;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-bold-italic.woff2) format("woff2");
  font-display: block;
  unicode-range: U+E40C-E479, U+E99C-EA0D, U+EA11, U+EA15, U+1D468-1D49B, U+1D71C-1D755;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-bold.woff2) format("woff2");
  font-display: block;
  unicode-range: U+E38A-E40B, U+E8B8-E929, U+EA0F, U+EA13, U+1D400-1D433, U+1D6A8-1D6E1, U+1D7CA-1D7CB, U+1D7CE-1D7D7;
}
@font-face {
  font-family: "Typlet NewCM Math";
  src: url(typlet-newcm-math-main.woff2) format("woff2");
  font-display: block;
  unicode-range: U+20-7E, U+A0, U+A7, U+AC, U+B0-B1, U+B7, U+D7, U+F7, U+131, U+237, U+300-308, U+30A-30C, U+391-3A1, U+3A3-3A9, U+3B1-3C9, U+3D0-3D1, U+3D5-3D6, U+3D8-3DD, U+3E0-3E1, U+3F0-3F1, U+3F4-3F6, U+2000-200A, U+2013-2016, U+2018-2019, U+201C-201D, U+2020-2022, U+2026, U+2032-2037, U+2057, U+20D0-20D1, U+20D6-20D7, U+20DB-20DC, U+20E1, U+210E-210F, U+2113, U+2118, U+2127, U+2135-2138, U+2190-2199, U+21A6, U+21A9-21AA, U+21BC-21C4, U+21D0-21D5, U+21DD, U+2200-2245, U+2248, U+224D, U+2250, U+2254, U+225C, U+2260-2273, U+227A-227B, U+2282-228B, U+228E, U+2293-2299, U+229B, U+22A0-22A9, U+22BA, U+22C0-22C6, U+22CE-22CF, U+22EE-22F1, U+2308-230B, U+2320-2321, U+239B-23A9, U+23AB-23AE, U+23B4-23B5, U+23B7, U+23DC-23E1, U+27C2, U+27D8-27D9, U+27DD-27DE, U+27E6-27EF, U+27F5-27FC, U+27FF, U+2A00-2A02, U+2A04-2A06, U+2A7D-2A7E, U+2AAF-2AB0, U+E003-E006, U+E008-E00B, U+E00D-E00E, U+E012, U+E015-E019, U+E01C-E01D, U+E024, U+E028-E02A, U+E02D, U+E02F-E035, U+E03D, U+E03F-E040, U+E045, U+E047-E049, U+E04C-E04E, U+E050-E051, U+E057-E05B, U+E05F-E060, U+E064-E069, U+E06F, U+E074-E076, U+E079, U+E07B-E07D, U+E07F-E081, U+E083-E085, U+E08A-E08B, U+E08E, U+E090-E091, U+E093-E094, U+E097, U+E09A-E09C, U+E09F, U+E0A2-E0A9, U+E0AB-E0AD, U+E0B4-E0B5, U+E18E, U+E190, U+E192-E193, U+E197, U+E19A-E19E, U+E1A1-E1A2, U+E1A9, U+E1AD-E1AF, U+E1B2, U+E1B4-E1BA, U+E1C2, U+E1C4-E1C5, U+E1CA, U+E1CC-E1CE, U+E1D1-E1D3, U+E1D5-E1D6, U+E1DC-E1E0, U+E1E4-E1E5, U+E1E9-E1EE, U+E1F4, U+E1F9-E1FB, U+E1FE, U+E200-E202, U+E204-E206, U+E208-E20A, U+E20F-E210, U+E213, U+E215-E216, U+E218-E219, U+E21C, U+E21F-E221, U+E224, U+E227-E22E, U+E230-E232, U+E239-E23A, U+E314, U+E316, U+E318-E389, U+E47A-E48D, U+E4A2-E4AF, U+E4BA-E4C0, U+E4C6-E4C9, U+E4E5-E4E7, U+E4F0-E4F7, U+E506-E526, U+E528-E52A, U+E556-E56A, U+E5C5-E5C8, U+E5CD, U+E5D1, U+E5D3, U+E5D5, U+E5D7, U+E5DB, U+E5DD, U+E5DF, U+E5E1, U+E5E5, U+E5E7, U+E5E9, U+E5EB, U+E5EF, U+E5F1, U+E5F3, U+E5F5, U+E5F9, U+E5FB, U+E5FD, U+E5FF, U+E603, U+E605, U+E607, U+E609, U+E60D, U+E60F, U+E611, U+E613-E6F3, U+E6F5-E6F6, U+E6F8-E6FB, U+E6FD-E700, U+E702-E705, U+E707-E70A, U+E70C-E70F, U+E711-E714, U+E716-E723, U+E725-E742, U+E744-E747, U+E749-E75B, U+E840-E84D, U+E84F-E867, U+E869-E8B7, U+E92A-E99B, U+EA0E, U+EA10, U+EA12, U+EA14, U+EA95-EAA8, U+EAAB-EABA, U+EABD-EAC4, U+EB65-EB73, U+EB80-EB81, U+FE00-FE0F, U+1D434-1D454, U+1D456-1D467, U+1D6A4-1D6A5, U+1D6E2-1D71B;
}

.typlet {
  font: normal 1em "Typlet NewCM Math";
  line-height: 1.2;
  position: relative;
  text-indent: 0;
  text-rendering: auto;
  font-kerning: none;
  font-variant-ligatures: none;
  font-feature-settings: "kern" 0, "liga" 0, "clig" 0, "calt" 0;
  text-transform: none;
  letter-spacing: normal;
  word-spacing: normal;
}
.typlet-display {
  display: block;
  margin: 1em 0;
  text-align: center;
}
.typlet .typlet-mathml {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
/* The MathML beside the HTML is for screen readers: it needs no web font. */
.typlet .typlet-mathml,
.typlet .typlet-mathml math {
  font-family: math;
}
.typlet .typlet-html {
  white-space: normal;
}
.typlet .f {
  position: relative;
  display: inline-block;
}
.typlet .g {
  position: absolute;
  line-height: 0;
  white-space: pre;
}
.typlet .g::before {
  content: "";
  display: inline-block;
  height: 1em;
}
.typlet .g.b {
  font-weight: bold;
}
/* Characters the math font lacks, which the browser draws with a serif of its own. */
.typlet .g.c {
  font-family: serif;
}
.typlet .r {
  position: absolute;
  background: currentColor;
  transform-origin: 0 50%;
}
.typlet .x {
  position: absolute;
  box-sizing: border-box;
}
.typlet .l {
  position: absolute;
}
.typlet-display.n > .typlet {
  display: flex;
  align-items: center;
}
.typlet-display.n .typlet-html {
  display: flex;
  flex: 1 1 auto;
  align-items: flex-start;
}
.typlet .t {
  display: flex;
  flex: 1 0 auto;
  align-items: flex-start;
}

.typlet math {
  font-family: "Typlet NewCM Math", math;
}

/* Alignment */
.typlet mtable.right-align mtd,
.typlet mtable mtd.right-align,
.typlet mtable.left-align mtd.right-align,
.typlet mtable.aligned mtd:nth-child(odd) {
  justify-items: end;
  text-align: right;
}
.typlet mtable.cases mtd,
.typlet mtable.left-align mtd,
.typlet mtable mtd.left-align,
.typlet mtable.aligned mtd:nth-child(even),
.typlet math:is(:not([display])) > mtable.multiline-equation mtd {
  justify-items: start;
  text-align: left;
}
.typlet mtable.cases mtd,
.typlet mtable.aligned mtd,
.typlet mtable mtd.flushed,
.typlet mtable mtd.left-flush {
  padding-left: 0;
}
.typlet mtable.cases mtd,
.typlet mtable.aligned mtd,
.typlet mtable mtd.flushed,
.typlet mtable mtd.right-flush {
  padding-right: 0;
}

/* Tables */
.typlet mtable {
  math-style: inherit;
}
.typlet mtd {
  math-depth: auto-add;
  math-style: compact;
  math-shift: compact;
}

/* Equations */
.typlet mtable.multiline-equation mtd {
  math-depth: inherit;
  math-style: inherit;
  math-shift: inherit;
  padding: 0;
}
.typlet math > mtable.multiline-equation mtr:not(:last-child) mtd {
  padding-bottom: 0.5em;
}

/* Fractions */
.typlet mfrac {
  padding-inline: 0;
  margin-inline: 0.1em;
}

/* Accents */
.typlet mover[accent="true" i] > :first-child {
  font-feature-settings: "dtls";
}
.typlet mover.dotted[accent="true" i] > :first-child {
  font-feature-settings: "dtls" 0;
}

/* Other rules for scriptlevel, displaystyle and math-shift */
.typlet munder > :nth-child(2),
.typlet munderover > :nth-child(2) {
  math-shift: compact
}
.typlet munder[accentunder="true" i] > :not(:first-child),
.typlet mover[accent="true" i] > :not(:first-child) {
  math-depth: inherit;
  math-style: inherit;
  math-shift: inherit;
}
