@font-face{font-family:Inter;font-style:normal;font-weight:400;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:400;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:400;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:400;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:400;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:400;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:400;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;font-style:normal;font-weight:500;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:500;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:500;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:500;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:500;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:500;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:500;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;font-style:normal;font-weight:600;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:600;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:600;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:600;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:600;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:600;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:600;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;font-style:normal;font-weight:700;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:700;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:700;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:700;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:700;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:700;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:700;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_e57f1ae6-module__mXbkkq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_e57f1ae6-module__mXbkkq__variable{--font-sans:"Inter", "Inter Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.0vlx5hthn2t7i.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0fu677rwbv-.g.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0zzh68k1~whtc.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_db4fcfb4-module__uGMlKa__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_db4fcfb4-module__uGMlKa__variable{--font-display:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.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:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.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:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.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:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.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:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.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:400;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.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;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.0h-nw9_c8d~-_.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:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.10hk62x1-0d9n.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:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0bmyfaahigzds.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:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.0-0ft90hthv3~.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:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.16fk0g~ypa53a.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:500;font-display:swap;src:url(../media/051742360c26797e-s.p.0f97p8c3305p~.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_65475aa-module__RPHOIW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_65475aa-module__RPHOIW__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@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-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:ui-sans-serif, system-ui, 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;--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,ui-sans-serif, system-ui, 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{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{.fixed{position:fixed}.static{position:static}.inline{display:inline}.table{display:table}.filter{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{--brand-primary:#184de3;--brand-primary-600:#1340c4;--brand-primary-weak:#eaf0fe;--brand-navy:#0b1e5c;--brand-accent:#ff5722;--brand-accent-weak:#ffede6;--brand-success:#108981;--brand-danger:#ef4444;--brand-warning:#ffb020;--brand-info:#184de3;--brand-ink:#0f172a;--brand-ink-2:#1f2a4a;--brand-muted:#5b6478;--brand-muted-2:#8a92a5;--brand-hair:#e2e8f0;--brand-hair-2:#edf1f6;--brand-bg:#f5f7fa;--radius-chip:5px;--radius-btn:8px;--radius-card:10px}[data-theme=light]{--accent-color:var(--brand-primary)}*,:before,:after{box-sizing:border-box}html,body,#__next{height:100%;margin:0}body{font-family:var(--font-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;font-feature-settings:"ss01", "cv11";color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;letter-spacing:-.005em}:root{--radius-card:18px;--radius-btn:10px;--radius-pill:999px;--transition:.24s cubic-bezier(.4,0,.2,1);--transition-slow:.48s cubic-bezier(.4,0,.2,1);--slat-c1:#b18560;--slat-c2:#8a5d3a}[data-theme=light]{--bg:#f3f5f7;--bg-elev:#f9fafb;--surface:#fff;--surface-sunk:#eceff2;--fg:#1a2332;--fg-muted:#5b6573;--fg-faint:#9aa3ad;--line:#e3e7eb;--line-strong:#cdd3da;--accent:var(--accent-color,#2a7cff);--accent-fg:#fff;--accent-soft:var(--accent)}@supports (color:color-mix(in lab, red, red)){[data-theme=light]{--accent-soft:color-mix(in oklab, var(--accent) 12%, var(--surface))}}[data-theme=light]{--shadow-card:0 1px 0 #ffffffe6 inset, 0 1px 2px #141e320a, 0 8px 24px -16px #141e3229;--shadow-hover:0 1px 0 #ffffffe6 inset, 0 4px 12px #141e320f, 0 24px 48px -20px #141e3233;--window-frame:#cdd3d8;--sky:linear-gradient(180deg, #d8e3eb 0%, #e8eef2 55%, #f4f6f8 100%);--slat-c1:#9aa1aa;--slat-c2:#4a5260;--sidebar-bg:#1a2332;--sidebar-fg:#e8ecf0;--sidebar-muted:#8b96a4;--sidebar-faint:#5b6573;--sidebar-line:#ffffff0f;--sidebar-hover:#ffffff0f;--sidebar-active-bg:#ffffff1a;--sidebar-active-fg:#fff}[data-theme=dark]{--bg:#0e1318;--bg-elev:#161c22;--surface:#1c242c;--surface-sunk:#0a0f13;--fg:#e8ecf0;--fg-muted:#9aa3ad;--fg-faint:#5b6573;--line:#262e37;--line-strong:#3a434e;--accent:var(--accent-color,#6fb1ff);--accent-fg:#07140d;--accent-soft:var(--accent)}@supports (color:color-mix(in lab, red, red)){[data-theme=dark]{--accent-soft:color-mix(in oklab, var(--accent) 20%, var(--surface))}}[data-theme=dark]{--shadow-card:0 .5px 0 #ffffff0a inset, 0 12px 32px -16px #0009;--shadow-hover:0 .5px 0 #ffffff0f inset, 0 20px 48px -20px #000c, 0 0 0 .5px var(--line-strong);--window-frame:#2a323c;--sky:linear-gradient(180deg, #1a2330 0%, #232e3a 55%, #2a3540 100%);--slat-c1:#58626e;--slat-c2:#1f262e;--sidebar-bg:#08090b;--sidebar-fg:#e8ecf0;--sidebar-muted:#8b96a4;--sidebar-faint:#5b6573;--sidebar-line:#ffffff0d;--sidebar-hover:#ffffff0d;--sidebar-active-bg:#ffffff14;--sidebar-active-fg:#fff}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}.app{background:var(--bg);grid-template-columns:232px 1fr;height:100vh;display:grid}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-fg);border-right:1px solid var(--sidebar-line);flex-direction:column;gap:4px;min-width:0;padding:22px 14px;display:flex}.brand{align-items:center;gap:10px;padding:4px 10px 22px;display:flex}.brand-mark{background:var(--accent);width:28px;height:24px;color:var(--accent-fg);letter-spacing:-.02em;border-radius:8px;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.brand-name{letter-spacing:-.01em;color:var(--sidebar-fg);font-size:14px;font-weight:600}.brand-sub{color:var(--sidebar-faint);letter-spacing:0;margin-top:1px;font-size:11px;font-weight:400;display:block}.nav-section{letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-faint);padding:18px 10px 8px;font-size:10px;font-weight:600}.nav-item{color:var(--sidebar-muted);cursor:pointer;transition:background var(--transition), color var(--transition);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-fg)}.nav-item[aria-current=page]{background:var(--sidebar-active-bg);color:var(--sidebar-active-fg);font-weight:500}.nav-icon{color:currentColor;flex:0 0 16px;place-items:center;width:16px;height:16px;display:grid}.sidebar-foot{color:var(--sidebar-muted);border-top:1px solid var(--sidebar-line);align-items:center;gap:10px;margin-top:auto;padding:12px 10px;font-size:12px;display:flex}.avatar{background:var(--accent);width:26px;height:26px;color:var(--accent-fg);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:grid}.main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--line);background:var(--bg);justify-content:space-between;align-items:center;gap:16px;padding:18px 32px 14px;display:flex}.title-block{flex-wrap:wrap;align-items:baseline;gap:14px;min-width:0;display:flex}.title{font-family:var(--font-display), serif;letter-spacing:-.022em;color:var(--fg);align-items:center;gap:10px;margin:0;font-size:26px;font-weight:500;display:inline-flex}.title-meta{color:var(--fg-muted);letter-spacing:0;font-size:12.5px}.title-meta b{color:var(--fg);font-weight:600}.dot{vertical-align:middle;background:#2ea66b;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #2ea66b2e;box-shadow:0 0 0 4px lab(60.6366% -44.6731 20.7823/.18)}.dot[data-state=offline]{background:var(--fg-faint);box-shadow:0 0 0 4px var(--fg-faint)}@supports (color:color-mix(in lab, red, red)){.dot[data-state=offline]{box-shadow:0 0 0 4px color-mix(in oklab, var(--fg-faint) 18%, transparent)}}.topbar-actions{align-items:center;gap:8px;display:flex}.btn{border-radius:var(--radius-btn);border:1px solid var(--line-strong);background:var(--surface);height:34px;color:var(--fg);letter-spacing:-.005em;cursor:pointer;transition:background var(--transition), border-color var(--transition), transform var(--transition);-webkit-user-select:none;user-select:none;align-items:center;gap:7px;padding:0 13px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.btn:hover:not(:disabled){background:color-mix(in oklab, var(--fg) 4%, var(--surface))}}.btn:active:not(:disabled){transform:translateY(.5px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.btn-primary{border-color:color-mix(in oklab, var(--accent) 65%, black)}}.btn-primary:hover:not(:disabled){background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.btn-primary:hover:not(:disabled){background:color-mix(in oklab, var(--accent) 88%, black)}}.btn-ghost{color:var(--fg-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.btn-ghost:hover:not(:disabled){background:color-mix(in oklab, var(--fg) 6%, transparent)}}.btn-ghost:hover:not(:disabled){color:var(--fg)}.btn-icon{place-items:center;width:34px;height:34px;padding:0;display:inline-grid}.scenes{border-bottom:1px solid var(--line);scrollbar-width:none;gap:10px;padding:18px 32px 20px;display:flex;overflow-x:auto}.scenes::-webkit-scrollbar{display:none}.scene{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);cursor:pointer;transition:transform var(--transition), border-color var(--transition), background var(--transition);-webkit-user-select:none;user-select:none;color:var(--fg);border-radius:14px;flex:none;align-items:center;gap:11px;padding:11px 16px 11px 12px;font-family:inherit;display:flex}.scene:hover:not(:disabled){border-color:var(--line-strong);background:var(--bg-elev);transform:translateY(-1px)}.scene[data-active=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow-card)}.scene:disabled{cursor:not-allowed;opacity:.6}.scene-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.scene-text{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.scene-name{letter-spacing:-.01em;color:var(--fg);font-size:13.5px;font-weight:600;line-height:1.1}.scene-desc{color:var(--fg-muted);letter-spacing:0;margin-top:2px;font-size:11px}.scene-new .scene-icon{border:1px dashed var(--line-strong);color:var(--fg-muted);background:0 0}.seg{background:var(--surface-sunk);border:1px solid var(--line);border-radius:10px;padding:3px;display:inline-flex}.seg-opt{appearance:none;color:var(--fg-muted);cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:-.005em;background:0 0;border:0;border-radius:7px;padding:5px 12px;font-family:inherit;font-size:12.5px;font-weight:500}.seg-opt[data-active=true]{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px #0000000f}.seg-opt:disabled{cursor:not-allowed;opacity:.5}.subtoolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 32px 12px;display:flex}.summary{color:var(--fg-muted);align-items:baseline;gap:8px;font-size:13px;display:flex}.summary b{color:var(--fg);font-size:13px;font-weight:600}.summary-sep{background:var(--fg-faint);border-radius:50%;width:3px;height:3px;display:inline-block}.banner{border:1px solid var(--line);border-radius:10px;margin:12px 32px 0;padding:10px 14px;font-size:13px}.banner-error{background:#e64a3a}@supports (color:color-mix(in lab, red, red)){.banner-error{background:color-mix(in oklab, #e64a3a 8%, var(--surface))}}.banner-error{border-color:#e64a3a}@supports (color:color-mix(in lab, red, red)){.banner-error{border-color:color-mix(in oklab, #e64a3a 30%, var(--line))}}.banner-error{color:#e64a3a}@supports (color:color-mix(in lab, red, red)){.banner-error{color:color-mix(in oklab, #e64a3a 70%, var(--fg))}}.banner-success{background:#2ea66b}@supports (color:color-mix(in lab, red, red)){.banner-success{background:color-mix(in oklab, #2ea66b 8%, var(--surface))}}.banner-success{border-color:#2ea66b}@supports (color:color-mix(in lab, red, red)){.banner-success{border-color:color-mix(in oklab, #2ea66b 30%, var(--line))}}.banner-success{color:#2ea66b}@supports (color:color-mix(in lab, red, red)){.banner-success{color:color-mix(in oklab, #2ea66b 70%, var(--fg))}}.scroll-area{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;padding:8px 32px 80px;overflow-y:auto}.scroll-area::-webkit-scrollbar{width:10px}.scroll-area::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:content-box;border:3px solid #0000;border-radius:5px}.group{margin-top:24px}.group:first-child{margin-top:8px}.group-head{align-items:baseline;gap:12px;padding:0 4px 14px;display:flex}.group-name{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-size:11px;font-weight:600}.group-count{color:var(--fg-faint);font-variant-numeric:tabular-nums;letter-spacing:0;font-size:11px}.group-rule{background:var(--line);flex:1;height:1px}.grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;display:grid}.scenes-row{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:4px 0 8px;display:grid}.scene-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);font:inherit;text-align:left;color:var(--fg);cursor:pointer;transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.scene-card:hover:not(:disabled){box-shadow:var(--shadow-hover);border-color:var(--line-strong);transform:translateY(-1px)}.scene-card:active:not(:disabled){transform:translateY(0)}.scene-card:disabled{opacity:.6;cursor:progress}.scene-icon{background:var(--accent);border-radius:10px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.scene-icon{background:color-mix(in oklab, var(--accent) 12%, var(--surface))}}.scene-icon{color:var(--accent)}.scene-text{flex-direction:column;gap:2px;min-width:0;display:flex}.scene-title{letter-spacing:-.01em;color:var(--fg);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.scene-sub{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);position:relative;overflow:hidden}.card:hover{box-shadow:var(--shadow-hover);border-color:var(--line-strong);transform:translateY(-2px)}.card-hd{justify-content:space-between;align-items:center;gap:10px;padding:16px 16px 0;display:flex}.card-name{letter-spacing:-.015em;align-items:center;gap:6px;min-width:0;font-size:16px;font-weight:600;line-height:1.2;display:flex}.card-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.card-actions{flex-shrink:0;gap:2px;display:flex}.icon-btn{width:28px;height:28px;color:var(--fg-faint);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.icon-btn:hover{background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.icon-btn:hover{background:color-mix(in oklab, var(--fg) 6%, transparent)}}.icon-btn:hover{color:var(--fg)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.card-body{grid-template-columns:1fr auto;align-items:center;gap:10px 14px;padding:14px 16px 16px;display:grid}.card-body .param-row{grid-column:1;min-width:0}.card-body .body-rocker{grid-area:1/2/span 2;align-self:center}.card-status{letter-spacing:-.005em;background:var(--fg);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.card-status{background:color-mix(in oklab, var(--fg) 4%, transparent)}}.card-status{color:var(--fg-muted);width:fit-content;margin:0 16px}.status-dot{background:var(--fg-faint);border-radius:50%;width:6px;height:6px}.card-status[data-state=open]{background:#2ea66b}@supports (color:color-mix(in lab, red, red)){.card-status[data-state=open]{background:color-mix(in oklab, #2ea66b 12%, var(--surface))}}.card-status[data-state=open]{color:#2ea66b}@supports (color:color-mix(in lab, red, red)){.card-status[data-state=open]{color:color-mix(in oklab, #2ea66b 70%, var(--fg))}}.card-status[data-state=open] .status-dot{background:#2ea66b}.card-status[data-state=closed]{background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.card-status[data-state=closed]{background:color-mix(in oklab, var(--fg) 6%, transparent)}}.card-status[data-state=closed]{color:var(--fg)}.card-status[data-state=closed] .status-dot{background:var(--fg-muted)}.card-status[data-state=pedestrian]{background:#f0a020}@supports (color:color-mix(in lab, red, red)){.card-status[data-state=pedestrian]{background:color-mix(in oklab, #f0a020 12%, var(--surface))}}.card-status[data-state=pedestrian]{color:#b8761a}@supports (color:color-mix(in lab, red, red)){.card-status[data-state=pedestrian]{color:color-mix(in oklab, #b8761a 80%, var(--fg))}}.card-status[data-state=pedestrian] .status-dot{background:#f0a020}.card-status[data-state=moving] .status-dot{background:var(--accent);animation:1.4s ease-in-out infinite pulse}.param-row{align-items:center;gap:10px;min-width:0;display:flex}.param-row .range{flex:1;min-width:60px}.param-val{font-variant-numeric:tabular-nums;color:var(--fg);letter-spacing:-.01em;text-align:right;min-width:38px;font-size:13px;font-weight:600}.rocker{border:1px solid var(--line);background:var(--bg-elev);border-radius:10px;align-self:flex-start;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 1px 2px #0000000a}.rocker-btn{appearance:none;color:var(--fg);cursor:pointer;width:32px;height:24px;font:inherit;transition:background var(--transition), color var(--transition);background:0 0;border:0;place-items:center;display:inline-grid;position:relative}.rocker-btn+.rocker-btn{border-left:1px solid var(--line)}.rocker-btn:hover:not(:disabled){background:var(--surface-sunk)}.rocker-btn:active:not(:disabled){background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.rocker-btn:active:not(:disabled){background:color-mix(in oklab, var(--fg) 6%, var(--surface-sunk))}}.rocker-btn:disabled{opacity:.4;cursor:not-allowed}.rocker-btn[data-tone=stop]{color:var(--fg-muted)}.rocker-btn[data-tone=stop]:hover:not(:disabled){color:var(--fg)}.rocker-btn svg{opacity:.9}.rocker.body-rocker{border-radius:12px;flex-direction:row;height:60px;display:flex}.rocker.body-rocker .rocker-btn{border-left:0;flex:0 0 50px;width:50px;height:100%}.rocker.body-rocker .rocker-btn[data-tone=stop]{flex:0 0 44px;width:44px}.rocker.body-rocker .rocker-btn+.rocker-btn{border-left:1px solid var(--line)}.rocker.body-rocker .rocker-btn svg{width:22px;height:22px}.range{appearance:none;background:var(--surface-sunk);cursor:pointer;border-radius:999px;outline:none;width:100%;height:6px;margin:0}.range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) 0 var(--fill,0%), var(--surface-sunk) var(--fill,0%) 100%);border-radius:999px;height:6px}.range::-moz-range-track{background:var(--surface-sunk);border-radius:999px;height:6px}.range::-moz-range-progress{background:var(--accent);border-radius:999px;height:6px}.range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--surface);border:1px solid var(--line-strong);width:18px;height:18px;transition:box-shadow var(--transition);cursor:pointer;border-radius:50%;margin-top:-6px;box-shadow:0 1px 3px #0000002e,0 0 0 3px #0000}.range::-moz-range-thumb{background:var(--surface);border:1px solid var(--line-strong);cursor:pointer;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 3px #0000002e}.range:hover::-webkit-slider-thumb{box-shadow:0 1px 3px #00000038, 0 0 0 5px var(--accent)}@supports (color:color-mix(in lab, red, red)){.range:hover::-webkit-slider-thumb{box-shadow:0 1px 3px #00000038, 0 0 0 5px color-mix(in oklab, var(--accent) 15%, transparent)}}.gly-closure{background:var(--surface-sunk);border:1px solid var(--line);border-radius:3px;flex:0 0 26px;width:26px;height:24px;position:relative;overflow:hidden}.gly-closure-sky{background:var(--sky);opacity:.45;position:absolute;inset:0}.gly-closure-fill{height:var(--closure,0%);background-color:var(--slat-c2);background-image:repeating-linear-gradient(180deg, #00000059 0px, #00000059 1px, transparent 1px, transparent 3px), linear-gradient(180deg, var(--slat-c1) 0%, var(--slat-c2) 100%);transition:height var(--transition-slow);position:absolute;top:0;left:0;right:0}.gly-slat{width:26px;height:24px;color:var(--fg-muted);flex:0 0 26px;display:block}.gly-slat .gly-slat-line{transform-origin:13px var(--cy);transform:rotate(var(--angle,0deg));transition:transform var(--transition)}.empty-state{text-align:center;color:var(--fg-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 24px;display:flex}.empty-state h3{color:var(--fg);font-size:18px;font-weight:600;font-family:var(--font-display), serif;letter-spacing:-.02em;margin:0}.empty-state p{max-width:380px;margin:0;font-size:13.5px}.spinning{animation:1s linear infinite spin}.page-shell{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;padding:24px 32px 80px;overflow-y:auto}.page-shell::-webkit-scrollbar{width:10px}.page-shell::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:content-box;border:3px solid #0000;border-radius:5px}.page-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:24px}.page-card+.page-card{margin-top:16px}.page-card h2{font-family:var(--font-display), serif;letter-spacing:-.02em;color:var(--fg);margin:0 0 4px;font-size:18px;font-weight:500}.page-card .lede{color:var(--fg-muted);margin:0 0 16px;font-size:13px}.kv-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.kv-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.kv-row:last-child{border-bottom:0}.kv-key{color:var(--fg-muted);letter-spacing:-.005em;font-size:12.5px;font-weight:500}.kv-val{font-family:var(--font-mono), ui-monospace, monospace;color:var(--fg);text-align:right;overflow-wrap:anywhere;font-size:12.5px}@media (max-width:560px){.kv-row{flex-direction:column;align-items:flex-start}.kv-val{text-align:left}}.settings-shell{flex:1;grid-template-columns:200px 1fr;gap:28px;padding:24px 32px 0;display:grid;overflow:hidden}.settings-nav{flex-direction:column;gap:2px;padding-top:4px;display:flex}.settings-nav .nav-section{color:var(--fg-faint);padding:0 10px 8px}.settings-nav a{color:var(--fg-muted);transition:background var(--transition), color var(--transition);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.settings-nav a:hover{background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.settings-nav a:hover{background:color-mix(in oklab, var(--fg) 4%, transparent)}}.settings-nav a:hover{color:var(--fg)}.settings-nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:500}.settings-content{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;padding:4px 4px 80px;overflow-y:auto}.settings-content::-webkit-scrollbar{width:10px}.settings-content::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:content-box;border:3px solid #0000;border-radius:5px}@media (max-width:720px){.settings-shell{grid-template-columns:1fr;gap:16px}}.login-shell{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);width:100%;max-width:400px;box-shadow:var(--shadow-hover);padding:28px}.login-card h1{font-family:var(--font-display), serif;letter-spacing:-.02em;margin:0 0 16px;font-size:24px;font-weight:500}.form-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-field label{color:var(--fg-muted);letter-spacing:-.005em;font-size:12.5px;font-weight:500}.form-field input[type=text],.form-field input[type=email],.form-field input[type=url],.form-field input[type=password]{border-radius:var(--radius-btn);border:1px solid var(--line-strong);background:var(--surface);height:36px;color:var(--fg);padding:0 12px;font-family:inherit;font-size:13.5px}.form-field input:focus{outline:2px solid var(--accent);outline-offset:1px}.field-help{color:var(--fg-faint);margin-top:2px;font-size:11.5px;line-height:1.4}.form-check{color:var(--fg);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.form-check input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent)}.form-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}button{font-family:inherit}@media (max-width:768px){.app{grid-template-rows:1fr auto;grid-template-columns:1fr}.sidebar{border-right:0;border-top:1px solid var(--sidebar-line);scrollbar-width:none;flex-direction:row;order:2;align-items:center;gap:4px;padding:6px 8px;overflow-x:auto}.sidebar::-webkit-scrollbar{display:none}.sidebar .brand,.sidebar .nav-section,.sidebar-foot,.sidebar nav .brand-sub{display:none!important}.sidebar nav{flex-direction:row;flex:1;gap:4px;display:flex}.nav-item{white-space:nowrap;border-radius:8px;flex-direction:column;flex:none;align-items:center;gap:3px;padding:6px 10px;font-size:11px}.nav-icon{width:20px;height:20px}.topbar{flex-wrap:wrap;gap:8px;padding:12px 16px 10px}.title{gap:6px;font-size:20px}.title-block{gap:8px}.title-meta{font-size:11px}.settings-shell{grid-template-columns:1fr;gap:12px;padding:16px;overflow:auto}.settings-shell aside{order:-1}.settings-nav{flex-flow:wrap;gap:6px}.settings-nav a{padding:6px 10px;font-size:12px}.settings-content{padding:0 0 80px}.page-card{border-radius:10px;padding:14px}.weather-page,.transit-page{gap:12px;padding:10px}.weather-block{gap:10px;padding:12px}.weather-block-head h2{font-size:15px}.weather-current-temp{font-size:44px}.weather-current-icon{font-size:26px}.weather-current-kv{gap:3px 12px;font-size:11px}.weather-daily-row{grid-template-columns:80px 22px 1fr 60px;padding:5px 8px;font-size:12px}.weather-daily-row .weather-daily-uv{display:none}.weather-radar-frame{height:360px}.weather-chmi-stack{height:320px}.weather-radar-tab{padding:3px 8px;font-size:11px}.transit-card-head{padding:10px 12px}.transit-card-title h3{font-size:14px}.transit-direction-head{padding:6px 12px;font-size:11px}.transit-departure{grid-template-columns:56px 1fr 90px;gap:8px;padding:8px 12px}.transit-route-short{font-size:13px}.transit-time-main{font-size:14px}.transit-time-sub{font-size:10px}.transit-direction-foot{padding:4px 12px 6px;font-size:10px}.grid{grid-template-columns:1fr}}@media (max-width:400px){.nav-item{padding:6px 8px;font-size:10px}.weather-current-temp{font-size:38px}.weather-daily-row{grid-template-columns:70px 20px 1fr 56px;gap:6px}.weather-radar-tabs{gap:2px}.weather-radar-tab{padding:3px 6px;font-size:10px}.transit-departure{grid-template-columns:48px 1fr 80px}}.weather-page{flex-direction:column;flex:1;gap:18px;width:100%;max-width:1400px;min-height:0;margin:0 auto;padding:16px;display:flex;overflow-y:auto}.weather-page>*{flex-shrink:0!important}.weather-loading{color:var(--fg-muted);text-align:center;padding:24px}.weather-empty{text-align:center;color:var(--fg-muted);flex-direction:column;align-items:center;gap:8px;padding:60px 16px;display:flex}.weather-empty h2{color:var(--fg);margin:0}.weather-empty a{color:var(--accent)}.weather-radar{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.weather-radar-head{border-bottom:1px solid var(--line);background:var(--bg-elev);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.weather-radar-head h3{color:var(--fg);margin:0;font-size:14px;font-weight:600}.weather-radar-tabs{flex-wrap:wrap;gap:4px;display:flex}.weather-radar-tab{color:var(--fg-muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 10px;font-size:12px}.weather-radar-tab:hover{background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.weather-radar-tab:hover{background:color-mix(in oklab, var(--fg) 6%, transparent)}}.weather-radar-tab:hover{color:var(--fg)}.weather-radar-tab.is-active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.weather-radar-tab.is-active{border-color:color-mix(in oklab, var(--accent) 65%, black)}}.weather-radar-frame{background:var(--surface-sunk);width:100%;height:min(80vh,900px);position:relative}.weather-radar-frame iframe{border:0;width:100%;height:100%;display:block}.weather-radar-attr{color:var(--fg-faint);border-top:1px dashed var(--line);margin:0;padding:8px 14px;font-size:11px}.weather-radar-attr a{color:var(--accent)}.weather-chmi-toggle{justify-content:flex-end;display:flex}.weather-chmi{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.weather-chmi-head{border-bottom:1px solid var(--line);background:var(--bg-elev);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.weather-chmi-head h3{color:var(--fg);margin:0;font-size:14px;font-weight:600}.weather-chmi-controls{color:var(--fg-muted);align-items:center;gap:10px;font-size:12px;display:flex}.weather-chmi-time{font-variant-numeric:tabular-nums}.weather-chmi-stack{background:var(--surface-sunk);width:100%;height:min(80vh,900px);position:relative}.weather-chmi-stack img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity .25s linear;position:absolute;inset:0}.weather-chmi-attr{color:var(--fg-faint);border-top:1px dashed var(--line);margin:0;padding:8px 14px;font-size:11px}.weather-chmi-attr a{color:var(--accent)}.weather-locations{grid-template-columns:1fr;gap:18px;display:grid}@media (min-width:1400px){.weather-locations{grid-template-columns:repeat(2,minmax(0,1fr))}}.weather-block{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:14px;padding:16px;display:flex}.weather-block-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.weather-block-head h2{color:var(--fg);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.weather-block-head h2 .chip{background:var(--accent-soft);color:var(--accent);border-radius:99px;padding:1px 8px;font-size:11px;font-weight:500}.weather-block-meta{color:var(--fg-faint);font-size:12px}.weather-current{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.weather-current-main{align-items:center;gap:14px;display:flex}.weather-current-temp{color:var(--fg);font-size:56px;font-weight:300;line-height:1}.weather-current-desc{color:var(--fg-muted);align-items:center;gap:10px;display:flex}.weather-current-icon{font-size:32px}.weather-current-sub{color:var(--fg-faint);font-size:12px}.weather-current-kv{color:var(--fg-muted);flex:1;grid-template-columns:repeat(2,1fr);gap:4px 16px;min-width:200px;font-size:12px;display:grid}.weather-current-kv>div{align-items:center;gap:6px;display:flex}.weather-hourly{scrollbar-width:thin;overflow-x:auto}.weather-hourly-row{grid-template-columns:repeat(24,minmax(0,1fr));gap:2px;min-width:100%;display:grid}.weather-hourly-cell{background:var(--bg-elev);color:var(--fg-muted);border-radius:6px;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:4px 0;font-size:11px;display:flex;position:relative;overflow:hidden}.weather-hourly-time{font-variant-numeric:tabular-nums}.weather-hourly-icon{font-size:14px;line-height:1}.weather-hourly-temp{color:var(--fg);font-size:12px;font-weight:500}.weather-hourly-bars{justify-content:center;align-items:flex-end;gap:1px;width:100%;max-width:16px;height:30px;display:flex;position:relative}.weather-hourly-pop{background:var(--accent);width:5px}@supports (color:color-mix(in lab, red, red)){.weather-hourly-pop{background:color-mix(in oklab, var(--accent) 70%, transparent)}}.weather-hourly-pop{border-radius:2px}.weather-hourly-uv{opacity:.8;border-radius:2px;width:4px}.weather-hourly-marker{height:12px;font-size:11px}.weather-daily{flex-direction:column;gap:4px;display:flex}.weather-daily-row{background:var(--bg-elev);border-radius:8px;grid-template-columns:110px 28px 1fr 80px 80px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:grid}.weather-daily-day{color:var(--fg)}.weather-daily-icon{text-align:center;font-size:16px;line-height:1}.weather-daily-precip{color:var(--fg-muted);font-size:12px}.weather-daily-uv{font-size:12px;font-weight:500}.weather-daily-temps{text-align:right}.weather-daily-low{color:var(--fg-faint);margin-right:6px}.weather-locations-list{flex-direction:column;gap:6px;margin:0 0 18px;padding:0;list-style:none;display:flex}.weather-locations-list li{background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.weather-locations-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.weather-locations-info .chip{background:var(--accent-soft);color:var(--accent);border-radius:99px;padding:1px 8px;font-size:11px}.weather-locations-coords{color:var(--fg-faint);font-variant-numeric:tabular-nums;font-size:12px}.weather-locations-actions{gap:4px;display:flex}.weather-locations-presets{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.weather-locations-search-results{border:1px solid var(--line);background:var(--bg-elev);border-radius:8px;flex-direction:column;gap:2px;max-height:240px;margin:8px 0 0;padding:4px;list-style:none;display:flex;overflow-y:auto}.weather-locations-search-results li{margin:0;padding:0}.weather-locations-search-results .btn{text-align:left;justify-content:flex-start;width:100%;padding:6px 10px;font-size:13px}.transit-page{flex-direction:column;flex:1;gap:18px;width:100%;max-width:1400px;min-height:0;margin:0 auto;padding:16px;display:flex;overflow-y:auto}.transit-page>*{flex-shrink:0!important}.transit-loading{color:var(--fg-muted);text-align:center;padding:24px}.transit-empty-state{text-align:center;color:var(--fg-muted);flex-direction:column;align-items:center;gap:8px;padding:60px 16px;display:flex}.transit-empty-state h2{color:var(--fg);margin:0}.transit-empty-state a{color:var(--accent)}.transit-grid{grid-template-columns:1fr;gap:18px;display:grid}@media (min-width:1100px){.transit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.transit-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.transit-card-head{border-bottom:1px solid var(--line);background:var(--bg-elev);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.transit-card-title{align-items:center;gap:10px;display:flex}.transit-card-title h3{color:var(--fg);margin:0;font-size:15px;font-weight:600}.transit-card-stops{color:var(--fg-muted);font-size:12px}.transit-card-stops strong{color:var(--fg);font-weight:500}.transit-card-foot{color:var(--fg-faint);border-top:1px dashed var(--line);font-variant-numeric:tabular-nums;padding:6px 14px;font-size:11px}.transit-card-body{grid-template-columns:1fr;display:grid}.transit-card-body.has-inbound{grid-template-columns:1fr}.transit-direction{border-top:1px solid var(--line);flex-direction:column;display:flex}.transit-direction:first-child{border-top:0}.transit-direction-head{background:var(--accent);align-items:center;gap:6px;padding:8px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.transit-direction-head{background:color-mix(in oklab, var(--accent) 5%, var(--bg-elev))}}.transit-direction-head{color:var(--fg);font-size:12px}.transit-direction-head strong{font-weight:500}.transit-direction-foot{color:var(--fg-faint);font-variant-numeric:tabular-nums;padding:6px 14px 8px;font-size:11px}.transit-time-day{color:var(--fg-faint);margin-right:2px;font-size:11px;font-weight:400}.transit-mode-chip{background:var(--accent-soft);color:var(--accent);text-transform:capitalize;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.transit-departures{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.transit-empty{color:var(--fg-muted);text-align:center;padding:16px;font-size:13px}.transit-departure{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr 120px;align-items:center;gap:10px;padding:10px 14px;display:grid}.transit-departure:last-child{border-bottom:none}.transit-departure-route{color:var(--fg-muted);align-items:center;gap:6px;display:flex}.transit-route-short{color:var(--fg);font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.transit-departure-headsign{color:var(--fg);flex-direction:column;gap:2px;min-width:0;font-size:13px;display:flex}.transit-departure-headsign>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.transit-platform{color:var(--fg-faint);font-size:11px}.transit-departure-time{text-align:right}.transit-time-main{color:var(--fg);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.transit-time-arrival{color:var(--fg-muted);margin-left:2px;font-weight:400}.transit-time-sub{color:var(--fg-muted);font-variant-numeric:tabular-nums;font-size:11px}.transit-delay.tone-ok{color:#2ea66b}.transit-delay.tone-late{color:#f9b14c}.transit-delay.tone-early{color:#6fb1ff}.tone-canceled{text-decoration:line-through;color:#f96a4c!important}.transit-departure.tone-late{background:#f9b14c0f;background:lab(77.8947% 20.4164 60.503/.06)}.transit-departure.tone-canceled{background:#f96a4c14;background:lab(63.2166% 54.5173 45.1644/.08)}.transit-settings-section{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.transit-settings-section:first-child{border-top:0;margin-top:0;padding-top:0}.transit-settings-section h3{color:var(--fg);margin:0 0 6px;font-size:14px;font-weight:600}.transit-routes-list{flex-direction:column;gap:6px;margin:0 0 18px;padding:0;list-style:none;display:flex}.transit-routes-list li{background:var(--bg-elev);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.transit-route-info{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.transit-route-info strong{color:var(--fg)}.transit-route-stops{color:var(--fg-faint);font-size:12px}.transit-route-actions{gap:4px;display:flex}.transit-route-editing{background:var(--surface)!important;border:1px solid var(--accent)!important;padding:14px!important;display:block!important}.transit-stop-picker{position:relative}.transit-stop-selected{border:1px solid var(--line);background:var(--bg-elev);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.transit-stop-id{color:var(--fg-faint);font-variant-numeric:tabular-nums;font-size:11px}.transit-stop-platform,.transit-stop-zone{color:var(--fg-faint);font-size:11px}.transit-stop-results{background:var(--surface);border:1px solid var(--line-strong);z-index:100;max-height:280px;box-shadow:var(--shadow-card);border-radius:8px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.transit-stop-loading{color:var(--fg-muted);padding:8px 10px;font-size:12px}.transit-stop-results li button{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--fg);background:0 0;border:0;border-radius:6px;padding:6px 10px;font-size:13px;display:block}.transit-stop-results li button:hover{background:var(--bg-elev)}.transit-stop-results li button strong{font-weight:500}.app-shell{background:var(--bg);min-height:100vh;color:var(--fg);flex-direction:column;display:flex}.app-header{background:var(--surface);border-bottom:1px solid var(--line);z-index:10;position:sticky;top:0}.app-header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:24px;max-width:1320px;margin:0 auto;padding:12px 28px;display:grid}.app-main{width:100%;max-width:1320px;margin:0 auto;padding:20px 28px 40px}.brand{align-items:center;gap:10px;display:flex}.app-header .brand-mark{background:var(--brand-primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;font-weight:700;display:flex;position:relative}.app-header .brand-mark:after{content:"";background:var(--brand-accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;position:absolute;top:-2px;right:-2px}.brand-name{color:var(--fg);flex-direction:column;font-size:14px;font-weight:600;line-height:1.2;display:flex}.brand-sub{color:var(--fg-muted);font-size:12px;font-weight:400}.top-nav{justify-content:center;gap:4px;display:flex}.top-nav-item{color:var(--fg-muted);transition:background var(--transition), color var(--transition);border-radius:8px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none}.top-nav-item:hover{background:var(--bg-elev);color:var(--fg)}.top-nav-item[aria-current=page]{background:var(--accent-soft);color:var(--fg)}.user-menu{align-items:center;gap:10px;display:flex}.user-email{color:var(--fg-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:12.5px;overflow:hidden}.avatar{background:var(--bg-elev);width:32px;height:32px;color:var(--fg);border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.link-button{color:var(--fg-muted);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit;font-size:12px;text-decoration:underline}.empty-screen{text-align:center;color:var(--fg);padding:80px 0}.empty-screen h1{margin:0 0 8px;font-size:28px;font-weight:600}.empty-screen p{color:var(--fg-muted);margin:8px 0}.muted{color:var(--fg-muted);font-size:13px}.auth-tabs{background:var(--bg-elev);border-radius:8px;gap:4px;margin:0 0 16px;padding:4px;display:flex}.auth-tab{cursor:pointer;color:var(--fg-muted);background:0 0;border:0;border-radius:6px;flex:1;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:500}.auth-tab.active{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px #141e320a}.auth-links{color:var(--fg-muted);justify-content:center;gap:8px;margin-top:16px;font-size:12.5px;display:flex}.auth-links a{color:var(--accent);text-decoration:none}.auth-links a:hover{text-decoration:underline}@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}
