/* [project]/node_modules/katex/dist/katex.min.css [app-client] (css) */
@font-face {
  font-display: block;
  font-family: KaTeX_AMS;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_AMS-Regular.25ieegmnh38ts.woff2") format("woff2"), url("../media/KaTeX_AMS-Regular.10y3kupq4t663.woff") format("woff"), url("../media/KaTeX_AMS-Regular.418dr7cz3fo2x.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Caligraphic;
  font-style: normal;
  font-weight: 700;
  src: url("../media/KaTeX_Caligraphic-Bold.06b-ya9t43ioz.woff2") format("woff2"), url("../media/KaTeX_Caligraphic-Bold.2vmk2hva4ctha.woff") format("woff"), url("../media/KaTeX_Caligraphic-Bold.40ltxhe834pns.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Caligraphic;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Caligraphic-Regular.2eph4dlhid_m9.woff2") format("woff2"), url("../media/KaTeX_Caligraphic-Regular.3gxeetazf831f.woff") format("woff"), url("../media/KaTeX_Caligraphic-Regular.07-7u27-nhn_r.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Fraktur;
  font-style: normal;
  font-weight: 700;
  src: url("../media/KaTeX_Fraktur-Bold.2sasz-d-jtw8y.woff2") format("woff2"), url("../media/KaTeX_Fraktur-Bold.1alcy76__wdj2.woff") format("woff"), url("../media/KaTeX_Fraktur-Bold.19yqa_tc9d_gx.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Fraktur;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Fraktur-Regular.2d10y4xmjvzlf.woff2") format("woff2"), url("../media/KaTeX_Fraktur-Regular.110oo81prr9n5.woff") format("woff"), url("../media/KaTeX_Fraktur-Regular.2qhy34r6a05dn.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Main;
  font-style: normal;
  font-weight: 700;
  src: url("../media/KaTeX_Main-Bold.3-rowy8o6_4ky.woff2") format("woff2"), url("../media/KaTeX_Main-Bold.0v1esh257kqpe.woff") format("woff"), url("../media/KaTeX_Main-Bold.0us_n0tnxlxu7.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Main;
  font-style: italic;
  font-weight: 700;
  src: url("../media/KaTeX_Main-BoldItalic.14r2naom8mrec.woff2") format("woff2"), url("../media/KaTeX_Main-BoldItalic.13355ck5zr48q.woff") format("woff"), url("../media/KaTeX_Main-BoldItalic.3x_u9cepaced0.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Main;
  font-style: italic;
  font-weight: 400;
  src: url("../media/KaTeX_Main-Italic.0lig0v9j0700p.woff2") format("woff2"), url("../media/KaTeX_Main-Italic.0afv392dj4w59.woff") format("woff"), url("../media/KaTeX_Main-Italic.2hkw3230mfwcv.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Main;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Main-Regular.1ryvsdzh2w1_e.woff2") format("woff2"), url("../media/KaTeX_Main-Regular.15u8r3b2y7fv4.woff") format("woff"), url("../media/KaTeX_Main-Regular.0symfa7dqj6jd.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Math;
  font-style: italic;
  font-weight: 700;
  src: url("../media/KaTeX_Math-BoldItalic.1oopuu636h4il.woff2") format("woff2"), url("../media/KaTeX_Math-BoldItalic.12pl58orkw9rg.woff") format("woff"), url("../media/KaTeX_Math-BoldItalic.0y5w36a5aq__2.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Math;
  font-style: italic;
  font-weight: 400;
  src: url("../media/KaTeX_Math-Italic.32405s1aq8vas.woff2") format("woff2"), url("../media/KaTeX_Math-Italic.0w0b1ugh62cfr.woff") format("woff"), url("../media/KaTeX_Math-Italic.2vkekfblmz5nb.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_SansSerif;
  font-style: normal;
  font-weight: 700;
  src: url("../media/KaTeX_SansSerif-Bold.0h3wi2z_eouyg.woff2") format("woff2"), url("../media/KaTeX_SansSerif-Bold.1ovw5p-yjp56g.woff") format("woff"), url("../media/KaTeX_SansSerif-Bold.2d03q85pwxpti.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_SansSerif;
  font-style: italic;
  font-weight: 400;
  src: url("../media/KaTeX_SansSerif-Italic.0wkjc4dm2kcit.woff2") format("woff2"), url("../media/KaTeX_SansSerif-Italic.1qavw__2zz8gk.woff") format("woff"), url("../media/KaTeX_SansSerif-Italic.3i-q087b23-m8.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_SansSerif;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_SansSerif-Regular.2peiewu59z3d-.woff2") format("woff2"), url("../media/KaTeX_SansSerif-Regular.1i4afx8nk8n4r.woff") format("woff"), url("../media/KaTeX_SansSerif-Regular.31pbu25feko_c.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Script;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Script-Regular.11h14300o9pd0.woff2") format("woff2"), url("../media/KaTeX_Script-Regular.3110jb9c-bxna.woff") format("woff"), url("../media/KaTeX_Script-Regular.28p_x7iz71ofe.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Size1;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Size1-Regular.03lhvx36ekcou.woff2") format("woff2"), url("../media/KaTeX_Size1-Regular.1slf4bh0hc6vm.woff") format("woff"), url("../media/KaTeX_Size1-Regular.1y57-ck23ey8c.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Size2;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Size2-Regular.14s5gg-puz6h-.woff2") format("woff2"), url("../media/KaTeX_Size2-Regular.0-kwyvx03omo8.woff") format("woff"), url("../media/KaTeX_Size2-Regular.2u0s-b07k2o9m.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Size3;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Size3-Regular.1n1rgzz84z8r9.woff2") format("woff2"), url("../media/KaTeX_Size3-Regular.04o9a_02gu_e8.woff") format("woff"), url("../media/KaTeX_Size3-Regular.1pkn-dge4q0fv.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Size4;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Size4-Regular.2sgotkdv3dcyv.woff2") format("woff2"), url("../media/KaTeX_Size4-Regular.3p2r1l7xmebxv.woff") format("woff"), url("../media/KaTeX_Size4-Regular.2uelkfk2yna5e.ttf") format("truetype");
}

@font-face {
  font-display: block;
  font-family: KaTeX_Typewriter;
  font-style: normal;
  font-weight: 400;
  src: url("../media/KaTeX_Typewriter-Regular.11gr2d2wuwz77.woff2") format("woff2"), url("../media/KaTeX_Typewriter-Regular.12f8myjij3617.woff") format("woff"), url("../media/KaTeX_Typewriter-Regular.3nee9kjfy6nm8.ttf") format("truetype");
}

.katex {
  text-indent: 0;
  text-rendering: auto;
  font: 1.21em / 1.2 KaTeX_Main, Times New Roman, serif;
  position: relative;
}

.katex * {
  border-color: currentColor;
  -ms-high-contrast-adjust: none !important;
}

.katex .katex-version:after {
  content: "0.18.7";
}

.katex .katex-mathml {
  clip-path: inset(50%);
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.katex .katex-html > .katex-newline {
  display: block;
}

.katex .katex-base {
  white-space: nowrap;
  width: min-content;
  position: relative;
}

.katex .katex-base, .katex .katex-strut {
  display: inline-block;
}

.katex .textbf {
  font-weight: 700;
}

.katex .textit {
  font-style: italic;
}

.katex .textrm {
  font-family: KaTeX_Main;
}

.katex .textsf {
  font-family: KaTeX_SansSerif;
}

.katex .texttt {
  font-family: KaTeX_Typewriter;
}

.katex .mathnormal {
  font-family: KaTeX_Math;
  font-style: italic;
}

.katex .mathit {
  font-family: KaTeX_Main;
  font-style: italic;
}

.katex .mathrm {
  font-style: normal;
}

.katex .mathbf {
  font-family: KaTeX_Main;
  font-weight: 700;
}

.katex .boldsymbol {
  font-family: KaTeX_Math;
  font-style: italic;
  font-weight: 700;
}

.katex .amsrm, .katex .mathbb, .katex .textbb {
  font-family: KaTeX_AMS;
}

.katex .mathcal {
  font-family: KaTeX_Caligraphic;
}

.katex .mathfrak, .katex .textfrak {
  font-family: KaTeX_Fraktur;
}

.katex .mathboldfrak, .katex .textboldfrak {
  font-family: KaTeX_Fraktur;
  font-weight: 700;
}

.katex .mathtt {
  font-family: KaTeX_Typewriter;
}

.katex .mathscr, .katex .textscr {
  font-family: KaTeX_Script;
}

.katex .mathsf, .katex .textsf {
  font-family: KaTeX_SansSerif;
}

.katex .mathboldsf, .katex .textboldsf {
  font-family: KaTeX_SansSerif;
  font-weight: 700;
}

.katex .mathitsf, .katex .mathsfit, .katex .textitsf {
  font-family: KaTeX_SansSerif;
  font-style: italic;
}

.katex .mainrm {
  font-family: KaTeX_Main;
  font-style: normal;
}

.katex .vlist-t {
  border-collapse: collapse;
  table-layout: fixed;
  display: inline-table;
}

.katex .vlist-r {
  display: table-row;
}

.katex .vlist {
  vertical-align: bottom;
  display: table-cell;
  position: relative;
}

.katex .vlist > span {
  height: 0;
  display: block;
  position: relative;
}

.katex .vlist > span > span {
  display: inline-block;
}

.katex .vlist > span > .pstrut {
  width: 0;
  overflow: hidden;
}

.katex .vlist-t2 {
  margin-right: -2px;
}

.katex .vlist-s {
  vertical-align: bottom;
  width: 2px;
  min-width: 2px;
  font-size: 1px;
  display: table-cell;
}

.katex .katex-vbox {
  flex-direction: column;
  align-items: baseline;
  display: inline-flex;
}

.katex .katex-thinbox {
  flex-direction: row;
  width: 0;
  max-width: 0;
  display: inline-flex;
}

.katex .msupsub {
  text-align: left;
}

.katex .mfrac > span > span {
  text-align: center;
}

.katex .mfrac .frac-line {
  border-bottom-style: solid;
  width: 100%;
  display: inline-block;
}

.katex .katex-hdashline, .katex .katex-hline, .katex .katex-overline .overline-line, .katex .katex-rule, .katex .katex-underline .underline-line, .katex .mfrac .frac-line {
  min-height: 1px;
}

.katex .mspace {
  display: inline-block;
}

.katex .katex-smash {
  line-height: 0;
  display: inline;
}

.katex .clap, .katex .llap, .katex .rlap {
  width: 0;
  position: relative;
}

.katex .clap > .katex-inner, .katex .llap > .katex-inner, .katex .rlap > .katex-inner {
  position: absolute;
}

.katex .clap > .katex-fix, .katex .llap > .katex-fix, .katex .rlap > .katex-fix {
  display: inline-block;
}

.katex .llap > .katex-inner {
  right: 0;
}

.katex .clap > .katex-inner, .katex .rlap > .katex-inner {
  left: 0;
}

.katex .clap > .katex-inner > span {
  margin-left: -50%;
  margin-right: 50%;
}

.katex .katex-rule {
  border: 0 solid;
  display: inline-block;
  position: relative;
}

.katex .katex-hline, .katex .katex-overline .overline-line, .katex .katex-underline .underline-line {
  border-bottom-style: solid;
  width: 100%;
  display: inline-block;
}

.katex .katex-hdashline {
  border-bottom-style: dashed;
  width: 100%;
  display: inline-block;
}

.katex .sqrt > .katex-root {
  margin-left: .277778em;
  margin-right: -.555556em;
}

.katex .fontsize-ensurer.reset-size1.size1, .katex .katex-sizing.reset-size1.size1 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size1.size2, .katex .katex-sizing.reset-size1.size2 {
  font-size: 1.2em;
}

.katex .fontsize-ensurer.reset-size1.size3, .katex .katex-sizing.reset-size1.size3 {
  font-size: 1.4em;
}

.katex .fontsize-ensurer.reset-size1.size4, .katex .katex-sizing.reset-size1.size4 {
  font-size: 1.6em;
}

.katex .fontsize-ensurer.reset-size1.size5, .katex .katex-sizing.reset-size1.size5 {
  font-size: 1.8em;
}

.katex .fontsize-ensurer.reset-size1.size6, .katex .katex-sizing.reset-size1.size6 {
  font-size: 2em;
}

.katex .fontsize-ensurer.reset-size1.size7, .katex .katex-sizing.reset-size1.size7 {
  font-size: 2.4em;
}

.katex .fontsize-ensurer.reset-size1.size8, .katex .katex-sizing.reset-size1.size8 {
  font-size: 2.88em;
}

.katex .fontsize-ensurer.reset-size1.size9, .katex .katex-sizing.reset-size1.size9 {
  font-size: 3.456em;
}

.katex .fontsize-ensurer.reset-size1.size10, .katex .katex-sizing.reset-size1.size10 {
  font-size: 4.148em;
}

.katex .fontsize-ensurer.reset-size1.size11, .katex .katex-sizing.reset-size1.size11 {
  font-size: 4.976em;
}

.katex .fontsize-ensurer.reset-size2.size1, .katex .katex-sizing.reset-size2.size1 {
  font-size: .833333em;
}

.katex .fontsize-ensurer.reset-size2.size2, .katex .katex-sizing.reset-size2.size2 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size2.size3, .katex .katex-sizing.reset-size2.size3 {
  font-size: 1.16667em;
}

.katex .fontsize-ensurer.reset-size2.size4, .katex .katex-sizing.reset-size2.size4 {
  font-size: 1.33333em;
}

.katex .fontsize-ensurer.reset-size2.size5, .katex .katex-sizing.reset-size2.size5 {
  font-size: 1.5em;
}

.katex .fontsize-ensurer.reset-size2.size6, .katex .katex-sizing.reset-size2.size6 {
  font-size: 1.66667em;
}

.katex .fontsize-ensurer.reset-size2.size7, .katex .katex-sizing.reset-size2.size7 {
  font-size: 2em;
}

.katex .fontsize-ensurer.reset-size2.size8, .katex .katex-sizing.reset-size2.size8 {
  font-size: 2.4em;
}

.katex .fontsize-ensurer.reset-size2.size9, .katex .katex-sizing.reset-size2.size9 {
  font-size: 2.88em;
}

.katex .fontsize-ensurer.reset-size2.size10, .katex .katex-sizing.reset-size2.size10 {
  font-size: 3.45667em;
}

.katex .fontsize-ensurer.reset-size2.size11, .katex .katex-sizing.reset-size2.size11 {
  font-size: 4.14667em;
}

.katex .fontsize-ensurer.reset-size3.size1, .katex .katex-sizing.reset-size3.size1 {
  font-size: .714286em;
}

.katex .fontsize-ensurer.reset-size3.size2, .katex .katex-sizing.reset-size3.size2 {
  font-size: .857143em;
}

.katex .fontsize-ensurer.reset-size3.size3, .katex .katex-sizing.reset-size3.size3 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size3.size4, .katex .katex-sizing.reset-size3.size4 {
  font-size: 1.14286em;
}

.katex .fontsize-ensurer.reset-size3.size5, .katex .katex-sizing.reset-size3.size5 {
  font-size: 1.28571em;
}

.katex .fontsize-ensurer.reset-size3.size6, .katex .katex-sizing.reset-size3.size6 {
  font-size: 1.42857em;
}

.katex .fontsize-ensurer.reset-size3.size7, .katex .katex-sizing.reset-size3.size7 {
  font-size: 1.71429em;
}

.katex .fontsize-ensurer.reset-size3.size8, .katex .katex-sizing.reset-size3.size8 {
  font-size: 2.05714em;
}

.katex .fontsize-ensurer.reset-size3.size9, .katex .katex-sizing.reset-size3.size9 {
  font-size: 2.46857em;
}

.katex .fontsize-ensurer.reset-size3.size10, .katex .katex-sizing.reset-size3.size10 {
  font-size: 2.96286em;
}

.katex .fontsize-ensurer.reset-size3.size11, .katex .katex-sizing.reset-size3.size11 {
  font-size: 3.55429em;
}

.katex .fontsize-ensurer.reset-size4.size1, .katex .katex-sizing.reset-size4.size1 {
  font-size: .625em;
}

.katex .fontsize-ensurer.reset-size4.size2, .katex .katex-sizing.reset-size4.size2 {
  font-size: .75em;
}

.katex .fontsize-ensurer.reset-size4.size3, .katex .katex-sizing.reset-size4.size3 {
  font-size: .875em;
}

.katex .fontsize-ensurer.reset-size4.size4, .katex .katex-sizing.reset-size4.size4 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size4.size5, .katex .katex-sizing.reset-size4.size5 {
  font-size: 1.125em;
}

.katex .fontsize-ensurer.reset-size4.size6, .katex .katex-sizing.reset-size4.size6 {
  font-size: 1.25em;
}

.katex .fontsize-ensurer.reset-size4.size7, .katex .katex-sizing.reset-size4.size7 {
  font-size: 1.5em;
}

.katex .fontsize-ensurer.reset-size4.size8, .katex .katex-sizing.reset-size4.size8 {
  font-size: 1.8em;
}

.katex .fontsize-ensurer.reset-size4.size9, .katex .katex-sizing.reset-size4.size9 {
  font-size: 2.16em;
}

.katex .fontsize-ensurer.reset-size4.size10, .katex .katex-sizing.reset-size4.size10 {
  font-size: 2.5925em;
}

.katex .fontsize-ensurer.reset-size4.size11, .katex .katex-sizing.reset-size4.size11 {
  font-size: 3.11em;
}

.katex .fontsize-ensurer.reset-size5.size1, .katex .katex-sizing.reset-size5.size1 {
  font-size: .555556em;
}

.katex .fontsize-ensurer.reset-size5.size2, .katex .katex-sizing.reset-size5.size2 {
  font-size: .666667em;
}

.katex .fontsize-ensurer.reset-size5.size3, .katex .katex-sizing.reset-size5.size3 {
  font-size: .777778em;
}

.katex .fontsize-ensurer.reset-size5.size4, .katex .katex-sizing.reset-size5.size4 {
  font-size: .888889em;
}

.katex .fontsize-ensurer.reset-size5.size5, .katex .katex-sizing.reset-size5.size5 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size5.size6, .katex .katex-sizing.reset-size5.size6 {
  font-size: 1.11111em;
}

.katex .fontsize-ensurer.reset-size5.size7, .katex .katex-sizing.reset-size5.size7 {
  font-size: 1.33333em;
}

.katex .fontsize-ensurer.reset-size5.size8, .katex .katex-sizing.reset-size5.size8 {
  font-size: 1.6em;
}

.katex .fontsize-ensurer.reset-size5.size9, .katex .katex-sizing.reset-size5.size9 {
  font-size: 1.92em;
}

.katex .fontsize-ensurer.reset-size5.size10, .katex .katex-sizing.reset-size5.size10 {
  font-size: 2.30444em;
}

.katex .fontsize-ensurer.reset-size5.size11, .katex .katex-sizing.reset-size5.size11 {
  font-size: 2.76444em;
}

.katex .fontsize-ensurer.reset-size6.size1, .katex .katex-sizing.reset-size6.size1 {
  font-size: .5em;
}

.katex .fontsize-ensurer.reset-size6.size2, .katex .katex-sizing.reset-size6.size2 {
  font-size: .6em;
}

.katex .fontsize-ensurer.reset-size6.size3, .katex .katex-sizing.reset-size6.size3 {
  font-size: .7em;
}

.katex .fontsize-ensurer.reset-size6.size4, .katex .katex-sizing.reset-size6.size4 {
  font-size: .8em;
}

.katex .fontsize-ensurer.reset-size6.size5, .katex .katex-sizing.reset-size6.size5 {
  font-size: .9em;
}

.katex .fontsize-ensurer.reset-size6.size6, .katex .katex-sizing.reset-size6.size6 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size6.size7, .katex .katex-sizing.reset-size6.size7 {
  font-size: 1.2em;
}

.katex .fontsize-ensurer.reset-size6.size8, .katex .katex-sizing.reset-size6.size8 {
  font-size: 1.44em;
}

.katex .fontsize-ensurer.reset-size6.size9, .katex .katex-sizing.reset-size6.size9 {
  font-size: 1.728em;
}

.katex .fontsize-ensurer.reset-size6.size10, .katex .katex-sizing.reset-size6.size10 {
  font-size: 2.074em;
}

.katex .fontsize-ensurer.reset-size6.size11, .katex .katex-sizing.reset-size6.size11 {
  font-size: 2.488em;
}

.katex .fontsize-ensurer.reset-size7.size1, .katex .katex-sizing.reset-size7.size1 {
  font-size: .416667em;
}

.katex .fontsize-ensurer.reset-size7.size2, .katex .katex-sizing.reset-size7.size2 {
  font-size: .5em;
}

.katex .fontsize-ensurer.reset-size7.size3, .katex .katex-sizing.reset-size7.size3 {
  font-size: .583333em;
}

.katex .fontsize-ensurer.reset-size7.size4, .katex .katex-sizing.reset-size7.size4 {
  font-size: .666667em;
}

.katex .fontsize-ensurer.reset-size7.size5, .katex .katex-sizing.reset-size7.size5 {
  font-size: .75em;
}

.katex .fontsize-ensurer.reset-size7.size6, .katex .katex-sizing.reset-size7.size6 {
  font-size: .833333em;
}

.katex .fontsize-ensurer.reset-size7.size7, .katex .katex-sizing.reset-size7.size7 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size7.size8, .katex .katex-sizing.reset-size7.size8 {
  font-size: 1.2em;
}

.katex .fontsize-ensurer.reset-size7.size9, .katex .katex-sizing.reset-size7.size9 {
  font-size: 1.44em;
}

.katex .fontsize-ensurer.reset-size7.size10, .katex .katex-sizing.reset-size7.size10 {
  font-size: 1.72833em;
}

.katex .fontsize-ensurer.reset-size7.size11, .katex .katex-sizing.reset-size7.size11 {
  font-size: 2.07333em;
}

.katex .fontsize-ensurer.reset-size8.size1, .katex .katex-sizing.reset-size8.size1 {
  font-size: .347222em;
}

.katex .fontsize-ensurer.reset-size8.size2, .katex .katex-sizing.reset-size8.size2 {
  font-size: .416667em;
}

.katex .fontsize-ensurer.reset-size8.size3, .katex .katex-sizing.reset-size8.size3 {
  font-size: .486111em;
}

.katex .fontsize-ensurer.reset-size8.size4, .katex .katex-sizing.reset-size8.size4 {
  font-size: .555556em;
}

.katex .fontsize-ensurer.reset-size8.size5, .katex .katex-sizing.reset-size8.size5 {
  font-size: .625em;
}

.katex .fontsize-ensurer.reset-size8.size6, .katex .katex-sizing.reset-size8.size6 {
  font-size: .694444em;
}

.katex .fontsize-ensurer.reset-size8.size7, .katex .katex-sizing.reset-size8.size7 {
  font-size: .833333em;
}

.katex .fontsize-ensurer.reset-size8.size8, .katex .katex-sizing.reset-size8.size8 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size8.size9, .katex .katex-sizing.reset-size8.size9 {
  font-size: 1.2em;
}

.katex .fontsize-ensurer.reset-size8.size10, .katex .katex-sizing.reset-size8.size10 {
  font-size: 1.44028em;
}

.katex .fontsize-ensurer.reset-size8.size11, .katex .katex-sizing.reset-size8.size11 {
  font-size: 1.72778em;
}

.katex .fontsize-ensurer.reset-size9.size1, .katex .katex-sizing.reset-size9.size1 {
  font-size: .289352em;
}

.katex .fontsize-ensurer.reset-size9.size2, .katex .katex-sizing.reset-size9.size2 {
  font-size: .347222em;
}

.katex .fontsize-ensurer.reset-size9.size3, .katex .katex-sizing.reset-size9.size3 {
  font-size: .405093em;
}

.katex .fontsize-ensurer.reset-size9.size4, .katex .katex-sizing.reset-size9.size4 {
  font-size: .462963em;
}

.katex .fontsize-ensurer.reset-size9.size5, .katex .katex-sizing.reset-size9.size5 {
  font-size: .520833em;
}

.katex .fontsize-ensurer.reset-size9.size6, .katex .katex-sizing.reset-size9.size6 {
  font-size: .578704em;
}

.katex .fontsize-ensurer.reset-size9.size7, .katex .katex-sizing.reset-size9.size7 {
  font-size: .694444em;
}

.katex .fontsize-ensurer.reset-size9.size8, .katex .katex-sizing.reset-size9.size8 {
  font-size: .833333em;
}

.katex .fontsize-ensurer.reset-size9.size9, .katex .katex-sizing.reset-size9.size9 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size9.size10, .katex .katex-sizing.reset-size9.size10 {
  font-size: 1.20023em;
}

.katex .fontsize-ensurer.reset-size9.size11, .katex .katex-sizing.reset-size9.size11 {
  font-size: 1.43981em;
}

.katex .fontsize-ensurer.reset-size10.size1, .katex .katex-sizing.reset-size10.size1 {
  font-size: .24108em;
}

.katex .fontsize-ensurer.reset-size10.size2, .katex .katex-sizing.reset-size10.size2 {
  font-size: .289296em;
}

.katex .fontsize-ensurer.reset-size10.size3, .katex .katex-sizing.reset-size10.size3 {
  font-size: .337512em;
}

.katex .fontsize-ensurer.reset-size10.size4, .katex .katex-sizing.reset-size10.size4 {
  font-size: .385728em;
}

.katex .fontsize-ensurer.reset-size10.size5, .katex .katex-sizing.reset-size10.size5 {
  font-size: .433944em;
}

.katex .fontsize-ensurer.reset-size10.size6, .katex .katex-sizing.reset-size10.size6 {
  font-size: .48216em;
}

.katex .fontsize-ensurer.reset-size10.size7, .katex .katex-sizing.reset-size10.size7 {
  font-size: .578592em;
}

.katex .fontsize-ensurer.reset-size10.size8, .katex .katex-sizing.reset-size10.size8 {
  font-size: .694311em;
}

.katex .fontsize-ensurer.reset-size10.size9, .katex .katex-sizing.reset-size10.size9 {
  font-size: .833173em;
}

.katex .fontsize-ensurer.reset-size10.size10, .katex .katex-sizing.reset-size10.size10 {
  font-size: 1em;
}

.katex .fontsize-ensurer.reset-size10.size11, .katex .katex-sizing.reset-size10.size11 {
  font-size: 1.19961em;
}

.katex .fontsize-ensurer.reset-size11.size1, .katex .katex-sizing.reset-size11.size1 {
  font-size: .200965em;
}

.katex .fontsize-ensurer.reset-size11.size2, .katex .katex-sizing.reset-size11.size2 {
  font-size: .241158em;
}

.katex .fontsize-ensurer.reset-size11.size3, .katex .katex-sizing.reset-size11.size3 {
  font-size: .281351em;
}

.katex .fontsize-ensurer.reset-size11.size4, .katex .katex-sizing.reset-size11.size4 {
  font-size: .321543em;
}

.katex .fontsize-ensurer.reset-size11.size5, .katex .katex-sizing.reset-size11.size5 {
  font-size: .361736em;
}

.katex .fontsize-ensurer.reset-size11.size6, .katex .katex-sizing.reset-size11.size6 {
  font-size: .401929em;
}

.katex .fontsize-ensurer.reset-size11.size7, .katex .katex-sizing.reset-size11.size7 {
  font-size: .482315em;
}

.katex .fontsize-ensurer.reset-size11.size8, .katex .katex-sizing.reset-size11.size8 {
  font-size: .578778em;
}

.katex .fontsize-ensurer.reset-size11.size9, .katex .katex-sizing.reset-size11.size9 {
  font-size: .694534em;
}

.katex .fontsize-ensurer.reset-size11.size10, .katex .katex-sizing.reset-size11.size10 {
  font-size: .833601em;
}

.katex .fontsize-ensurer.reset-size11.size11, .katex .katex-sizing.reset-size11.size11 {
  font-size: 1em;
}

.katex .delimsizing.size1 {
  font-family: KaTeX_Size1;
}

.katex .delimsizing.size2 {
  font-family: KaTeX_Size2;
}

.katex .delimsizing.size3 {
  font-family: KaTeX_Size3;
}

.katex .delimsizing.size4 {
  font-family: KaTeX_Size4;
}

.katex .delimsizing.mult .delim-size1 > span {
  font-family: KaTeX_Size1;
}

.katex .delimsizing.mult .delim-size4 > span {
  font-family: KaTeX_Size4;
}

.katex .nulldelimiter {
  width: .12em;
  display: inline-block;
}

.katex .delimcenter, .katex .op-symbol {
  position: relative;
}

.katex .op-symbol.small-op {
  font-family: KaTeX_Size1;
}

.katex .op-symbol.large-op {
  font-family: KaTeX_Size2;
}

.katex .katex-accent > .vlist-t, .katex .op-limits > .vlist-t {
  text-align: center;
}

.katex .katex-accent .accent-body {
  position: relative;
}

.katex .katex-accent .accent-body:not(.accent-full) {
  width: 0;
}

.katex .katex-overlay {
  display: block;
}

.katex .mtable .vertical-separator {
  min-width: 1px;
  display: inline-block;
}

.katex .mtable .arraycolsep {
  display: inline-block;
}

.katex .mtable .col-align-c > .vlist-t {
  text-align: center;
}

.katex .mtable .col-align-l > .vlist-t {
  text-align: left;
}

.katex .mtable .col-align-r > .vlist-t {
  text-align: right;
}

.katex .svg-align {
  text-align: left;
}

.katex svg {
  fill: currentColor;
  stroke: currentColor;
  height: inherit;
  width: 100%;
  display: block;
  position: absolute;
}

.katex svg path {
  stroke: none;
}

.katex svg {
  fill-rule: nonzero;
  fill-opacity: 1;
  stroke-width: 1px;
  stroke-linecap: butt;
  stroke-linejoin: miter;
  stroke-miterlimit: 4;
  stroke-dasharray: none;
  stroke-dashoffset: 0;
  stroke-opacity: 1;
}

.katex img {
  border-style: none;
  min-width: 0;
  max-width: none;
  min-height: 0;
  max-height: none;
}

.katex .katex-stretchy {
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

.katex .katex-stretchy:after, .katex .katex-stretchy:before {
  content: "";
}

.katex .hide-tail {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.katex .halfarrow-left {
  width: 50.2%;
  position: absolute;
  left: 0;
  overflow: hidden;
}

.katex .halfarrow-right {
  width: 50.2%;
  position: absolute;
  right: 0;
  overflow: hidden;
}

.katex .brace-left {
  width: 25.1%;
  position: absolute;
  left: 0;
  overflow: hidden;
}

.katex .brace-center {
  width: 50%;
  position: absolute;
  left: 25%;
  overflow: hidden;
}

.katex .brace-right {
  width: 25.1%;
  position: absolute;
  right: 0;
  overflow: hidden;
}

.katex .x-arrow-pad {
  padding: 0 .5em;
}

.katex .cd-arrow-pad {
  padding: 0 .55556em 0 .27778em;
}

.katex .mover, .katex .munder, .katex .x-arrow {
  text-align: center;
}

.katex .boxpad {
  padding: 0 .3em;
}

.katex .fbox, .katex .fcolorbox {
  box-sizing: border-box;
  border: .04em solid;
}

.katex .cancel-pad {
  padding: 0 .2em;
}

.katex .cancel-lap {
  margin-left: -.2em;
  margin-right: -.2em;
}

.katex .katex-sout {
  border-bottom-style: solid;
  border-bottom-width: .08em;
}

.katex .angl {
  box-sizing: border-box;
  border-top: .049em solid;
  border-right: .049em solid;
  margin-right: .03889em;
}

.katex .anglpad {
  padding: 0 .03889em;
}

.katex .reflectbox {
  display: inline-block;
  transform: scaleX(-1);
}

.katex .eqn-num:before {
  content: "(" counter(katexEqnNo) ")";
  counter-increment: katexEqnNo;
}

.katex .mml-eqn-num:before {
  content: "(" counter(mmlEqnNo) ")";
  counter-increment: mmlEqnNo;
}

.katex .mtr-glue {
  width: 50%;
}

.katex .cd-vert-arrow {
  display: inline-block;
  position: relative;
}

.katex .cd-label-left {
  text-align: left;
  display: inline-block;
  position: absolute;
  right: calc(50% + .3em);
}

.katex .cd-label-right {
  text-align: right;
  display: inline-block;
  position: absolute;
  left: calc(50% + .3em);
}

.katex-display {
  text-align: center;
  margin: 1em 0;
  display: block;
}

.katex-display > .katex {
  text-align: center;
  white-space: nowrap;
  display: block;
}

.katex-display > .katex > .katex-html {
  display: block;
  position: relative;
}

.katex-display > .katex > .katex-html > .katex-tag {
  position: absolute;
  right: 0;
}

.katex-display.leqno > .katex > .katex-html > .katex-tag {
  left: 0;
  right: auto;
}

.katex-display.fleqn > .katex {
  text-align: left;
  padding-left: 2em;
}

body {
  counter-reset: katexEqnNo mmlEqnNo;
}

/* [project]/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: #fef2f2;
    --color-red-200: #ffcaca;
    --color-red-300: #ffa3a3;
    --color-red-600: #e40014;
    --color-red-700: #bf000f;
    --color-red-800: #9f0712;
    --color-red-900: #82181a;
    --color-amber-50: #fffbeb;
    --color-amber-200: #fee685;
    --color-amber-300: #ffd236;
    --color-amber-500: #f99c00;
    --color-amber-800: #953d00;
    --color-amber-900: #7b3306;
    --color-green-50: #f0fdf4;
    --color-green-200: #b9f8cf;
    --color-green-300: #7bf1a8;
    --color-green-700: #008138;
    --color-green-800: #016630;
    --color-green-900: #0d542b;
    --color-blue-50: #eff6ff;
    --color-blue-900: #1c398e;
    --color-gray-50: #f9fafb;
    --color-gray-100: #f3f4f6;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #d1d5dc;
    --color-gray-500: #6a7282;
    --color-gray-600: #4a5565;
    --color-gray-700: #364153;
    --color-gray-800: #1e2939;
    --color-gray-900: #101828;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --leading-tight: 1.25;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }

  @supports (color: lab(0% 0 0)) {
    :root, :host {
      --color-red-50: lab(96.5005% 4.18508 1.52328);
      --color-red-200: lab(86.017% 19.8815 7.75869);
      --color-red-300: lab(76.5514% 36.422 15.5335);
      --color-red-600: lab(48.4493% 77.4328 61.5452);
      --color-red-700: lab(40.4273% 67.2623 53.7441);
      --color-red-800: lab(33.7174% 55.8993 41.0293);
      --color-red-900: lab(28.5139% 44.5539 29.0463);
      --color-amber-50: lab(98.6252% -.635922 8.42309);
      --color-amber-200: lab(91.7203% -.505269 49.9084);
      --color-amber-300: lab(86.4156% 6.13147 78.3961);
      --color-amber-500: lab(72.7183% 31.8672 97.9407);
      --color-amber-800: lab(37.8822% 37.1699 52.2718);
      --color-amber-900: lab(31.2288% 30.2627 40.0378);
      --color-green-50: lab(98.1563% -5.60117 2.75915);
      --color-green-200: lab(92.4222% -26.4702 12.9427);
      --color-green-300: lab(86.9953% -47.2691 25.0054);
      --color-green-700: lab(47.0329% -47.0239 31.4788);
      --color-green-800: lab(37.4616% -36.7971 22.9692);
      --color-green-900: lab(30.797% -29.6927 17.382);
      --color-blue-50: lab(96.492% -1.14644 -5.11479);
      --color-blue-900: lab(26.1542% 15.7545 -51.5504);
      --color-gray-50: lab(98.2596% -.247031 -.706708);
      --color-gray-100: lab(96.1596% -.0823438 -1.13575);
      --color-gray-200: lab(91.6229% -.159115 -2.26791);
      --color-gray-300: lab(85.1236% -.612259 -3.7138);
      --color-gray-500: lab(47.7841% -.393182 -10.0268);
      --color-gray-600: lab(35.6337% -1.58697 -10.8425);
      --color-gray-700: lab(27.1134% -.956401 -12.3224);
      --color-gray-800: lab(16.1051% -1.18239 -11.7533);
      --color-gray-900: lab(8.11897% .811279 -12.254);
    }
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components {
  .btn {
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--color-white);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-gray-800);
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    display: inline-flex;
  }

  @media (hover: hover) {
    .btn:hover {
      background-color: var(--color-gray-50);
    }
  }

  .btn:disabled {
    cursor: not-allowed;
    opacity: .5;
  }

  .btn-primary {
    border-color: var(--accent);
    background-color: var(--accent);
    color: var(--color-white);
  }

  @media (hover: hover) {
    .btn-primary:hover {
      background-color: #184c86;
    }
  }

  .btn-danger {
    border-color: var(--color-red-200);
    color: var(--color-red-700);
  }

  @media (hover: hover) {
    .btn-danger:hover {
      background-color: var(--color-red-50);
    }
  }

  .btn-ghost {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    background-color: #0000;
    border-color: #0000;
  }

  @media (hover: hover) {
    .btn-ghost:hover {
      background-color: var(--color-gray-100);
    }
  }

  .tb-btn {
    height: calc(var(--spacing) * 8);
    min-width: calc(var(--spacing) * 8);
    justify-content: center;
    align-items: center;
    gap: var(--spacing);
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 1.5);
    color: var(--color-gray-700);
    display: inline-flex;
  }

  @media (hover: hover) {
    .tb-btn:hover {
      background-color: #e5e7ebb3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .tb-btn:hover {
        background-color: color-mix(in oklab, var(--color-gray-200) 70%, transparent);
      }
    }
  }

  .tb-btn:disabled {
    opacity: .4;
  }

  @media (hover: hover) {
    .tb-btn:disabled:hover {
      background-color: #0000;
    }
  }

  .tb-btn.active {
    background-color: var(--accent-soft);
    color: var(--accent);
  }

  .tb-sep {
    margin-inline: var(--spacing);
    height: calc(var(--spacing) * 6);
    background-color: var(--color-gray-300);
    width: 1px;
  }

  .input {
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--color-white);
    width: 100%;
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .input:focus {
    border-color: var(--accent);
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .input:focus {
    --tw-ring-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .input:focus {
      --tw-ring-color: color-mix(in oklab, var(--accent) 20%, transparent);
    }
  }

  .input:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .label {
    margin-bottom: var(--spacing);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--muted);
    text-transform: uppercase;
    display: block;
  }

  .card {
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--panel);
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .chip {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--color-gray-50);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * .5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-gray-700);
    border-radius: 3.40282e38px;
    align-items: center;
    display: inline-flex;
  }
}

@layer utilities {
  .visible {
    visibility: visible;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .sticky {
    position: sticky;
  }

  .inset-0 {
    inset: 0;
  }

  .top-0 {
    top: 0;
  }

  .top-1\/2 {
    top: 50%;
  }

  .top-2 {
    top: calc(var(--spacing) * 2);
  }

  .top-2\.5 {
    top: calc(var(--spacing) * 2.5);
  }

  .right-0 {
    right: 0;
  }

  .-bottom-7 {
    bottom: calc(var(--spacing) * -7);
  }

  .bottom-10 {
    bottom: calc(var(--spacing) * 10);
  }

  .left-0 {
    left: 0;
  }

  .left-1\/2 {
    left: 50%;
  }

  .left-2 {
    left: calc(var(--spacing) * 2);
  }

  .z-40 {
    z-index: 40;
  }

  .z-50 {
    z-index: 50;
  }

  .col-span-2 {
    grid-column: span 2 / span 2;
  }

  .col-span-full {
    grid-column: 1 / -1;
  }

  .mx-1 {
    margin-inline: var(--spacing);
  }

  .mx-3 {
    margin-inline: calc(var(--spacing) * 3);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-1 {
    margin-block: var(--spacing);
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mt-1 {
    margin-top: var(--spacing);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mr-1 {
    margin-right: var(--spacing);
  }

  .mb-1 {
    margin-bottom: var(--spacing);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .ml-1 {
    margin-left: var(--spacing);
  }

  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }

  .ml-auto {
    margin-left: auto;
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .table {
    display: table;
  }

  .h-4 {
    height: calc(var(--spacing) * 4);
  }

  .h-5 {
    height: calc(var(--spacing) * 5);
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-7 {
    height: calc(var(--spacing) * 7);
  }

  .h-8 {
    height: calc(var(--spacing) * 8);
  }

  .h-10 {
    height: calc(var(--spacing) * 10);
  }

  .h-full {
    height: 100%;
  }

  .h-screen {
    height: 100vh;
  }

  .max-h-24 {
    max-height: calc(var(--spacing) * 24);
  }

  .max-h-40 {
    max-height: calc(var(--spacing) * 40);
  }

  .max-h-48 {
    max-height: calc(var(--spacing) * 48);
  }

  .max-h-\[55vh\] {
    max-height: 55vh;
  }

  .max-h-\[60vh\] {
    max-height: 60vh;
  }

  .max-h-\[65vh\] {
    max-height: 65vh;
  }

  .max-h-\[70vh\] {
    max-height: 70vh;
  }

  .max-h-\[90vh\] {
    max-height: 90vh;
  }

  .max-h-\[360px\] {
    max-height: 360px;
  }

  .max-h-\[400px\] {
    max-height: 400px;
  }

  .min-h-0 {
    min-height: 0;
  }

  .min-h-12 {
    min-height: calc(var(--spacing) * 12);
  }

  .min-h-full {
    min-height: 100%;
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-8 {
    width: calc(var(--spacing) * 8);
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-12 {
    width: calc(var(--spacing) * 12);
  }

  .w-24 {
    width: calc(var(--spacing) * 24);
  }

  .w-28 {
    width: calc(var(--spacing) * 28);
  }

  .w-32 {
    width: calc(var(--spacing) * 32);
  }

  .w-36 {
    width: calc(var(--spacing) * 36);
  }

  .w-40 {
    width: calc(var(--spacing) * 40);
  }

  .w-44 {
    width: calc(var(--spacing) * 44);
  }

  .w-48 {
    width: calc(var(--spacing) * 48);
  }

  .w-56 {
    width: calc(var(--spacing) * 56);
  }

  .w-80 {
    width: calc(var(--spacing) * 80);
  }

  .w-\[38\%\] {
    width: 38%;
  }

  .w-\[42\%\] {
    width: 42%;
  }

  .w-\[210mm\] {
    width: 210mm;
  }

  .w-full {
    width: 100%;
  }

  .max-w-2xl {
    max-width: var(--container-2xl);
  }

  .max-w-3xl {
    max-width: var(--container-3xl);
  }

  .max-w-4xl {
    max-width: var(--container-4xl);
  }

  .max-w-5xl {
    max-width: var(--container-5xl);
  }

  .max-w-6xl {
    max-width: var(--container-6xl);
  }

  .max-w-\[28ch\] {
    max-width: 28ch;
  }

  .max-w-lg {
    max-width: var(--container-lg);
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .max-w-sm {
    max-width: var(--container-sm);
  }

  .max-w-xs {
    max-width: var(--container-xs);
  }

  .min-w-0 {
    min-width: 0;
  }

  .min-w-48 {
    min-width: calc(var(--spacing) * 48);
  }

  .min-w-56 {
    min-width: calc(var(--spacing) * 56);
  }

  .min-w-\[300px\] {
    min-width: 300px;
  }

  .min-w-\[320px\] {
    min-width: 320px;
  }

  .min-w-\[340px\] {
    min-width: 340px;
  }

  .flex-1 {
    flex: 1;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .border-collapse {
    border-collapse: collapse;
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .resize-y {
    resize: vertical;
  }

  .list-disc {
    list-style-type: disc;
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .items-baseline {
    align-items: baseline;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .gap-0\.5 {
    gap: calc(var(--spacing) * .5);
  }

  .gap-1 {
    gap: var(--spacing);
  }

  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-2 {
    column-gap: calc(var(--spacing) * 2);
  }

  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }

  .gap-y-0\.5 {
    row-gap: calc(var(--spacing) * .5);
  }

  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }

  :where(.divide-border > :not(:last-child)) {
    border-color: var(--border);
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-auto {
    overflow: auto;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-md {
    border-radius: var(--radius-md);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }

  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }

  .border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .border-accent {
    border-color: var(--accent);
  }

  .border-amber-200 {
    border-color: var(--color-amber-200);
  }

  .border-amber-300 {
    border-color: var(--color-amber-300);
  }

  .border-border {
    border-color: var(--border);
  }

  .border-gray-300 {
    border-color: var(--color-gray-300);
  }

  .border-green-200 {
    border-color: var(--color-green-200);
  }

  .border-green-300 {
    border-color: var(--color-green-300);
  }

  .border-red-200 {
    border-color: var(--color-red-200);
  }

  .border-red-300 {
    border-color: var(--color-red-300);
  }

  .border-transparent {
    border-color: #0000;
  }

  .bg-\[\#525659\] {
    background-color: #525659;
  }

  .bg-\[var\(--bg\)\] {
    background-color: var(--bg);
  }

  .bg-accent-soft {
    background-color: var(--accent-soft);
  }

  .bg-accent-soft\/60 {
    background-color: var(--accent-soft);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-accent-soft\/60 {
      background-color: color-mix(in oklab, var(--accent-soft) 60%, transparent);
    }
  }

  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }

  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }

  .bg-black\/40 {
    background-color: #0006;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/40 {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }

  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }

  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }

  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }

  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }

  .bg-gray-900\/90 {
    background-color: #101828e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-gray-900\/90 {
      background-color: color-mix(in oklab, var(--color-gray-900) 90%, transparent);
    }
  }

  .bg-green-50 {
    background-color: var(--color-green-50);
  }

  .bg-panel {
    background-color: var(--panel);
  }

  .bg-red-50 {
    background-color: var(--color-red-50);
  }

  .bg-red-600 {
    background-color: var(--color-red-600);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .p-1 {
    padding: var(--spacing);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .p-3 {
    padding: calc(var(--spacing) * 3);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .p-8 {
    padding: calc(var(--spacing) * 8);
  }

  .px-1 {
    padding-inline: var(--spacing);
  }

  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .py-0 {
    padding-block: 0;
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: var(--spacing);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }

  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }

  .pl-7 {
    padding-left: calc(var(--spacing) * 7);
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .font-mono {
    font-family: var(--font-mono);
  }

  .font-sans {
    font-family: var(--font-sans);
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[11\.5px\] {
    font-size: 11.5px;
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .text-\[12px\] {
    font-size: 12px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .whitespace-nowrap {
    white-space: nowrap;
  }

  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }

  .text-\[var\(--fg\)\] {
    color: var(--fg);
  }

  .text-accent {
    color: var(--accent);
  }

  .text-amber-800 {
    color: var(--color-amber-800);
  }

  .text-amber-900 {
    color: var(--color-amber-900);
  }

  .text-blue-900 {
    color: var(--color-blue-900);
  }

  .text-danger {
    color: var(--danger);
  }

  .text-gray-200 {
    color: var(--color-gray-200);
  }

  .text-gray-500 {
    color: var(--color-gray-500);
  }

  .text-gray-600 {
    color: var(--color-gray-600);
  }

  .text-gray-700 {
    color: var(--color-gray-700);
  }

  .text-gray-800 {
    color: var(--color-gray-800);
  }

  .text-green-700 {
    color: var(--color-green-700);
  }

  .text-green-800 {
    color: var(--color-green-800);
  }

  .text-green-900 {
    color: var(--color-green-900);
  }

  .text-muted {
    color: var(--muted);
  }

  .text-red-600 {
    color: var(--color-red-600);
  }

  .text-red-800 {
    color: var(--color-red-800);
  }

  .text-red-900 {
    color: var(--color-red-900);
  }

  .text-white {
    color: var(--color-white);
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .underline {
    text-decoration-line: underline;
  }

  .opacity-0 {
    opacity: 0;
  }

  .opacity-60 {
    opacity: .6;
  }

  .opacity-70 {
    opacity: .7;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-accent {
    --tw-ring-color: var(--accent);
  }

  .ring-accent\/30 {
    --tw-ring-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .ring-accent\/30 {
      --tw-ring-color: color-mix(in oklab, var(--accent) 30%, transparent);
    }
  }

  .\!filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, ) !important;
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }

  @media (hover: hover) {
    .group-hover\:text-accent:is(:where(.group):hover *) {
      color: var(--accent);
    }

    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 1;
    }
  }

  .last\:border-0:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  @media (hover: hover) {
    .hover\:border-accent:hover {
      border-color: var(--accent);
    }

    .hover\:bg-accent-soft:hover {
      background-color: var(--accent-soft);
    }

    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }

    .hover\:bg-gray-100:hover {
      background-color: var(--color-gray-100);
    }

    .hover\:text-accent:hover {
      color: var(--accent);
    }
  }

  .disabled\:opacity-40:disabled {
    opacity: .4;
  }

  @media (min-width: 40rem) {
    .sm\:col-span-2 {
      grid-column: span 2 / span 2;
    }

    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sm\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .sm\:grid-cols-8 {
      grid-template-columns: repeat(8, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-\[1\.2fr_1fr\] {
      grid-template-columns: 1.2fr 1fr;
    }

    .md\:grid-cols-\[240px_1fr\] {
      grid-template-columns: 240px 1fr;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
}

@font-face {
  font-family: Latin Modern Roman;
  src: url("/fonts/lm/lmroman10-regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Roman;
  src: url("/fonts/lm/lmroman10-bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Roman;
  src: url("/fonts/lm/lmroman10-italic.otf") format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Roman;
  src: url("/fonts/lm/lmroman10-bolditalic.otf") format("opentype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Roman Caps;
  src: url("/fonts/lm/lmromancaps10-regular.otf") format("opentype");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Sans;
  src: url("/fonts/lm/lmsans10-regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Sans;
  src: url("/fonts/lm/lmsans10-bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Sans;
  src: url("/fonts/lm/lmsans10-oblique.otf") format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Mono;
  src: url("/fonts/lm/lmmono10-regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Mono;
  src: url("/fonts/lm/lmmono10-italic.otf") format("opentype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Latin Modern Mono;
  src: url("/fonts/lm/lmmonolt10-bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --bg: #f3f4f6;
  --fg: #111827;
  --panel: #fff;
  --border: #e5e7eb;
  --accent: #1f5fa8;
  --accent-soft: #e8f0fb;
  --muted: #6b7280;
  --danger: #b91c1c;
  --tex-serif: "Latin Modern Roman", "Computer Modern", "Times New Roman", serif;
  --tex-sans: "Latin Modern Sans", Helvetica, Arial, sans-serif;
  --tex-mono: "Latin Modern Mono", "Courier New", monospace;
}

html, body {
  height: 100%;
}

body {
  font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  font-size: 14px;
}

.tex-canvas {
  background: #e5e7eb;
}

.tex-page {
  width: 210mm;
  min-height: 297mm;
  padding: var(--page-margin-top, 25mm) var(--page-margin-right, 25mm) var(--page-margin-bottom, 25mm) var(--page-margin-left, 25mm);
  font-family: var(--tex-serif);
  font-size: var(--tex-base-size, 11pt);
  color: #000;
  -webkit-hyphens: auto;
  hyphens: auto;
  counter-reset: section subsection subsubsection chapter;
  background: #fff;
  margin: 0 auto;
  line-height: 1.28;
  box-shadow: 0 1px 3px #00000026, 0 8px 24px #00000014;
}

.tex-page .ProseMirror {
  outline: none;
  min-height: 240mm;
}

.tex-page .ProseMirror > * + * {
  margin-top: 0;
}

.tex-page p {
  text-align: justify;
  margin: 0;
}

.tex-page p + p {
  text-indent: 1.5em;
}

.tex-page.parskip p + p {
  text-indent: 0;
  margin-top: .6em;
}

.tex-page p[data-noindent="true"] {
  text-indent: 0 !important;
}

.tex-page p[style*="text-align: center"], .tex-page p[style*="text-align: right"], .tex-page p[style*="text-align: left"] {
  text-indent: 0;
}

.tex-page p.is-editor-empty:first-child:before {
  content: attr(data-placeholder);
  color: #9ca3af;
  float: left;
  pointer-events: none;
  height: 0;
}

.tex-page h1, .tex-page h2, .tex-page h3, .tex-page h4, .tex-page h5, .tex-page h6 {
  text-align: left;
  font-weight: 700;
  line-height: 1.2;
}

.tex-page h1 {
  margin: 2.2em 0 1.2em;
  font-size: 1.728em;
}

.tex-page h2 {
  margin: 1.6em 0 .9em;
  font-size: 1.44em;
}

.tex-page h3 {
  margin: 1.4em 0 .7em;
  font-size: 1.2em;
}

.tex-page h4 {
  margin: 1.2em 0 .5em;
  font-size: 1.05em;
}

.tex-page h5, .tex-page h6 {
  margin: 1em 0 .3em;
  font-size: 1em;
  display: inline;
}

.tex-page h5 + p, .tex-page h6 + p {
  text-indent: 0;
  display: inline;
}

.tex-page h5:after, .tex-page h6:after {
  content: "  ";
}

.tex-page h1[data-kind="chapter"] {
  margin: 1em 0 1.4em;
  font-size: 2.2em;
}

.tex-page [data-numbered="true"][data-kind="chapter"] {
  counter-increment: chapter;
  counter-reset: section;
}

.tex-page [data-numbered="true"][data-kind="chapter"]:before {
  content: counter(chapter) "  ";
}

.tex-page [data-numbered="true"][data-kind="section"] {
  counter-increment: section;
  counter-reset: subsection;
}

.tex-page [data-numbered="true"][data-kind="section"]:before {
  content: counter(section) "  ";
}

.tex-page.has-chapters [data-numbered="true"][data-kind="section"]:before {
  content: counter(chapter) "." counter(section) "  ";
}

.tex-page [data-numbered="true"][data-kind="subsection"] {
  counter-increment: subsection;
  counter-reset: subsubsection;
}

.tex-page [data-numbered="true"][data-kind="subsection"]:before {
  content: counter(section) "." counter(subsection) "  ";
}

.tex-page [data-numbered="true"][data-kind="subsubsection"] {
  counter-increment: subsubsection;
}

.tex-page [data-numbered="true"][data-kind="subsubsection"]:before {
  content: counter(section) "." counter(subsection) "." counter(subsubsection) "  ";
}

.tex-page * + h1, .tex-page * + h2 {
  margin-top: 1.6em;
}

.tex-page ul, .tex-page ol {
  margin: .5em 0;
  padding-left: 2.2em;
}

.tex-page li {
  margin: .2em 0;
}

.tex-page li p {
  text-indent: 0 !important;
}

.tex-page ul {
  list-style: "•  ";
}

.tex-page ul ul {
  list-style: "–  ";
}

.tex-page ol {
  list-style: decimal;
}

.tex-page ol ol {
  list-style: "(" lower-alpha ")";
  list-style-type: lower-alpha;
}

.tex-page ol[data-options*="alph"] {
  list-style-type: lower-alpha;
}

.tex-page ol[data-options*="Alph"] {
  list-style-type: upper-alpha;
}

.tex-page ol[data-options*="roman"] {
  list-style-type: lower-roman;
}

.tex-page ol[data-options*="Roman"] {
  list-style-type: upper-roman;
}

.tex-page li[data-label] {
  list-style: none;
  position: relative;
}

.tex-page li[data-label]:before {
  content: attr(data-label);
  text-align: right;
  width: 2em;
  font-weight: 700;
  position: absolute;
  left: -2.2em;
}

.tex-page ul[data-kind="description"] li[data-label]:before {
  width: auto;
  margin-right: .5em;
  display: inline;
  position: static;
}

.tex-page ul[data-kind="description"] li[data-label] {
  padding-left: 0;
}

.tex-page ul[data-kind="description"] {
  padding-left: 1em;
  list-style: none;
}

.tex-page ul[data-kind="description"] li p:first-child {
  display: inline;
}

.tex-page blockquote {
  margin: .8em 2.5em;
}

.tex-page pre {
  font-family: var(--tex-mono);
  white-space: pre-wrap;
  background: #fafafa;
  border-left: 3px solid #d1d5db;
  margin: .8em 0;
  padding: .4em .8em;
  font-size: .9em;
}

.tex-page code {
  font-family: var(--tex-mono);
  font-size: .95em;
}

.tex-page a {
  color: #1d4ed8;
  text-decoration: underline;
}

.tex-page mark {
  padding: 0 .1em;
}

.tex-page .smallcaps {
  font-family: "Latin Modern Roman Caps", var(--tex-serif);
  font-variant: small-caps;
}

.tex-page .fbox {
  border: .4pt solid #000;
  padding: 1pt 3pt;
}

.tex-page [data-font="sans"] {
  font-family: var(--tex-sans);
}

.tex-page hr {
  border: 0;
  border-top: .4pt solid #000;
  margin: 1em 0;
}

.tex-page .tableWrapper {
  margin: .8em 0;
  overflow-x: auto;
}

.tex-page table {
  border-collapse: collapse;
  table-layout: fixed;
  width: auto;
  margin: 0 auto;
}

.tex-page table[data-width] {
  width: 100%;
}

.tex-page td, .tex-page th {
  vertical-align: middle;
  border: 1px dashed #0000;
  min-width: 2em;
  padding: .15em .5em;
  position: relative;
}

.tex-page .tex-page-show-guides td, .tex-page .tex-page-show-guides th {
  border-color: #dbeafe;
}

.tex-page td p, .tex-page th p {
  text-align: inherit;
  margin: 0;
  text-indent: 0 !important;
}

.tex-page th {
  font-weight: 700;
}

.tex-page td.bt, .tex-page th.bt {
  border-top: .6pt solid #000;
}

.tex-page td.bb, .tex-page th.bb {
  border-bottom: .6pt solid #000;
}

.tex-page td.bl, .tex-page th.bl {
  border-left: .6pt solid #000;
}

.tex-page td.br, .tex-page th.br {
  border-right: .6pt solid #000;
}

.tex-page td.bt2, .tex-page th.bt2 {
  border-top: .9pt double #000;
}

.tex-page td.bb2, .tex-page th.bb2 {
  border-bottom: .9pt double #000;
}

.tex-page table[data-border-mode="booktabs"] td.bt, .tex-page table[data-border-mode="booktabs"] th.bt {
  border-top-width: 1pt;
}

.tex-page td[data-align="l"], .tex-page th[data-align="l"] {
  text-align: left;
}

.tex-page td[data-align="c"], .tex-page th[data-align="c"] {
  text-align: center;
}

.tex-page td[data-align="r"], .tex-page th[data-align="r"] {
  text-align: right;
}

.tex-page td[data-align="p"], .tex-page th[data-align="p"], .tex-page td[data-align="X"], .tex-page th[data-align="X"] {
  text-align: justify;
  vertical-align: top;
}

.tex-page .selectedCell:after {
  content: "";
  pointer-events: none;
  background: #1f5fa81f;
  position: absolute;
  inset: 0;
}

.tex-page .column-resize-handle {
  pointer-events: none;
  background: #93c5fd;
  width: 4px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -2px;
}

.tex-page table[data-float="true"] {
  margin-bottom: .4em;
}

.tex-table-caption {
  text-align: center;
  margin: .4em 0 .8em;
  font-size: .95em;
}

.tex-table-caption b {
  font-weight: 700;
}

.tex-block-grip {
  color: #94a3b8;
  cursor: grab;
  opacity: 0;
  -webkit-user-select: none;
  user-select: none;
  letter-spacing: -2px;
  width: 14px;
  font-family: system-ui, sans-serif;
  font-size: 11px;
  line-height: 1;
  transition: opacity .15s;
  position: absolute;
  top: 2px;
  left: -18px;
}

.tex-box:hover > .tex-block-grip, .tex-box.is-selected > .tex-block-grip, .tex-table-wrapper:hover > .tex-block-grip, .tex-tikz:hover > .tex-block-grip {
  opacity: 1;
}

.tex-block-grip:active {
  cursor: grabbing;
}

.tex-table-wrapper {
  position: relative;
}

.tex-box {
  background: #fff;
  border: .8pt solid #333;
  border-radius: 4px;
  margin: .9em 0;
  position: relative;
}

.tex-box-attached {
  margin-top: 1.6em;
  overflow: visible;
}

.tex-box-attached > .tex-box-title {
  padding: .15em .7em;
  font-size: .95em;
  position: absolute;
  top: -.95em;
  box-shadow: 0 1px 2px #00000026;
}

.tex-box-attached-left > .tex-box-title {
  left: 4mm;
}

.tex-box-attached-center > .tex-box-title {
  left: 50%;
  transform: translateX(-50%);
}

.tex-box-attached-right > .tex-box-title {
  right: 4mm;
}

.tex-box-attached > .tex-box-body {
  padding-top: 1em !important;
}

.tex-box-hidden-frame {
  border-radius: 0;
}

.tex-box-body {
  z-index: 1;
  position: relative;
}

.tex-box-lower-bg {
  z-index: 0;
  border-radius: 0 0 4px 4px;
  position: absolute;
  inset: 50% 0 0;
}

.fa-svg {
  vertical-align: -.125em;
  width: auto;
  height: 1em;
  display: inline-block;
}

.fa-svg.fa-title {
  margin-right: .15em;
}

.tex-icon {
  vertical-align: -.125em;
  border-radius: 2px;
  padding: 0 1px;
  line-height: 1;
  display: inline-block;
}

.tex-icon svg {
  vertical-align: -.125em;
  width: auto;
  height: 1em;
}

.tex-icon.is-selected {
  outline: 2px solid #1f5fa880;
}

.fa-missing {
  color: #9ca3af;
}

.tex-box-title {
  border-radius: 3px 3px 0 0;
  padding: .3em .7em;
  font-weight: 700;
}

.tex-box-body {
  padding: .5em .7em;
}

.tex-box-body > p {
  text-indent: 0;
}

.tex-box-body > p + p {
  text-indent: 1.5em;
}

.tex-box-sep {
  opacity: .8;
  border-top: .8pt solid;
  margin: .5em -.7em;
  position: relative;
}

.tex-box-sep:after {
  content: "partie basse";
  color: #6b7280;
  background: inherit;
  font-family: system-ui, sans-serif;
  font-size: 9px;
  position: absolute;
  top: -.7em;
  right: 6px;
}

.tex-box.is-selected {
  outline-offset: 2px;
  outline: 2px solid #1f5fa880;
}

.tex-tikz {
  flex-direction: column;
  align-items: center;
  margin: .8em 0;
  display: flex;
  position: relative;
}

.tex-tikz-frame {
  border: 1px dashed #0000;
  border-radius: 4px;
  max-width: 100%;
  padding: 4px;
  transition: border-color .15s;
  display: inline-block;
  position: relative;
}

.tex-tikz-frame:hover, .tex-tikz.is-selected .tex-tikz-frame {
  background: #eff6ff99;
  border-color: #60a5fa;
}

.tex-tikz-frame img {
  max-width: 100%;
  height: auto;
  display: block;
}

.tex-tikz-overlay {
  pointer-events: none;
  justify-content: center;
  align-items: flex-end;
  display: none;
  position: absolute;
  inset: 4px;
}

.tex-tikz-frame:hover .tex-tikz-overlay, .tex-tikz.is-selected .tex-tikz-overlay {
  display: flex;
}

.tex-tikz-badge {
  pointer-events: auto;
  color: #fff;
  background: #111827e0;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  max-width: 95%;
  margin-bottom: 4px;
  padding: 6px 10px;
  font-family: system-ui, sans-serif;
  font-size: 11px;
  display: flex;
}

.tex-tikz-badge button {
  color: #111827;
  background: #fff;
  border-radius: 4px;
  padding: 2px 8px;
  font-weight: 600;
}

.tex-tikz-badge button:hover {
  background: #dbeafe;
}

.tex-tikz-status {
  color: #6b7280;
  text-align: center;
  border: 1px dashed #d1d5db;
  border-radius: 4px;
  min-width: 200px;
  padding: 1em;
  font-family: system-ui, sans-serif;
  font-size: 12px;
}

.tex-tikz-error {
  font-family: var(--tex-mono);
  color: #b91c1c;
  white-space: pre-wrap;
  text-align: left;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 4px;
  max-width: 100%;
  padding: .6em;
  font-size: 11px;
}

.tex-caption {
  text-align: center;
  margin-top: .5em;
  font-size: .95em;
}

.tex-image {
  vertical-align: middle;
  max-width: 100%;
  display: inline-block;
  position: relative;
}

.tex-image img {
  max-width: 100%;
  display: block;
}

.tex-image.is-selected {
  outline-offset: 2px;
  outline: 2px solid #1f5fa880;
}

.tex-image-missing {
  color: #92400e;
  background: #fffbeb;
  border: 1px dashed #f59e0b;
  border-radius: 4px;
  padding: .8em;
  font-family: system-ui, sans-serif;
  font-size: 12px;
}

.tex-math-inline {
  cursor: pointer;
  border-radius: 2px;
  padding: 0 1px;
}

.tex-math-inline:hover, .tex-math-inline.is-selected {
  background: #1f5fa81a;
}

.tex-math-block {
  text-align: center;
  cursor: pointer;
  border-radius: 4px;
  margin: .7em 0;
  padding: .2em;
}

.tex-math-block:hover, .tex-math-block.is-selected {
  background: #1f5fa80f;
}

.tex-math-error {
  color: #b91c1c;
  font-family: var(--tex-mono);
  font-size: .85em;
}

.tex-math-editor {
  font-family: var(--tex-mono);
  font-size: 12px;
}

.tex-raw {
  font-family: var(--tex-mono);
  color: #374151;
  cursor: pointer;
  white-space: nowrap;
  text-overflow: ellipsis;
  vertical-align: baseline;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  border-radius: 3px;
  max-width: 24em;
  padding: 0 3px;
  font-size: .8em;
  line-height: 1.4;
  display: inline-block;
  overflow: hidden;
}

.tex-raw[data-kind="comment"] {
  color: #6b7280;
  background: #f9fafb;
  font-style: italic;
}

.tex-raw[data-kind="footnote"] {
  vertical-align: super;
  max-width: 12em;
  font-size: .7em;
}

.tex-raw.is-selected {
  outline: 2px solid #1f5fa880;
}

.tex-page.mode-simple .tex-raw {
  color: #9ca3af;
  background: none;
  border-color: #0000;
}

.tex-rawblock {
  font-family: var(--tex-mono);
  color: #334155;
  white-space: pre-wrap;
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 4px;
  margin: .7em 0;
  padding: .4em .6em;
  font-size: .8em;
  position: relative;
}

.tex-rawblock-label {
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-family: system-ui, sans-serif;
  font-size: 10px;
  position: absolute;
  top: 2px;
  right: 6px;
}

.tex-rawblock.is-selected {
  outline: 2px solid #1f5fa880;
}

.tex-rawblock[data-kind="comment"] {
  color: #6b7280;
  background: #fafafa;
}

.tex-rawblock.is-custom {
  background: #f5f7ff;
  border-color: #c7d2fe;
}

.tex-rawblock.is-custom .tex-rawblock-label {
  color: var(--accent);
  font-family: var(--tex-mono);
  text-transform: none;
  letter-spacing: 0;
}

.tex-comment {
  font-family: var(--tex-mono);
  color: #9ca3af;
  white-space: pre-wrap;
  border-left: 2px solid #e5e7eb;
  margin: .3em 0;
  padding-left: .4em;
  font-size: .74em;
}

.tex-comment.is-selected {
  outline: 2px solid #1f5fa866;
}

.tex-page.mode-simple .tex-comment {
  display: none;
}

.tex-rule-comment {
  border-top: 1px dashed #e5e7eb;
  height: 0;
  margin: .6em 0;
}

.tex-page.mode-simple .tex-rule-comment {
  display: none;
}

.tex-maketitle {
  text-align: center;
  font-family: var(--tex-serif);
  margin: 1em 0 2em;
}

.tex-maketitle .t {
  margin-bottom: .8em;
  font-size: 1.728em;
}

.tex-maketitle .a {
  margin-bottom: .6em;
  font-size: 1.2em;
}

.tex-maketitle .d {
  font-size: 1.2em;
}

.tex-toc {
  font-family: var(--tex-serif);
  margin: 1em 0;
}

.tex-toc .t {
  margin-bottom: .5em;
  font-size: 1.44em;
  font-weight: 700;
}

.tex-custom {
  border: 1px solid #dbe3f0;
  border-left: 3px solid var(--accent);
  background: #fcfdff;
  border-radius: 4px;
  margin: .7em 0;
}

.tex-custom.is-selected {
  outline-offset: 1px;
  outline: 2px solid #1f5fa866;
}

.tex-custom-head {
  cursor: grab;
  background: #f2f6fc;
  border-bottom: 1px solid #e3eaf5;
  align-items: center;
  gap: 8px;
  padding: 3px 8px;
  font-family: system-ui, sans-serif;
  display: flex;
}

.tex-custom-name {
  font-family: var(--tex-mono);
  color: var(--accent);
  font-size: 11.5px;
  font-weight: 600;
}

.tex-custom-sig {
  font-family: var(--tex-mono);
  color: var(--muted);
  font-size: 10px;
}

.tex-custom-actions {
  opacity: 0;
  gap: 2px;
  margin-left: auto;
  transition: opacity .15s;
  display: flex;
}

.tex-custom:hover .tex-custom-actions, .tex-custom.is-selected .tex-custom-actions {
  opacity: 1;
}

.tex-custom-args {
  padding: 4px 8px 6px;
}

.tex-custom-placeholder {
  color: var(--muted);
  padding: 6px 10px;
  font-family: system-ui, sans-serif;
  font-size: .85em;
}

.tex-arg {
  grid-template-columns: 4.5em 1fr;
  align-items: start;
  gap: 8px;
  padding: 3px 0;
  display: grid;
}

.tex-arg + .tex-arg {
  border-top: 1px dotted #e5eaf3;
  margin-top: 3px;
  padding-top: 6px;
}

.tex-arg-label {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--muted);
  padding-top: 3px;
  font-family: system-ui, sans-serif;
  font-size: 10px;
}

.tex-arg-body {
  min-width: 0;
}

.tex-arg-content {
  outline: none;
}

.tex-arg-content > p {
  text-indent: 0 !important;
}

.tex-arg-body .ProseMirror-focused {
  outline: none;
}

.tex-arg-body:focus-within {
  background: #1f5fa80a;
  border-radius: 3px;
}

.tex-custom-code {
  font-family: var(--tex-mono);
  white-space: pre-wrap;
  color: #475569;
  background: #f8fafc;
  border-top: 1px solid #e3eaf5;
  max-height: 240px;
  margin: 0;
  padding: 6px 10px;
  font-size: 11px;
  overflow: auto;
}

.tex-custom-expansion {
  background: #fbfcfe;
  border-top: 1px solid #e3eaf5;
  padding: 6px 10px;
}

.tex-custom-expansion-title {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--muted);
  margin-bottom: 4px;
  font-family: system-ui, sans-serif;
  font-size: 10px;
}

.tex-expansion {
  opacity: .92;
  font-size: .92em;
}

.tex-page {
  position: relative;
}

.tex-page.show-grid {
  background-image: linear-gradient(to right, #1f5fa814 1px, #0000 1px), linear-gradient(#1f5fa814 1px, #0000 1px), linear-gradient(to right, #1f5fa82e 1px, #0000 1px), linear-gradient(#1f5fa82e 1px, #0000 1px);
  background-position: 0 0;
  background-size: 5mm 5mm, 5mm 5mm, 10mm 10mm, 10mm 10mm;
}

.tex-positioned {
  z-index: 5;
  box-sizing: border-box;
  background: #fffffff5;
  border: 1px dashed #1f5fa873;
  border-radius: 3px;
  margin: 0;
  position: absolute;
}

.tex-positioned.is-selected, .tex-positioned:hover {
  border-color: var(--accent);
  box-shadow: 0 2px 8px #0000001f;
}

.tex-positioned.is-dragging {
  opacity: .85;
  box-shadow: 0 6px 18px #0003;
}

.tex-positioned-bar {
  color: #fff;
  cursor: move;
  -webkit-user-select: none;
  user-select: none;
  opacity: .35;
  background: #1f5fa8d9;
  border-radius: 2px 2px 0 0;
  align-items: center;
  gap: 6px;
  padding: 2px 6px;
  font-family: system-ui, sans-serif;
  font-size: 10px;
  transition: opacity .15s;
  display: flex;
}

.tex-positioned:hover > .tex-positioned-bar, .tex-positioned.is-selected > .tex-positioned-bar {
  opacity: 1;
}

.tex-positioned-body {
  padding: 2px 4px;
}

.tex-positioned-body > p {
  text-indent: 0;
}

.tex-positioned-resize {
  cursor: ew-resize;
  width: 8px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -4px;
}

.tex-positioned-resize:hover {
  background: #1f5fa840;
}

.dropzone {
  text-align: left;
  border: 1.5px dashed var(--border);
  width: 100%;
  color: var(--muted);
  cursor: pointer;
  background: #fbfcfd;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 14px;
  transition: border-color .15s, background .15s, color .15s;
  display: flex;
}

.dropzone:hover:not(:disabled) {
  border-color: var(--accent);
  background: var(--accent-soft);
  color: var(--accent);
}

.dropzone.is-over {
  border-color: var(--accent);
  background: var(--accent-soft);
  color: var(--accent);
  border-style: solid;
}

.dropzone.is-busy {
  cursor: progress;
}

.dropzone:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.dropzone-compact {
  border-radius: 6px;
  padding: 8px 10px;
}

.dropzone-icon {
  flex-shrink: 0;
}

.dropzone-text {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.dropzone-label {
  font-size: 13px;
  font-weight: 500;
}

.dropzone-compact .dropzone-label {
  font-size: 12px;
}

.dropzone-hint {
  opacity: .8;
  font-size: 11px;
}

.collapsible {
  opacity: 0;
  grid-template-rows: 0fr;
  margin-top: 0;
  transition: grid-template-rows .28s, opacity .2s, margin-top .28s;
  display: grid;
}

.collapsible.is-open {
  opacity: 1;
  grid-template-rows: 1fr;
  margin-top: 8px;
}

.collapsible-inner {
  min-height: 0;
  overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
  .collapsible {
    transition: none;
  }
}

.dep-row {
  border-bottom: 1px solid var(--border);
  padding: 10px 12px;
}

.dep-row:last-child {
  border-bottom: 0;
}

.dep-head {
  align-items: center;
  gap: 8px;
  display: flex;
}

.dep-state {
  flex-shrink: 0;
  display: inline-flex;
}

.dep-state.ok {
  color: #16a34a;
}

.dep-state.missing {
  color: var(--muted);
}

.dep-name {
  font-family: var(--tex-mono);
  overflow-wrap: anywhere;
  font-size: 12.5px;
}

.dep-row.is-missing .dep-name {
  color: var(--muted);
}

.dep-kind {
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--muted);
  border: 1px solid var(--border);
  border-radius: 3px;
  flex-shrink: 0;
  padding: 0 4px;
  font-size: 10px;
}

.dep-actions {
  gap: 2px;
  margin-left: auto;
  display: flex;
}

.dep-from {
  color: var(--muted);
  font-size: 10.5px;
  font-family: var(--tex-mono);
  margin-top: 2px;
  margin-left: 24px;
}

.audit-page {
  max-width: 100%;
  position: relative;
}

.audit-page img {
  width: 100%;
  height: auto;
  display: block;
}

.audit-box {
  cursor: pointer;
  background: #1f5fa80f;
  border: 1px solid #1f5fa873;
  position: absolute;
}

.audit-box:hover, .audit-box.is-hover {
  border-color: var(--accent);
  background: #1f5fa82e;
}

.audit-defect {
  cursor: pointer;
  border: 1.5px solid #dc2626bf;
  position: absolute;
  box-shadow: 0 0 0 1px #fff9;
}

.audit-defect:hover {
  outline: 2px solid #dc2626e6;
}

.tex-live {
  font-family: system-ui, sans-serif;
}

.tex-live-item {
  background: #fff;
  border: 1px solid #0000;
  border-radius: 4px;
  margin: 6px 8px;
  position: relative;
}

.tex-live-item.is-current {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px #1f5fa826;
}

.tex-live-item img {
  width: 100%;
  height: auto;
  display: block;
}

.tex-live-item .tex-live-status {
  color: #6b7280;
  padding: 6px 8px;
  font-size: 11px;
}

.tex-live-item .tex-live-error {
  font-family: var(--tex-mono);
  color: #b91c1c;
  white-space: pre-wrap;
  background: #fef2f2;
  padding: 6px 8px;
  font-size: 11px;
}

.tex-live-item.is-stale img {
  opacity: .55;
}

.tex-pagebreak {
  border-top: 2px dashed #9ca3af;
  height: 0;
  margin: 1em -25mm;
  position: relative;
}

.tex-pagebreak:after {
  content: "Saut de page";
  color: #6b7280;
  background: #fff;
  padding: 0 8px;
  font-family: system-ui, sans-serif;
  font-size: 11px;
  position: absolute;
  top: -.8em;
  left: 50%;
  transform: translateX(-50%);
}

.tex-pagebreak.is-selected {
  border-color: var(--accent);
}

.tex-vspace {
  background: repeating-linear-gradient(45deg, #0000, #0000 6px, #f1f5f9 6px 7px);
  border-top: 1px dotted #cbd5e1;
  border-bottom: 1px dotted #cbd5e1;
  margin: .2em 0;
  position: relative;
}

.tex-vspace:after {
  content: attr(data-label);
  color: #94a3b8;
  font-family: system-ui, sans-serif;
  font-size: 10px;
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
}

.tex-vspace.is-selected {
  outline: 2px solid #1f5fa880;
}

.tex-page .ProseMirror-selectednode {
  outline-offset: 2px;
  border-radius: 3px;
  outline: 2px solid #1f5fa880;
}

.tex-page .ProseMirror-gapcursor:after {
  border-top: 1px solid #000;
}

.cm-editor {
  font-size: 12.5px;
}

.cm-editor.cm-focused {
  outline: none !important;
}

.pdf-frame {
  background: #525659;
  border: 0;
  width: 100%;
  height: 100%;
}

@media print {
  body * {
    visibility: hidden;
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

/*# sourceMappingURL=_1138mdg._.css.map*/