@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.25ieegmnh38ts.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.10y3kupq4t663.woff)format("woff"),url(../media/KaTeX_AMS-Regular.418dr7cz3fo2x.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.06b-ya9t43ioz.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.2vmk2hva4ctha.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.40ltxhe834pns.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.2eph4dlhid_m9.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.3gxeetazf831f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.07-7u27-nhn_r.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.2sasz-d-jtw8y.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.1alcy76__wdj2.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.19yqa_tc9d_gx.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.2d10y4xmjvzlf.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.110oo81prr9n5.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.2qhy34r6a05dn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.3-rowy8o6_4ky.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.0v1esh257kqpe.woff)format("woff"),url(../media/KaTeX_Main-Bold.0us_n0tnxlxu7.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.14r2naom8mrec.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.13355ck5zr48q.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.3x_u9cepaced0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.0lig0v9j0700p.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0afv392dj4w59.woff)format("woff"),url(../media/KaTeX_Main-Italic.2hkw3230mfwcv.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.1ryvsdzh2w1_e.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.15u8r3b2y7fv4.woff)format("woff"),url(../media/KaTeX_Main-Regular.0symfa7dqj6jd.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.1oopuu636h4il.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.12pl58orkw9rg.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0y5w36a5aq__2.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.32405s1aq8vas.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.0w0b1ugh62cfr.woff)format("woff"),url(../media/KaTeX_Math-Italic.2vkekfblmz5nb.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.0h3wi2z_eouyg.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.1ovw5p-yjp56g.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.2d03q85pwxpti.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0wkjc4dm2kcit.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.1qavw__2zz8gk.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.3i-q087b23-m8.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.2peiewu59z3d-.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.1i4afx8nk8n4r.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.31pbu25feko_c.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.11h14300o9pd0.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.3110jb9c-bxna.woff)format("woff"),url(../media/KaTeX_Script-Regular.28p_x7iz71ofe.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.03lhvx36ekcou.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.1slf4bh0hc6vm.woff)format("woff"),url(../media/KaTeX_Size1-Regular.1y57-ck23ey8c.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.14s5gg-puz6h-.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0-kwyvx03omo8.woff)format("woff"),url(../media/KaTeX_Size2-Regular.2u0s-b07k2o9m.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.1n1rgzz84z8r9.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.04o9a_02gu_e8.woff)format("woff"),url(../media/KaTeX_Size3-Regular.1pkn-dge4q0fv.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.2sgotkdv3dcyv.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.3p2r1l7xmebxv.woff)format("woff"),url(../media/KaTeX_Size4-Regular.2uelkfk2yna5e.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.11gr2d2wuwz77.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.12f8myjij3617.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.3nee9kjfy6nm8.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.1"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--radius-md:.375rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.hidden{display:none}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:calc(var(--spacing) * 4)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-black{background-color:var(--color-black)}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-white{color:var(--color-white)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-70{opacity:.7}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--paper:#f5f2eb;--ink:#24231f;--muted:#8b877e;--line:#dedad0;--accent:#3159d8}*{box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.dashboard-page{background:radial-gradient(circle at 82% 8%,#3159d814,#0000 28%),#f8f7f3;width:100%;min-height:100svh;padding:28px clamp(20px,5vw,72px) 72px;overflow-y:auto}.dashboard-header{justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;display:flex}.dashboard-wordmark{color:var(--ink);letter-spacing:-.065em;font-size:28px;font-weight:780;line-height:1;text-decoration:none}.dashboard-wordmark span{color:var(--accent)}.dashboard-api-total{color:var(--muted);letter-spacing:.05em;background:#ffffffc7;border:1px solid #e0ddd5;border-radius:999px;align-items:center;gap:9px;padding:8px 11px;font-size:9px;font-weight:700;display:flex}.dashboard-api-total strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:-.02em;font-size:10px}.dashboard-hero{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:end;gap:clamp(32px,7vw,100px);max-width:1180px;margin:clamp(72px,10vw,128px) auto 72px;display:grid}.dashboard-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px;font-size:10px;font-weight:800}.dashboard-hero h1{color:var(--ink);letter-spacing:-.065em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(50px,8vw,94px);font-weight:500;line-height:.92}.dashboard-hero>div>p:last-child{color:#77736b;max-width:520px;margin:23px 0 0;font-size:clamp(14px,1.7vw,18px);line-height:1.55}.new-canvas-form{background:#ffffffdb;border:1px solid #dedbd3;border-radius:16px;gap:9px;padding:18px;display:grid;box-shadow:0 16px 44px #2d281f12}.new-canvas-form label{color:#6e6a62;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:750}.new-canvas-form>div{gap:8px;display:flex}.new-canvas-form input{min-width:0;color:var(--ink);background:#fff;border:1px solid #dcd8cf;border-radius:10px;outline:0;flex:1;padding:0 12px;font-size:13px}.new-canvas-form input:focus{border-color:#3159d8b3;box-shadow:0 0 0 3px #3159d81a}.new-canvas-form button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:7px;min-height:43px;padding:0 14px;font-size:11px;font-weight:750;display:flex}.new-canvas-form button:disabled{cursor:wait;opacity:.62}.new-canvas-form button svg,.canvas-card-copy svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:16px}.new-canvas-form>p{color:#a83d29;margin:0;font-size:10px}.canvas-library{max-width:1180px;margin:0 auto}.canvas-library-heading{border-bottom:1px solid #dfdcd4;justify-content:space-between;align-items:baseline;margin-bottom:18px;padding-bottom:12px;display:flex}.canvas-library-heading h2{letter-spacing:-.01em;margin:0;font-size:13px;font-weight:750}.canvas-library-heading span{color:var(--muted);font-size:10px}.canvas-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.canvas-card{color:var(--ink);background:#ffffffe0;border:1px solid #dedbd3;border-radius:14px;text-decoration:none;position:relative;overflow:hidden;box-shadow:0 8px 24px #2d281f0b}.canvas-card-preview,.empty-canvas-preview{background-color:#fff;background-image:radial-gradient(circle,#dcd9d1 .65px,#0000 .75px);background-size:17px 17px;place-items:center;display:grid}.canvas-card-preview{border-bottom:1px solid #e5e2da;height:164px}.canvas-card-preview span,.empty-canvas-preview span{color:#33312d;font-family:Georgia,Times New Roman,serif;font-size:28px}.canvas-card-copy{justify-content:space-between;align-items:center;gap:18px;padding:15px 15px 25px;display:flex}.canvas-card-copy h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:760;overflow:hidden}.canvas-card-copy p{color:var(--muted);margin:5px 0 0;font-size:9px}.canvas-card-copy svg{color:var(--accent);flex:none;transition:transform .14s}.canvas-card:hover .canvas-card-copy svg{transform:translate(2px,-2px)}.canvas-object-count{color:#aaa69d;font-size:8px;position:absolute;bottom:10px;right:14px}.dashboard-loading,.dashboard-empty{min-height:280px;color:var(--muted);place-items:center;font-size:11px;display:grid}.dashboard-empty{text-align:center;align-content:center;gap:10px}.empty-canvas-preview{border:1px solid #e1ded6;border-radius:12px;width:min(360px,90%);height:130px;margin-bottom:8px}.dashboard-empty h3,.dashboard-empty p{margin:0}.dashboard-empty h3{color:var(--ink);font-size:14px}.canvas-route-loading,.canvas-document-loading,.canvas-document-missing{width:100vw;height:100svh;color:var(--muted);text-align:center;background:#fff;place-content:center;gap:14px;display:grid}.canvas-route-loading p,.canvas-document-loading p,.canvas-document-missing p{margin:0;font-size:11px}.canvas-document-missing a{color:var(--accent);text-underline-offset:3px;font-size:11px;font-weight:700}@media (max-width:850px){.dashboard-hero{grid-template-columns:1fr;align-items:start;margin-top:72px}.canvas-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.dashboard-page{padding:20px 16px 48px}.dashboard-api-total span{display:none}.dashboard-hero{gap:34px;margin:56px auto 52px}.new-canvas-form>div{flex-direction:column}.new-canvas-form input{min-height:43px}.new-canvas-form button{justify-content:center}.canvas-card-grid{grid-template-columns:1fr}}.sr-status{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.drawing-app{width:100vw;height:100svh;position:relative;overflow:hidden}.app-header{z-index:10;pointer-events:none;align-items:flex-start;gap:15px;display:flex;position:absolute;top:22px;left:24px}.wordmark{color:var(--ink);letter-spacing:-.06em;text-shadow:0 1px #fffc;pointer-events:auto;font-size:clamp(24px,3vw,32px);font-weight:750;line-height:1;text-decoration:none}.wordmark span{color:var(--accent)}.app-header p{color:var(--muted);letter-spacing:.02em;margin:0;font-size:13px}.canvas-document-heading{pointer-events:auto;gap:2px;margin-top:-3px;display:grid}.canvas-document-heading input{color:#555149;background:0 0;border:1px solid #0000;border-radius:6px;outline:0;width:min(280px,38vw);height:25px;padding:0 5px;font-size:12px;font-weight:700}.canvas-document-heading input:hover,.canvas-document-heading input:focus{background:#ffffffe0;border-color:#dedad0e6}.canvas-save-status{color:#aaa69d;padding-left:5px;font-size:8px;font-weight:650}.canvas-save-status.is-saving{color:#8e8a82}.canvas-save-status.is-error{color:#a83d29}.workspace{position:absolute;inset:0}.canvas-shell{background:#fff;width:100%;height:100%;overflow:hidden}.canvas-wrap{--grid-x:0px;--grid-y:0px;touch-action:none;cursor:crosshair;background-color:#fff;background-image:radial-gradient(circle,#dedbd4 .7px,#0000 .8px);background-size:var(--grid-size,20px) var(--grid-size,20px);background-position:var(--grid-x) var(--grid-y);width:100%;height:100%;position:relative;overflow:hidden}.canvas-wrap canvas{z-index:7;pointer-events:none;display:block;position:absolute;inset:0}.canvas-world{z-index:3;transform-origin:0 0;pointer-events:none;will-change:transform;position:absolute;inset:0;overflow:visible}.class-material-input{display:none}.class-onboarding,.class-complete-message{z-index:9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border:1px solid #d7d3c9eb;border-radius:20px;justify-items:start;gap:14px;width:min(520px,100% - 40px);padding:30px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 70px #2c292221}.class-onboarding h2,.class-complete-message h2{color:var(--ink);letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,5vw,43px);font-weight:500;line-height:1.02}.class-onboarding p,.class-complete-message p{color:#6e6a62;margin:0;font-size:14px;line-height:1.6}.class-kicker{color:var(--accent);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:7px;font-size:9px;font-weight:800;display:flex}.class-kicker svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:14px}.class-onboarding button,.class-stage-actions button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:11px;min-height:42px;padding:0 17px;font-size:12px;font-weight:750}.class-onboarding button:disabled,.class-stage-actions button:disabled{cursor:wait;opacity:.55}.class-onboarding>small{color:#aaa69d;font-size:9px}.class-ready-meta{flex-wrap:wrap;gap:8px;display:flex}.class-ready-meta span{color:#77736b;background:#f1efe9;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:700}.class-progress-hud{z-index:9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:auto;background:#ffffffe6;border:1px solid #dedad0e6;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;width:min(240px,100% - 48px);padding:10px 12px;display:grid;position:absolute;top:70px;right:24px;box-shadow:0 7px 22px #24231f12}.class-progress-hud>span{color:#5f5b53;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:750;overflow:hidden}.class-progress-hud strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;font-size:9px}.class-progress-hud time{color:#625f57;font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;font-size:10px;font-weight:700}.class-progress-hud button{color:var(--accent);cursor:pointer;background:0 0;border:0;grid-column:2;justify-self:end;padding:0;font-size:9px;font-weight:750}.class-complete-message.has-analytics{width:min(640px,100% - 40px)}.class-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid}.class-analytics-grid>div{background:#faf9f6;border:1px solid #e5e2da;border-radius:12px;gap:4px;min-width:0;padding:13px 14px;display:grid}.class-analytics-grid strong{color:var(--ink);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;letter-spacing:-.04em;text-overflow:ellipsis;font-size:20px;overflow:hidden}.class-analytics-grid span{color:#8d8980;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:700}.class-complete-message .class-analytics-insight{color:#77736b;font-size:11px;line-height:1.55}.class-progress-hud>div{background:#e9e6df;border-radius:999px;grid-column:1/-1;height:3px;overflow:hidden}.class-progress-hud i{border-radius:inherit;background:var(--accent);height:100%;transition:width .3s;display:block}.class-lesson-stage{z-index:4;width:min(720px,100% - 64px);color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;-webkit-user-select:text;user-select:text;pointer-events:auto;padding:6px 0 88px;position:absolute}.class-lesson-stage.is-current{z-index:5}.class-lesson-stage.is-passed{opacity:.72}.class-lesson-stage>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.class-lesson-stage>header span,.class-example>span,.class-task>span,.class-hint>span{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.class-example>span,.class-task>span{margin-bottom:12px;display:block}.class-lesson-stage>header small{color:#9a968d;text-overflow:ellipsis;white-space:nowrap;max-width:55%;font-size:11px;overflow:hidden}.class-lesson-stage>h2{letter-spacing:-.04em;max-width:680px;margin:0;font-size:clamp(38px,5vw,54px);font-weight:720;line-height:1.08}.class-objective{color:#625f57;max-width:620px;margin:14px 0 34px;font-size:17px;line-height:1.72}.class-lesson-copy,.class-example,.class-task{max-width:680px;font-size:19px;line-height:1.9}.class-feedback{max-width:680px;font-size:16px;line-height:1.72}.class-lesson-copy .ai-answer-content,.class-example .ai-answer-content,.class-task .ai-answer-content,.class-feedback .ai-answer-content{color:#393731;font-size:inherit}.class-example,.class-task{margin-top:38px;padding:0}.class-example{background:0 0;border:0}.class-task{background:0 0;border:0;font-size:21px}.class-task>small{color:#969289;margin-top:14px;font-size:11px;line-height:1.55;display:block}.class-lesson-copy .ai-answer-content p,.class-example .ai-answer-content p,.class-task .ai-answer-content p{margin:.78em 0}.class-lesson-stage .ai-answer-content .katex{font-size:1.16em}.class-lesson-stage .ai-answer-content .katex-display{margin:.9em 0;padding:8px 0;font-size:1.28em;line-height:1.5}.class-example .ai-answer-content .katex-display{text-align:left;margin:.45em 0;padding:4px 0 4px 18px}.class-example .ai-answer-content .katex-display>.katex{text-align:left}.class-example .ai-answer-content p{margin:.5em 0}.class-feedback{background:#faf9f6;border:1px solid #dfdcd4;border-radius:12px;margin-top:30px;padding:17px 18px}.class-feedback.is-correct,.class-feedback.is-close{background:#268b530d;border-color:#268b5340}.class-feedback>strong{color:#444139;margin-bottom:7px;font-size:12px;display:block}.class-hint{border-top:1px solid #e3dfd6;margin-top:11px;padding-top:11px}.class-stage-actions{align-items:center;gap:12px;margin-top:30px;display:flex}.class-stage-actions>span{color:#969289;font-size:11px}.class-stage-actions .class-skip-button,.class-stage-actions .class-help-button{color:#77736b;background:0 0;border:1px solid #d9d5cc}.class-stage-actions .class-skip-button:hover:not(:disabled),.class-stage-actions .class-help-button:hover:not(:disabled){color:#4f4c45;border-color:#c4c0b6}.canvas-wrap.is-space-ready .class-lesson-stage,.canvas-wrap.is-asking .class-lesson-stage{pointer-events:none}.canvas-object{z-index:3;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;pointer-events:auto;position:absolute}.canvas-object.is-selected{z-index:4;outline:2px solid var(--accent);outline-offset:4px}.canvas-object.is-dragging{cursor:grabbing;will-change:translate}.canvas-wrap.is-space-ready .canvas-object{pointer-events:none}.canvas-image-object{border-radius:5px;line-height:0}.canvas-pasted-image{object-fit:contain;pointer-events:none;border:1px solid #24231f1f;border-radius:5px;width:100%;height:100%;display:block;box-shadow:0 10px 32px #24231f1f}.canvas-wrap.is-space-ready,.canvas-wrap.is-pan-ready{cursor:grab}.canvas-wrap.is-panning{cursor:grabbing}.canvas-wrap.is-asking{cursor:crosshair}.canvas-wrap.is-asking .canvas-object{pointer-events:none}.canvas-wrap.is-erasing{cursor:none}.canvas-wrap.is-erasing .canvas-object,.canvas-wrap.is-erasing .class-lesson-stage{pointer-events:none}.eraser-cursor{z-index:8;opacity:0;pointer-events:none;visibility:hidden;will-change:transform;background:#ffffff8f;border:1.5px solid #3159d8b8;border-radius:50%;position:absolute;top:0;left:0;box-shadow:inset 0 0 0 1px #ffffffdb}.eraser-cursor.is-visible{opacity:1;visibility:visible}.ai-connectors{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ai-connectors line{stroke:#3159d87a;stroke-width:1.5px;stroke-dasharray:5 5;opacity:0;transition:opacity .12s}.ai-connectors line.is-visible{opacity:1}.ai-source-region{z-index:4;opacity:0;pointer-events:none;background:#3159d806;border:1.5px dashed #3159d89e;border-radius:5px;transition:opacity .12s;position:absolute;box-shadow:inset 0 0 0 1px #ffffffa8}.ai-source-region.is-visible{opacity:1}.ai-source-region.is-selecting,.ai-source-region.is-draft{z-index:6;opacity:1;background:#3159d813;border-style:solid;border-width:2px}.ai-question-draft{z-index:8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border:1px solid #cfd6ef;border-radius:14px;gap:8px;width:min(420px,100% - 32px);padding:10px;display:grid;position:absolute;box-shadow:0 16px 48px #25305629}.ai-question-draft textarea{resize:vertical;width:100%;min-height:58px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:9px 10px;font-size:13px;line-height:1.45}.ai-question-draft textarea::placeholder{color:#aaa69d}.ai-question-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.ai-question-actions button{cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;height:34px;display:flex}.ai-question-actions svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px}.ai-question-cancel{color:#817d74;background:#f1efe9;width:34px}.ai-question-send{background:var(--accent);color:#fff;gap:7px;padding:0 13px;font-size:11px;font-weight:750}.ai-question-send:disabled{cursor:default;opacity:.38}.ai-thread-card{z-index:5;box-shadow:none;cursor:grab;background:0 0;border:0;border-radius:0;outline:0;overflow:visible}.ai-thread-card.is-selected{z-index:6;outline-offset:7px;outline:1px dashed #3159d894}.ai-thread-card.is-dragging{cursor:grabbing}.ai-thread-meta-label{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:800;display:flex}.ai-thread-meta-label svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:13px}.ai-thread-answer{-webkit-user-select:none;user-select:none;min-height:22px;padding:0}.ai-answer-content{color:var(--ink);text-shadow:0 1px #ffffffb8;font-size:14px;line-height:1.62}.ai-answer-content>:first-child{margin-top:0}.ai-answer-content>:last-child{margin-bottom:0}.ai-answer-content p,.ai-answer-content ul,.ai-answer-content ol,.ai-answer-content blockquote,.ai-answer-content pre,.ai-answer-content table{margin:.55em 0}.ai-answer-content h1,.ai-answer-content h2,.ai-answer-content h3,.ai-answer-content h4{color:var(--ink);margin:.9em 0 .35em;font-weight:760;line-height:1.25}.ai-answer-content h1{font-size:1.4em}.ai-answer-content h2{font-size:1.25em}.ai-answer-content h3,.ai-answer-content h4{font-size:1.08em}.ai-answer-content ul,.ai-answer-content ol{padding-left:1.45em}.ai-answer-content li+li{margin-top:.22em}.ai-answer-content blockquote{color:#6f6b62;border-left:2px solid #3159d861;padding-left:.85em}.ai-answer-content code{font-family:var(--font-geist-mono), monospace;text-shadow:none;background:#24231f12;border-radius:4px;padding:.12em .32em;font-size:.88em}.ai-answer-content pre{text-shadow:none;background:#f8f7f3f0;border:1px solid #24231f1a;border-radius:8px;padding:10px 11px;overflow-x:auto}.ai-answer-content pre code{background:0 0;padding:0}.ai-answer-content table{border-collapse:collapse;max-width:100%;text-shadow:none;display:block;overflow-x:auto}.ai-answer-content th,.ai-answer-content td{text-align:left;border:1px solid #24231f26;padding:5px 8px}.ai-answer-content th{background:#24231f0e;font-weight:720}.ai-answer-content a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}.ai-answer-content hr{border:0;border-top:1px solid #24231f29;margin:.8em 0}.ai-answer-content .katex{font-size:1.02em}.ai-answer-content .katex-display{max-width:100%;margin:.5em 0;padding:5px 0;font-size:1.08em;overflow:auto hidden}.ai-thinking{color:#969188;align-items:center;gap:4px;font-size:10px;display:flex}.ai-thinking span{background:var(--accent);opacity:.28;border-radius:50%;width:5px;height:5px}.ai-thread-error{color:#a83d29;background:#fff0ec;border-radius:8px;margin:0;padding:9px 10px;font-size:11px;line-height:1.45}.ai-thread-meta{z-index:2;color:#99958c;opacity:0;pointer-events:none;-webkit-user-select:text;user-select:text;background:#fffffff7;border:1px solid #d9dced;border-radius:10px;gap:8px;width:min(340px,90vw);padding:10px 11px;transition:opacity .12s,transform .12s;display:grid;position:absolute;top:calc(100% + 13px);left:0;transform:translateY(-3px);box-shadow:0 10px 32px #2530561f}.ai-thread-card:hover .ai-thread-meta,.ai-thread-card:focus-visible .ai-thread-meta,.ai-thread-card:focus-within .ai-thread-meta{opacity:1;transform:translateY(0)}.ai-thread-meta p{color:#4d4a43;margin:0;font-size:11px;font-weight:650;line-height:1.4}.ai-thread-meta>div{border-top:1px solid #ececf2;align-items:center;gap:8px;padding-top:7px;font-size:8px;display:flex}.ai-thread-meta>div span+span:before{content:"·";color:#c7c3ba;margin-right:8px}.ai-thread-meta strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;margin-left:auto;font-size:9px}.canvas-visualization-object{z-index:5;cursor:default;background:#fffffff5;border:1px solid #24231f21;border-radius:12px;overflow:hidden;box-shadow:0 14px 38px #24231f1f}.canvas-visualization-object.is-selected{z-index:6;outline-offset:4px;outline:2px solid #3159d8b8}.visualization-drag-handle{height:38px;color:var(--ink);cursor:grab;touch-action:none;background:#faf9f6f0;border-bottom:1px solid #24231f17;justify-content:space-between;align-items:center;gap:16px;padding:0 12px;display:flex}.canvas-visualization-object.is-dragging .visualization-drag-handle{cursor:grabbing}.visualization-drag-handle span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;overflow:hidden}.visualization-drag-handle small{color:var(--muted);letter-spacing:.03em;flex:none;font-size:8px;font-weight:650}.math-visualization{background:#fff;border-radius:0 0 12px 12px;overflow:hidden}.visualization-loading{height:calc(100% - 38px);color:var(--muted);place-items:center;font-size:10px;display:grid}.canvas-hint{color:#bbb7ad;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.canvas-wrap.is-drawing .canvas-hint{opacity:0}.canvas-hint svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:40px}.canvas-hint span{letter-spacing:.03em;font-size:12px;font-weight:600}.canvas-hint .hint-equation{color:#d0ccc3;letter-spacing:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(27px,4vw,42px);font-weight:400}.canvas-latex-result{--result-size:44px;pointer-events:auto;flex-direction:column;align-items:center;gap:12px;max-width:88%;display:flex;transform:translate(-50%,-50%)}.canvas-latex-math{max-width:100%;color:var(--ink);padding:8px 12px;overflow:auto hidden}.canvas-latex-math .katex-display{font-size:var(--result-size);margin:0}.result-copy-button{border:1px solid var(--line);min-height:31px;color:var(--muted);cursor:pointer;pointer-events:auto;background:#fffffff0;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:9px;font-weight:700;display:flex;box-shadow:0 4px 14px #37302312}.result-copy-button:hover{color:var(--ink);background:#fff}.result-copy-button svg,.recognizing-pill svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:14px}.recognizing-pill{z-index:4;min-height:34px;color:var(--accent);pointer-events:none;background:#fffffff0;border:1px solid #d9def2;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-size:10px;font-weight:750;display:flex;position:absolute;top:17px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #3159d81a}.canvas-message{z-index:4;pointer-events:none;border-radius:9px;max-width:min(410px,100% - 32px);margin:0;padding:10px 12px;font-size:10px;line-height:1.4;position:absolute;bottom:16px;left:16px}.canvas-message.error{color:#a83d29;background:#fff0ecf5;border:1px solid #f0ccc4}.canvas-receipt{z-index:4;color:#918d84;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#f7f8fdf0;border:1px solid #dcdff0;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;font-size:8px;display:flex;position:absolute;bottom:14px;right:14px}.canvas-receipt strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;font-size:9px}.canvas-receipt span+span:before{content:"·";color:#c1bdb4;margin-right:9px}.latex-panel{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;gap:14px;min-width:0;padding:20px;display:flex;box-shadow:0 20px 60px #3730230f,0 2px 8px #3730230a}.latex-heading{min-height:30px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:12px;font-weight:750;display:flex}.latex-heading>div{align-items:center;gap:8px;display:flex}.ai-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #3159d81a}.copy-button{color:var(--muted);cursor:pointer;letter-spacing:0;text-transform:none;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:6px 7px;font-size:10px;font-weight:700;display:flex}.copy-button:hover{color:var(--ink);background:#f2f0eb}.copy-button svg,.recognize-button svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px}.math-preview{background:#faf9f6;border:1px dashed #dedad0;border-radius:13px;flex:1;place-items:center;min-height:180px;padding:20px 12px;display:grid;overflow:auto}.math-preview.has-result{background:#fff;border-style:solid}.math-preview .katex-display{margin:0;font-size:clamp(1.05rem,2vw,1.45rem)}.preview-empty{color:#aaa69d;text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.preview-empty svg{fill:none;stroke:#c4c0b6;stroke-width:1.35px;width:27px;margin-bottom:3px}.preview-empty strong{color:#77736b;font-size:12px}.preview-empty span{max-width:180px;font-size:10px;line-height:1.5}.latex-source{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;gap:7px;font-size:9px;font-weight:750;display:grid}.latex-source textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--font-geist-mono), monospace;text-transform:none;background:#faf9f6;border-radius:9px;outline:none;padding:10px;font-size:11px;line-height:1.45}.latex-source textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3159d81a}.recognition-error{color:#a83d29;background:#fff0ec;border-radius:8px;margin:0;padding:9px 10px;font-size:10px;line-height:1.4}.cost-receipt{background:#f7f8fd;border:1px solid #dcdff0;border-radius:10px;gap:8px;padding:12px;display:grid}.cost-main,.cost-details,.cost-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.cost-main span{color:#6e6a62;font-size:10px;font-weight:700}.cost-main strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:-.04em;font-size:14px}.cost-details{color:#89857c;justify-content:flex-start;font-size:9px}.cost-details span+span:before{content:"·";color:#c1bdb4;margin-right:10px}.cost-meta{color:#aaa69d;border-top:1px solid #e5e6ef;padding-top:7px;font-size:8px}.recognize-button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;min-height:58px;padding:0 20px;font-size:12px;font-weight:750;display:flex;box-shadow:0 8px 24px #3159d833}.recognize-button:hover:not(:disabled){background:#284cc0}.recognize-button:disabled{cursor:default;opacity:.38}.recognition-note{color:#aaa69d;text-align:center;margin:-6px 0 0;font-size:9px;line-height:1.4}.toolbar{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:16px;align-items:center;gap:12px;min-height:58px;padding:8px 10px;display:flex;box-shadow:0 8px 28px #37302317}.controls-bar{z-index:10;justify-content:center;align-items:stretch;gap:10px;width:max-content;max-width:calc(100% - 48px);margin:0;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.color-controls,.size-controls,.action-controls{align-items:center;gap:4px;display:flex}.color-button,.size-button,.action-controls button{cursor:pointer;background:0 0;border:0}.color-button{border-radius:10px;width:38px;height:38px;position:relative}.color-button:before{content:"";background:var(--swatch);border-radius:50%;position:absolute;inset:10px;box-shadow:inset 0 0 0 1px #00000012}.color-button.selected{background:#f0eee8}.color-button.selected:after{content:"";border:1px solid var(--swatch);opacity:.55;border-radius:50%;position:absolute;inset:6px}.size-button{border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.size-button span{background:var(--ink);border-radius:50%;max-width:14px;max-height:14px;display:block}.size-button.selected{background:#f0eee8}.toolbar-divider{background:var(--line);width:1px;height:26px}.action-controls button{color:#666259;border-radius:10px;align-items:center;gap:7px;height:38px;padding:0 10px;font-size:12px;font-weight:650;display:flex}.action-controls button:hover:not(:disabled),.size-button:hover,.color-button:hover{background:#f0eee8}.action-controls button.ai-tool-active,.action-controls button.eraser-tool-active,.action-controls button.pan-tool-active{color:var(--accent);background:#e9edfb}.action-controls button:disabled{cursor:default;opacity:.32}.action-controls svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:17px}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-footer{z-index:10;min-height:30px;color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.04em;pointer-events:none;background:#ffffffd1;border:1px solid #dedad0cc;border-radius:999px;align-items:center;padding:0 10px;font-size:10px;font-weight:600;display:flex;position:absolute;top:64px;right:24px}.zoom-controls{z-index:10;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-radius:12px;align-items:center;padding:4px;display:flex;position:absolute;bottom:24px;left:24px;box-shadow:0 8px 28px #37302314}.zoom-controls button{color:#666259;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;min-width:34px;height:32px;padding:0 7px;font-size:10px;font-weight:750;display:grid}.zoom-controls button:hover:not(:disabled){background:#f0eee8}.zoom-controls button:disabled{cursor:default;opacity:.3}.zoom-controls button.zoom-value{min-width:52px;font-family:var(--font-geist-mono), monospace}.zoom-controls svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:15px}.total-cost-badge{z-index:10;min-height:32px;color:var(--muted);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);letter-spacing:.04em;background:#ffffffe0;border:1px solid #dedad0db;border-radius:999px;align-items:center;gap:8px;padding:0 11px;font-size:10px;font-weight:650;display:flex;position:absolute;top:24px;right:24px;box-shadow:0 2px 12px #24231f0d}.total-cost-badge strong{color:var(--accent);font-family:var(--font-geist-mono), monospace;letter-spacing:-.02em;font-size:11px}.footer-mark{color:#b3afa6}@media (max-width:640px){.drawing-app{padding:0}.app-header{padding:0;top:16px;left:16px}.canvas-document-heading input{width:min(180px,48vw)}.total-cost-badge{top:16px;right:16px}.app-header p{display:none}.canvas-shell{border-radius:0}.workspace{position:absolute;inset:0}.latex-panel{border-radius:15px;min-height:330px;padding:16px}.math-preview{min-height:150px}.toolbar{justify-content:space-between;gap:4px;width:100%;padding:7px}.controls-bar{flex-direction:column;gap:8px;width:auto;max-width:none;bottom:12px;left:12px;right:12px;transform:none}.recognize-button{border-radius:13px;width:100%;min-height:46px}.canvas-latex-math .katex-display{font-size:min(var(--result-size), 38px)}.canvas-receipt{max-width:calc(100% - 24px);left:12px;right:auto}.class-analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-message.error+.canvas-receipt{bottom:64px}.color-button,.size-button{width:34px;height:38px}.action-controls button{justify-content:center;width:38px;padding:0}.action-controls button span,.app-footer .footer-mark{display:none}.toolbar-divider{height:22px}.app-footer{display:none}.zoom-controls{top:104px;bottom:auto;left:12px}}@media (min-width:641px) and (max-width:900px){.controls-bar{bottom:18px}}@media (max-width:390px){.toolbar{gap:1px}.color-controls,.size-controls,.action-controls{gap:0}.color-button,.size-button,.action-controls button{width:32px}}@media (prefers-reduced-motion:no-preference){.toolbar button,.zoom-controls button,.recognize-button,.result-copy-button{transition:background-color .14s,opacity .14s,transform .14s}.ai-thinking span{animation:1s ease-in-out infinite ai-thinking-pulse}.ai-thinking span:nth-child(2){animation-delay:.12s}.ai-thinking span:nth-child(3){animation-delay:.24s}.toolbar button:active:not(:disabled),.recognize-button:active:not(:disabled),.result-copy-button:active:not(:disabled){transform:scale(.92)}}@keyframes ai-thinking-pulse{0%,to{opacity:.22;transform:translateY(0)}50%{opacity:.9;transform:translateY(-2px)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
