@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500&display=swap";pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.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;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.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{display:inline-block;width:.12em}.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 .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.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;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.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{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.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{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:none;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#8292a2}.token.punctuation{color:#f8f8f2}.token.namespace{opacity:.7}.token.property,.token.tag,.token.constant,.token.symbol,.token.deleted{color:#f92672}.token.boolean,.token.number{color:#ae81ff}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#a6e22e}.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string,.token.variable{color:#f8f8f2}.token.atrule,.token.attr-value,.token.function,.token.class-name{color:#e6db74}.token.keyword{color:#66d9ef}.token.regex,.token.important{color:#fd971f}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.markdown-content{font-size:14px;line-height:1.65;color:var(--text, #eef2ff);word-wrap:break-word}.markdown-content p{margin:.75em 0}.markdown-content p:first-child{margin-top:0}.markdown-content p:last-of-type em{font-size:.9em;color:var(--muted, #9aa7b9);font-style:normal}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1.5em 0 .8em;font-weight:600;line-height:1.3;color:var(--text, #eef2ff)}.markdown-content h1{font-size:1.75em;padding-bottom:.4em;border-bottom:2px solid var(--border, rgba(255,255,255,.08))}.markdown-content h2{font-size:1.4em;padding-bottom:.4em;border-bottom:1px solid var(--border, rgba(255,255,255,.08))}.markdown-content h3{font-size:1.2em;color:var(--accent, #6ab3ff)}.markdown-content h4{font-size:1.1em;color:var(--muted, #9aa7b9)}.markdown-content strong{font-weight:600;color:#fff}.markdown-content em{font-style:italic;color:var(--text, #eef2ff)}.markdown-content pre.code-block{background:var(--elev, #0b1118);border:1px solid var(--border, rgba(255,255,255,.08));border-radius:8px;padding:14px;margin:1em 0;overflow-x:auto;font-size:.9em}.markdown-content pre.code-block code{font-family:Consolas,Monaco,Courier New,monospace;line-height:1.5;background:none;padding:0}.markdown-content code:not(pre *){background:#4a90e226;color:#6ab0f2;padding:.2em .4em;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.9em}.markdown-content table{width:100%;border-collapse:collapse;margin:1.2em 0;background:var(--panel-2, #121a24);border:1px solid var(--border, rgba(255,255,255,.08));border-radius:8px;overflow:hidden;font-size:.95em}.markdown-content th,.markdown-content td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--border, rgba(255,255,255,.08))}.markdown-content th{background:#ffffff0d;font-weight:600;color:var(--text, #eef2ff);font-size:1.05em}.markdown-content td strong{color:var(--accent, #6ab3ff);font-weight:500}.markdown-content td em{color:var(--muted, #9aa7b9);font-style:normal;font-size:.9em}.markdown-content tr:last-child td{border-bottom:none}.markdown-content tr:hover{background:var(--hover, rgba(255,255,255,.06))}.markdown-content ul,.markdown-content ol{margin:.75em 0;padding-left:1.8em}.markdown-content li{margin:.4em 0}.markdown-content blockquote{border-left:4px solid var(--accent, #6ab3ff);padding:.5em 1.2em;margin:1.2em 0;color:var(--muted, #9aa7b9);background:var(--elev, #0b1118);border-radius:0 6px 6px 0}.markdown-content blockquote p{margin:0}.markdown-content a{color:var(--accent, #6ab3ff);text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.markdown-content a:hover{color:#8ac0f2;border-bottom-color:#8ac0f2}.markdown-content hr{border:none;height:1px;background-color:var(--border, rgba(255,255,255,.08));margin:2em 0}@media (max-width: 768px){.markdown-content table{font-size:.9em}.markdown-content th,.markdown-content td{padding:8px 10px}}:root{--bg: #0e1116;--bg-gradient: radial-gradient(1200px 800px at 40% -20%, #121723 0%, #0e1116 55%, #0b0e12 100%);--panel: #141922;--panel-2: #191f2b;--elev: #1b2330;--text: #e6eaf1;--subtext: #aab4c3;--muted: #8a95a6;--border: #242b38;--accent: #6ab3ff;--accent-2: #a68bff;--accent-3: #5be0b3;--danger: #ff6b88;--paper: #fcfdff;--paper-edge: #eef1f7;--paper-text: #0f1320;--radius-1: 10px;--radius-2: 14px;--radius-3: 18px;--gap: 12px;--topbar-h: 44px;--toolbar-h: 52px;--shadow-1: 0 10px 30px rgba(0,0,0,.35);--shadow-2: 0 18px 60px rgba(0,0,0,.55);--glass: saturate(1.1) blur(12px);--left-panel-w: 280px;--lp-left: 12px;--paper-w: 794px;--paper-min-gap-left: 28px;--canvas-min-w: 1440px;--paper-left-shift: 0px;--note-area-w: 360px;--hover: rgba(255,255,255,.06);--hover-strong: rgba(255,255,255,.1);--ring: rgba(138,180,248,.45);--ring-weak: rgba(138,180,248,.22)}html,body,#root{height:100%}html,body{margin:0;background:var(--bg);background-image:var(--bg-gradient);color:var(--text);font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,Arial,Noto Sans SC,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:overlay;overflow-x:auto;scrollbar-gutter:stable both-edges}a{color:var(--accent);text-decoration:none}button{font:inherit;color:inherit;background:transparent;border:none;padding:0;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}svg{width:18px;height:18px;display:inline-block}html,body{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) rgba(255,255,255,.06)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffffff47,#ffffff29);border-radius:10px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ffffff5c,#ffffff38)}::-webkit-scrollbar-track{background:#ffffff0f;border-radius:10px}.menu-bar{position:fixed;top:0;left:0;right:0;width:100%;z-index:50;height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 12px;background:#0d1117b8;-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);border-bottom:1px solid var(--border);transition:opacity .18s ease,background-color .18s ease}.menu-bar.is-scrolled:not(:hover){opacity:.88}.menu-left,.menu-right{display:flex;align-items:center;gap:8px}.menu-center{flex:1;display:flex;align-items:center;gap:6px}.brand{display:inline-flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;color:var(--text)}.chip{padding:6px 10px;border-radius:8px;color:var(--subtext)}.menu-btn{padding:6px 10px;border-radius:8px;color:var(--text)}.menu-btn:hover{background:#ffffff0f}.menu-dropdown{position:relative}.menu-pop{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:260px;max-width:360px;max-height:none;overflow:visible;border:1px solid var(--border);border-radius:12px;background:linear-gradient(180deg,#ffffff05,#fff0 30%),var(--panel);box-shadow:var(--shadow-1),0 12px 36px #00000073;padding:8px;opacity:0;transform:translateY(-2px) scale(.98);transform-origin:top left;transition:opacity .14s ease,transform .14s ease;z-index:60}.menu-dropdown.align-right>.menu-pop{left:auto;right:0;transform-origin:top right}.menu-dropdown.is-open>.menu-pop{display:block;opacity:1;transform:translateY(0) scale(1)}.menu-section{padding:4px 4px 6px}.menu-title{padding:6px 8px;margin:2px 2px 6px;font-size:12px;line-height:1;color:var(--muted);opacity:.9;-webkit-user-select:none;user-select:none}.menu-sep{height:1px;margin:6px;background:linear-gradient(to right,transparent,rgba(255,255,255,.06),transparent);border:0}.menu-item{display:flex;align-items:center;gap:10px;width:100%;min-height:34px;padding:7px 10px;border-radius:8px;color:var(--text);cursor:pointer;background:transparent;border:0;text-align:left;font-size:13px;line-height:1.2;-webkit-tap-highlight-color:transparent}.menu-item:hover{background:#ffffff0f}.menu-item:active{background:#ffffff1a}.menu-item:focus-visible{outline:2px solid rgba(138,180,248,.45);outline-offset:2px;background:#ffffff0f}.menu-item .meta{margin-left:auto;color:var(--subtext);font-size:12px;opacity:.8}.menu-item.has-sub{position:relative}.menu-item.as-label{width:100%}.menu-item .label{flex:1}.menu-item .arrow{margin-left:8px;font-size:12px;opacity:.8}.menu-sub{display:none;position:absolute;top:-6px;left:100%;margin-left:6px;min-width:220px;max-height:none;overflow:visible;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:var(--shadow-1),0 12px 36px #0006;padding:6px;z-index:70;transform:translate(0);transition:transform .14s ease}.menu-item.has-sub.is-open>.menu-sub{display:block}.menu-item.has-sub .as-label[aria-expanded=true]+.menu-sub{display:block}.menu-dropdown.align-right .menu-item.has-sub>.menu-sub{left:auto;right:100%;margin-left:0;margin-right:6px}.menu-item.has-sub.is-open>.menu-sub{transform:translate(0)}.menu-pop:before,.menu-sub:before{content:"";position:sticky;top:0;display:block;height:10px;margin:-8px -8px 0;background:linear-gradient(to bottom,rgba(0,0,0,.28),transparent);border-top-left-radius:12px;border-top-right-radius:12px;pointer-events:none}.menu-sub:before{margin:-6px -6px 0;border-radius:10px}.menu-item.is-disabled,.menu-item[disabled]{opacity:.45;cursor:not-allowed}.toolbar{position:fixed;top:var(--topbar-h);left:0;right:0;width:100%;z-index:49;display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid var(--border);background:#141a24b8;-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);transition:opacity .18s ease,background-color .18s ease;transform:translateZ(0)}.toolbar.is-scrolled:not(:hover){opacity:.88}.tool-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tool-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--border);border-radius:8px;background:#ffffff0f;color:var(--text)}.tool-btn:hover{background:#ffffff1f}.tool-sep{width:1px;height:24px;background:#ffffff14;margin:0 4px}.tool-select select{height:32px;border:1px solid var(--border);border-radius:8px;padding:0 8px;background:#0f141c;color:var(--text);font:inherit}.tool-popwrap{position:relative}.color-popover{position:absolute;top:40px;left:0;min-width:260px;padding:10px;border-radius:12px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--border);box-shadow:var(--shadow-2);z-index:100}.color-popover .row{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:8px;margin:6px 0}.color-popover .row-label{color:var(--muted);font-size:12px;text-align:right}.swatch-row{display:flex;flex-wrap:wrap;gap:6px}.swatch{width:20px;height:20px;border-radius:6px;border:1px solid var(--border);cursor:pointer}.swatch.custom{width:auto;padding:0 8px;line-height:20px;background:#ffffff0f;color:var(--text)}.menu-bar{width:100%!important}.workspace{position:relative;display:flex;justify-content:center;align-items:flex-start;padding:calc(var(--topbar-h) + var(--toolbar-h, 48px) + 16px) 12px 24px;transition:padding-left .25s ease-in-out;min-width:calc(var(--paper-w) + var(--note-area-w) + 24px);width:100%}body[data-left-open=true] .workspace{padding-left:12px}.editor-stage{margin-top:6px;min-height:60vh;position:relative;overflow-x:auto;overflow-y:overlay;scrollbar-gutter:stable both-edges;max-width:100%;flex:1 1 auto}.editor-stage .paper-wrap{--canvas-w: calc(var(--paper-w) + var(--note-area-w));width:var(--canvas-w);flex:0 0 auto;margin-left:auto;margin-right:auto;display:flex;justify-content:flex-start;align-items:flex-start;padding:20px 0 120px}.editor-stage .paper{margin-left:auto;margin-right:auto;display:block}.editor-stage>.paper-content{width:var(--paper-w);margin-left:auto;margin-right:auto;display:block}.editor-stage::-webkit-scrollbar{height:12px}.editor-stage::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:8px}.editor-stage::-webkit-scrollbar-track{background:#ffffff0f}.left-panel{position:fixed;top:calc(var(--topbar-h) + var(--toolbar-h, 48px));left:0;bottom:0;width:calc(var(--left-panel-tabs-w, 56px) + var(--left-panel-w, 280px));z-index:30;display:flex;transform:translate(-100%);transition:transform .25s ease-in-out}.left-panel.is-open{transform:translate(0)}.left-panel__tabs{width:var(--left-panel-tabs-w, 56px);background:var(--panel-2);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px}.tab-button{width:38px;height:38px;border-radius:8px;border:none;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,color .16s ease;-webkit-tap-highlight-color:transparent}.tab-button .ico{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.tab-button .ico svg{width:100%;height:100%}.tab-button .label{display:none}.tab-button:hover{background:var(--hover);color:var(--text)}.tab-button.is-active{background:var(--hover-strong);color:var(--accent)}.tab-button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.left-panel__content{width:var(--left-panel-w, 280px);background:var(--panel);border-right:1px solid var(--border);box-shadow:var(--shadow-1);display:flex;flex-direction:column;height:100%}.left-panel__content .side-head{height:44px;padding:0 8px 0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);flex-shrink:0}.left-panel__content .side-head .title{color:var(--text);font-weight:600;letter-spacing:.2px}.left-panel__content .side-head .ghost{background:transparent;border:0;color:var(--muted);font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:background .15s ease}.left-panel__content .side-head .ghost:hover{background:var(--hover);color:var(--text)}.left-panel__content .side-body{padding:8px 12px;overflow:auto;flex:1;min-height:0;overscroll-behavior:contain}.fake-tree{list-style:none;padding:0;margin:0}.fake-tree li{padding:6px 4px;color:var(--text);border-radius:6px;cursor:pointer}.fake-tree li:hover{background:var(--hover)}.outline-list{list-style:none;margin:0;padding:0}.outline-item button:hover{background-color:var(--hover);border-radius:4px}.outline-empty{padding:24px 16px;text-align:center;color:var(--muted)}.outline-empty .meta{font-size:12px;opacity:.7}.left-panel__content .side-body::-webkit-scrollbar{width:10px}.left-panel__content .side-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffffff38,#ffffff24);border-radius:8px;border:2px solid transparent;background-clip:padding-box}.left-panel__content .side-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#ffffff4d,#fff3)}.left-panel__content .side-body::-webkit-scrollbar-track{background:#ffffff0f;border-radius:8px}.paper-wrap{position:relative;display:flex;justify-content:center;align-items:flex-start;padding:20px 0 120px;min-width:max(var(--canvas-min-w, 1200px),calc(var(--paper-w, 794px) + var(--note-area-w, 360px)));margin-left:auto;margin-right:auto}.paper{width:var(--paper-w, 794px);min-height:max(1123px,calc(100vh - var(--topbar-h, 48px) - var(--toolbar-h, 48px) - 48px));color:var(--paper-text, #0c1224);background:radial-gradient(80% 20% at 50% -10%,rgba(255,255,255,.65),transparent 70%),linear-gradient(to bottom,#ffffff,var(--paper, #f7f8fb));border-radius:14px;border:1px solid var(--paper-edge, rgba(12,18,36,.08));box-shadow:0 35px 80px #0000008c,0 2px #fffc inset,0 0 0 1px #00000005 inset;position:relative;overflow:visible;margin-left:auto;margin-right:auto;left:var(--paper-left-shift, 0px);display:block}.paper:after{content:"";position:absolute;inset:-18px -18px -24px;pointer-events:none;background:radial-gradient(60px 18px at 40px 0px,rgba(0,0,0,.35),transparent 70%),radial-gradient(60px 18px at calc(100% - 40px) 0px,rgba(0,0,0,.35),transparent 70%),linear-gradient(to bottom,rgba(0,0,0,.06),transparent 20%);filter:blur(6px);z-index:-1}.paper-content{padding:56px 72px;line-height:1.65}.paper-content h1,h2,h3{color:#0c1224;margin:0 0 12px;line-height:1.2}.paper-content h1{font-size:28px}.paper-content h2{font-size:22px;margin-top:22px}.paper-content p{color:#1a2438;margin:10px 0}.paper-content hr{border:none;border-top:1px dashed #d8deea;margin:18px 0}.content-editable{outline:none;color:#0c1224;display:block;width:100%;min-height:60vh;caret-color:#222}.paragraph{margin:10px 0;color:#1a2438}.t-bold{font-weight:700}.t-italic{font-style:italic}.t-underline{text-decoration:underline}.h1{font-size:28px;font-weight:700;margin:0 0 12px;color:#0c1224}.h2{font-size:22px;font-weight:700;margin:22px 0 12px;color:#0c1224}.content-editable .list-item,.content-editable .ul,.content-editable .ol{color:#0c1224!important}.content-editable .ul,.content-editable .ol,.content-editable li{background:none!important;border:0!important;outline:none!important;box-shadow:none!important;border-radius:0!important}.content-editable .ul,.content-editable .ol{margin-block:8px;padding-inline-start:1.6em;list-style-position:outside}.content-editable .ul .ul,.content-editable .ul .ol,.content-editable .ol .ul,.content-editable .ol .ol{margin-block:4px;padding-inline-start:1.6em}.content-editable .list-item{margin:2px 0;display:list-item}.content-editable li>.ul,.content-editable li>.ol{display:block;margin-top:4px}@supports (selector(:has(*))){.content-editable li:has(>.ul:only-child),.content-editable li:has(>.ol:only-child){list-style-type:none;padding-inline-start:0;margin-left:0}}.content-editable .ul{list-style-type:disc}.content-editable .ul .ul{list-style-type:circle}.content-editable .ul .ul .ul{list-style-type:square}.content-editable .ol{list-style-type:decimal}.content-editable .ol .ol{list-style-type:lower-alpha}.content-editable .ol .ol .ol{list-style-type:lower-roman}.content-editable li::marker{color:var(--list-marker, #0c1224);font-variant-numeric:tabular-nums}.content-editable input[type=checkbox]{accent-color:var(--accent, #6ab3ff)}:root{--right-panel-w: clamp(420px, 50vw, 600px);--right-panel-gap: 16px;--paper-left-shift: 0px}body.is-right-open .paper-wrap{padding-right:calc(var(--right-panel-w) + var(--right-panel-gap))}body.is-right-open{--paper-left-shift: -12px}@media (max-width: 1024px){:root{--right-panel-w: 100vw}body.is-right-open .paper-wrap{padding-right:0}body.is-right-open .paper{left:0}}html,body{overflow-x:auto}:where(#root,.app,.app-root,.page,.page-root,.layout,.layout-root,.document,.document-page,.main,.main-wrap,.content,.content-wrap,.paper-wrap){overflow-x:visible!important}.paper,.paper-wrap{overflow-x:visible!important}.ai-chat-panel{position:fixed;top:calc(var(--topbar-h, 48px) + var(--toolbar-h, 48px));right:0;bottom:0;width:var(--right-panel-w);background:var(--panel, #0f141c);box-shadow:var(--shadow-1, 0 8px 24px rgba(0,0,0,.35));z-index:40;transform:translate(0);transition:transform .25s ease-in-out,width .25s ease-in-out;display:flex;flex-direction:row}.panel-main-content{flex:1;min-width:0;display:flex;flex-direction:column}.panel-action-strip{width:48px;display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:14px;border-left:1px solid var(--border, rgba(255,255,255,.08));background:var(--panel-2, #121a24)}.ai-chat-header{display:flex;align-items:center;justify-content:flex-start;padding:14px 16px;border-bottom:1px solid var(--border, rgba(255,255,255,.08));background:var(--panel-2, #121a24)}.header-left{display:flex;flex-direction:column;gap:4px}.panel-title{margin:0;font-size:15px;font-weight:600;color:var(--text, #eef2ff)}.status-indicator{font-size:12px;color:var(--muted, #9aa7b9)}.ai-chat-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.history-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border, rgba(255,255,255,.08))}.section-header h4{margin:0;font-size:13px;font-weight:500;color:var(--text, #eef2ff)}.text-btn{border:none;background:transparent;color:var(--accent, #6ab3ff);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s ease}.text-btn:hover{background:var(--hover, rgba(255,255,255,.06))}.history-list{flex:1;overflow-y:auto;padding:8px}.history-item{margin-bottom:8px;border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px;background:var(--elev, #0b1118)}.history-header{width:100%;padding:12px 14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background:transparent;border:none;color:var(--text, #eef2ff);text-align:left;border-radius:10px 10px 0 0}.history-header:hover{background:var(--hover, rgba(255,255,255,.06))}.history-question{font-size:13px;color:var(--text, #eef2ff);flex:1}.history-time{font-size:12px;color:var(--muted, #9aa7b9);margin-left:12px}.history-content{border-top:1px solid var(--border, rgba(255,255,255,.08));padding:14px}.history-qa{display:flex;flex-direction:column;gap:14px}.qa-label{font-size:12px;color:var(--muted, #9aa7b9);margin-bottom:6px;font-weight:500}.qa-text{font-size:13px;line-height:1.6;color:var(--text, #eef2ff);padding-right:40px}.qa-question,.qa-answer{position:relative}.qa-action-btn{position:absolute;top:0;right:0;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--muted, #9aa7b9);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.qa-action-btn:hover{background:var(--hover, rgba(255,255,255,.06));color:var(--text, #eef2ff)}.apply-btn:hover{background:var(--accent, #6ab3ff);color:#0b0f18}.current-chat{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.chat-message{display:flex;flex-direction:column;gap:8px}.message-header{display:flex;align-items:center;justify-content:space-between}.message-label{font-size:12px;font-weight:500;color:var(--muted, #9aa7b9);letter-spacing:.3px;text-transform:uppercase}.message-action{display:inline-flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--muted, #9aa7b9);font-size:12px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.message-action:hover{background:var(--hover, rgba(255,255,255,.06));color:var(--text, #eef2ff)}.apply-action:hover{background:var(--accent, #6ab3ff);color:#0b0f18}.message-content{padding:14px;border-radius:10px;font-size:14px;line-height:1.65;border:1px solid var(--border, rgba(255,255,255,.08))}.question-message .message-content{background:var(--elev, #0b1118);color:var(--text, #eef2ff)}.answer-content{background:var(--panel-2, #121a24);color:var(--text, #eef2ff);max-height:420px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.typing-indicator{color:var(--accent, #6ab3ff);animation:typingBlink 1s infinite}@keyframes typingBlink{0%,50%{opacity:1}51%,to{opacity:0}}.empty-chat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 16px;text-align:center}.empty-title{font-size:15px;font-weight:600;color:var(--text, #eef2ff);margin:8px 0}.empty-subtitle{font-size:13px;color:var(--muted, #9aa7b9);margin:0}.empty-icon{margin-bottom:10px;color:var(--muted, #9aa7b9)}.history-list::-webkit-scrollbar,.current-chat::-webkit-scrollbar,.answer-content::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-thumb,.current-chat::-webkit-scrollbar-thumb,.answer-content::-webkit-scrollbar-thumb{background:var(--muted, #9aa7b9);border-radius:3px}.history-list::-webkit-scrollbar-track,.current-chat::-webkit-scrollbar-track,.answer-content::-webkit-scrollbar-track{background:transparent}@media (max-width: 1024px){.ai-chat-panel{width:100vw!important;max-width:none!important;min-width:0!important}}.tooltip-bubble{z-index:9999;pointer-events:none;background:linear-gradient(180deg,var(--panel-2),var(--panel));color:var(--text);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-2);padding:6px 8px;max-width:260px;font-size:12px;line-height:1.2;white-space:nowrap}.tooltip-content{display:inline-flex;align-items:center;gap:8px}.tooltip-label{opacity:.95}.tooltip-kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:11px;padding:2px 6px;border-radius:6px;background:#ffffff0f;border:1px solid var(--border);opacity:.85}.tooltip-arrow{position:absolute;width:8px;height:8px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border-left:1px solid var(--border);border-top:1px solid var(--border);transform:rotate(45deg)}.tooltip-top .tooltip-arrow{bottom:-4px;left:50%;transform:translate(-50%) rotate(45deg)}.tooltip-bottom .tooltip-arrow{top:-4px;left:50%;transform:translate(-50%) rotate(45deg)}.tooltip-left .tooltip-arrow{right:-4px;top:50%;transform:translateY(-50%) rotate(45deg)}.tooltip-right .tooltip-arrow{left:-4px;top:50%;transform:translateY(-50%) rotate(45deg)}.tooltip-wrap{outline:none}.tooltip-wrap:focus{outline:1px dashed rgba(255,255,255,.25);border-radius:6px}.paper-content table,.paper-content table.table{width:100%;border-collapse:separate;border-spacing:0;margin:10px 0 16px;background:#fff;border:1.5px solid var(--paper-edge);border-radius:12px;box-shadow:0 6px 18px #0000000f;-webkit-user-select:text;user-select:text}.paper-content .table-wrap{border-radius:12px;overflow:hidden;box-shadow:0 6px 18px #0000000f;border:1.5px solid var(--paper-edge);background:#fff}.paper-content .table-wrap>table{border:0;box-shadow:none;margin:0}.paper-content table th,.paper-content table td,.paper-content table .table-cell,.paper-content table .table-cell-header{padding:6px 10px;vertical-align:middle;color:#1a2438;background:#fff;border-top:1px solid var(--paper-edge);border-right:1px solid var(--paper-edge)}.paper-content table tr:first-child>th,.paper-content table tr:first-child>td{border-top:none}.paper-content table tr:first-child>th,.paper-content table tr:first-child>td{border-bottom:2px solid #cdd6ea;font-weight:700;color:#0c1224}.paper-content table tr>th:last-child,.paper-content table tr>td:last-child{border-right:none}.paper-content table p{margin:0}.paper-content table th.is-selected,.paper-content table td.is-selected{background:linear-gradient(180deg,#6ab3ff2e,#a68bff29);outline:2px solid rgba(106,179,255,.45);outline-offset:-2px}.table-controls{position:fixed;top:76px;right:20px;z-index:60;display:inline-flex;gap:6px;padding:6px 8px;background:#141a24cc;-webkit-backdrop-filter:saturate(1.05) blur(10px);backdrop-filter:saturate(1.05) blur(10px);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-2)}.table-controls .sep{width:1px;height:18px;background:#ffffff24;margin:0 2px}.table-controls button{height:28px;padding:0 8px;border-radius:8px;border:1px solid rgba(255,255,255,.15);color:var(--text);background:#ffffff0f;font:12px/1 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,Arial,Noto Sans SC,sans-serif;cursor:pointer}.table-controls button:hover{background:#ffffff1f}:root{--table-selection-bg: rgba(106,179,255,.22);--table-selection-outline: rgba(106,179,255,.65)}.paper-content table td[data-highlighted=true],.paper-content table th[data-highlighted=true],.paper-content table td.is-selected,.paper-content table th.is-selected{background:var(--table-selection-bg)!important;outline:2px solid var(--table-selection-outline);outline-offset:-2px}.paper-content table.table--has-selection{box-shadow:0 0 0 2px #6ab3ff2e,0 6px 18px #0000000f}.paper-content table td[style*=background],.paper-content table th[style*=background]{background-clip:padding-box}.paper-content table td[style*=background].is-selected,.paper-content table th[style*=background].is-selected{background:inherit!important}.paper-content table td[data-highlighted=true],.paper-content table th[data-highlighted=true]{background:linear-gradient(180deg,#6ab3ff2e,#a68bff29);position:relative}.paper-content table td.cell--selected,.paper-content table th.cell--selected{background:linear-gradient(180deg,#6ab3ff2e,#a68bff29)}.paper-content table td[data-highlighted=true]:after,.paper-content table th[data-highlighted=true]:after,.paper-content table td.cell--selected:after,.paper-content table th.cell--selected:after{content:"";position:absolute;inset:0;outline:2px solid rgba(106,179,255,.45);outline-offset:-2px;pointer-events:none;border-radius:2px}.paper-content table.table--has-selection{border-color:#6ab3ff66;box-shadow:0 0 0 2px #6ab3ff26 inset}.paper-content table th *,.paper-content table td *,.paper-content table p,.paper-content table span,.paper-content table div{font-family:inherit;font-size:inherit;color:inherit;line-height:inherit;font-weight:inherit;font-style:inherit;text-decoration:inherit}.paper-content table th ::selection,.paper-content table td ::selection{background:#6ab3ff4d;color:inherit}.content-editable .t-bold{font-weight:700}.content-editable .t-italic{font-style:italic}.content-editable .t-underline{text-decoration-line:underline}.content-editable .t-strike{text-decoration-line:line-through}.content-editable .t-underline.t-strike{text-decoration-line:underline line-through}.content-editable .t-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;background:var(--code-inline-bg, #f6f8fa);padding:0 .2em;border-radius:4px}:root{--note-accent: #8ab4f8;--note-bg: #0f1422;--note-border: #2a3246;--note-shadow: 0 8px 24px rgba(0,0,0,.4), 0 1px 0 rgba(255,255,255,.04) inset;--note-text: #c9d1e1;--note-accent-strong: #a8d1ff;--note-glow: 0 6px 22px rgba(138,180,248,.26), 0 0 0 2px rgba(138,180,248,.22)}.content-editable .fn-wrap{display:inline}.content-editable .footnote-ref{font-size:.75em;vertical-align:super;padding:0 2px;cursor:pointer;color:#0c1224;border-radius:4px}.content-editable .footnote-ref:hover{background:#6ab3ff26}.content-editable .footnote-ref.is-active{background:#8ab4f847;box-shadow:0 0 0 1px #ffffffa6 inset,0 0 0 2px #8ab4f88c;border-radius:4px;text-decoration:none;transition:background .18s ease,box-shadow .18s ease}@media (prefers-reduced-motion: no-preference){.content-editable .footnote-ref.is-active{animation:fnPulse .9s ease-out 1}}@keyframes fnPulse{0%{box-shadow:0 0 #8ab4f800,0 0 #8ab4f800}40%{box-shadow:0 0 0 1px #ffffffa6 inset,0 0 0 6px #8ab4f838}to{box-shadow:0 0 0 1px #ffffffa6 inset,0 0 0 2px #8ab4f88c}}.right-panel{position:sticky;top:20px;width:300px;flex:0 0 300px;border-left:1px solid var(--border);padding:14px 10px 24px;transition:width .24s ease,opacity .24s ease}.right-panel.is-collapsed{width:0;padding:0;border-left:none;opacity:0;pointer-events:none}.right-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;opacity:.85}.right-panel-head .title{font-weight:600;color:var(--text)}right-panel-head .ghost{color:var(--muted)}.note-bubbles{position:relative;min-height:240px}.note-bubble{position:absolute;right:8px;width:260px;background:#fff;border:1px solid #e8edf6;box-shadow:0 10px 30px #0000001f;border-radius:12px;padding:8px;color:#0f1320;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.note-bubble.is-active{box-shadow:0 14px 36px #6ab3ff59;border-color:#6ab3ffa6}.note-bubble-head{display:flex;align-items:center;justify-content:space-between}.note-bubble .badge{display:inline-block;min-width:20px;text-align:center;background:#0f1320;color:#fff;border-radius:999px;padding:2px 6px;font-size:12px}.note-bubble-body{margin-top:6px}.note-bubble-body textarea{width:100%;min-height:72px;resize:vertical;border:1px solid #e1e5ef;border-radius:8px;padding:6px 8px;font:13px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,Arial,Noto Sans SC,sans-serif;color:#0f1320;background:#fff}.note-bubble.is-compact{width:40px;padding:6px}.note-bubble.is-compact .note-bubble-body{display:none}.note-bubble.is-compact .badge{background:#6ab3ff}.note-layer{position:absolute;top:0;bottom:0;left:0;right:var(--note-area-w);z-index:40;pointer-events:none;overflow:visible}.note-connector-layer{display:none}.note-connector-layer path{stroke:#8ab4f8b3;stroke-width:1.25;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:3 3}.note-connector-layer path.active{stroke:#a8d1ff;stroke-width:1.75;stroke-dasharray:3 3}.note-connector-layer circle.endpoint{fill:var(--note-accent);stroke:#0c1224;stroke-width:1;opacity:.9}.note-connector-layer circle.endpoint.end{opacity:.65}.note-float{position:absolute;left:calc(100% + 12px);min-width:260px;max-width:340px;background:linear-gradient(180deg,#ffffff05,#fff0 40%),var(--note-bg);border:1px solid var(--note-border);border-left:3px solid var(--note-accent);border-radius:12px;box-shadow:var(--note-shadow);padding:10px 12px;font-size:13px;line-height:1.5;color:var(--note-text);pointer-events:auto;transform:translateY(-50%);z-index:41;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease,outline-color .18s ease}.note-float.is-active{border-left-color:var(--note-accent-strong);border-left-width:4px;outline:1px solid rgba(138,180,248,.25);box-shadow:var(--note-shadow),0 12px 34px #8ab4f82e,0 0 0 2px #8ab4f829}.note-float:focus-within{border-left-color:var(--note-accent-strong);box-shadow:var(--note-shadow),var(--note-glow)}.note-float:hover{border-left-color:var(--note-accent-strong)}.note-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 8px;margin-right:8px;font-size:12px;font-weight:600;border-radius:999px;background:linear-gradient(180deg,#a8d1ff59,#8ab4f82e);color:#0c1224;border:1px solid rgba(168,209,255,.55);box-shadow:0 2px 8px #8ab4f840 inset,0 2px 8px #00000040}.note-float.is-active .note-badge{background:linear-gradient(180deg,#a8d1ff8c,#8ab4f859);border-color:#a8d1ffd9}.note-editor{width:100%;min-height:72px;height:auto;resize:none;overflow:hidden;border:1px solid var(--note-border);border-radius:10px;padding:8px 10px;font:13px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,Arial,Noto Sans SC,sans-serif;color:var(--note-text);background:linear-gradient(180deg,#ffffff05,#fff0 40%),#0a0e1aa6;caret-color:var(--note-accent);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.note-editor::placeholder{color:#c9d1e18c}.note-editor:focus{outline:none;border-color:var(--note-accent-strong);box-shadow:0 0 0 2px #a8d1ff38,inset 0 1px #ffffff0f;background:linear-gradient(180deg,#ffffff08,#fff0 40%),#0c1224b3}.note-float.is-mini{min-width:unset;max-width:unset;width:auto;padding:0;background:transparent;border:0;box-shadow:none;display:inline-flex;align-items:center;gap:0}.note-float.is-mini .note-badge{margin-right:0}.note-float.is-mini .note-editor{display:none}.note-float.is-mini.is-active{padding:8px 10px;background:linear-gradient(180deg,#ffffff05,#fff0 40%),var(--note-bg);border:1px solid var(--note-border);border-left:3px solid var(--note-accent);box-shadow:var(--note-shadow)}.note-float.is-mini.is-active .note-editor{display:block}.chat-dock{position:fixed;left:50%;transform:translate(-50%);bottom:18px;z-index:60;width:min(920px,calc(100% - 28px));background:#141a24b8;-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-2);display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px}.chat-input{width:100%;padding:12px 14px;border-radius:12px;outline:none;background:#0f141c;color:var(--text);border:1px solid var(--border)}.send-btn{display:inline-flex;align-items:center;gap:8px;padding:0 14px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#0b0f18;font-weight:700;border-radius:12px;border:1px solid rgba(255,255,255,.2)}@media (max-width: 1200px){.workspace{grid-template-columns:260px 1fr 320px}}@media (max-width: 1024px){.workspace{grid-template-columns:240px 1fr}.right-panel{position:fixed;right:12px;top:calc(var(--topbar-h) + var(--toolbar-h) + 12px);width:min(340px,calc(100% - 24px));height:calc(100vh - var(--topbar-h) - var(--toolbar-h) - 24px);display:none;z-index:48}.right-panel.open{display:block}.tool-btn.mobile-toggle{display:inline-flex}}@media (max-width: 820px){.workspace{grid-template-columns:1fr}.left-panel{position:fixed;left:12px;top:calc(var(--topbar-h) + var(--toolbar-h) + 12px);width:min(320px,calc(100% - 24px));height:calc(100vh - var(--topbar-h) - var(--toolbar-h) - 24px);display:none;z-index:48}.left-panel.open{display:block}.paper-content{padding:46px 28px}.tool-btn.mobile-toggle{display:inline-flex}}@media (max-width: 560px){.paper{width:calc(100% - 18px)}.paper-content{padding:38px 18px}.toolbar{gap:8px;flex-wrap:wrap}.tool-group.condense{display:none}.chat-dock{width:calc(100% - 18px);grid-template-columns:1fr auto}.send-btn{padding:0 12px}}@media (max-width: 560px){.paper{width:var(--paper-w)}}:root{--cb-bg: #0e1320;--cb-fg: #e9eef7;--cb-border: #1f2a3a;--cb-gutter: #8b97a7;--cb-token-comment:#93a0b3;--cb-token-keyword:#b497ff;--cb-token-string:#66e4b8;--cb-token-number:#7fb8ff;--cb-token-func:#ffd78a;--cb-accent: #7fb2ff;--cb-accent-2:#b798ff;--cb-header-bg: rgba(30, 41, 59, .5);--cb-header-border: rgba(148, 163, 184, .1);--code-fs: 14px;--line-h: calc(var(--code-fs) * 1.6);--gutter-ch: 2}.codeblock-host.theme-light,.codeblock-standalone.theme-light{--cb-bg:#f7f9fc;--cb-fg:#0e1525;--cb-border:#dfe7f2;--cb-gutter:#9aa6b2;--cb-token-comment:#7b889a;--cb-token-keyword:#5e3fff;--cb-token-string:#1aa874;--cb-token-number:#1662d7;--cb-token-func:#b56a00;--cb-header-bg: rgba(241, 245, 249, .8);--cb-header-border: rgba(148, 163, 184, .15)}pre,.codeblock-standalone{width:100%;box-sizing:border-box}.codeblock-host,.codeblock-standalone{position:relative;display:block;background:var(--cb-bg);color:var(--cb-fg);border:1px solid var(--cb-border);border-radius:12px;margin:10px 0;box-shadow:inset 0 1px #ffffff0f;overflow-x:auto;overflow-y:visible;padding:12px 16px}.codeblock-host.has-toolbar,.codeblock-standalone.has-toolbar{padding-top:48px}.codeblock-host,.codeblock-host *,.codeblock-standalone,.codeblock-standalone *{white-space:pre!important;text-wrap:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;-webkit-hyphens:none!important;hyphens:none!important}.codeblock-host .token,.codeblock-standalone .token{display:inline!important}code.codeblock.codeblock-host{display:block;tab-size:2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--code-fs);line-height:var(--line-h);color:var(--cb-fg)!important;background:var(--cb-bg)!important;padding-left:calc(var(--gutter-ch) * 1ch + 24px)!important}.codeblock-host>code.codeblock,.codeblock-standalone{display:block;tab-size:2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--code-fs);line-height:var(--line-h);color:var(--cb-fg)!important;background:transparent!important}.codeblock-host .token,.codeblock-standalone .token{line-height:inherit}pre[class*=language-],code[class*=language-]{background:transparent!important;color:var(--cb-fg)!important}.codeblock-host[data-gutter]:before,.codeblock-standalone[data-gutter]:before{content:attr(data-gutter);position:absolute;top:12px;left:16px;width:calc(var(--gutter-ch) * 1ch + 8px);white-space:pre;text-align:right;color:var(--cb-gutter);opacity:.9;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--code-fs);line-height:var(--line-h);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;pointer-events:none;z-index:1;border-right:1px solid var(--cb-border);padding-right:8px}.codeblock-host.has-toolbar[data-gutter]:before,.codeblock-standalone.has-toolbar[data-gutter]:before{top:48px}.codeblock__header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:12px;height:36px;padding:0 16px;border-radius:12px 12px 0 0;background:var(--cb-header-bg);border-bottom:1px solid var(--cb-header-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-user-select:none;user-select:none;z-index:10}.codeblock__lang{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--cb-fg);opacity:.7;padding:4px 8px;border-radius:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.codeblock__spacer{flex:1}.codeblock__copy{appearance:none;cursor:pointer;padding:6px 12px;border-radius:6px;font:500 12px/1 ui-sans-serif,system-ui;letter-spacing:.3px;background:#ffffff1a;color:var(--cb-fg);border:1px solid rgba(255,255,255,.1);transition:all .2s ease;position:relative;overflow:hidden}.codeblock__copy:hover{background:#ffffff26;transform:translateY(-1px)}.codeblock__copy:active{transform:translateY(0);background:#ffffff14}.codeblock__copy.copied{background:#22c55e33;border-color:#22c55e4d;color:#22c55e}.codeblock__copy-icon{display:inline-block;width:14px;height:14px;margin-right:4px;vertical-align:middle;opacity:.8}pre:has(>code.codeblock){background:transparent!important;border:0;padding:0;margin:0}.codeblock-host .token.comment,.codeblock-standalone .token.comment{color:var(--cb-token-comment);font-style:italic}.codeblock-host .token.keyword,.codeblock-standalone .token.keyword{color:var(--cb-token-keyword)}.codeblock-host .token.string,.codeblock-standalone .token.string{color:var(--cb-token-string)}.codeblock-host .token.number,.codeblock-standalone .token.number{color:var(--cb-token-number)}.codeblock-host .token.function,.codeblock-standalone .token.function{color:var(--cb-token-func)}.codeblock-host ::selection,.codeblock-standalone ::selection{background:color-mix(in oklab,var(--cb-accent),transparent 40%);color:var(--cb-bg)}.codeblock-host.codeblock{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--code-fs);line-height:var(--line-h);white-space:pre;color:var(--cb-fg)!important;background:var(--cb-bg)!important;border:1px solid var(--cb-border);border-radius:12px;min-height:calc(var(--line-h) + 24px);height:auto}.codeblock-host,.codeblock-host *{text-shadow:none!important}.codeblock-host[contenteditable=true],.codeblock-host [contenteditable=true]{caret-color:var(--cb-fg)}.codeblock-host:focus,.codeblock-host:focus-within{outline:2px solid color-mix(in oklab,var(--cb-accent),transparent 60%);outline-offset:-1px}:root{--bg-color: #0a0a0a;--surface-color: #1a1a1a;--primary-text-color: #ffffff;--secondary-text-color: #a0a0a0;--accent-color: #2196f3;--error-color: #f44336;--divider-color: #2a2a2a;--user-message-bg: #1e3a5f;--assistant-message-bg: #1a1a1a;--code-bg-color: #0d1117}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--primary-text-color)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar-thumb{background:var(--divider-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-text-color)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}.markdown-body{line-height:1.6}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.markdown-body p{margin-bottom:16px}.markdown-body ul,.markdown-body ol{padding-left:2em;margin-bottom:16px}.markdown-body blockquote{padding:0 1em;color:var(--secondary-text-color);border-left:.25em solid var(--divider-color);margin-bottom:16px}.markdown-body code{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--code-bg-color);border-radius:3px}.markdown-body pre{margin-bottom:16px}.markdown-body pre code{padding:0;margin:0;font-size:100%;background-color:transparent}.markdown-body table{border-collapse:collapse;margin-bottom:16px}.markdown-body table th,.markdown-body table td{padding:6px 13px;border:1px solid var(--divider-color)}.markdown-body table tr{background-color:var(--surface-color);border-top:1px solid var(--divider-color)}.markdown-body table tr:nth-child(2n){background-color:var(--bg-color)}@media (max-width: 768px){:root{font-size:14px}}:root{--font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--bg-color: #121212;--surface-color: #1E1E1E;--primary-text-color: #E0E0E0;--secondary-text-color: #A0A0A0;--accent-color: #4A90E2;--accent-color-hover: #5AA0F2;--divider-color: #333333;--user-message-bg: #262626;--assistant-message-bg: #1E1E1E;--code-bg-color: #000000;--error-color: #CF6679}body{margin:0;padding:0;font-family:var(--font-family);background-color:var(--bg-color);color:var(--primary-text-color);overflow:hidden}#root{width:100vw;height:100vh;overflow:auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface-color)}::-webkit-scrollbar-thumb{background-color:#555;border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:#777}button,input,select,textarea{font-family:var(--font-family);color:var(--primary-text-color)}*{box-sizing:border-box}
