/* [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, math, Times New Roman, serif;
  position: relative;
}

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

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

.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) */
:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --ink: #24302b;
  --muted: #65716b;
  --paper: #f5f4ef;
  --surface: #fffefa;
  --line: #dedfd6;
  --green: #315c49;
  --green-dark: #244736;
  --mint: #e5eee7;
  --gold: #c99645;
  --danger: #8d322d;
}

* {
  box-sizing: border-box;
}

html {
  background: var(--paper);
  min-width: 320px;
}

body {
  color: var(--ink);
  background: var(--paper);
  margin: 0;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  line-height: 1.55;
}

a {
  color: var(--green-dark);
  text-underline-offset: .18em;
}

a:hover {
  color: #173928;
}

button, input, select, textarea {
  font: inherit;
}

button, select, input, textarea {
  color: inherit;
}

button:not(.button) {
  cursor: pointer;
  background: #fffefa;
  border: 1px solid #c9d1c8;
  border-radius: 7px;
  min-height: 40px;
  padding: .5rem .8rem;
}

button:not(.button):hover:not(:disabled) {
  background: #f2f7f2;
  border-color: #78917e;
}

button:disabled {
  cursor: not-allowed;
  opacity: .62;
}

input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  background: #fff;
  border: 1px solid #bcc7bd;
  border-radius: 7px;
  max-width: 100%;
  padding: .55rem .65rem;
}

textarea {
  resize: vertical;
  min-height: 6rem;
}

label {
  font-weight: 600;
}

:focus-visible {
  outline-offset: 3px;
  outline: 3px solid #b27722;
}

.app-frame {
  min-height: 100vh;
}

.app-header {
  z-index: 5;
  border-bottom: 1px solid var(--line);
  background: #fffefaf5;
  position: relative;
}

.app-header__inner {
  align-items: center;
  gap: 1.5rem;
  max-width: 1240px;
  min-height: 76px;
  margin: 0 auto;
  padding: .8rem 1.6rem;
  display: flex;
}

.app-brand {
  color: var(--ink);
  letter-spacing: -.025em;
  flex: none;
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.22rem;
  font-weight: 700;
  text-decoration: none;
}

.primary-nav {
  flex: 1;
  align-items: center;
  gap: .35rem;
  display: flex;
}

.primary-nav a {
  color: #4d5d54;
  border-radius: 999px;
  padding: .48rem .75rem;
  font-size: .92rem;
  font-weight: 600;
  text-decoration: none;
}

.primary-nav__link:hover, .primary-nav__link[aria-current="page"] {
  background: var(--mint);
  color: var(--green-dark);
}

.primary-nav__link[aria-current="page"] {
  box-shadow: inset 0 -2px 0 var(--green);
}

.editor-context {
  width: min(100% - 2.5rem, 1160px);
  margin: 1rem auto 0;
}

.editor-context .work-picker-card {
  border-radius: 10px;
}

.editor-nav {
  border-bottom: 1px solid var(--line);
  scrollbar-width: thin;
  gap: .4rem;
  width: min(100% - 2.5rem, 1160px);
  margin: .7rem auto 0;
  padding: .25rem 0 .65rem;
  display: flex;
  overflow-x: auto;
}

.editor-nav a {
  color: #4d5d54;
  border-radius: 7px;
  flex: none;
  padding: .45rem .7rem;
  font-size: .84rem;
  font-weight: 650;
  text-decoration: none;
}

.editor-nav a:hover, .editor-nav a[aria-current="page"] {
  background: var(--mint);
  color: var(--green-dark);
}

.editor-nav a[aria-current="page"] {
  box-shadow: inset 0 -2px 0 var(--green);
}

.account-area {
  color: var(--muted);
  flex: none;
  justify-content: flex-end;
  align-items: center;
  gap: .85rem;
  font-size: .82rem;
  display: flex;
}

.account-identity {
  justify-items: end;
  line-height: 1.3;
  display: grid;
}

.account-email {
  max-width: 220px;
  color: var(--ink);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 650;
  overflow: hidden;
}

.role-list {
  color: var(--muted);
}

