/* LaTeX.js 스타일시트 (base.css + article.css, MIT License)
 *
 * scripts/build_latexjs_css.py 가 생성합니다 — 직접 고치지 마세요.
 * 원본에서 바꾼 것:
 *   1. 모든 선택자를 .latexdoc 아래로 스코프 (원본은 html/body/.body/.small 같은
 *      흔한 선택자를 잡아서, 그대로 넣으면 사이트 CSS와 충돌합니다)
 *   2. Latin Modern(cmu) 폰트 import 제거 — 한글 글리프가 없고 8MB입니다.
 *      본문은 사이트 폰트, 수식은 KaTeX 폰트를 씁니다.
 */

.latexdoc{
    --size: 10pt;
    --line-height: 1.2;

    

    --paperwidth: 100%;         

    

    --parindent: 1.5em;
    --parskip: 0px;             

    --smallskipamount: 0.3rem;
    --medskipamount: 0.6rem;
    --bigskipamount: 1.2rem;

    --listparindent: 0px;
    --itemindent: 0px;

    --leftmargini: 2.5em;
    --leftmarginii: 2.2em;
    --leftmarginiii: 1.87em;
    --leftmarginiv: 1.7em;
    --leftmarginv: 1em;
    --leftmarginvi: 1em;

    --leftmargin: var(--leftmargini);

    --labelsep: 0.5rem;

    --fboxrule: 0.4pt;
    --fboxsep: 3pt;

    
    --columnwidth: ;

    --columnsep: 35pt;
    --columnseprule: 0pt;
    --columnseprulecolor: black;

    --multicolsep: 12pt;
}
.latexdoc .twocolumn{
    --parindent: 1em;

    --marginparsep: 1rem;

    --leftmargini: 2em;
    --leftmarginv: 0.5em;
    --leftmarginvi: 0.5em;
}
.latexdoc .list{
    --topsep: 0.8rem;
    --parsep: 0.4rem;
    --itemsep: 0.4rem;
    --leftmargin: var(--leftmargini);
}
.latexdoc .list .list{
    --topsep: 0.4rem;
    --parsep: 0.2rem;
    --itemsep: var(--parsep);
    --leftmargin: var(--leftmarginii);
}
.latexdoc .list .list .list{
    --topsep: 0.2rem;
    --parsep: 0;
    --itemsep: var(--topsep);
    --leftmargin: var(--leftmarginiii);
}
.latexdoc .list .list .list .list{
    --topsep: 0;
    --leftmargin: var(--leftmarginiv);
}
.latexdoc .list .list .list .list .list{
    --leftmargin: var(--leftmarginv);
}
.latexdoc .list .list .list .list .list .list{
    --leftmargin: var(--leftmarginvi);
}
.latexdoc{
    display: grid;

    grid-template-columns: [margin-left] var(--marginleftwidth) [body] var(--textwidth) [margin-right] var(--marginrightwidth);
    grid-template-rows: auto;

    margin: 0;
    padding: 0;

    max-width: var(--paperwidth);   
    min-width: var(--paperwidth);
}
.latexdoc .body{
    grid-column: body;
    grid-row: 1;
}
.latexdoc .margin-left{
    grid-column: margin-left;
    grid-row: 1;
    justify-self: end;

    display: flex;
}
.latexdoc .margin-right{
    grid-column: margin-right;
    grid-row: 1;
    justify-self: start;

    display: flex;
}
.latexdoc .marginpar{
    width: var(--marginparwidth);           
    min-width: var(--marginparwidth);       

    margin-left: var(--marginparsep);
    margin-right: var(--marginparsep);
}
.latexdoc .marginpar > *{
    padding-bottom: var(--marginparpush);   
}
.latexdoc .onecolumn{
    column-count: 1;
}
.latexdoc .twocolumn{
    column-count: 2;
}
.latexdoc .multicols{
    margin-top: var(--multicolsep);
    margin-bottom: var(--multicolsep);

    column-gap: var(--columnsep);
    column-rule: var(--columnseprule) solid var(--columnseprulecolor);
    column-fill: balance;
}
.latexdoc .span-cols{
    column-span: all;
}
.latexdoc{
    font-family: "Computer Modern Serif", serif;
    font-size: var(--size);

    text-align: justify;
    line-height: var(--line-height);
    hyphens: manual;
}
.latexdoc .katex{
    font-size: 1em !important;
}
.latexdoc .katex, .latexdoc .katex .mainrm, .latexdoc .katex .mathit, .latexdoc .katex .mathbf{
    font-family: "Computer Modern Serif" !important;  
}
.latexdoc .katex .mathdefault, .latexdoc .katex .boldsymbol{
    font-family: "Computer Modern Serif" !important;  
}
.latexdoc .katex .mathsf, .latexdoc .katex .textsf, .latexdoc .katex .mathboldsf, .latexdoc .katex .textboldsf, .latexdoc .katex .mathitsf, .latexdoc .katex .textitsf{
    font-family: "Computer Modern Sans" !important;  
}
.latexdoc .rm{
    font-family: "Computer Modern Serif", serif;
    font-variant-ligatures: normal;
}
.latexdoc .sf{
    font-family: "Computer Modern Sans", sans-serif;
    font-variant-ligatures: normal;
}
.latexdoc .tt{
    font-family: "Computer Modern Typewriter", monospace;
    font-variant-ligatures: none;
}
.latexdoc .md{
    font-weight: normal;
}
.latexdoc .bf{
    font-weight: bold;
}
.latexdoc .up{
    font-family: "Computer Modern Serif", serif;
    font-style: normal;
    font-variant-caps: normal;
}
.latexdoc .it{
    font-style: italic;
    font-variant-caps: normal;
}
.latexdoc .sl{
    font-family: "Computer Modern Serif Slanted";
    font-style: oblique;
    font-variant-caps: normal;
}
.latexdoc .sf.sl{
    font-family: "Computer Modern Sans", sans-serif;
    font-style: oblique;
    font-variant-caps: normal;
}
.latexdoc .tt.sl{
    font-family: "Computer Modern Typewriter Slanted", monospace;
    font-style: oblique;
    font-variant-caps: normal;
}
.latexdoc .sc{
    font-family: "Computer Modern Serif", serif;
    font-style: normal;
    font-variant-caps: small-caps;
}
.latexdoc .tiny{
    font-size: .5rem;
}
.latexdoc .scriptsize{
    font-size: .7rem;
}
.latexdoc .footnotesize{
    font-size: .82rem;
}
.latexdoc .small{
    font-size: .91rem;
}
.latexdoc .normalsize{
    font-size: 1rem;
}
.latexdoc .large{
    font-size: 1.2rem;
}
.latexdoc .Large{
    font-size: 1.4rem;
}
.latexdoc .LARGE{
    font-size: 1.7rem;
}
.latexdoc .huge{
    font-size: 2rem;
}
.latexdoc .Huge{
    font-size: 2.5rem;
}
.latexdoc h1, .latexdoc h2, .latexdoc h3, .latexdoc h4{
    
    font-family: "Computer Modern Serif", serif;
    font-style: normal;
    font-variant-caps: normal;

    text-align: left;
}
.latexdoc .titlepage{
    height: 100vh;
    min-height: 20rem;
}
.latexdoc .title{
    font-size: 1.7rem;  
}
.latexdoc .author, .latexdoc .date{
    font-size: 1.2rem;  
}
.latexdoc .centering, .latexdoc .list.center{
    text-indent: 0;
    text-align: center;
}
.latexdoc .raggedright, .latexdoc .list.flushleft{
    text-indent: 0;
    text-align: left;
}
.latexdoc .raggedleft, .latexdoc .list.flushright{
    text-indent: 0;
    text-align: right;
}
.latexdoc .list.center, .latexdoc .list.flushleft, .latexdoc .list.flushright{
    margin-left: 0 !important;
}
.latexdoc .list{
    text-align: justify;
}
.latexdoc .hbox{
    display: inline-block;
    white-space: nowrap;
    text-indent: 0;
}
.latexdoc .phantom{
    visibility: hidden;
}
.latexdoc .llap{
    display: inline-flex;
    flex-direction: column;
    width: 0;
    align-items: flex-end;
}
.latexdoc .clap{
    display: inline-flex;
    flex-direction: column;
    width: 0;
    align-items: center;
}
.latexdoc .rlap{
    display: inline-block;
    width: 0;
}
.latexdoc .stretch{
    display: inline-flex;
    flex-direction: row;

    justify-content: stretch;
    align-items: stretch;
}
.latexdoc .smash{
    display: inline-flex;
    flex-direction: row;
    height: 0px;
    align-items: flex-end;
}
.latexdoc .align-baseline{
    line-height: 0;
}
.latexdoc .align-baseline::after{
    content: '';
    display: inline-block;
}
.latexdoc .mpbaseline{
    line-height: 0;
    width: 0;
    height: 0;
    display: inline-block;
}
.latexdoc .parbox{
    display: inline-block;
    text-indent: 0;
}
.latexdoc .p-t{
    display: inline-flex;
}
.latexdoc .p-c{
    vertical-align: middle;
}
.latexdoc .p-b{
    
    vertical-align: baseline;       
}
.latexdoc .pbh.p-b{
    vertical-align: text-bottom;
}
.latexdoc .p-t.p-ct{
    vertical-align: baseline;
}
.latexdoc .p-t.p-cc{
    vertical-align: text-top;
    align-items: center;
}
.latexdoc .p-t.p-cb{
    vertical-align: text-top;
    display: inline-flex;
    align-items: flex-end;
}
.latexdoc .p-c.p-cc{
    display: inline-flex;
    align-items: center;
}
.latexdoc .p-c.p-cb{
    display: inline-flex;
    align-items: flex-end;
}
.latexdoc .p-b.p-ct{
    display: inline-flex;
    align-items: flex-start;
}
.latexdoc .p-b.p-cc{
    display: inline-flex;
    align-items: center;
}
.latexdoc .p-b.p-cb{
    vertical-align: baseline;
    display: inline-flex;
    align-items: flex-end;
}
.latexdoc .p-b.p-cb::before{
    
    content: "x";
    display: inline-block;
    width: 0;
    visibility: hidden;
}
.latexdoc .underline{
    border-bottom: 0.4pt solid;
    line-height: 1;
}
.latexdoc .frame{
    padding: var(--fboxsep);
    border: var(--fboxrule) solid;
    margin-top: 2px;
    margin-bottom: 2px;
}
.latexdoc .pframe{
    border-style: solid;
}
.latexdoc .picture{
    display: inline-block;  
    position: relative;
    vertical-align: bottom; 
    text-indent: 0;         
    
}
.latexdoc .picture-canvas{
    display: flex;
    align-items: flex-end;
    position: absolute;
    left: 0;
    bottom: 0;
}
.latexdoc .put-obj{
    display: block;
    position: relative;
    line-height: 0;
             
}
.latexdoc .put-obj:after{
    content: '';
    display: inline-block;
}
.latexdoc .strut{
    display: block;
}
.latexdoc .picture-object{
    position: absolute;
    display: flex;          
                            
}
.latexdoc code{
    white-space: pre;
}
.latexdoc p, .latexdoc ul, .latexdoc ol, .latexdoc dl, .latexdoc div{
    margin: 0;
    padding: 0;
}
.latexdoc p{
    margin-top: var(--parskip);
    text-indent: var(--parindent);
}
.latexdoc h1 + p, .latexdoc h1 + * p:first-child, .latexdoc h2 + p, .latexdoc h2 + * p:first-child, .latexdoc h3 + p, .latexdoc h3 + * p:first-child, .latexdoc h4 + p, .latexdoc h4 + * p:first-child, .latexdoc .noindent, .latexdoc .continue{
    text-indent: 0;
}
.latexdoc .negthinspace{
    margin-left: -0.16666667em;
}
.latexdoc .vspace{
    display: block;
}
.latexdoc .breakspace{
    display: table;
}
.latexdoc .vspace-inline{
    display: inline-block;
    height: calc(1em * var(--line-height));     
    vertical-align: top;                        
}
.latexdoc .smallskip{
    margin-bottom: var(--smallskipamount);
}
.latexdoc .medskip{
    margin-bottom: var(--medskipamount);
}
.latexdoc .bigskip{
    margin-bottom: var(--bigskipamount);
}
.latexdoc .list{
    margin: calc(var(--topsep) + var(--parskip)) 0;
    margin-left: var(--leftmargin);
}
.latexdoc .list p:first-of-type{
    text-indent: var(--itemindent);
}
.latexdoc .list p + p{
    margin-top: var(--parsep);
    text-indent: var(--listparindent);
}
.latexdoc .list li + li, .latexdoc .list dd + dt{
    margin-top: calc(var(--itemsep) + var(--parsep));
}
.latexdoc li{
    list-style: none;
}
.latexdoc .itemlabel + *{
    display: inline;
}
.latexdoc .itemlabel > *{
    position: relative;
    right: var(--labelsep);
}
.latexdoc dd, .latexdoc dd > p:first-child{
    display: inline;
}
.latexdoc dd::after{
    content: "";
    display: block;
}
.latexdoc dt{
    display: inline-block;
    font-weight: bold;
}
.latexdoc .list dt{
    margin-left: calc(-1 * var(--leftmargin));
}
.latexdoc dd{
    margin-left: var(--labelsep);
}
.latexdoc .quote, .latexdoc .quotation, .latexdoc .verse{
    margin-left: var(--leftmargin);
    margin-right: var(--leftmargin);
}
.latexdoc .quotation{
    --parsep: 0px;
    --itemindent: 1.5em;
    --listparindent: var(--itemindent);
}
.latexdoc .verse{
    text-align: left;

    margin-left: calc(1.5em + var(--leftmargin));
    --itemindent: -1.5em;
    --listparindent: var(--itemindent);
}
.latexdoc span.tex, .latexdoc span.latex{
    text-transform: uppercase;
}
.latexdoc span.latex > .a{
    font-size: 0.8em;
    vertical-align: 0.2em;
    margin-left:  -0.45em;
    margin-right: -0.15em;
}
.latexdoc span.tex > .e, .latexdoc span.latex > .e{
    margin-left: -0.2em;
    margin-right: -0.2em;
    position: relative;
    top: 0.45ex;
}

.latexdoc h2{
    counter-reset: subsection;
    font-size: 1.4rem;      
    font-weight: bold;
    margin-top: 3.5ex;
    margin-bottom: 2.3ex;
}
.latexdoc h3{
    font-size: 1.2rem;      
    font-weight: bold;
    margin-top: 3.25ex;
    margin-bottom: 1.5ex;
}
.latexdoc h4{
    font-size: 1rem;        
    font-weight: bold;
    margin-top: 3.25ex;
    margin-bottom: 1.5ex;
}

