@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url("./media/KaTeX_AMS-Regular-U6PRYMIZ.woff2") format("woff2"),url("./media/KaTeX_AMS-Regular-CYEKBG2K.woff") format("woff"),url("./media/KaTeX_AMS-Regular-JKX5W2C4.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url("./media/KaTeX_Caligraphic-Bold-5QL5CMTE.woff2") format("woff2"),url("./media/KaTeX_Caligraphic-Bold-WZ3QSGD3.woff") format("woff"),url("./media/KaTeX_Caligraphic-Bold-ZTS3R3HK.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url("./media/KaTeX_Caligraphic-Regular-KX5MEWCF.woff2") format("woff2"),url("./media/KaTeX_Caligraphic-Regular-3LKEU76G.woff") format("woff"),url("./media/KaTeX_Caligraphic-Regular-A7XRTZ5Q.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url("./media/KaTeX_Fraktur-Bold-2QVFK6NQ.woff2") format("woff2"),url("./media/KaTeX_Fraktur-Bold-T4SWXBMT.woff") format("woff"),url("./media/KaTeX_Fraktur-Bold-WGHVTYOR.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url("./media/KaTeX_Fraktur-Regular-2PEIFJSJ.woff2") format("woff2"),url("./media/KaTeX_Fraktur-Regular-PQMHCIK6.woff") format("woff"),url("./media/KaTeX_Fraktur-Regular-5U4OPH2X.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url("./media/KaTeX_Main-Bold-YP5VVQRP.woff2") format("woff2"),url("./media/KaTeX_Main-Bold-2GA4IZIN.woff") format("woff"),url("./media/KaTeX_Main-Bold-W5FBVCZM.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url("./media/KaTeX_Main-BoldItalic-N4V3DX7S.woff2") format("woff2"),url("./media/KaTeX_Main-BoldItalic-4P4C7HJH.woff") format("woff"),url("./media/KaTeX_Main-BoldItalic-ODMLBJJQ.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url("./media/KaTeX_Main-Italic-RELBIK7M.woff2") format("woff2"),url("./media/KaTeX_Main-Italic-SASNQFN2.woff") format("woff"),url("./media/KaTeX_Main-Italic-I43T2HSR.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url("./media/KaTeX_Main-Regular-ARRPAO67.woff2") format("woff2"),url("./media/KaTeX_Main-Regular-P5I74A2A.woff") format("woff"),url("./media/KaTeX_Main-Regular-W74P5G27.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url("./media/KaTeX_Math-BoldItalic-K4WTGH3J.woff2") format("woff2"),url("./media/KaTeX_Math-BoldItalic-6EBV3DK5.woff") format("woff"),url("./media/KaTeX_Math-BoldItalic-VB447A4D.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url("./media/KaTeX_Math-Italic-6KGCHLFN.woff2") format("woff2"),url("./media/KaTeX_Math-Italic-KKK3USB2.woff") format("woff"),url("./media/KaTeX_Math-Italic-SON4MRCA.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url("./media/KaTeX_SansSerif-Bold-RRNVJFFW.woff2") format("woff2"),url("./media/KaTeX_SansSerif-Bold-X5M5EMOD.woff") format("woff"),url("./media/KaTeX_SansSerif-Bold-STQ6RXC7.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url("./media/KaTeX_SansSerif-Italic-HMPFTM52.woff2") format("woff2"),url("./media/KaTeX_SansSerif-Italic-PSN4QKYX.woff") format("woff"),url("./media/KaTeX_SansSerif-Italic-WTBAZBGY.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url("./media/KaTeX_SansSerif-Regular-XIQ62X4E.woff2") format("woff2"),url("./media/KaTeX_SansSerif-Regular-OQCII6EP.woff") format("woff"),url("./media/KaTeX_SansSerif-Regular-2TL3USAE.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url("./media/KaTeX_Script-Regular-APUWIHLP.woff2") format("woff2"),url("./media/KaTeX_Script-Regular-A5IFOEBS.woff") format("woff"),url("./media/KaTeX_Script-Regular-72OLXYNA.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url("./media/KaTeX_Size1-Regular-5LRUTBFT.woff2") format("woff2"),url("./media/KaTeX_Size1-Regular-4HRHTS65.woff") format("woff"),url("./media/KaTeX_Size1-Regular-7K6AASVL.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url("./media/KaTeX_Size2-Regular-LELKET5D.woff2") format("woff2"),url("./media/KaTeX_Size2-Regular-K5ZHAIS6.woff") format("woff"),url("./media/KaTeX_Size2-Regular-222HN3GT.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url("./media/KaTeX_Size3-Regular-WQRQ47UD.woff2") format("woff2"),url("./media/KaTeX_Size3-Regular-TLFPAHDE.woff") format("woff"),url("./media/KaTeX_Size3-Regular-UFCO6WCA.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url("./media/KaTeX_Size4-Regular-CDMV7U5C.woff2") format("woff2"),url("./media/KaTeX_Size4-Regular-PKMWZHNC.woff") format("woff"),url("./media/KaTeX_Size4-Regular-7PGNVPQK.ttf") format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url("./media/KaTeX_Typewriter-Regular-VBYJ4NRC.woff2") format("woff2"),url("./media/KaTeX_Typewriter-Regular-MJMFSK64.woff") format("woff"),url("./media/KaTeX_Typewriter-Regular-3F5K6SQ6.ttf") format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.18.1"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.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;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 .katex-vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .katex-thinbox{display:inline-flex;flex-direction:row;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 .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{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.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;display:inline-block;width:100%}.katex .katex-hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.katex-root{margin-left:.2777777778em;margin-right:-.5555555556em}.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:.8333333333em}.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.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.3333333333em}.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.6666666667em}.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.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.8571428571em}.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.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.5542857143em}.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:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.8888888889em}.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.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.3333333333em}.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.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.7644444444em}.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:.4166666667em}.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:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.6666666667em}.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:.8333333333em}.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.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.5555555556em}.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:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.8333333333em}.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.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.8333333333em}.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.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.8331726133em}.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.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.8336012862em}.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{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 .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{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;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{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}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .katex-stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .katex-stretchy:after,.katex .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 .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>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}pre[class*=language-],code[class*=language-]{color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo,Monaco,Consolas,Andale Mono,Ubuntu Mono,Courier New,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break: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-]::selection,code[class*=language-]::selection,pre[class*=language-] *::selection,code[class*=language-] *::selection{text-shadow:none;background:#264f78}@media print{pre[class*=language-],code[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e}:not(pre)>code[class*=language-]{padding:.1em .3em;border-radius:.3em;color:#db4c69;background:#1e1e1e}.namespace{opacity:.7}.token.doctype .token.doctype-tag{color:#569cd6}.token.doctype .token.name{color:#9cdcfe}.token.comment,.token.prolog{color:#6a9955}.token.punctuation,.language-html .language-css .token.punctuation,.language-html .language-javascript .token.punctuation{color:#d4d4d4}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.inserted,.token.unit{color:#b5cea8}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.deleted{color:#ce9178}.language-css .token.string.url{text-decoration:underline}.token.operator,.token.entity{color:#d4d4d4}.token.operator.arrow{color:#569cd6}.token.atrule{color:#ce9178}.token.atrule .token.rule{color:#c586c0}.token.atrule .token.url{color:#9cdcfe}.token.atrule .token.url .token.function{color:#dcdcaa}.token.atrule .token.url .token.punctuation{color:#d4d4d4}.token.keyword{color:#569cd6}.token.keyword.module,.token.keyword.control-flow{color:#c586c0}.token.function,.token.function .token.maybe-class-name{color:#dcdcaa}.token.regex{color:#d16969}.token.important{color:#569cd6}.token.italic{font-style:italic}.token.constant{color:#9cdcfe}.token.class-name,.token.maybe-class-name{color:#4ec9b0}.token.console,.token.parameter,.token.interpolation{color:#9cdcfe}.token.punctuation.interpolation-punctuation,.token.boolean{color:#569cd6}.token.property,.token.variable,.token.imports .token.maybe-class-name,.token.exports .token.maybe-class-name{color:#9cdcfe}.token.selector,.token.escape{color:#d7ba7d}.token.tag{color:#569cd6}.token.tag .token.punctuation,.token.cdata{color:gray}.token.attr-name{color:#9cdcfe}.token.attr-value,.token.attr-value .token.punctuation{color:#ce9178}.token.attr-value .token.punctuation.attr-equals{color:#d4d4d4}.token.entity{color:#569cd6}.token.namespace{color:#4ec9b0}pre[class*=language-javascript],code[class*=language-javascript],pre[class*=language-jsx],code[class*=language-jsx],pre[class*=language-typescript],code[class*=language-typescript],pre[class*=language-tsx],code[class*=language-tsx]{color:#9cdcfe}pre[class*=language-css],code[class*=language-css]{color:#ce9178}pre[class*=language-html],code[class*=language-html]{color:#d4d4d4}.language-regex .token.anchor{color:#dcdcaa}.language-html .token.punctuation{color:gray}pre[class*=language-]>code[class*=language-]{position:relative;z-index:1}.line-highlight.line-highlight{background:#f7ebc6;box-shadow:inset 5px 0 #f7d87c;z-index:0}:root{--bg-primary: #f4f6fa;--bg-secondary: #ebedf2;--bg-card: #f1f6fb;--bg-card-hover: #f6f9fc;--bg-header: #0b1a30;--border-color: rgba(11, 26, 48, .1);--border-glow: rgba(30, 58, 138, .25);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--accent-navy: #0b1a30;--accent-navy-hover: #1e3a8a;--accent-slate: #4f5e71;--accent-slate-light: #e6edf5;--accent-navy-text: #0b1a30;--accent-slate-text: #4f5e71;--level-0: #ebedf0;--level-1: #cbd5e1;--level-2: #94a3b8;--level-3: #475569;--level-4: #0f172a;--skill-bar-bg: linear-gradient(90deg, #0f172a, #475569);--transition-smooth: all .3s cubic-bezier(.25, .8, .25, 1);--font-heading: "Lora", Georgia, serif;--font-body: "Inter", sans-serif;--font-code: "Fira Code", monospace}html{font-size:15px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);font-size:15px;line-height:1.6;overflow-x:hidden;position:relative;min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px;border:2px solid var(--bg-primary)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.site-header{position:sticky;top:0;width:100%;background-color:var(--bg-header);box-shadow:0 4px 20px #0b1a3026;z-index:50;border-bottom:1px solid rgba(255,255,255,.08)}.navbar{max-width:1400px;margin:0 auto;padding:16px 24px}.nav-container{display:flex;justify-content:space-between;align-items:center}.nav-logo{font-family:var(--font-heading);font-size:1.8rem;font-weight:800;text-decoration:none;color:#fff;display:flex;align-items:center;letter-spacing:1px}.nav-links{display:flex;gap:32px}.mobile-menu-toggle{display:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:transparent;border:none;cursor:pointer;padding:0;z-index:100}.mobile-menu-toggle:focus{outline:none}.hamburger-bar{width:100%;height:2.5px;background-color:#ffffffd9;border-radius:4px;transition:transform .3s cubic-bezier(.25,.8,.25,1),opacity .3s ease,background-color .3s ease}.mobile-menu-toggle:hover .hamburger-bar{background-color:#fff}.mobile-menu-toggle.open .hamburger-bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.mobile-menu-toggle.open .hamburger-bar:nth-child(2){opacity:0}.mobile-menu-toggle.open .hamburger-bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-item{font-size:1.05rem;font-weight:700;color:#cbd5e1;text-decoration:none;transition:var(--transition-smooth);position:relative;padding:4px 0;letter-spacing:.5px}.nav-item:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2.5px;background-color:#60a5fa;transition:var(--transition-smooth)}.nav-item:hover{color:#fff}.nav-item:hover:after{width:100%}.nav-item.active{color:#fff;font-weight:800}.nav-item.active:after{width:100%;background-color:#60a5fa}.page-layout-container{max-width:1400px;margin:0 auto;padding:32px 16px;position:relative;z-index:1}.app-container{display:grid;grid-template-columns:360px 1fr;gap:32px}.cv-page-container{display:flex;flex-direction:column;gap:24px}.glass-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 30px -6px #0b1a300a,0 1px 3px #0b1a3005;transition:var(--transition-smooth)}.glass-card:hover{border-color:#1e3a8a40;box-shadow:0 16px 36px -8px #1e3a8a14,0 1px 4px #1e3a8a0a}.sub-glass-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;transition:var(--transition-smooth)}.sub-glass-card:hover{background:var(--accent-slate-light);border-color:var(--accent-slate);box-shadow:0 6px 18px #0b1a300a}.main-content-pane{padding:48px 36px}.main-content-pane:hover{transform:none!important;background:var(--bg-card);border-color:var(--border-color);box-shadow:0 8px 30px -6px #0b1a300a,0 1px 3px #0b1a3005}.pane-divider{border:none;border-top:1px solid var(--border-color);margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:12px;font-family:var(--font-body);font-size:.95rem;font-weight:700;cursor:pointer;border:none;transition:var(--transition-smooth);position:relative;text-decoration:none}.btn-primary{background:var(--accent-navy);color:#fff;box-shadow:0 4px 12px #0b1a3026}.btn-primary:hover{background:var(--accent-navy-hover);transform:translateY(-1px);box-shadow:0 6px 16px #0b1a3040}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);border:1px solid var(--border-color);color:var(--accent-navy)}.btn-secondary:hover{background:var(--accent-slate-light);border-color:var(--accent-slate)}.pane-header-hero{margin-bottom:28px;position:relative}.subtitle-tag{font-family:var(--font-body);font-size:.75rem;font-weight:700;color:var(--accent-slate-text);letter-spacing:1.5px;text-transform:uppercase}.pane-main-title{font-family:var(--font-body);font-size:2.1rem;font-weight:800;margin-top:4px;margin-bottom:16px;line-height:1.3;color:var(--accent-navy-text);letter-spacing:-.5px}.title-decorator-line{width:48px;height:3px;background:var(--accent-navy-text);border-radius:2px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a66;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease;padding:24px}.modal-overlay.show{opacity:1;pointer-events:auto}.modal-content{width:100%;max-width:480px;padding:40px;position:relative;transform:scale(.95);transition:transform .3s cubic-bezier(.16,1,.3,1);max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px -12px #0f172a26}.modal-overlay.show .modal-content{transform:scale(1)}.modal-close-btn{position:absolute;top:24px;right:24px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.modal-close-btn:hover{color:var(--text-primary);transform:rotate(90deg)}.modal-title{font-family:var(--font-heading);font-size:1.85rem;font-weight:700;margin-bottom:8px;color:var(--accent-navy)}.modal-subtitle{font-size:.92rem;color:var(--text-secondary);margin-bottom:28px}.modal-actions-top{margin-bottom:24px}.cv-btn{width:100%;display:flex;gap:8px}.btn-icon{transition:transform .3s ease}.cv-btn:hover .btn-icon{transform:translateY(2px)}.modal-divider{display:flex;align-items:center;text-align:center;color:var(--text-secondary);font-size:.75rem;font-weight:700;margin-bottom:24px;letter-spacing:1px}.modal-divider:before,.modal-divider:after{content:"";flex:1;border-bottom:1px solid var(--border-color)}.modal-divider:not(:empty):before{margin-right:12px}.modal-divider:not(:empty):after{margin-left:12px}.contact-form{display:flex;flex-direction:column;gap:18px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.88rem;font-weight:600;color:var(--text-secondary)}.form-group input,.form-group textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:14px;color:var(--text-primary);font-family:var(--font-body);font-size:.98rem;transition:var(--transition-smooth)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-slate);background:var(--bg-card);box-shadow:0 0 0 3px #4f5e711a}.submit-btn{width:100%;margin-top:10px;background:var(--accent-navy)}.submit-btn:hover{background:var(--accent-navy-hover)}.form-success-alert{display:flex;align-items:center;gap:12px;background:#f0fdf4;border:1px solid #bbf7d0;padding:16px;border-radius:10px;color:#166534;font-size:.98rem;margin-top:16px;animation:slideUpAlert .4s ease}.form-success-alert.hide{display:none}.alert-icon{flex-shrink:0}@keyframes slideUpAlert{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{opacity:0;transform:translateY(16px);animation:cardLoad .8s cubic-bezier(.16,1,.3,1) forwards}@keyframes cardLoad{to{opacity:1;transform:translateY(0)}}.portfolio-controls-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:16px;width:100%}.portfolio-filter-tabs{display:flex;gap:8px;background:transparent;padding:0;border:none;flex-wrap:wrap}.filter-tab{border:1px solid var(--border-color);background:var(--bg-card);padding:8px 16px;font-family:var(--font-body);font-size:.9rem;font-weight:700;cursor:pointer;border-radius:20px;color:var(--text-secondary);transition:var(--transition-smooth)}.filter-tab.active{background:var(--accent-navy);color:#fff;border-color:var(--accent-navy);box-shadow:0 4px 12px #0b1a301f}.filter-tab:hover:not(.active){color:var(--accent-navy);background:var(--bg-card-hover);border-color:var(--accent-slate)}.portfolio-search-box{position:relative;display:flex;align-items:center;width:320px}.portfolio-search-box input{width:100%;padding:11px 16px 11px 40px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-family:var(--font-body);font-size:.92rem;font-weight:500;transition:var(--transition-smooth)}.portfolio-search-box input:focus{outline:none;border-color:var(--accent-slate);background:#fff;box-shadow:0 0 0 3px #4f5e711a}.search-icon{position:absolute;left:14px;color:var(--text-secondary);pointer-events:none;z-index:1}.card-action-btn{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-weight:700;color:var(--accent-navy-text);text-decoration:none;transition:var(--transition-smooth);background:transparent;border:none;padding:0;width:auto;cursor:pointer}.card-action-btn svg{transition:transform .22s cubic-bezier(.25,.46,.45,.94)}.card-action-btn:hover{color:var(--accent-navy-hover, var(--accent-navy))}body.dark-theme .card-action-btn:hover{color:var(--accent-slate)}.card-action-btn:hover svg{transform:translate(4px)}.project-card:hover .card-action-btn,.blog-card:hover .card-action-btn{color:var(--accent-navy-hover, var(--accent-navy))}body.dark-theme .project-card:hover .card-action-btn,body.dark-theme .blog-card:hover .card-action-btn{color:var(--accent-slate)}.project-card:hover .card-action-btn svg,.blog-card:hover .card-action-btn svg{transform:translate(4px)}.profile-sidebar{position:sticky;top:96px;height:fit-content}.profile-card-content{padding:30px 20px;display:flex;flex-direction:column;align-items:center;text-align:center}.profile-card-content:hover{transform:translateY(-2px);border-color:#1e3a8a40;box-shadow:0 16px 36px -8px #1e3a8a14}.avatar-container{position:relative;width:200px;height:200px;margin-bottom:16px;border-radius:50%;padding:5px;background:var(--bg-card);border:4px solid var(--accent-navy);box-shadow:0 10px 25px -8px #0b1a302e;transition:var(--transition-smooth)}.profile-avatar{width:100%;height:100%;object-fit:cover;border-radius:50%;transition:var(--transition-smooth)}.avatar-container:hover{border-color:var(--accent-navy-hover);box-shadow:0 12px 30px -6px #0b1a3040}.avatar-container:hover .profile-avatar{transform:scale(1.02)}.profile-name{font-family:var(--font-heading);font-size:1.85rem;font-weight:700;color:var(--accent-navy-text);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.profile-tag{font-family:var(--font-code);font-size:1rem;color:var(--text-secondary);margin-bottom:8px;letter-spacing:-.2px;font-weight:700}.profile-slogan{font-size:.88rem;font-style:italic;color:var(--text-secondary);line-height:1.45;margin:4px auto 0;max-width:90%;text-align:center;opacity:.85}.profile-bio{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:24px}.profile-quick-info{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;align-items:center}.info-item{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--text-secondary);font-weight:500}.info-svg-icon{color:var(--accent-navy);flex-shrink:0;transition:var(--transition-smooth)}body.dark-theme .info-svg-icon{color:#3b82f6}.status-dot{width:8px;height:8px;background-color:#10b981;border-radius:50%;display:inline-block;position:relative;flex-shrink:0;margin:0 4px}.status-dot:after{content:"";position:absolute;inset:-2px;border:1.5px solid #10b981;border-radius:50%;animation:statusGlow 2s infinite ease-in-out}@keyframes statusGlow{0%{transform:scale(1);opacity:.8}to{transform:scale(2.2);opacity:0}}.status-dot.status-closed{background-color:#ef4444}.status-dot.status-closed:after{border-color:#ef4444}.profile-tech-stack{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:12px;padding:0 8px}.tech-badge{background:var(--accent-slate-light);color:var(--accent-navy);padding:4px 10px;border-radius:8px;font-size:.78rem;font-weight:600;transition:var(--transition-smooth);border:1px solid rgba(15,23,42,.05)}body.dark-theme .tech-badge{background:#3b82f61a;color:#60a5fa;border:1px solid rgba(96,165,250,.15)}.tech-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0f172a0d}body.dark-theme .tech-badge:hover{box-shadow:0 4px 12px #60a5fa1a}.profile-divider-line{border:0;height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent);margin:12px auto;width:85%}.profile-location{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.88rem;color:var(--text-secondary);margin-bottom:24px;font-weight:500}.profile-location svg{color:var(--accent-navy)}.profile-metrics-row{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:16px;font-size:1rem;color:var(--text-secondary);font-weight:500;width:100%}.metric-item-simple{white-space:nowrap}.metric-num-simple{font-weight:700;color:var(--accent-navy-text)}.metric-separator{color:var(--border-glow);font-weight:700}.hire-me-btn{width:100%;margin-bottom:18px}.social-links{display:flex;justify-content:center;gap:10px;width:100%}.social-icon{display:flex;align-items:center;justify-content:center;flex:1;height:44px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);transition:var(--transition-smooth)}.social-icon:hover{color:var(--accent-navy-text);border-color:var(--accent-slate-text);background:var(--bg-card-hover);transform:translateY(-2px)}.profile-main{display:flex;flex-direction:column;gap:40px;min-width:0}.avatar-upload-container{display:flex;align-items:center;gap:16px;margin-top:8px}.admin-avatar-preview{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-navy);box-shadow:0 4px 10px #0b1a301a}.file-input{background:transparent!important;border:none!important;padding:0!important;font-size:.9rem;cursor:pointer}.nav-controls{display:flex;align-items:center;gap:12px;margin-left:16px}.lang-dropdown{background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;color:#ffffffe6!important;padding:6px 10px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;outline:none;transition:var(--transition-smooth)}.lang-dropdown option{background:var(--accent-navy);color:#fff}.lang-dropdown:hover,.lang-dropdown:focus{border-color:#fff6!important;background:#ffffff26!important;box-shadow:none!important}.theme-toggle-btn{background:transparent;border:none;color:#ffffffd9;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:6px;border-radius:8px;transition:var(--transition-smooth);outline:none}.theme-toggle-btn:hover{background:#ffffff14;color:#fff;transform:scale(1.05)}body.dark-theme{--bg-primary: #0b0f19;--bg-secondary: #111827;--bg-card: #1f2937;--bg-card-hover: #374151;--bg-header: #090d16;--border-color: rgba(255, 255, 255, .08);--border-glow: rgba(59, 130, 246, .25);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-navy: #3b82f6;--accent-navy-hover: #60a5fa;--accent-slate: #cbd5e1;--accent-slate-light: rgba(59, 130, 246, .12);--accent-navy-text: #f8fafc;--accent-slate-text: #94a3b8;--level-0: #161b22;--level-1: #0d2d5e;--level-2: #1b4d8f;--level-3: #3882e5;--level-4: #58a6ff;--skill-bar-bg: linear-gradient(90deg, #3b82f6, #60a5fa)}body.dark-theme ::-webkit-scrollbar-thumb{background:#374151;border:2px solid var(--bg-primary)}body.dark-theme ::-webkit-scrollbar-thumb:hover{background:#4b5563}body.dark-theme h1,body.dark-theme h2,body.dark-theme h3,body.dark-theme h4,body.dark-theme h5,body.dark-theme h6,body.dark-theme .profile-name,body.dark-theme .metric-num-simple,body.dark-theme .pane-main-title,body.dark-theme .section-title,body.dark-theme .board-card-title,body.dark-theme .skill-pct,body.dark-theme .btn-board-action,body.dark-theme .project-card-title,body.dark-theme .blog-card-title,body.dark-theme .timeline-title,body.dark-theme .detail-title,body.dark-theme .section-subtitle,body.dark-theme .info-label,body.dark-theme .info-value,body.dark-theme .meta-item,body.dark-theme .post-title,body.dark-theme .post-content h2,body.dark-theme .post-content h3,body.dark-theme .lang-label,body.dark-theme .no-results-title{color:#f8fafc!important}body.dark-theme .subtitle-tag,body.dark-theme .project-card-subtitle,body.dark-theme .blog-card-subtitle,body.dark-theme .board-card-time,body.dark-theme .text-muted,body.dark-theme .post-meta{color:#94a3b8!important}body.dark-theme .profile-tag{color:#cbd5e1!important}body.dark-theme .title-decorator-line,body.dark-theme .title-line{background:#f8fafc!important}body.dark-theme input:focus,body.dark-theme textarea:focus,body.dark-theme select:focus{background:var(--bg-secondary)!important;border-color:var(--accent-navy)!important;color:#f8fafc!important;box-shadow:0 0 0 3px #3b82f626!important}body.dark-theme .category-tag-web,body.dark-theme .category-tag-architecture,body.dark-theme .tag-blog{background:#2563eb33!important;color:#93c5fd!important;border:1px solid rgba(147,197,253,.3)!important}body.dark-theme .category-tag-ai-rag,body.dark-theme .category-tag-ai,body.dark-theme .tag-repo{background:#9333ea33!important;color:#e9d5ff!important;border:1px solid rgba(243,232,255,.3)!important}body.dark-theme .category-tag-ml-dl,body.dark-theme .category-tag-frontend,body.dark-theme .tag-pr{background:#16a34a33!important;color:#86efac!important;border:1px solid rgba(134,239,172,.3)!important}body.dark-theme .category-tag-other,body.dark-theme .project-tech-badge{background:#ffffff0d!important;color:#cbd5e1!important;border:1px solid rgba(255,255,255,.1)!important}body.dark-theme .filter-tab:hover:not(.active){color:#f8fafc!important;background:#ffffff14!important}body.dark-theme .skill-bar-container,body.dark-theme .lang-meter-container{background:#374151!important}body.dark-theme .article-text-body pre{background:#0f172a!important;color:#f8fafc!important}body.dark-theme .article-text-body code{background:#ffffff0f!important;color:#3b82f6!important;border-color:#ffffff1a!important}.blog-editor-modal{max-width:900px!important}.wysiwyg-editor-container{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-primary);overflow:hidden;margin-top:8px;box-shadow:0 4px 12px #00000005}.wysiwyg-toolbar{display:flex;flex-wrap:wrap;gap:6px;background:var(--bg-secondary);padding:10px 14px;border-bottom:1px solid var(--border-color);align-items:center}.wysiwyg-btn{background:transparent;border:1px solid transparent;width:32px;height:32px;border-radius:6px;cursor:pointer;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;transition:var(--transition-smooth);outline:none;font-size:.9rem;font-weight:700}.wysiwyg-btn:hover{background:#0b1a3014;color:var(--accent-navy-text)}body.dark-theme .wysiwyg-btn:hover{background:#ffffff14;color:#fff}.wysiwyg-editor{min-height:320px;max-height:480px;overflow-y:auto;padding:24px;background:#fff;color:var(--text-primary);font-family:var(--font-heading),Lora,Georgia,serif;font-size:1.15rem;line-height:1.7;text-align:left;outline:none}.wysiwyg-editor p{margin-bottom:20px}.wysiwyg-editor h3{font-family:var(--font-heading),Lora,Georgia,serif;font-size:1.45rem;font-weight:700;margin-top:32px;margin-bottom:12px;color:var(--accent-navy-text)}.wysiwyg-editor blockquote{font-family:var(--font-heading),Lora,Georgia,serif;font-style:italic;border-left:4px solid var(--accent-navy);padding-left:18px;margin:24px 0;color:var(--text-secondary)}.wysiwyg-editor pre{background:#0f172a;color:#f8fafc;border-radius:8px;padding:16px 20px;font-family:var(--font-code),monospace;font-size:.88rem;overflow-x:auto;margin:24px 0;line-height:1.5}body.dark-theme .wysiwyg-editor{background:#0b0f19}body.dark-theme .wysiwyg-editor blockquote{border-left-color:#60a5fa}.wysiwyg-editor[contenteditable=true]:empty:before{content:attr(placeholder);color:var(--text-muted);font-style:italic}.log-label-desktop{display:inline}.log-label-tablet,.log-label-mobile{display:none}@media(max-width:992px){.app-container{grid-template-columns:1fr;gap:32px}.profile-sidebar{position:relative!important;top:0!important}.main-content-pane{padding:32px 24px}.calendar-grid{min-width:auto!important;justify-content:center}.day-cell:nth-child(-n+203){display:none}.log-label-desktop{display:none!important}.log-label-tablet{display:inline!important}.log-label-mobile{display:none!important}}@media(max-width:768px){.mobile-menu-toggle{display:flex}.nav-links{display:none;flex-direction:column;align-items:center;gap:20px;position:absolute;top:100%;left:0;width:100%;background-color:var(--bg-header);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:28px 24px;border-bottom:1px solid var(--border-color);box-shadow:0 10px 25px -5px #0b1a3026;z-index:99}.nav-links.active{display:flex;animation:slideDownMenu .3s cubic-bezier(.16,1,.3,1) forwards}.nav-item{font-size:1.1rem;width:100%;text-align:center;padding:8px 0}.nav-controls{margin-left:0;margin-top:8px;width:100%;justify-content:center;gap:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:16px}.pane-main-title{font-size:1.6rem}.portfolio-controls-row{flex-direction:column;align-items:stretch;gap:16px}.portfolio-filter-tabs{flex-wrap:wrap;gap:8px;background:transparent;padding:0;border:none}.filter-tab{padding:6px 12px;font-size:.85rem}.portfolio-search-box{width:100%}.page-layout-container{padding:20px 16px}.main-content-pane,.profile-card-content{padding:24px 16px}.avatar-container{width:160px;height:160px;margin-bottom:20px}.profile-name{font-size:1.6rem}}@media(max-width:480px){.page-layout-container{padding:16px 12px}.main-content-pane,.profile-card-content{padding:20px 12px}.avatar-container{width:140px;height:140px;margin-bottom:16px}.profile-name{font-size:1.4rem}.profile-bio{font-size:.9rem;margin-bottom:16px}.profile-metrics-row{font-size:.9rem;margin-bottom:20px;gap:8px;flex-wrap:wrap}.hire-me-btn{margin-bottom:20px;padding:12px 24px;font-size:.9rem}.social-icon{height:40px}.modal-overlay{padding:12px}.modal-content{padding:24px 16px}.modal-title{font-size:1.5rem}.modal-subtitle{margin-bottom:20px}.calendar-grid{min-width:auto!important;justify-content:center}.day-cell:nth-child(-n+259){display:none}.log-label-desktop,.log-label-tablet{display:none!important}.log-label-mobile{display:inline!important}}@keyframes slideDownMenu{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detail-text-body{font-family:var(--font-body);color:var(--text-primary);line-height:1.85;font-size:1.1rem;word-break:break-word;letter-spacing:-.003em}.detail-text-body h1,.detail-text-body h2,.detail-text-body h3,.detail-text-body h4,.detail-text-body h5,.detail-text-body h6{font-family:var(--font-heading),"Lora",Georgia,serif;color:var(--accent-navy);font-weight:700;line-height:1.3;letter-spacing:-.02em;margin-top:42px;margin-bottom:18px;border:none}.detail-text-body h1{font-size:2.2rem;font-weight:800;margin-top:48px;margin-bottom:24px;letter-spacing:-.03em}.detail-text-body h2{font-size:1.65rem;font-weight:700;margin-top:38px;margin-bottom:18px}.detail-text-body h3{font-family:var(--font-body);font-size:1.35rem;font-weight:700;margin-top:32px;margin-bottom:14px}.detail-text-body h4{font-family:var(--font-body);font-size:1.15rem;font-weight:700;margin-top:24px;margin-bottom:12px}.detail-text-body p{font-family:var(--font-body);font-size:1.1rem;color:#0f172ae6;line-height:1.85;margin-bottom:26px}body.dark-theme .detail-text-body p{color:#e2e8f0}body.dark-theme .detail-text-body h1,body.dark-theme .detail-text-body h2,body.dark-theme .detail-text-body h3,body.dark-theme .detail-text-body h4{color:#f8fafc}.detail-text-body ul,.detail-text-body ol{margin-top:8px;margin-bottom:28px;padding-left:28px}.detail-text-body ul{list-style-type:disc}.detail-text-body ol{list-style-type:decimal}.detail-text-body ul li,.detail-text-body ol li{font-family:var(--font-body);font-size:1.05rem;color:#0f172ae6;line-height:1.8;margin-bottom:12px;padding-left:4px}body.dark-theme .detail-text-body ul li,body.dark-theme .detail-text-body ol li{color:#e2e8f0}.detail-text-body ul li:before,.detail-text-body ol li:before{content:none}.detail-text-body a{color:var(--accent-navy);font-weight:600;text-decoration:underline;text-underline-offset:3px;transition:var(--transition-smooth)}.detail-text-body a:hover{color:var(--accent-navy-hover);text-decoration-color:var(--accent-navy-hover)}body.dark-theme .detail-text-body a{color:#60a5fa}body.dark-theme .detail-text-body a:hover{color:#93c5fd}.detail-text-body blockquote{border-left:3px solid var(--accent-navy);padding:6px 0 6px 24px;margin:36px 0;font-family:var(--font-heading),"Lora",Georgia,serif;font-style:italic;font-size:1.25rem;line-height:1.75;color:var(--text-secondary)}body.dark-theme .detail-text-body blockquote{border-left-color:#60a5fa;color:#cbd5e1}.detail-text-body hr{border:none;border-top:1px solid var(--border-color);margin:40px 0}.detail-text-body code{background:#0b1a300f;color:#0f172a;padding:3px 8px;border-radius:4px;font-family:var(--font-code),"Fira Code",monospace;font-size:.9em;font-weight:500;border:1px solid rgba(11,26,48,.08)}body.dark-theme .detail-text-body code{background:#ffffff1a;color:#f1f5f9;border-color:#ffffff26}.detail-text-body pre{background:#0f172a;color:#f8fafc;border-radius:12px;padding:24px;margin:32px 0;overflow-x:auto;box-shadow:0 10px 30px #00000014;border:1px solid rgba(255,255,255,.08)}.detail-text-body pre code{background:transparent;color:#e2e8f0;padding:0;border-radius:0;font-family:var(--font-code),"Fira Code",monospace;font-size:.92rem;line-height:1.65;border:none}.detail-text-body figure,.detail-text-body .blog-inline-figure{margin:32px auto;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:100%;box-sizing:border-box}.detail-text-body .blog-image-wrapper{width:100%;height:auto;border-radius:12px;overflow:hidden;border:1px solid var(--border-color, rgba(0, 0, 0, .08));margin-bottom:8px;box-shadow:0 8px 24px #0b1a300f;background:#0f172a0a;display:block;box-sizing:border-box}body.dark-theme .detail-text-body .blog-image-wrapper{background:#0f172a66;border-color:#ffffff1a;box-shadow:0 8px 24px #0000004d}.detail-text-body figure img,.detail-text-body .blog-inline-figure img,.detail-text-body .blog-image-wrapper img,.detail-text-body img{width:100%!important;height:auto!important;max-width:100%!important;display:block;margin:0 auto;box-sizing:border-box!important}.detail-text-body figcaption{font-size:.88rem;color:var(--text-muted, #64748b);margin-top:10px;font-style:italic;font-family:var(--font-body),sans-serif;text-align:center;line-height:1.5}.markdown-preview-pane{padding:32px 40px;min-height:350px;max-height:600px;overflow-y:auto;background:#fff;border-radius:0 0 12px 12px;box-shadow:inset 0 2px 6px #00000005}body.dark-theme .markdown-preview-pane{background:#0f172a99}body.blog-fullscreen-active{overflow:hidden!important}body.blog-fullscreen-active .app-container,body.blog-fullscreen-active .main-content-pane,body.blog-fullscreen-active .glass-card,body.blog-fullscreen-active .admin-panel,body.blog-fullscreen-active .edit-project-panel,body.blog-fullscreen-active .page-layout-container,body.blog-fullscreen-active .profile-sidebar{transform:none!important;animation:none!important;perspective:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important}.wysiwyg-editor-container.fullscreen-editor-active{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:99999999!important;background:#fafbfc!important;padding:0!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important;border-radius:0!important;border:none!important;box-shadow:none!important;margin:0!important}body.dark-theme .wysiwyg-editor-container.fullscreen-editor-active{background:#090e17!important}.fullscreen-top-bar{width:100%;height:64px;background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-color, rgba(0,0,0,.08));display:flex;align-items:center;justify-content:space-between;padding:0 32px;box-sizing:border-box;flex-shrink:0}body.dark-theme .fullscreen-top-bar{background:#0b1324d9;border-bottom-color:#ffffff14}.fullscreen-zen-tag{font-size:.82rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--accent-navy, #0f172a);display:inline-flex;align-items:center;gap:6px}body.dark-theme .fullscreen-zen-tag{color:#60a5fa}.btn-exit-fullscreen{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:10px;background:#ef444414;color:#ef4444;border:1px solid rgba(239,68,68,.2);font-size:.88rem;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.btn-exit-fullscreen:hover{background:#ef4444;color:#fff;border-color:#ef4444;transform:translateY(-1px);box-shadow:0 4px 14px #ef44444d}.wysiwyg-editor-container.fullscreen-editor-active .wysiwyg-toolbar{max-width:820px;width:90%;margin:20px auto 0;padding:8px 16px;background:#ffffffe6;backdrop-filter:blur(12px);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:0 4px 20px #0000000d;flex-shrink:0}body.dark-theme .wysiwyg-editor-container.fullscreen-editor-active .wysiwyg-toolbar{background:#0f172ae6;border-color:#ffffff1a;box-shadow:0 4px 20px #0000004d}.wysiwyg-editor-container.fullscreen-editor-active .wysiwyg-editor{flex:1 1 auto!important;height:calc(100vh - 150px)!important;min-height:calc(100vh - 150px)!important;max-height:none!important;max-width:900px!important;width:90%!important;margin:16px auto 24px!important;padding:48px 64px!important;overflow-y:auto!important;font-family:var(--font-heading),Lora,Georgia,serif!important;font-size:1.25rem!important;line-height:1.85!important;border:1px solid var(--border-color, #e2e8f0)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 40px #0b1a300a!important;box-sizing:border-box!important;color:var(--text-primary, #0f172a)!important}body.dark-theme .wysiwyg-editor-container.fullscreen-editor-active .wysiwyg-editor{background:#0f172a!important;border-color:#ffffff1f!important;box-shadow:0 12px 40px #0006!important;color:#f8fafc!important}.wysiwyg-editor pre,.wysiwyg-editor .blog-code-block,.article-text-body pre,.article-text-body .blog-code-block{background:#0d1117!important;color:#e6edf3!important;padding:20px 24px!important;border-radius:12px!important;font-family:Fira Code,monospace!important;font-size:.95rem!important;line-height:1.65!important;white-space:pre-wrap!important;word-break:break-word!important;overflow-x:auto!important;margin:24px 0!important;border:1px solid rgba(255,255,255,.1)!important;display:block!important;box-sizing:border-box!important}.wysiwyg-editor .blog-separator,.article-text-body .blog-separator{text-align:center!important;margin:36px 0!important;-webkit-user-select:none!important;user-select:none!important}.wysiwyg-editor .blog-separator span,.article-text-body .blog-separator span{color:#94a3b8!important;font-size:1.5rem!important;letter-spacing:14px!important;font-weight:800!important}.article-text-body .image-controls-bar{display:none!important}.wysiwyg-editor-container{position:relative}.medium-plus-container{position:absolute;left:12px;z-index:999;display:flex;align-items:center;gap:8px;transition:top .12s ease}.wysiwyg-editor-container.fullscreen-editor-active .medium-plus-container{left:calc(50% - 475px)}@media(max-width:1050px){.wysiwyg-editor-container.fullscreen-editor-active .medium-plus-container{left:16px}}.btn-medium-plus{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-color, #cbd5e1);background:var(--bg-card, #ffffff);color:var(--text-secondary, #475569);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #00000014}body.dark-theme .btn-medium-plus{background:#0f172a;border-color:#fff3;color:#cbd5e1}.btn-medium-plus:hover{color:var(--accent-navy, #0f172a);border-color:var(--accent-navy, #0f172a);transform:scale(1.1)}body.dark-theme .btn-medium-plus:hover{color:#60a5fa;border-color:#60a5fa}.medium-plus-container.menu-open .btn-medium-plus{transform:rotate(45deg);background:#ef4444;color:#fff;border-color:#ef4444}.medium-plus-popover{display:flex;align-items:center;gap:4px;background:var(--bg-card, #ffffff);border:1px solid var(--border-color, #cbd5e1);border-radius:20px;padding:4px 8px;box-shadow:0 10px 30px #0000001f;animation:popoverFadeIn .2s cubic-bezier(.16,1,.3,1) forwards}body.dark-theme .medium-plus-popover{background:#0f172a;border-color:#ffffff26;box-shadow:0 10px 30px #0006}@keyframes popoverFadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.popover-item{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:14px;border:none;background:transparent;color:var(--text-primary, #0f172a);font-size:.82rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}body.dark-theme .popover-item{color:#f8fafc}.popover-item:hover{background:#0b1a3014;color:var(--accent-navy, #0f172a)}body.dark-theme .popover-item:hover{background:#ffffff1f;color:#60a5fa}.wysiwyg-editor blockquote,.article-text-body blockquote,.blog-quote{border-left:4px solid var(--accent-navy, #0f172a)!important;padding:16px 24px!important;margin:28px 0!important;font-style:italic!important;font-size:1.15rem!important;line-height:1.7!important;color:var(--text-secondary, #475569)!important;background:#0b1a3008!important;border-radius:0 12px 12px 0!important;display:block!important;outline:none!important}body.dark-theme .wysiwyg-editor blockquote,body.dark-theme .article-text-body blockquote,body.dark-theme .blog-quote{border-left-color:#60a5fa!important;background:#ffffff08!important;color:#cbd5e1!important}.admonition{margin:28px 0;padding:18px 24px;border-radius:12px;border-left:5px solid;box-shadow:0 4px 12px #00000005;box-sizing:border-box}.admonition-title{display:flex;align-items:center;font-weight:700;font-size:.95rem;margin-bottom:8px;letter-spacing:.5px}.admonition-title span{font-weight:800;text-transform:uppercase}.admonition-content{font-size:1.05rem;line-height:1.65}.admonition-content p:last-child{margin-bottom:0}.admonition-note,.admonition-info{background:#3b82f60d;border-left-color:#3b82f6;color:#1e3a8a}.admonition-note .admonition-title,.admonition-info .admonition-title{color:#2563eb}.admonition-tip{background:#10b9810d;border-left-color:#10b981;color:#065f46}.admonition-tip .admonition-title{color:#059669}.admonition-warning,.admonition-caution{background:#f59e0b0d;border-left-color:#f59e0b;color:#78350f}.admonition-warning .admonition-title,.admonition-caution .admonition-title{color:#d97706}.admonition-important{background:#ef44440d;border-left-color:#ef4444;color:#7f1d1d}.admonition-important .admonition-title{color:#dc2626}body.dark-theme .admonition-note,body.dark-theme .admonition-info{background:#3b82f61f;color:#93c5fd;border-left-color:#60a5fa}body.dark-theme .admonition-note .admonition-title,body.dark-theme .admonition-info .admonition-title{color:#60a5fa}body.dark-theme .admonition-tip{background:#10b9811f;color:#a7f3d0;border-left-color:#34d399}body.dark-theme .admonition-tip .admonition-title{color:#34d399}body.dark-theme .admonition-warning,body.dark-theme .admonition-caution{background:#f59e0b1f;color:#fde047;border-left-color:#fbbf24}body.dark-theme .admonition-warning .admonition-title,body.dark-theme .admonition-caution .admonition-title{color:#fbbf24}body.dark-theme .admonition-important{background:#ef44441f;color:#fca5a5;border-left-color:#f87171}body.dark-theme .admonition-important .admonition-title{color:#f87171}.custom-tabs-container{margin:32px 0;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;background:#0f172a;box-shadow:0 4px 20px #0b1a3014}.tabs-header{display:flex;background:#1e293b;border-bottom:1px solid rgba(255,255,255,.05);padding:0 12px;gap:8px;overflow-x:auto}.tab-button{background:transparent;border:none;color:#94a3b8;padding:12px 18px;font-size:.88rem;font-weight:700;cursor:pointer;position:relative;transition:all .2s ease;outline:none;white-space:nowrap}.tab-button:hover{color:#f1f5f9}.tab-button.active{color:#60a5fa}.tab-button.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:#60a5fa;border-radius:3px 3px 0 0}.tabs-content{position:relative}.tab-panel{display:none;padding:4px}.tab-panel.active{display:block}.tab-panel pre{margin:0!important;border-radius:0!important;border:none!important}.custom-timeline-container{position:relative;padding:16px 0;border-left:2px solid var(--border-color);margin:28px 0 28px 10px}.timeline-item{position:relative;padding-left:28px;margin-bottom:24px}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background-color:var(--accent-navy);border:2px solid var(--bg-primary);box-shadow:0 0 0 2px #0b1a301a}body.dark-theme .timeline-dot{background-color:#60a5fa;border-color:#0f172a}.timeline-date{display:inline-block;font-size:.88rem;font-weight:800;color:var(--accent-navy);background:var(--accent-slate-light);padding:2px 10px;border-radius:20px;margin-bottom:6px}body.dark-theme .timeline-date{color:#60a5fa;background:#60a5fa1f}.timeline-desc{font-size:1.05rem;color:var(--text-primary);line-height:1.6;margin:0!important}.custom-steps-container{display:flex;flex-direction:column;gap:20px;margin:28px 0}.step-item{display:flex;gap:16px;align-items:flex-start}.step-number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background-color:var(--accent-navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.95rem}body.dark-theme .step-number{background-color:#3b82f6}.step-content{display:flex;flex-direction:column;gap:4px}.step-title{font-size:1.15rem!important;font-weight:700;margin:0!important;color:var(--accent-navy-text)}.step-desc{font-size:1.05rem;color:var(--text-primary);line-height:1.5;margin:0!important}.custom-architecture-container{margin:32px 0;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 4px 18px #0b1a300a}.architecture-header{background:var(--bg-card);padding:12px 20px;font-weight:800;font-size:.78rem;color:var(--text-secondary);letter-spacing:1px;border-bottom:1px solid var(--border-color);display:flex;align-items:center}.architecture-content{background:#fff;padding:24px;overflow-x:auto}body.dark-theme .architecture-content{background:#0f172a}.zoom-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:2000;display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:fadeInOverlay .25s ease}.zoom-overlay-content{position:relative;max-width:90%;max-height:90%;display:flex;align-items:center;justify-content:center}.zoomed-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 25px 50px -12px #00000080;animation:scaleInImage .3s cubic-bezier(.16,1,.3,1)}.zoom-close-btn{position:absolute;top:-48px;right:0;font-size:2.5rem;color:#fff;cursor:pointer;opacity:.8;transition:opacity .2s ease}.zoom-close-btn:hover{opacity:1}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes scaleInImage{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:8px 0}.detail-text-body table,.markdown-preview-pane table{width:100%;border-collapse:collapse;margin:2.5rem 0;font-size:.95rem;line-height:1.5;text-align:left}.detail-text-body th,.markdown-preview-pane th{padding:14px 16px;font-weight:700;color:var(--accent-navy, #0b1a30);border-bottom:2px solid var(--border-color, #e2e8f0);text-transform:uppercase;font-size:.8rem;letter-spacing:.05em;background:transparent!important}.detail-text-body td,.markdown-preview-pane td{padding:16px;border-bottom:1px solid rgba(11,26,48,.06);color:var(--text-primary, #0f172a);background:transparent!important;transition:background-color .2s ease}.detail-text-body tbody tr:hover td,.markdown-preview-pane tbody tr:hover td{background-color:#0b1a3005!important}body.dark-theme .detail-text-body th,body.dark-theme .markdown-preview-pane th{color:#f8fafc!important;border-bottom-color:#ffffff26;background:transparent!important}body.dark-theme .detail-text-body td,body.dark-theme .markdown-preview-pane td{border-bottom-color:#ffffff14;color:#cbd5e1;background:transparent!important}body.dark-theme .detail-text-body tbody tr:hover td,body.dark-theme .markdown-preview-pane tbody tr:hover td{background-color:#ffffff08!important}.blog-code-wrapper{position:relative;margin:28px 0;border-radius:12px;background:#1e1e1e!important;border:1px solid rgba(255,255,255,.1)!important;overflow:hidden;box-shadow:0 12px 30px #0003}.blog-code-header{display:flex;justify-content:space-between;align-items:center;background:#181818!important;padding:10px 18px;border-bottom:1px solid rgba(255,255,255,.08);-webkit-user-select:none;user-select:none}.blog-code-title{font-family:var(--font-code),"Fira Code",monospace;font-size:.78rem;font-weight:700;color:#858d9c;letter-spacing:.6px;text-transform:uppercase}.blog-code-copy-btn{display:inline-flex;align-items:center;background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:#a6acb9;padding:6px 12px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.blog-code-copy-btn:hover{background:#ffffff14;color:#fff;border-color:#ffffff40}.blog-code-copy-btn.copied{background:#22c55e26!important;color:#4ade80!important;border-color:#4ade8066!important}.detail-text-body .blog-code-wrapper pre,.markdown-preview-pane .blog-code-wrapper pre,.wysiwyg-editor .blog-code-wrapper pre,.article-text-body .blog-code-wrapper pre{background:transparent!important;border:none!important;border-radius:0!important;margin:0!important;padding:20px 24px!important;overflow-x:auto!important;white-space:pre!important;word-break:normal!important;box-shadow:none!important}.detail-text-body .blog-code-wrapper pre code,.markdown-preview-pane .blog-code-wrapper pre code,.wysiwyg-editor .blog-code-wrapper pre code,.article-text-body .blog-code-wrapper pre code{background:transparent!important;color:#d4d4d4!important;padding:0!important;border:none!important;border-radius:0!important;font-family:var(--font-code),"Fira Code",monospace!important;font-size:.88rem!important;line-height:1.6!important}@media(max-width:600px){.blog-code-header{padding:8px 14px}.blog-code-title{font-size:.72rem}.blog-code-copy-btn{padding:4px 8px;font-size:.7rem}.detail-text-body .blog-code-wrapper pre,.markdown-preview-pane .blog-code-wrapper pre,.wysiwyg-editor .blog-code-wrapper pre,.article-text-body .blog-code-wrapper pre{padding:16px 18px!important}}
