@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/39c55468420adfa6-s.56419174.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.cfd9c1c2.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:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(../media/81cef6a21128489e-s.p.6cf41120.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:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/39c55468420adfa6-s.56419174.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.cfd9c1c2.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:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/81cef6a21128489e-s.p.6cf41120.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:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/39c55468420adfa6-s.56419174.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.cfd9c1c2.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:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/81cef6a21128489e-s.p.6cf41120.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:Jost;font-style:normal;font-weight:600;font-display:swap;src:url(../media/39c55468420adfa6-s.56419174.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.cfd9c1c2.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:Jost;font-style:normal;font-weight:600;font-display:swap;src:url(../media/81cef6a21128489e-s.p.6cf41120.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:Jost;font-style:normal;font-weight:700;font-display:swap;src:url(../media/39c55468420adfa6-s.56419174.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.cfd9c1c2.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:Jost;font-style:normal;font-weight:700;font-display:swap;src:url(../media/81cef6a21128489e-s.p.6cf41120.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:Jost Fallback;src:local(Arial);ascent-override:111.45%;descent-override:39.06%;line-gap-override:0.0%;size-adjust:96.01%}.jost_44d907d8-module__j7t9NG__className{font-family:Jost,Jost Fallback;font-style:normal}.jost_44d907d8-module__j7t9NG__variable{--font-jost:"Jost","Jost Fallback"}
@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0fec32c78403d184-s.52db332e.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:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9d30e1ac529a223a-s.072a0475.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9056bf441d45cedc-s.cb42ab76.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e6c3b2b7c3a61f79-s.9b5477f3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e557826f452dbd06-s.0dabfe84.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:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1497d94d4ac5c969-s.a27bcaa7.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:EB Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e4505858a30c79c2-s.p.0f58a291.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:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0fec32c78403d184-s.52db332e.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:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9d30e1ac529a223a-s.072a0475.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9056bf441d45cedc-s.cb42ab76.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e6c3b2b7c3a61f79-s.9b5477f3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e557826f452dbd06-s.0dabfe84.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:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1497d94d4ac5c969-s.a27bcaa7.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:EB Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e4505858a30c79c2-s.p.0f58a291.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:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0fec32c78403d184-s.52db332e.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:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9d30e1ac529a223a-s.072a0475.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9056bf441d45cedc-s.cb42ab76.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e6c3b2b7c3a61f79-s.9b5477f3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e557826f452dbd06-s.0dabfe84.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:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1497d94d4ac5c969-s.a27bcaa7.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:EB Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e4505858a30c79c2-s.p.0f58a291.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:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0fec32c78403d184-s.52db332e.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:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9d30e1ac529a223a-s.072a0475.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9056bf441d45cedc-s.cb42ab76.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e6c3b2b7c3a61f79-s.9b5477f3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e557826f452dbd06-s.0dabfe84.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:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1497d94d4ac5c969-s.a27bcaa7.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:EB Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e4505858a30c79c2-s.p.0f58a291.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:EB Garamond Fallback;src:local(Times New Roman);ascent-override:106.26%;descent-override:31.44%;line-gap-override:0.0%;size-adjust:94.77%}.eb_garamond_30912482-module__kYqx9G__className{font-family:EB Garamond,EB Garamond Fallback;font-style:normal}.eb_garamond_30912482-module__kYqx9G__variable{--font-garamond:"EB Garamond","EB Garamond Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c3cb240f9c892514-s.d8e4bce2.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:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.a62025f2.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:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c3cb240f9c892514-s.d8e4bce2.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:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.a62025f2.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:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c3cb240f9c892514-s.d8e4bce2.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:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.a62025f2.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:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/c3cb240f9c892514-s.d8e4bce2.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:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.a62025f2.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:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_68f423b-module__NptyXG__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_68f423b-module__NptyXG__variable{--font-dm-sans:"DM Sans","DM Sans Fallback"}
:root{--bg-primary:#060608;--bg-secondary:#0d0d12;--bg-tertiary:#16161f;--brand:#4a9fd9;--brand-light:#6bb8e8;--brand-dim:#4a9fd926;--brand-glow:#4a9fd914;--gradient-brand:linear-gradient(135deg,#4a9fd9 0%,#6bb8e8 100%);--navy:#2563eb;--deep:#1e40af;--navy-dim:#2563eb1f;--deep-dim:#1e40af1a;--gradient-accent:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);--text-primary:#eeeef0;--text-secondary:#8888a0;--text-tertiary:#55556a;--border:#ffffff0f;--border-subtle:#ffffff08;--border-brand:#4a9fd933;--border-navy:#2563eb33;--glass-bg:#ffffff08;--glass-bg-hover:#ffffff0d;--glass-border:#ffffff0f;--glass-blur:blur(20px);--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0006;--shadow-lg:0 16px 48px #00000080;--shadow-brand:0 0 30px #4a9fd91a;--shadow-navy:0 0 30px #2563eb14;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-pill:9999px;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--transition-fast:.2s var(--ease-out);--transition-med:.3s var(--ease-out);--chat-border:#ffffff0f;--chat-bg-elevated:#0a0a10;--chat-bg-tertiary:#111118;--success:#34d399;--success-dim:#34d3991f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-jost,-apple-system,BlinkMacSystemFont,"Jost","Inter",system-ui,sans-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background:var(--bg-primary);color:var(--text-primary);font-size:16px;line-height:1.5;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 60% at 20% 10%,#4a9fd90a 0%,#0000 60%),radial-gradient(60% 50% at 80% 80%,#2563eb08 0%,#0000 60%),radial-gradient(50% 40%,#1e40af05 0%,#0000 70%);width:100%;height:100%;position:fixed;top:0;left:0}.loading-container{background:var(--bg-primary);z-index:9999;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}.loading-container:before{content:"";filter:blur(60px);background:radial-gradient(circle,#4a9fd91f 0%,#2563eb0f 40%,#0000 70%);border-radius:50%;width:400px;height:400px;animation:4s ease-in-out infinite loadingOrb;position:absolute}@keyframes loadingOrb{0%,to{opacity:.6;transform:scale(.8)translateY(10px)}50%{opacity:1;transform:scale(1.2)translateY(-10px)}}.spinner-container{z-index:1;justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.gradient-spinner{background:conic-gradient(from 0deg,transparent 0%,var(--brand)40%,var(--deep)80%,transparent 100%);border-radius:50%;width:100%;height:100%;animation:1.2s linear infinite spin;position:absolute;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#fff calc(100% - 3px));mask:radial-gradient(farthest-side,#0000 calc(100% - 3px),#fff calc(100% - 3px))}.core{background:radial-gradient(circle,#4a9fd940 0%,#2563eb1a 50%,#0000 70%);border-radius:50%;width:36px;height:36px;animation:2.4s ease-in-out infinite pulse}.loading-text{letter-spacing:.08em;text-transform:uppercase;background:var(--gradient-brand);-webkit-text-fill-color:transparent;z-index:1;-webkit-background-clip:text;background-clip:text;margin-top:28px;font-size:14px;font-weight:500;animation:2.4s ease-in-out infinite pulse}.page-container{background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:48px 24px;display:flex;position:relative}.content-wrapper{z-index:1;width:100%;max-width:680px;margin:0 auto;position:relative}.hero-section{text-align:center;margin-bottom:56px}.hero-title{font-size:clamp(38px,8vw,64px);font-family:var(--font-garamond,"EB Garamond",Georgia,serif);letter-spacing:-.035em;background:linear-gradient(160deg,#fff 0%,var(--brand-light)45%,var(--brand)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:18px;font-weight:700;line-height:1.05}.hero-subtitle{color:var(--text-secondary);max-width:480px;margin:0 auto;font-size:19px;font-weight:400;line-height:1.6}.upload-zone{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-xl);text-align:center;cursor:pointer;transition:all var(--transition-med);border:1.5px dashed #ffffff14;padding:64px 48px;position:relative;overflow:hidden}.upload-zone:before{content:"";border-radius:inherit;background:radial-gradient(ellipse at 50% 0%,var(--brand-glow)0%,transparent 60%);opacity:0;transition:opacity var(--transition-med);position:absolute;inset:0}.upload-zone:hover{border-color:var(--border-brand);box-shadow:var(--shadow-brand);background:#4a9fd90a}.upload-zone:hover:before{opacity:1}.upload-zone.dragging{border-color:var(--brand);box-shadow:var(--shadow-brand),inset 0 0 40px #4a9fd908;background:#4a9fd90f;transform:scale(1.01)}.upload-icon{width:64px;height:64px;color:var(--brand);opacity:.5;transition:all var(--transition-med);margin:0 auto 24px}.upload-zone:hover .upload-icon{opacity:.8;transform:translateY(-2px)}.upload-title{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:8px;font-size:20px;font-weight:600}.upload-hint{color:var(--text-secondary);font-size:15px}.upload-hint strong{color:var(--brand);font-weight:500}.spinner{border:2.5px solid var(--border);border-top-color:var(--brand);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.mini-spinner{border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}.success-container{text-align:center;animation:fadeIn .5s var(--ease-out);padding:48px}.success-icon{background:var(--gradient-brand);width:80px;height:80px;color:var(--bg-primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 28px;font-size:40px;animation:.5s cubic-bezier(.34,1.56,.64,1) scaleIn;display:flex;box-shadow:0 0 40px #4a9fd933,0 0 80px #4a9fd914}.success-title{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:10px;font-size:28px;font-weight:700}.success-message{color:var(--text-secondary);margin-bottom:32px;font-size:16px;line-height:1.6}.qr-container{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg),0 0 60px #4a9fd90f;background:#fff;margin-bottom:24px;padding:32px;display:inline-block}.qr-container img{border-radius:var(--radius-md)}.btn{border-radius:var(--radius-pill);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.01em;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--gradient-brand);color:#fff;box-shadow:0 2px 12px #4a9fd933}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #4a9fd959}.btn-primary:active{transform:translateY(0)}.body-regular{font-size:16px;font-weight:400;line-height:1.6}.text-secondary{color:var(--text-secondary)}.split-layout{background:var(--bg-primary);grid-template-columns:1fr 420px;height:100vh;display:grid}.chat-panel{border-right:1px solid var(--chat-border);flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.chat-panel:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#4a9fd926 30%,#2563eb1a 70%,#0000 100%);width:1px;height:100%;position:absolute;top:0;right:0}.chat-header{border-bottom:1px solid var(--chat-border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);padding:24px 32px;position:relative}.chat-header:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--border-brand)50%,transparent 100%);height:1px;position:absolute;bottom:0;left:32px;right:32px}.chat-header-content{width:100%}.chat-header-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.chat-brand{cursor:pointer;transition:opacity var(--transition-fast);align-items:center;gap:12px;display:flex}.chat-brand:hover{opacity:.85}.chat-logo-img{width:auto;height:32px}.chat-brand-name{background:linear-gradient(135deg,#6bb8e8 0%,#4a9fd9 50%,#6bb8e8 100%);-webkit-text-fill-color:transparent;letter-spacing:.04em;-webkit-background-clip:text;background-clip:text;font-size:17px;font-weight:700}.chat-header-nav{align-items:center;gap:12px;display:flex}.back-button{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:#ffffff08;border:1px solid #ffffff0f;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;display:flex}.back-button:hover{color:var(--brand-light);border-color:var(--border-brand);background:#4a9fd90d}.chat-title-row{align-items:center;gap:12px;display:flex}.chat-title{letter-spacing:-.01em;color:var(--text-secondary);font-size:18px;font-weight:400;line-height:1.4}.chat-title .article-highlight{color:var(--text-primary);font-weight:600}.messages-area{flex:1;padding:28px 32px;overflow-y:auto}.messages-wrapper{flex-direction:column;gap:22px;width:100%;display:flex}.message-row{animation:messageFade .3s var(--ease-out);align-items:flex-start;gap:14px;display:flex}.message-row.user{flex-direction:row-reverse}.avatar{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border);width:30px;height:30px;color:var(--text-secondary);transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:13px;display:flex}.assistant-avatar{background:var(--gradient-brand);color:#fff;border-color:#4a9fd94d;box-shadow:0 0 16px #4a9fd926}.message-content{min-width:0;max-width:85%;line-height:1.65}.message-content.user{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-navy);color:var(--text-primary);box-shadow:var(--shadow-navy);transition:all var(--transition-fast);border-radius:14px 14px 4px;padding:12px 16px}.message-content.user p{margin:0}.message-content.assistant{color:var(--text-primary)}.markdown-content{color:var(--text-primary);font-size:15px;line-height:1.75}.markdown-content p{margin-bottom:12px}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong{color:#fff;font-weight:600}.markdown-content h1,.markdown-content h2,.markdown-content h3{letter-spacing:-.02em;color:#fff;margin:20px 0 10px;font-weight:700}.markdown-content h1{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px}.markdown-content h2{font-size:17px}.markdown-content h3{color:var(--brand-light);font-size:15px}.markdown-content ul,.markdown-content ol{margin:12px 0;padding-left:22px}.markdown-content li{color:var(--text-primary);margin-bottom:6px}.markdown-content li::marker{color:var(--brand)}.markdown-content code{color:var(--brand-light);background:#4a9fd914;border:1px solid #4a9fd91f;border-radius:5px;padding:2px 6px;font-family:SF Mono,JetBrains Mono,Fira Code,Monaco,monospace;font-size:13px}.markdown-content pre{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);margin:14px 0;padding:16px;overflow-x:auto}.markdown-content pre code{color:var(--text-primary);background:0 0;border:none;padding:0}.markdown-content a{color:var(--brand);transition:all var(--transition-fast);border-bottom:1px solid #4a9fd94d;text-decoration:none}.markdown-content a:hover{color:var(--brand-light);border-bottom-color:var(--brand-light)}.markdown-content blockquote{border-left:3px solid var(--brand);background:var(--brand-glow);border-radius:0 var(--radius-sm)var(--radius-sm)0;color:var(--text-secondary);margin:14px 0;padding:8px 16px;font-style:italic}.markdown-content hr{background:linear-gradient(90deg,transparent,var(--border-brand),transparent);border:none;height:1px;margin:20px 0}.markdown-content table{border-collapse:collapse;width:100%;margin:14px 0}.markdown-content th,.markdown-content td{border:1px solid var(--border);text-align:left;padding:10px 14px;font-size:14px}.markdown-content th{background:var(--bg-tertiary);color:var(--brand-light);font-weight:600}.typing-indicator{gap:5px;padding:4px 0;display:flex}.typing-indicator span{background:var(--brand);border-radius:50%;width:5px;height:5px;animation:1.4s ease-in-out infinite pulse}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}.input-area{border-top:1px solid var(--chat-border);background:linear-gradient(#06060800 0%,#060608cc 100%);padding:20px 32px 24px;position:relative}.input-area:before{content:"";background:linear-gradient(90deg,#0000 0%,#4a9fd91a 50%,#0000 100%);height:1px;position:absolute;top:0;left:32px;right:32px}.input-container{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);width:100%;transition:all var(--transition-med);border-radius:14px;align-items:flex-end;gap:12px;padding:12px 12px 12px 18px;display:flex}.input-container:focus-within{background:#ffffff0a;border-color:#4a9fd940;box-shadow:0 0 0 1px #4a9fd914,0 0 30px #4a9fd90d}.input-container textarea{color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;flex:1;align-items:center;min-height:24px;max-height:200px;font-family:inherit;font-size:15px;line-height:1.5;display:flex}.input-container textarea::placeholder{color:var(--text-tertiary);line-height:24px}.send-button{border-radius:var(--radius-sm);background:var(--gradient-brand);color:#fff;cursor:pointer;width:38px;height:38px;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 10px #4a9fd933}.send-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px #4a9fd959}.send-button:active:not(:disabled){transform:translateY(0)}.send-button:disabled{background:var(--bg-tertiary);color:var(--text-tertiary);cursor:not-allowed;box-shadow:none}.pdf-panel{background:var(--bg-secondary);flex-direction:column;display:flex}.pdf-header{border-bottom:1px solid var(--chat-border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.pdf-info{align-items:center;gap:12px;min-width:0;display:flex}.pdf-icon{color:var(--brand);opacity:.7;flex-shrink:0}.pdf-title{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);margin-bottom:2px;font-size:14px;font-weight:500;overflow:hidden}.pdf-subtitle{color:var(--text-tertiary);font-size:12px}.pdf-toggle{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.02em;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:500}.pdf-toggle:hover{background:var(--glass-bg-hover);color:var(--text-primary);border-color:#ffffff1a}.pdf-toggle.active{background:var(--gradient-brand);color:#fff;border-color:#0000;font-weight:600;box-shadow:0 2px 8px #4a9fd933}.pdf-viewer-container{background:var(--bg-primary);flex:1}.pdf-viewer-container.visible{display:block}.pdf-viewer{border:none;width:100%;height:100%}.pdf-placeholder{text-align:center;height:100%;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;display:flex}.pdf-placeholder svg{opacity:.3;color:var(--brand);margin-bottom:14px}.pdf-placeholder p{letter-spacing:.02em;font-size:13px}.mobile-pdf-toggle{background:var(--glass-bg);border:1px solid var(--border-brand);border-radius:var(--radius-xs);color:var(--brand);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:500;text-decoration:none;display:none}.mobile-pdf-toggle:hover{background:var(--brand-glow);color:var(--brand-light)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#4a9fd926;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4a9fd94d}*{scrollbar-width:thin;scrollbar-color:#4a9fd926 transparent}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes messageFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@media (max-width:900px){.split-layout{grid-template-columns:1fr}.pdf-panel{display:none}.chat-panel{border-right:none}.chat-panel:after{display:none}.mobile-pdf-toggle{display:inline-flex}}@media (max-width:640px){.page-container{padding:24px 16px}.upload-zone{padding:40px 20px}.hero-title{font-size:34px}.hero-subtitle{font-size:16px}.chat-header{padding:16px}.chat-header:after{left:16px;right:16px}.chat-title{font-size:15px}.back-button{justify-content:center;align-items:center;min-width:44px;min-height:44px;margin-bottom:8px;display:flex}.messages-area{padding:16px}.message-content{max-width:92%;font-size:14px}.input-area{padding:10px 12px 14px}.input-area:before{left:12px;right:12px}.input-container{padding:8px 8px 8px 14px}.send-button{width:40px;height:40px}.chat-brand-name{font-size:14px}.chat-logo-img{height:26px}.back-button{padding:5px 10px;font-size:12px}}@media (max-width:380px){.hero-title{font-size:28px}.hero-subtitle{font-size:14px}.chat-title{font-size:13px}.messages-area{padding:12px}.input-area{padding:8px 10px 12px}.markdown-content{font-size:14px}.chat-brand-name{font-size:12px}.chat-logo-img{height:22px}.chat-header-top{flex-direction:column;align-items:flex-start;gap:10px}}.input-actions{align-items:center;gap:8px;display:flex}.mic-button{background:var(--chat-bg-tertiary);border:1px solid var(--chat-border);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.mic-button:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-tertiary)}.mic-button.recording{color:#ff3b30;background:#ff3b301a;border-color:#ff3b30;animation:1.5s infinite micPulse}@keyframes micPulse{0%{box-shadow:0 0 #ff3b3066}70%{box-shadow:0 0 0 10px #ff3b3000}to{box-shadow:0 0 #ff3b3000}}.speak-button{background:var(--chat-bg-tertiary);border:1px solid var(--chat-border);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;margin-top:8px;transition:all .2s;display:inline-flex}.speak-button:hover{color:var(--text-secondary);border-color:var(--text-secondary);background:var(--bg-tertiary)}.speak-button.speaking{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}.animate-spin{animation:1s linear infinite spin}
