@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_8db6fa51-module__MMaAbG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_8db6fa51-module__MMaAbG__variable{--font-sans:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_9a2f2d6c-module__wsyXyG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_9a2f2d6c-module__wsyXyG__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.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:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/7fea77d1d19108bf-s.0xyeb7czu1stb.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/1bcd0e671759a44c-s.0vnh8.d8wxa2x.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/e15f58668ad64cb8-s.0~.8lt~vdqmc3.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/90c51ce8fb754fe8-s.00z~hoalba5dm.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/57215795b8570f5c-s.0vwgtotjdgnhr.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:IBM Plex Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(../media/03fc1b4a8d284b5e-s.p.09.f.n_ccld80.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:IBM Plex Sans Fallback;src:local(Arial);ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.0%;size-adjust:101.17%}.ibm_plex_sans_b6c19e07-module__okBVFW__className{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.ibm_plex_sans_b6c19e07-module__okBVFW__variable{--font-plex:"IBM Plex Sans", "IBM Plex Sans Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.08hd0g.321csk.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.0x08jh8vondwt.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.0~wrfy7sm-h4g.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.0k_.i63k_i_qa.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.16-z~2sp29ex6.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.0m9hhkgdlzukj.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.0juuwbcf7uz~t.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.0qg7j5o.yrclm.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0hkrq11n-dhos.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.07ig5l8azj~hy.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.0_n_qwbzcushi.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.07r2ragk8ph~z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.0787d67~10694.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.0dgq8lqrj3gc_.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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.0o14nraug8u5s.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_93a398a6-module__Tx7x6q__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_93a398a6-module__Tx7x6q__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
.Sidebar-module__l_5xnW__sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);z-index:30;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.Sidebar-module__l_5xnW__logoRow{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);min-height:var(--topbar-height);display:flex}.Sidebar-module__l_5xnW__logo{min-width:0;color:inherit;flex-direction:column;align-items:flex-start;gap:2px;text-decoration:none;transition:opacity .15s;display:flex;overflow:hidden}.Sidebar-module__l_5xnW__logo:hover{opacity:.85}.Sidebar-module__l_5xnW__collapseTop{border:1px solid var(--border-color);border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.Sidebar-module__l_5xnW__collapseTop:hover{background:var(--bg-hover);color:var(--text-primary)}.Sidebar-module__l_5xnW__logoIcon{background-color:var(--color-navy);border-radius:var(--radius-md);color:#fff;width:28px;height:28px;font-weight:700;font-size:var(--text-xs);flex-shrink:0;justify-content:center;align-items:center;display:flex}.Sidebar-module__l_5xnW__logoText{font-size:var(--text-base);color:var(--text-primary);letter-spacing:-.02em;font-weight:600}.Sidebar-module__l_5xnW__logoSub{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.Sidebar-module__l_5xnW__nav{padding:var(--space-2) var(--space-2);flex-direction:column;flex:1;gap:1px;display:flex}.Sidebar-module__l_5xnW__section{flex-direction:column;gap:1px;display:flex}.Sidebar-module__l_5xnW__sectionHeader{cursor:pointer;text-transform:uppercase;letter-spacing:.08em;width:100%;color:var(--text-secondary);padding:var(--space-4) var(--space-2) var(--space-1);background:0 0;border:0;justify-content:space-between;align-items:center;font-size:10px;font-weight:600;transition:color .12s;display:flex}.Sidebar-module__l_5xnW__sectionHeader:hover{color:var(--text-secondary)}.Sidebar-module__l_5xnW__sectionChevron{opacity:.6;flex-shrink:0;transition:transform .18s;transform:rotate(-90deg)}.Sidebar-module__l_5xnW__sectionChevronOpen{transform:rotate(0)}.Sidebar-module__l_5xnW__navLink{align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);color:#334155;font-weight:400;text-decoration:none;transition:background-color .15s,color .15s;display:flex;position:relative}[data-theme=dark] .Sidebar-module__l_5xnW__navLink{color:var(--text-secondary)}.Sidebar-module__l_5xnW__navLink:hover{background-color:var(--bg-hover);color:var(--color-navy)}.Sidebar-module__l_5xnW__navLinkActive{background-color:var(--bg-muted);color:var(--color-navy);font-weight:600}.Sidebar-module__l_5xnW__navLinkActive:hover{background-color:var(--bg-muted);color:var(--color-navy)}.Sidebar-module__l_5xnW__navLinkActive:before{display:none}.Sidebar-module__l_5xnW__navIcon{opacity:1;flex-shrink:0;width:16px;height:16px}.Sidebar-module__l_5xnW__navBadge{background-color:var(--color-accent-light);min-width:18px;height:18px;color:var(--color-accent);border-radius:999px;justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-size:10.5px;font-weight:700;display:flex}.Sidebar-module__l_5xnW__sidebarFooter{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);align-items:center;gap:var(--space-3);display:flex}.Sidebar-module__l_5xnW__avatar{border-radius:var(--radius-full);background-color:var(--bg-muted);border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-secondary);font-size:var(--text-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.Sidebar-module__l_5xnW__userInfo{flex-direction:column;min-width:0;display:flex}.Sidebar-module__l_5xnW__userName{font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.Sidebar-module__l_5xnW__userRole{font-size:var(--text-xs);color:var(--text-muted)}@media (min-width:769px){.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__logoSub,.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__sectionHeader,.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__navLink>span,.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__userInfo{display:none}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__logoRow{padding:var(--space-3) 0;justify-content:center}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__logo{display:none}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__nav{padding:var(--space-2) var(--space-1)}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__navLink{justify-content:center;padding:8px 0}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__navIcon{width:18px;height:18px}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__sidebarFooter{padding:var(--space-3) 0;justify-content:center}.Sidebar-module__l_5xnW__sidebarCollapsed .Sidebar-module__l_5xnW__navBadge{width:8px;min-width:8px;height:8px;padding:0;font-size:0;line-height:0;position:absolute;top:3px;right:14px}}@media (max-width:1024px){.Sidebar-module__l_5xnW__sidebar{top:var(--topbar-height,56px);z-index:40;width:min(280px,85vw);height:auto;box-shadow:var(--shadow-xl);transition:transform .3s cubic-bezier(.4,0,.2,1);bottom:0;transform:translate(-100%)}.Sidebar-module__l_5xnW__sidebarOpen{transform:translate(0)}.Sidebar-module__l_5xnW__collapseTop{display:none}}@media (max-width:1024px) and (prefers-reduced-motion:reduce){.Sidebar-module__l_5xnW__sidebar{transition:none}}
.Topbar-module__SGLcWW__topbar{top:0;left:var(--sidebar-width);height:var(--topbar-height);background-color:var(--bg-topbar);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);padding:0 calc(var(--space-6) + env(safe-area-inset-right,0px)) 0 calc(var(--space-6) + env(safe-area-inset-left,0px));z-index:20;justify-content:space-between;align-items:center;display:flex;position:fixed;right:0}.Topbar-module__SGLcWW__breadcrumbs{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.Topbar-module__SGLcWW__breadcrumbLink{color:var(--text-muted);text-decoration:none;transition:color .15s}.Topbar-module__SGLcWW__breadcrumbLink:hover{color:var(--text-primary)}.Topbar-module__SGLcWW__breadcrumbSep{color:var(--text-muted);font-size:var(--text-sm);opacity:.5}.Topbar-module__SGLcWW__breadcrumbCurrent{color:var(--text-primary);font-weight:500}.Topbar-module__SGLcWW__actions{align-items:center;gap:var(--space-2);display:flex}.Topbar-module__SGLcWW__searchBtn{align-items:center;gap:var(--space-2);padding:5px var(--space-3);background-color:var(--bg-muted);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;min-width:200px;transition:all .15s;display:flex}.Topbar-module__SGLcWW__searchBtn:hover{border-color:var(--border-hover);background-color:var(--bg-hover)}.Topbar-module__SGLcWW__searchIcon{flex-shrink:0;width:14px;height:14px}.Topbar-module__SGLcWW__searchHint{font-size:var(--text-xs);background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--text-muted);margin-left:auto;padding:1px 5px;line-height:1.4}.Topbar-module__SGLcWW__notifBtn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.Topbar-module__SGLcWW__notifBtn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.Topbar-module__SGLcWW__notifBadge{background-color:var(--status-danger);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:600;display:flex;position:absolute;top:3px;right:3px}.Topbar-module__SGLcWW__avatarBtn{border-radius:var(--radius-full);cursor:pointer;width:28px;height:28px;box-shadow:0 0 0 1px var(--border-color);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:box-shadow .15s;display:flex}.Topbar-module__SGLcWW__avatarBtn:hover{box-shadow:0 0 0 1px var(--border-hover)}.Topbar-module__SGLcWW__menuBtn{width:36px;height:36px;margin-right:var(--space-2);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s;display:none}.Topbar-module__SGLcWW__menuBtn:hover{background:var(--bg-hover);border-color:var(--border-color)}@media (max-width:1024px){.Topbar-module__SGLcWW__menuBtn{display:inline-flex}.Topbar-module__SGLcWW__topbar{left:0}}@media (max-width:768px){.Topbar-module__SGLcWW__breadcrumbs{display:none}.Topbar-module__SGLcWW__searchBtn{min-width:auto}}@media (max-width:640px){.Topbar-module__SGLcWW__searchText,.Topbar-module__SGLcWW__searchHint{display:none}.Topbar-module__SGLcWW__searchBtn{min-width:0;padding:6px}}@media (max-width:480px){:root{--topbar-height:48px}.Topbar-module__SGLcWW__topbar{padding:0 var(--space-2)}.Topbar-module__SGLcWW__actions{gap:var(--space-1)}.Topbar-module__SGLcWW__menuBtn{margin-right:var(--space-1)}}
.AppShell-module__jgA4kG__shell{min-height:100vh;display:flex}.AppShell-module__jgA4kG__main{margin-left:var(--sidebar-width);margin-top:var(--topbar-height);padding:var(--space-6) calc(var(--space-6) + env(safe-area-inset-right,0px)) calc(var(--space-6) + env(safe-area-inset-bottom,0px)) calc(var(--space-6) + env(safe-area-inset-left,0px));flex:1;min-width:0}.AppShell-module__jgA4kG__backdrop{display:none}@media (max-width:1024px){.AppShell-module__jgA4kG__main{margin-left:0}.AppShell-module__jgA4kG__backdrop{top:var(--topbar-height);z-index:35;opacity:0;pointer-events:none;background:#0f172a73;transition:opacity .25s;position:fixed;bottom:0;left:0;right:0}.AppShell-module__jgA4kG__backdropOpen{opacity:1;pointer-events:auto}}@media (max-width:768px){.AppShell-module__jgA4kG__main{padding:var(--space-4) calc(var(--space-4) + env(safe-area-inset-right,0px)) calc(var(--space-4) + env(safe-area-inset-bottom,0px)) calc(var(--space-4) + env(safe-area-inset-left,0px))}}
:root{--bp-wide:1200px;--bp-desktop:1024px;--bp-tablet:768px;--bp-mobile:640px;--bp-small:480px;--bp-tiny:390px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", monospace;--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.375rem;--text-3xl:1.75rem;--bg-app:#f8fafc;--bg-card:#fff;--bg-sidebar:#fff;--bg-topbar:#ffffffd9;--bg-hover:#f8fafc;--bg-muted:#f1f5f9;--bg-active:#e2e8f0;--bg-page:#f8fafc;--text-primary:#0f1f2e;--text-secondary:#64748b;--text-muted:#94a3b8;--text-inverse:#f8fafc;--border-color:#e2e8f0;--border-hover:#cbd5e1;--border-subtle:#f1f5f9;--color-navy:#0f1f2e;--color-navy-hover:#1d3144;--color-navy-contrast:#fff;--color-accent:#2b556b;--color-accent-hover:#234a5f;--color-accent-light:#2b556b14;--bu-sea:#5572e5;--bu-seo:#4faaa0;--bu-sma:#1f1f8a;--bu-data:#ea9580;--bu-crea:#c49acb;--bu-prog:#6366f1;--status-success:#10b981;--status-success-bg:#10b98114;--status-warning:#f59e0b;--status-warning-bg:#f59e0b14;--status-danger:#dc2626;--status-danger-bg:#dc262614;--status-info:#0ea5e9;--status-info-bg:#0ea5e914;--shadow-sm:0 1px 2px 0 #00000008;--shadow-md:0 1px 3px 0 #0000000a, 0 1px 2px -1px #0000000a;--shadow-lg:0 4px 6px -1px #0000000d, 0 2px 4px -2px #00000008;--shadow-xl:0 8px 16px -4px #00000014, 0 4px 6px -2px #00000008;--sidebar-width:256px;--topbar-height:56px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--fs-title:clamp(1.375rem, 1.05rem + 1.4vw, 1.75rem);--fs-h1:clamp(1.25rem, 1rem + 1.1vw, 1.5rem);--fs-h2:clamp(1rem, .9rem + .5vw, 1.125rem);--fs-kpi:clamp(1.5rem, 1rem + 2.4vw, 2rem);--fs-label:clamp(.6875rem, .66rem + .12vw, .75rem);--pad-canvas:24px;--gap-canvas:24px;--gap-grid:16px;--transition-fast:.15s ease;--transition-base:.25s ease;--d-bg:var(--bg-app);--d-card:var(--bg-card);--d-card-soft:var(--bg-muted);--d-text:var(--color-navy);--d-text-mute:var(--text-secondary);--d-border:var(--border-color);--d-blue:var(--color-accent);--d-blue-hover:var(--color-accent-hover);--d-blue-soft:var(--color-accent-light);--d-text-soft:var(--text-muted);--d-divider:var(--border-subtle);--d-radius-lg:12px;--d-radius-md:10px;--d-radius-sm:8px;--d-shadow:var(--shadow-md);--d-shadow-soft:var(--shadow-sm)}[data-theme=dark]{--bg-app:#0b141d;--bg-card:#101e2b;--bg-sidebar:#0d1824;--bg-topbar:#0d1824d9;--bg-hover:#16283a;--bg-muted:#14222f;--bg-active:#1b3041;--bg-page:#0b141d;--text-primary:#e8eef4;--text-secondary:#8ba0b3;--text-muted:#5f7488;--text-inverse:#0f1f2e;--border-color:#94a3b824;--border-hover:#94a3b83d;--border-subtle:#94a3b812;--color-navy:#e8eef4;--color-navy-hover:#d3dee8;--color-navy-contrast:#0f1f2e;--color-accent:#5d92ae;--color-accent-hover:#74a5bf;--color-accent-light:#5d92ae24;--shadow-sm:0 1px 2px #0006;--shadow-md:0 2px 4px #0000004d;--shadow-lg:0 4px 8px #0000004d;--shadow-xl:0 8px 16px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;height:100%}body{min-height:100%;font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-primary);letter-spacing:-.01em;font-weight:600;line-height:1.3}h1{font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:700}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}p{color:var(--text-secondary);line-height:1.6}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img{max-width:100%;display:block}button{cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit;border:none;outline:none}table{border-collapse:collapse;width:100%}code,pre{font-family:var(--font-mono)}.btn{font-size:var(--text-sm);border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-weight:500;line-height:1.5;transition:all .15s;display:inline-flex}.btn:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-primary{background:var(--color-navy);color:var(--color-navy-contrast);border-color:var(--color-navy)}.btn-primary:hover{background:var(--color-navy-hover);border-color:var(--color-navy-hover)}.btn-secondary{background:var(--bg-muted);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-danger{background:var(--status-danger);color:#fff;border-color:var(--status-danger)}.btn-danger:hover{background:#dc2626;border-color:#dc2626}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-sm{font-size:var(--text-xs);padding:3px 8px}.badge{align-items:center;gap:var(--space-1);font-size:var(--text-xs);border-radius:8px;padding:2px 8px;font-weight:500;line-height:1.5;display:inline-flex}.badge-success{background-color:var(--status-success-bg);color:var(--status-success)}.badge-warning{background-color:var(--status-warning-bg);color:#b45309}[data-theme=dark] .badge-warning{color:var(--status-warning)}.badge-danger{background-color:var(--status-danger-bg);color:var(--status-danger)}.badge-info{background-color:var(--status-info-bg);color:var(--status-info)}.badge-neutral{background-color:var(--bg-muted);color:var(--text-secondary)}.pill-bu{padding:2px var(--space-2);font-size:var(--text-xs);letter-spacing:.03em;color:var(--text-inverse);border-radius:8px;align-items:center;font-weight:600;display:inline-flex}.pill-sea{background-color:var(--bu-sea)}.pill-seo{background-color:var(--bu-seo)}.pill-sma{background-color:var(--bu-sma)}.pill-data{background-color:var(--bu-data)}.pill-crea{background-color:var(--bu-crea)}.pill-prog{background-color:var(--bu-prog)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);transition:border-color .15s}.card:hover{border-color:var(--border-hover)}.input{width:100%;padding:6px var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-card);color:var(--text-primary);font-size:var(--text-sm);transition:border-color .15s}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-light)}.input::placeholder{color:var(--text-muted)}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a93a6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:34px}[data-theme=dark] select.input{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%239aa3b2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}@media (max-width:640px){.input,select.input,textarea.input,.form-textarea{font-size:16px}.input,select.input{min-height:44px}}.table-container{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th{text-align:left;font-weight:500;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);white-space:nowrap}.table td{padding:var(--space-3);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle}.table tbody tr{transition:background .1s}.table tbody tr:hover{background:var(--bg-hover)}.divider{background-color:var(--border-color);height:1px;margin:var(--space-4) 0}.overlay{-webkit-backdrop-filter:blur(2px);z-index:50;background-color:#0f172a73;justify-content:center;align-items:center;padding:16px;animation:.15s overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background-color:var(--border-hover)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mono{font-family:var(--font-mono);font-size:var(--text-xs)}.trend-up{color:var(--status-success)}.trend-down{color:var(--status-danger)}.trend-flat{color:var(--text-muted)}.progress-bar{background-color:var(--bg-muted);border-radius:var(--radius-full);width:100%;height:6px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.toast-container{bottom:var(--space-6);right:var(--space-6);z-index:100;gap:var(--space-3);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);pointer-events:auto;min-width:320px;max-width:420px;animation:.3s forwards toast-slide-in;display:flex}.toast-exit{animation:.3s forwards toast-slide-out}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-success{border-left:3px solid var(--status-success)}.toast-success .toast-icon{color:var(--status-success)}.toast-error{border-left:3px solid var(--status-danger)}.toast-error .toast-icon{color:var(--status-danger)}.toast-warning{border-left:3px solid var(--status-warning)}.toast-warning .toast-icon{color:var(--status-warning)}.toast-info{border-left:3px solid var(--status-info)}.toast-info .toast-icon{color:var(--status-info)}.toast-icon{flex-shrink:0;display:flex}.toast-message{font-size:var(--text-sm);color:var(--text-primary);flex:1;font-weight:500}.toast-close{color:var(--text-muted);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;padding:2px;transition:color .15s,background-color .15s;display:flex}.toast-close:hover{color:var(--text-primary);background-color:var(--bg-hover)}.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-color);display:flex}.page-header-text{flex:1;min-width:0}.page-header-title{font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-1);letter-spacing:-.02em;font-weight:600}.page-header-desc{font-size:var(--text-sm);color:var(--text-secondary)}.page-header-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.empty-state{padding:var(--space-16) var(--space-8);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{color:var(--text-muted);margin-bottom:var(--space-4);opacity:.4}.empty-state-title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-2);font-weight:600}.empty-state-desc{font-size:var(--text-sm);color:var(--text-muted);max-width:360px;margin-bottom:var(--space-6)}.empty-state-action{margin-top:var(--space-2)}.filter-bar{align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.filter-bar-item{gap:var(--space-1);flex-direction:column;display:flex}.filter-bar-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.filter-bar-select{width:auto;min-width:160px;padding-right:var(--space-8);cursor:pointer}.filter-bar-clear{margin-left:auto}.form-modal{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;flex-direction:column;width:100%;max-width:480px;max-height:85vh;animation:.15s modal-pop;display:flex;overflow:hidden;box-shadow:0 24px 48px -12px #0f172a40,0 4px 12px -4px #0f172a14}.form-modal-lg{max-width:640px}.form-modal>form{flex-direction:column;flex:1;min-height:0;display:flex}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.overlay{padding:0}.form-modal,.form-modal-lg{width:100%;max-width:100%;max-height:100vh;max-height:calc(100vh - env(safe-area-inset-top,0px));border-radius:16px 16px 0 0;margin-top:auto;animation:.22s cubic-bezier(.32,.72,0,1) sheet-up}.form-modal-footer{padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.form-modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex}.form-modal-title{font-size:var(--text-lg);color:var(--text-primary);font-weight:600}.form-modal-body{padding:var(--space-6);gap:var(--space-4);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.form-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-color);flex-shrink:0;display:flex}.form-modal-hint{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.55}.form-field{gap:var(--space-1);flex-direction:column;display:flex}.form-field-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.form-field-required{color:var(--status-danger);margin-left:2px}.form-textarea{resize:vertical;min-height:80px}.input-error{border-color:var(--status-danger)!important}.form-field-error{font-size:var(--text-xs);color:var(--status-danger)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:1s linear infinite spin}.skeleton{background:linear-gradient(90deg, var(--bg-muted) 25%, var(--bg-hover) 50%, var(--bg-muted) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.command-palette-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background-color:#00000080;justify-content:center;padding-top:15vh;animation:.15s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.command-palette{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:420px;box-shadow:var(--shadow-xl);flex-direction:column;animation:.2s modal-pop;display:flex;overflow:hidden}.command-palette-search{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);display:flex}.command-palette-search-icon{color:var(--text-muted);flex-shrink:0}.command-palette-input{font-size:var(--text-base);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.command-palette-input::placeholder{color:var(--text-muted)}.command-palette-close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.command-palette-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.command-palette-results{padding:var(--space-2) 0;flex:1;overflow-y:auto}.command-palette-group{padding:var(--space-1) 0}.command-palette-group-header{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:500;display:flex}.command-palette-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-5);text-align:left;cursor:pointer;transition:background-color .1s;display:flex}.command-palette-item:hover{background-color:var(--bg-hover)}.command-palette-item-label{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.command-palette-item-desc{font-size:var(--text-xs);color:var(--text-muted);margin-left:auto}.command-palette-loading,.command-palette-empty,.command-palette-hint{padding:var(--space-8) var(--space-5);text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.login-page{background-color:var(--bg-app);min-height:100vh;padding:var(--space-4);justify-content:center;align-items:center;display:flex}.login-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:var(--space-8);animation:.3s modal-pop}.login-logo{text-align:center;margin-bottom:var(--space-8)}.login-logo-icon{border-radius:var(--radius-lg);background:var(--color-accent);color:#fff;width:48px;height:48px;font-weight:700;font-size:var(--text-lg);margin-bottom:var(--space-3);justify-content:center;align-items:center;display:inline-flex}.login-logo-text{font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-1);letter-spacing:-.02em;font-weight:600}.login-logo-desc{font-size:var(--text-sm);color:var(--text-muted)}.login-form{gap:var(--space-4);flex-direction:column;display:flex}.login-error{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--status-danger-bg);color:var(--status-danger);font-size:var(--text-sm);font-weight:500}.login-submit{width:100%;padding:var(--space-3) var(--space-4);margin-top:var(--space-2)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}.skip-to-content{background:var(--color-accent);color:#fff;z-index:1000;border-radius:0 0 var(--radius-md) 0;font-size:var(--text-sm);padding:8px 16px;font-weight:500;text-decoration:none;transition:top .2s;position:absolute;top:-40px;left:0}.skip-to-content:focus{top:0}.theme-toggle{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.theme-toggle:hover{background-color:var(--bg-hover);color:var(--text-primary)}.theme-toggle svg{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.theme-toggle:active svg{transform:rotate(30deg)}@media (max-width:1024px){:root{--sidebar-width:0px}}.form-modal{position:relative}.form-modal-discard{z-index:5;background:color-mix(in srgb, var(--bg-card) 72%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:inherit;justify-content:center;align-items:center;padding:20px;animation:.12s fade-in;display:flex;position:absolute;inset:0}.form-modal-discard-card{background:var(--bg-card);border:1px solid var(--border-color);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:10px;width:min(360px,100%);padding:18px 20px;display:flex;box-shadow:0 14px 40px #0f172a2e}.form-modal-discard-card>svg{color:#d97706}.form-modal-discard-text{flex-direction:column;gap:3px;display:flex}.form-modal-discard-text strong{font-size:var(--text-sm);color:var(--text-primary)}.form-modal-discard-text span{font-size:var(--text-xs);color:var(--text-muted)}.form-modal-discard-actions{gap:8px;margin-top:4px;display:flex}svg.lucide:not([stroke-width="2.2"]):not([stroke-width="2.4"]):not([stroke-width="2.6"]):not([stroke-width="3"]):not([stroke-width="3.2"]){stroke-width:1.5px}.table-scroll{-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;background:linear-gradient(to right, var(--bg-card) 30%, #fff0) left center, linear-gradient(to left, var(--bg-card) 30%, #fff0) right center, radial-gradient(farthest-side at 0 50%, #0f172a1a, #0f172a00) left center, radial-gradient(farthest-side at 100% 50%,#0f172a1a, #0f172a00) right center;background-repeat:no-repeat;background-size:28px 100%,28px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll;overflow-x:auto}@media (max-width:640px){.table-responsive,.table-responsive thead,.table-responsive tbody,.table-responsive tr,.table-responsive td{width:100%;display:block}.table-responsive thead{height:0;position:absolute;left:-9999px;overflow:hidden}.table-responsive tr{border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);background:var(--bg-card);padding:4px var(--space-3);margin-bottom:var(--space-2)}.table-responsive tr:hover{background:var(--bg-card)}.table-responsive td{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-bottom:1px solid var(--border-subtle);text-align:right;white-space:normal;padding:5px 0;display:flex}.table-responsive td:last-child{border-bottom:0}.table-responsive td:before{content:attr(data-label);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);text-align:left;margin-right:var(--space-3);flex:none;font-weight:500}.table-responsive td:not([data-label]){justify-content:flex-end}.table-responsive td:not([data-label]):before{content:"";margin:0}}.grid-collapse{grid-template-columns:repeat(auto-fit, minmax(var(--grid-min,240px), 1fr));gap:var(--gap-grid);display:grid}@media (max-width:768px){.grid-collapse{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.grid-collapse{grid-template-columns:1fr}}@media (max-width:480px){.touch-target,.touch-target>button,.touch-target>a,.touch-target>.btn{min-width:44px;min-height:44px}.touch-target{gap:var(--space-2)}input.touch-target[type=checkbox],input.touch-target[type=radio]{width:20px;height:20px;margin:12px}}@media (max-width:640px){.toolbar-mobile{align-items:stretch;gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.toolbar-mobile>*{width:100%;min-width:0}.toolbar-mobile>select,.toolbar-mobile select.input,.toolbar-mobile>.toolbar-mobile-select,.toolbar-mobile .filterMenu,.toolbar-mobile .filterMenu>button{width:100%}.toolbar-mobile .toolbar-mobile-search,.toolbar-mobile>input[type=search],.toolbar-mobile>input[type=text]{grid-column:1/-1;width:100%}}.popover-safe{max-width:calc(100vw - 16px)}@media (max-width:480px){.popover-safe{max-width:calc(100vw - 16px);left:auto;right:8px}}.drawer-mobile{top:var(--topbar-height);width:min(var(--drawer-w,420px), 100vw);background:var(--bg-card);border-left:1px solid var(--border-color);box-shadow:var(--shadow-xl);z-index:40;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;position:fixed;bottom:0;right:0;overflow-y:auto}@media (max-width:480px){.drawer-mobile{width:100vw}}@media (max-width:640px){:root{--pad-canvas:16px;--gap-canvas:16px;--gap-grid:12px}}@media (max-width:480px){:root{--pad-canvas:14px;--gap-grid:10px}}@media (max-width:390px){:root{--pad-canvas:12px;--gap-canvas:12px}}
:root{--md-sys-color-primary:#00639b;--md-sys-color-on-primary:#fff;--md-sys-color-primary-container:#cfe5ff;--md-sys-color-on-primary-container:#001d33;--md-sys-color-secondary:#52606f;--md-sys-color-on-secondary:#fff;--md-sys-color-secondary-container:#d7e7fb;--md-sys-color-on-secondary-container:#0e1d2a;--md-sys-color-tertiary:#006a65;--md-sys-color-on-tertiary:#fff;--md-sys-color-tertiary-container:#9ff2ea;--md-sys-color-on-tertiary-container:#00201e;--md-sys-color-surface:#f9fcff;--md-sys-color-surface-dim:#d8dce0;--md-sys-color-surface-bright:#f9fcff;--md-sys-color-surface-container-lowest:#fff;--md-sys-color-surface-container-low:#f3f6fa;--md-sys-color-surface-container:#eef1f5;--md-sys-color-surface-container-high:#e8ebef;--md-sys-color-surface-container-highest:#e2e6ea;--md-sys-color-on-surface:#191c1f;--md-sys-color-on-surface-variant:#414850;--md-sys-color-outline:#71787f;--md-sys-color-outline-variant:#c7ccd3;--md-sys-color-inverse-surface:#2e3134;--md-sys-color-inverse-on-surface:#f3f6fa;--md-sys-color-inverse-primary:#9cf;--md-sys-color-error:#ba1a1a;--md-sys-color-on-error:#fff;--md-sys-color-error-container:#ffdad6;--md-sys-color-on-error-container:#410002;--md-sys-color-success:#146c43;--md-sys-color-success-container:#c4f0d3;--md-sys-color-warning:#8a5a00;--md-sys-color-warning-container:#ffe1ad;--md-font-brand:var(--font-plex), "IBM Plex Sans", system-ui, sans-serif;--md-font-mono:var(--font-plex-mono), "IBM Plex Mono", ui-monospace, monospace;--md-display-large:400 2.75rem/3rem var(--md-font-brand);--md-display-small:400 1.875rem/2.25rem var(--md-font-brand);--md-headline-small:500 1.25rem/1.625rem var(--md-font-brand);--md-title-large:500 1.125rem/1.5rem var(--md-font-brand);--md-title-medium:600 .9375rem/1.25rem var(--md-font-brand);--md-title-small:600 .8125rem/1.125rem var(--md-font-brand);--md-body-medium:400 .84375rem/1.1875rem var(--md-font-brand);--md-body-small:400 .75rem/1rem var(--md-font-brand);--md-label-large:600 .8125rem/1.125rem var(--md-font-brand);--md-label-medium:600 .75rem/1rem var(--md-font-brand);--md-label-small:600 .6875rem/.875rem var(--md-font-brand);--md-shape-xs:4px;--md-shape-s:8px;--md-shape-m:12px;--md-shape-l:16px;--md-shape-xl:28px;--md-shape-full:9999px;--md-elev-1:0 1px 2px 0 #101c2c0f, 0 1px 3px 1px #101c2c0d;--md-elev-2:0 1px 2px 0 #101c2c14, 0 2px 6px 2px #101c2c0f;--md-elev-3:0 4px 8px 3px #101c2c12, 0 1px 3px 0 #101c2c1a;--md-state-hover:.08;--md-state-focus:.1;--md-state-pressed:.1;--md-ease-standard:cubic-bezier(.2, 0, 0, 1);--md-ease-emph-decel:cubic-bezier(.05, .7, .1, 1);--md-ease-emph-accel:cubic-bezier(.3, 0, .8, .15);--md-dur-short:.15s;--md-dur-med:.3s;--md-dur-long:.4s}.msr{letter-spacing:normal;text-transform:none;white-space:nowrap;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;-webkit-user-select:none;user-select:none;transition:font-variation-settings var(--md-dur-short) var(--md-ease-standard);direction:ltr;font-family:Material Symbols Rounded;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-flex}.msr[data-filled=true]{font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 24}.msr.s24{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-size:24px}.msr.s24[data-filled=true]{font-variation-settings:"FILL" 1, "wght" 500, "GRAD" 0, "opsz" 24}.msr.s40{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 40;font-size:40px}.msr.s18{font-size:18px}@media (prefers-reduced-motion:reduce){.msr{transition:none}}