.account-area form {
  margin: 0;
}

.button {
  cursor: pointer;
  border: 1px solid #0000;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  min-height: 42px;
  padding: .6rem .9rem;
  font-weight: 650;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color .12s, border-color .12s, transform .12s;
  display: inline-flex;
}

.button:hover {
  transform: translateY(-1px);
}

.button--primary {
  background: var(--green);
  color: #fff;
}

.button--primary:hover {
  background: var(--green-dark);
  color: #fff;
}

.button--quiet {
  border-color: var(--line);
  background: var(--surface);
  color: var(--ink);
}

.button--quiet:hover {
  background: #f2f7f2;
  border-color: #b8c7bc;
}

.session-notice {
  color: #58231d;
  background: #fff0eb;
  border-bottom: 1px solid #e1b4a8;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding: .75rem 1.25rem;
  display: flex;
}

.session-notice p {
  margin: 0;
}

.session-notice a {
  flex: none;
  font-weight: 700;
}

.session-notice--muted {
  border-color: var(--line);
  color: #38423d;
  background: #eeeee8;
}

main {
  overflow-wrap: anywhere;
  width: min(100% - 2.5rem, 1160px);
  margin: 0 auto;
  padding: 2.2rem 0 4rem;
}

main code {
  overflow-wrap: anywhere;
}

.reader-markdown {
  overflow-wrap: anywhere;
  max-width: 100%;
}

.reader-markdown > :first-child {
  margin-top: 0;
}

.reader-markdown > :last-child {
  margin-bottom: 0;
}

.reader-markdown p {
  margin: 0 0 .9em;
}

.reader-markdown ul, .reader-markdown ol {
  padding-inline-start: 1.6em;
}

.reader-markdown li + li {
  margin-top: .35em;
}

.reader-markdown--inline {
  display: inline;
}

.reader-markdown--inline p {
  margin: 0;
  display: inline;
}

.reader-markdown-quote {
  margin-inline: 0;
}

.reader-markdown table {
  border-collapse: collapse;
  max-width: 100%;
  display: block;
  overflow-x: auto;
}

.reader-markdown th, .reader-markdown td {
  border: 1px solid var(--line);
  text-align: start;
  padding: .35rem .6rem;
}

.reader-markdown th {
  background: var(--mint);
}

.reader-markdown .katex-display {
  max-width: 100%;
  padding: .2em 0;
  overflow: auto hidden;
}

.reader-markdown .katex-display > .katex {
  white-space: normal;
}

.home-page {
  gap: 1.7rem;
  display: grid;
}

.home-page > * {
  min-width: 0;
}

.welcome-panel, .dashboard-hero {
  background: linear-gradient(120deg, #e7eee6 0%, #f1f1e9 64%, #f4eadd 100%);
  border: 1px solid #dce1d8;
  border-radius: 18px;
  padding: clamp(1.6rem, 5vw, 4rem);
  position: relative;
  overflow: hidden;
}

.welcome-panel {
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 360px;
  display: flex;
}

.welcome-panel h1, .dashboard-hero h1 {
  letter-spacing: -.045em;
  max-width: 700px;
  margin: .2rem 0 .8rem;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(2.1rem, 5.2vw, 4rem);
  font-weight: 500;
  line-height: 1.07;
}

.welcome-panel > p:not(.eyebrow), .dashboard-hero p:not(.eyebrow) {
  color: #4f5e54;
  max-width: 590px;
  margin: 0 0 1.5rem;
  font-size: 1.07rem;
}

.welcome-panel--compact {
  min-height: 250px;
}

.welcome-panel--compact h1 {
  font-size: clamp(1.8rem, 4vw, 3rem);
}

.eyebrow {
  color: #496854;
  letter-spacing: .13em;
  text-transform: uppercase;
  margin: 0 0 .4rem;
  font-size: .76rem;
  font-weight: 750;
}

.dashboard-hero {
  background: linear-gradient(115deg, #e7eee6, #f3f0e5 75%, #eee5d6);
  justify-content: space-between;
  align-items: center;
  min-height: 230px;
  display: flex;
}

.dashboard-hero p:not(.eyebrow) {
  margin-bottom: 0;
}

.hero-ornament {
  color: #315c4930;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(10rem, 22vw, 18rem);
  line-height: .6;
  transform: translateY(1.7rem);
}

.dashboard-section {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 16px;
  padding: clamp(1.2rem, 3vw, 2rem);
  box-shadow: 0 10px 25px #24302b09;
}

.section-heading {
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
  display: flex;
}

.section-heading h2 {
  letter-spacing: -.025em;
  margin: 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(1.55rem, 3vw, 2rem);
  font-weight: 500;
}

.section-mark {
  color: #b9c6b8;
  font-variant-numeric: tabular-nums;
  font-size: .85rem;
  font-weight: 700;
}

.section-intro {
  color: var(--muted);
  margin: .45rem 0 1.35rem;
}

.book-grid, .task-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.book-card {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 12px;
  min-height: 240px;
  display: flex;
  overflow: hidden;
}

.book-card__cover {
  color: #fbf6e8;
  background: linear-gradient(150deg, #496e58, #284a38);
  flex: 0 0 94px;
  place-items: center;
  display: grid;
  box-shadow: inset -7px 0 10px #00000014;
}

.book-card__cover span {
  letter-spacing: .12em;
  text-align: center;
  border: 1px solid #fbf6e873;
  padding: .4rem .5rem;
  font-family: Georgia, Times New Roman, serif;
  font-size: .62rem;
  line-height: 1.5;
}

.book-card:nth-child(3n+2) .book-card__cover {
  background: linear-gradient(150deg, #9a7049, #694632);
}

.book-card:nth-child(3n) .book-card__cover {
  background: linear-gradient(150deg, #687c86, #3a535e);
}

.book-card__body {
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
  min-width: 0;
  padding: 1.1rem;
  display: flex;
}

.book-card h3 {
  margin: 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.16rem;
  font-weight: 600;
  line-height: 1.25;
}

.book-author {
  color: var(--muted);
  margin: .2rem 0 .9rem;
  font-size: .88rem;
}

.book-description, .edition-note {
  color: #536158;
  margin: 0 0 .85rem;
  font-size: .85rem;
}

.edition-note {
  color: #7a5025;
}

.progress-label {
  width: 100%;
  color: var(--muted);
  justify-content: space-between;
  font-size: .8rem;
  display: flex;
}

.book-card progress {
  width: 100%;
  height: 8px;
  accent-color: var(--green);
}

.saved-position {
  color: var(--muted);
  margin: .25rem 0 .6rem;
  font-size: .78rem;
}

.text-action {
  margin-top: auto;
  padding-top: .4rem;
  font-size: .9rem;
  font-weight: 750;
}

.load-more {
  margin: 1.1rem auto 0;
  display: flex;
}

.work-picker-card {
  background: #f7f8f4;
  border: 1px solid #dfe4dc;
  border-radius: 10px;
  padding: 1rem;
}

.work-picker-card section {
  gap: .45rem;
  display: grid;
}

.work-picker-card label {
  font-size: .88rem;
  font-weight: 700;
}

.work-picker-card select {
  background: #fff;
  border: 1px solid #bfc9bf;
  border-radius: 7px;
  width: min(100%, 560px);
  min-height: 44px;
  padding: .5rem .65rem;
}

.work-picker-card p {
  color: var(--muted);
  margin: .2rem 0 0;
  font-size: .86rem;
}

.editor-selected-work {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: baseline;
  gap: .25rem .55rem;
  margin: 1.1rem 0 .75rem;
  font-size: .86rem;
  display: flex;
}

.editor-selected-work strong {
  color: var(--ink);
  font-size: 1rem;
}

.task-grid {
  margin-top: 1rem;
}

.task-card {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 10px;
  flex-direction: column;
  gap: .5rem;
  min-height: 116px;
  padding: 1rem;
  text-decoration: none;
  transition: border-color .12s, box-shadow .12s, transform .12s;
  display: flex;
}

.task-card[href]:hover {
  border-color: #a8baaa;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px #24302b12;
}

.task-card__title {
  color: var(--green-dark);
  justify-content: space-between;
  align-items: flex-start;
  gap: .5rem;
  font-weight: 750;
  display: flex;
}

.task-card__description {
  color: var(--muted);
  font-size: .86rem;
}

.task-card--disabled {
  opacity: .66;
  background: #f5f5f1;
}

.task-card--disabled .task-card__title {
  color: #55625a;
}

.task-grid--admin {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.admin-upload-note {
  border-left: 3px solid var(--gold);
  color: var(--muted);
  margin: 1rem 0 0;
  padding-left: .75rem;
  font-size: .86rem;
}

.inline-status, .inline-error, .empty-state {
  color: #41574a;
  background: #eff3ed;
  border-radius: 8px;
  padding: .8rem 1rem;
}

.inline-status {
  margin: .5rem 0;
}

.inline-error {
  color: var(--danger);
  background: #fff0eb;
}

.empty-state {
  margin-top: .9rem;
}

.empty-state p {
  color: var(--muted);
  margin: .2rem 0 0;
}

.area-page {
  gap: 1.4rem;
  display: grid;
}

.area-hero, .area-section {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 16px;
  min-width: 0;
  padding: clamp(1.2rem, 3vw, 2rem);
}

.area-hero {
  background: linear-gradient(115deg, #e7eee6, #f3f0e5 75%, #eee5d6);
}

.area-hero--admin {
  background: linear-gradient(115deg, #e7ecee, #f2f0e7 75%, #eee5d6);
}

.area-hero h1 {
  letter-spacing: -.04em;
  max-width: 780px;
  margin: .2rem 0 .6rem;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(2rem, 4.5vw, 3.35rem);
  font-weight: 500;
  line-height: 1.08;
}

.area-hero > p:not(.eyebrow) {
  color: #4f5e54;
  max-width: 700px;
}

.area-context {
  color: var(--muted);
  flex-wrap: wrap;
  align-items: baseline;
  gap: .2rem .55rem;
  margin: 1rem 0 0;
  display: flex;
}

.area-context strong {
  color: var(--ink);
}

.area-context--empty {
  border-left: 3px solid var(--gold);
  padding-left: .75rem;
}

.area-section {
  box-shadow: 0 10px 25px #24302b09;
}

.area-section h2 {
  margin-top: 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(1.45rem, 3vw, 1.9rem);
  font-weight: 500;
}

.area-section--support {
  border-left: 4px solid var(--gold);
}

.area-section--support h2 {
  margin-bottom: .35rem;
}

.area-section--support p:not(.eyebrow) {
  color: var(--muted);
}

.workflow-grid {
  counter-reset: none;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr));
  gap: .85rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.workflow-card {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 11px;
  grid-template-columns: 2.25rem minmax(0, 1fr);
  align-content: start;
  gap: .3rem .65rem;
  min-height: 148px;
  padding: 1rem;
  text-decoration: none;
  transition: border-color .12s, box-shadow .12s, transform .12s;
  display: grid;
}

.workflow-card:hover {
  border-color: #a8baaa;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px #24302b12;
}

.workflow-card__number {
  background: var(--mint);
  width: 2rem;
  height: 2rem;
  color: var(--green-dark);
  border-radius: 50%;
  grid-row: span 2;
  place-items: center;
  font-size: .75rem;
  font-weight: 800;
  display: grid;
}

.workflow-card__title {
  color: var(--green-dark);
  font-weight: 750;
}

.workflow-card__description {
  color: var(--muted);
  grid-column: 2;
  font-size: .86rem;
}

.workflow-grid--admin {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 245px), 1fr));
}

.workflow-grid--admin .workflow-card__number {
  color: #314f5c;
  background: #e8edef;
}

.task-page {
  gap: 1.15rem;
  display: grid;
}

.page-breadcrumb {
  color: var(--muted);
  margin: 0 0 .25rem;
  font-size: .82rem;
  font-weight: 650;
}

.task-page > h1 {
  letter-spacing: -.035em;
  margin: 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(1.9rem, 4vw, 2.8rem);
  font-weight: 500;
  line-height: 1.1;
}

.task-page > p {
  max-width: 850px;
}

.task-panel {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 12px;
  min-width: 0;
  padding: clamp(1rem, 2.5vw, 1.5rem);
}

.task-panel > h2:first-child {
  margin-top: 0;
}

.task-panel > h2 {
  font-family: Georgia, Times New Roman, serif;
  font-weight: 500;
}

.task-actions {
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  display: flex;
}

.task-actions > * {
  margin: 0 !important;
}

.task-form {
  justify-items: start;
  gap: 1rem;
  display: grid;
}

.task-form > label {
  gap: .35rem;
  display: grid;
}

.task-form .checkbox-label {
  align-items: flex-start;
  gap: .55rem;
  display: flex;
}

.checkbox-label input {
  flex: none;
  margin-top: .25rem;
}

.related-task-link {
  color: var(--muted);
  margin-top: 1rem;
}

.review-toolbar {
  border: 1px solid var(--line);
  background: #f8f8f4;
  border-radius: 10px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  gap: .8rem;
  padding: .85rem;
  display: flex;
}

.review-toolbar > label {
  gap: .3rem;
  min-width: min(100%, 220px);
  display: grid;
}

.history-card {
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 9px;
  margin: .8rem 0;
  padding: 1rem;
}

.history-card__heading {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  display: flex;
}

.history-card__heading h3 {
  margin: 0;
}

.status-pill {
  color: #46564d;
  text-transform: capitalize;
  background: #f2f4ef;
  border: 1px solid #c9d1c8;
  border-radius: 999px;
  padding: .18rem .55rem;
  font-size: .77rem;
  font-weight: 750;
  display: inline-flex;
}

.status-pill--failed {
  color: var(--danger);
  background: #fff0eb;
  border-color: #ddb1aa;
}

.status-pill--completed, .status-pill--succeeded {
  color: #28573a;
  background: #edf5ee;
  border-color: #b4cfbb;
}

.section-jump-nav {
  border-bottom: 1px solid var(--line);
  flex-wrap: wrap;
  gap: .3rem;
  padding-bottom: .7rem;
  display: flex;
}

.section-jump-nav a {
  color: var(--green-dark);
  border-radius: 7px;
  padding: .45rem .65rem;
  font-size: .84rem;
  font-weight: 650;
  text-decoration: none;
}

.section-jump-nav a:hover {
  background: var(--mint);
}

.task-page details {
  min-width: 0;
}

.task-page details > summary {
  cursor: pointer;
  color: var(--green-dark);
  font-weight: 700;
}

.task-page details[open] > summary {
  margin-bottom: .85rem;
}

.proposal-edit-details, .content-edit-details, .content-history-details {
  border-top: 1px solid var(--line);
  margin: .9rem 0;
  padding-top: .65rem;
}

.further-reading-layout {
  grid-template-columns: minmax(220px, .75fr) minmax(0, 1.5fr);
  align-items: start;
  gap: 1rem;
  display: grid;
}

.association-list > article {
  border-top: 1px solid var(--line);
  margin-top: .7rem;
  padding-top: .75rem;
}

.association-list > article h3 {
  margin: 0;
  font-size: 1rem;
}

.association-list > article p {
  color: var(--muted);
  font-size: .85rem;
}

.related-work-placeholder {
  min-height: 150px;
  margin-top: 0;
}

.quality-sample-panel > summary {
  font-size: 1.1rem;
}

.publication-preview {
  border-color: #b8c9b9;
  box-shadow: 0 8px 22px #24302b0e;
}

.content-preview {
  border-left: 3px solid var(--mint);
  margin: .8rem 0;
  padding: .25rem .8rem;
}

.content-preview h3 {
  margin: 0 0 .4rem;
  font-size: 1rem;
}

.reader-page {
  flex-direction: column;
  gap: 1.15rem;
  display: flex;
}

.reader-page > h1 {
  letter-spacing: -.035em;
  order: 0;
  margin: 0;
  font-family: Georgia, Times New Roman, serif;
  font-weight: 500;
}

.reader-page > .page-breadcrumb, .reader-page > p:first-of-type {
  order: 0;
}

.reader-route-selection {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 11px;
  order: 1;
  padding: 1rem;
}

.reader-route-selection > summary {
  cursor: pointer;
  color: var(--green-dark);
  font-weight: 750;
}

.reader-route-selection[open] > summary {
  margin-bottom: .8rem;
}

.reader-route-selection section {
  margin: 0;
}

.reader-active-content {
  background: var(--surface);
  border: 1px solid #d8e0d7;
  border-radius: 14px;
  order: 2;
  min-width: 0;
  padding: clamp(1rem, 3vw, 2rem);
}

.reader-active-content > h2 {
  margin-top: 0;
  font-family: Georgia, Times New Roman, serif;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  font-weight: 500;
}

.reader-active-content > article {
  max-width: 78ch;
  margin: 1rem auto;
  font-size: 1.04rem;
  line-height: 1.75;
}

.reader-active-content > article > h3 {
  font-family: Georgia, Times New Roman, serif;
  font-size: 1.45rem;
}

.reader-route-notice {
  order: 2;
}

.reader-support-panel {
  border: 1px solid var(--line);
  background: #fafaf7;
  border-radius: 10px;
  order: 3;
  padding: .9rem 1rem;
}

.reader-support-panel > summary {
  cursor: pointer;
  color: var(--green-dark);
  font-weight: 700;
}

.reader-support-panel[open] > summary {
  margin-bottom: .7rem;
}

.reader-page > section[aria-labelledby="companion-heading"] {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 12px;
  order: 4;
  padding: 1.2rem;
}

.reader-page > aside[data-source-viewer] {
  z-index: 20;
  background: var(--surface);
  border: 1px solid #89978c;
  border-radius: 14px;
  padding: clamp(1rem, 3vw, 2rem);
  position: fixed;
  inset: min(5vh, 2rem) max(4vw, 1rem);
  overflow: auto;
  box-shadow: 0 18px 70px #141c1747;
}

.reader-page .source-viewer {
  border: 1px solid var(--line);
  background: #fff;
  max-height: 60vh;
  padding: 1rem;
  overflow: auto;
}

.reader-step-actions {
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem;
  margin: 1rem 0;
  display: flex;
}

@media (max-width: 820px) {
  .app-header__inner {
    flex-wrap: wrap;
    gap: .6rem 1rem;
    padding: .8rem 1.1rem;
  }

  .app-brand {
    margin-right: auto;
  }

  .primary-nav {
    flex: 1 0 100%;
    order: 3;
    gap: .15rem;
    overflow-x: auto;
  }

  .primary-nav__link {
    flex: none;
    padding-inline: .65rem;
  }

  .account-area {
    gap: .5rem;
  }

  .account-email {
    max-width: 160px;
  }

  .session-notice {
    flex-direction: column;
    align-items: flex-start;
    gap: .35rem;
  }

  .editor-context, .editor-nav {
    width: min(100% - 1.5rem, 1160px);
  }

  .further-reading-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 480px) {
  .app-header__inner {
    padding-inline: .9rem;
  }

  .account-identity {
    justify-items: start;
    display: grid;
  }

  .account-email {
    max-width: 120px;
    font-size: .72rem;
  }

  .role-list {
    font-size: .68rem;
  }

  .account-area {
    gap: .35rem;
  }

  .account-area .button {
    min-height: 38px;
    padding: .5rem .65rem;
    font-size: .82rem;
  }

  main {
    width: min(100% - 1.5rem, 1160px);
    padding-top: 1.5rem;
  }
}

@media (max-width: 600px) {
  .dashboard-hero {
    min-height: unset;
  }

  .hero-ornament {
    display: none;
  }

  .book-card {
    min-height: 215px;
  }

  .book-card__cover {
    flex-basis: 72px;
  }

  .book-card__body {
    padding: .9rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, :before, :after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/*# sourceMappingURL=_1138mdg._.css.map*/