@font-face{font-family:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(../media/cf9d54c4342bfde9-s.3h9hciz7c7ygr.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(../media/c26308a965d8ee8a-s.p.3k6q3yu2z6st3.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:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d03928121523449c-s.p.2xutnr_n30v-3.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1ccf8ef962b3f693-s.p.2xt4dxqx4hw9r.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:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(../media/664b8486c44baa2d-s.0vchxt0cs-r06.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(../media/c5ac7bd8b2d9fce6-s.p.3kfu5v_o8q8ol.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:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8457265da2739722-s.p.00okbctd204vc.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(../media/dc0c65e819e3bb6c-s.p.1alcwxkb6wbdk.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:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(../media/087f4c42b279024d-s.3lkdjsxaxw2k3.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(../media/891a32df73aa4402-s.p.1njr2bfrh4k2r.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:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9186901afaa5c996-s.p.0-s4mhtt1ybzm.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(../media/374a88ea0960b3d4-s.p.07nelj0w2qn6k.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:Chakra Petch Fallback;src:local(Arial);ascent-override:96.77%;descent-override:30.05%;line-gap-override:0.0%;size-adjust:102.51%}.H_yA4a_className{font-family:Chakra Petch,Chakra Petch Fallback;font-style:normal}.H_yA4a_variable{--font-chakra:"Chakra Petch", "Chakra Petch Fallback"}
@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/53e45098eac42afb-s.p.0udrnr4-18tjo.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:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/85ea1b3aadcead52-s.p.18lx4otehud-r.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3c285486269019b7-s.p.1br53b7gww62p.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:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(../media/625a092f804baad3-s.p.3bgaltqld2gq2.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:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6afabefbb32d7517-s.p.0mlt1uo-cplt-.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a4f4f75ad654963f-s.p.22m3f6pvfu2zf.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:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a3bcb02a0e9e5d11-s.p.35qbt1_6db49h.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:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35fd19aef91b293-s.p.1-vmsm_v03uvy.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8f46d218c8f79e34-s.p.092z1_2w2m55_.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:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8ffc259da9d23054-s.p.2heyes1wqz_kz.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:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9e486ba39c38fb8a-s.p.37omzjo7pfhh3.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6f42e0a3b0519c4d-s.p.31-z0m_4g_6pa.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:Be Vietnam Pro Fallback;src:local(Arial);ascent-override:90.61%;descent-override:24.01%;line-gap-override:0.0%;size-adjust:110.36%}.Ax1DvG_className{font-family:Be Vietnam Pro,Be Vietnam Pro Fallback;font-style:normal}.Ax1DvG_variable{--font-be-vietnam:"Be Vietnam Pro", "Be Vietnam Pro Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1zakzi6q17d4o.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.2htf8h-pf57mm.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.3skwie1wjplzh.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.p.3zhbgtelpa5ua.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.p.3vf5yzuqk3fsd.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-20C4,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.1wmoa0e_blxrz.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.1zakzi6q17d4o.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.2htf8h-pf57mm.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.3skwie1wjplzh.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.p.3zhbgtelpa5ua.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.p.3vf5yzuqk3fsd.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-20C4,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.1wmoa0e_blxrz.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%}.ljGwwG_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.ljGwwG_variable{--font-jetbrains:"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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-outline-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer utilities{.fixed{position:fixed}.relative{position:relative}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-transparent{border-color:#0000}.bg-clip-padding{background-clip:padding-box}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.underline-offset-4{text-underline-offset:4px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f4f2;--surface:#fff;--surface-2:#e5ece9;--ink:#0f2233;--muted:#4f6272;--line:#c8d3d4;--magenta:#a8216a;--magenta-soft:#a8216a1a;--blue:#1c66a0;--blue-soft:#1c66a01a;--contour:#a9c2b5;--good:#24804f;--warn:#a86b0c;--crit:#be372c;--good-soft:#24804f1f;--warn-soft:#a86b0c1f;--gcs-bg:#0b1720;--gcs-panel:#12232e;--gcs-line:#24404f;--gcs-ink:#dce8ee;--gcs-muted:#8ba3b2;--gcs-amber:#f0b429;--gcs-sky:#2f6fa6;--gcs-ground:#6e4f33;--gcs-mag:#e2589e;--preset-oil:#c9581f;--preset-delivery:#17865a;--preset-edu:#5b4cc4;--on-accent:#fff;--logo-bg:#0e1a2b;--logo-blue:#5ba4f5;--f-display:var(--font-chakra),"Chakra Petch","Be Vietnam Pro",system-ui,sans-serif;--f-body:var(--font-be-vietnam),"Be Vietnam Pro",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:var(--font-jetbrains),"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--radius:10px;--maxw:1180px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#09131b;--surface:#0f1e29;--surface-2:#152936;--ink:#e3ecf0;--muted:#94a8b6;--line:#223747;--magenta:#e35ca2;--magenta-soft:#e35ca226;--blue:#5ca8df;--blue-soft:#5ca8df26;--contour:#1f3b36;--good:#4cc38a;--warn:#e3a43e;--crit:#ef6b5f;--good-soft:#4cc38a26;--warn-soft:#e3a43e26;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#09131b;--surface:#0f1e29;--surface-2:#152936;--ink:#e3ecf0;--muted:#94a8b6;--line:#223747;--magenta:#e35ca2;--magenta-soft:#e35ca226;--blue:#5ca8df;--blue-soft:#5ca8df26;--contour:#1f3b36;--good:#4cc38a;--warn:#e3a43e;--crit:#ef6b5f;--good-soft:#4cc38a26;--warn-soft:#e3a43e26;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg);position:fixed;inset:0 0 auto}h1,h2,h3,h4{font-family:var(--f-display);text-wrap:balance;letter-spacing:-.01em;margin:0;line-height:1.15}h2{font-size:clamp(28px,4vw,42px);font-weight:700}h3{font-size:clamp(20px,2.2vw,24px);font-weight:600}p{margin:0}a{color:var(--blue)}:focus-visible{outline:2px solid var(--magenta);outline-offset:2px;border-radius:4px}.wrap{max-width:var(--maxw);margin:0 auto}.mono{font-family:var(--f-mono);letter-spacing:.02em;font-size:12.5px}.eyebrow{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--magenta);align-items:center;gap:10px;font-size:12px;display:flex}.eyebrow:before{content:"";background:var(--magenta);width:22px;height:2px}.lead{color:var(--muted);max-width:68ch;font-size:clamp(17px,1.6vw,19px)}.prose{gap:14px;max-width:68ch;display:grid}.muted{color:var(--muted)}.tag{font-family:var(--f-mono);letter-spacing:.06em;border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:11.5px;display:inline-flex}.btn{font:600 14px/1 var(--f-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:10px 16px;transition:border-color .2s,background .2s,transform .15s}.btn:hover{border-color:var(--ink)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--magenta);border-color:var(--magenta);color:var(--on-accent)}.btn.primary:hover{filter:brightness(1.08)}.seg{border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.seg button{font:600 13px/1 var(--f-body);color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 12px}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}section{border-top:1px solid var(--line);padding-block:clamp(56px,8vw,104px)}.sec-head{gap:14px;margin-bottom:clamp(28px,4vw,44px);display:grid}.reveal{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.pre{transform:translateY(22px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal.pre{opacity:1;transition:none;transform:none}*{animation:none!important}}.topbar{top:env(safe-area-inset-top,0px);z-index:50;background:var(--bg);position:sticky}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb,var(--bg) 88%,transparent)}}.topbar{-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);margin-inline:calc(-1 * max(16px,env(safe-area-inset-left,0px)));padding-inline:max(16px,env(safe-area-inset-left,0px))}.topbar .wrap{align-items:center;gap:20px;height:60px;display:flex}.logo{font-family:var(--f-display);color:var(--ink);flex-shrink:0;align-items:center;gap:10px;font-size:19px;font-weight:700;text-decoration:none;display:flex}.logo svg{flex-shrink:0;width:30px;height:30px}.nav{scrollbar-width:none;gap:4px;margin-left:auto;display:flex;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{color:var(--muted);white-space:nowrap;border-radius:6px;padding:7px 10px;font-size:13.5px;font-weight:500;text-decoration:none}.nav a:hover{color:var(--ink)}.nav a.on{color:var(--ink);background:var(--surface-2)}.progress{background:var(--magenta);width:0;height:2px;position:absolute;bottom:-1px;left:0}@media (max-width:760px){.nav{display:none}}.lang{color:var(--muted);flex-shrink:0;align-items:center;gap:8px;display:flex}.lang svg{flex-shrink:0;width:16px;height:16px}.lang-seg{border:1px solid var(--line);background:var(--surface);border-radius:9px;grid-template-columns:1fr 1fr;padding:3px;display:inline-grid;position:relative}.lang-thumb{background:var(--ink);border-radius:6px;width:calc(50% - 3px);transition:transform .28s cubic-bezier(.2,.7,.2,1);position:absolute;top:3px;bottom:3px;left:3px}.lang-seg[data-lang=en] .lang-thumb{transform:translate(100%)}.lang-seg button{z-index:1;font:600 12.5px/1 var(--f-mono);letter-spacing:.06em;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 12px;transition:color .25s;position:relative}.lang-seg button:hover{color:var(--ink)}.lang-seg button[aria-pressed=true]{color:var(--bg)}@media (max-width:760px){.lang{margin-left:auto}}@media (prefers-reduced-motion:reduce){.lang-thumb{transition:none}}.hero{border-top:0;padding-block:clamp(36px,6vw,72px) clamp(40px,6vw,72px)}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,4vw,56px);display:grid}.hero h1{letter-spacing:-.02em;font-size:clamp(36px,5.6vw,66px);font-weight:700}.hero h1 em{color:var(--magenta);font-style:normal}.hero .lead{margin-top:20px}.hero-ctas{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.facts{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:36px;display:grid;overflow:hidden}.facts div{background:var(--surface);padding:14px 14px 12px}.facts b{font-family:var(--f-display);font-size:28px;font-weight:700;line-height:1;display:block}.facts span{color:var(--muted);margin-top:6px;font-size:12.5px;line-height:1.35;display:block}.radar{border:1px solid var(--line);background:var(--surface);aspect-ratio:5/4;border-radius:14px;max-width:100%;position:relative;overflow:hidden}.radar canvas{width:100%;height:100%;position:absolute;inset:0}.radar .hud{background:var(--surface);position:absolute;top:12px;right:12px}@supports (color:color-mix(in lab, red, red)){.radar .hud{background:color-mix(in srgb,var(--surface) 90%,transparent)}}.radar .hud{border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:8px;min-width:176px;padding:10px 12px}.hud .row{font-family:var(--f-mono);font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;font-size:12px;display:flex}.hud .row span:first-child{color:var(--muted)}.hud .title{font-family:var(--f-mono);letter-spacing:.1em;color:var(--magenta);align-items:center;gap:6px;margin-bottom:6px;font-size:11px;display:flex}.dot{background:var(--good);width:7px;height:7px;box-shadow:0 0 0 0 var(--good);border-radius:50%;animation:1.8s infinite ping;display:inline-block}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.radar .cap{font-family:var(--f-mono);color:var(--muted);font-size:11px;position:absolute;bottom:10px;left:12px}@media (max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr)}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.ba{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,48px);display:grid}.ba-stage{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}.ba-stage svg{width:100%;height:auto;display:block}.ba-stage .bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.ba-grp{transition:opacity .6s}.problems{gap:12px;display:grid}.problem{border-bottom:1px solid var(--line);grid-template-columns:34px minmax(0,1fr);gap:14px;padding:14px 0;display:grid}.problem:last-child{border-bottom:0}.problem .ic{background:var(--magenta-soft);width:34px;height:34px;color:var(--magenta);border-radius:8px;place-items:center;display:grid}.problem .ic svg{width:18px;height:18px}.problem h4{font-family:var(--f-body);margin-bottom:4px;font-size:16px;font-weight:700}.problem p{color:var(--muted);font-size:15px}@media (max-width:900px){.ba{grid-template-columns:minmax(0,1fr)}}.arch{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.steps{gap:8px;display:grid}.step{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--ink);font:inherit;border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;padding:14px 16px;transition:border-color .25s,background .25s;display:grid}.step .n{font-family:var(--f-mono);color:var(--muted);grid-row:span 2;padding-top:2px;font-size:12px}.step b{font-family:var(--f-display);font-size:17px;font-weight:600}.step p{color:var(--muted);grid-column:2;font-size:14.5px;display:none}.step[aria-pressed=true]{border-color:var(--magenta);background:var(--magenta-soft)}.step[aria-pressed=true] .n{color:var(--magenta)}.step[aria-pressed=true] p{display:block}.diagram{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;position:sticky;top:76px}.diagram .scroll{overflow-x:auto}.diagram svg{width:100%;min-width:600px;height:auto;display:block}.node{cursor:pointer}.node rect{fill:var(--surface);stroke:var(--line);stroke-width:1.25px;transition:stroke .25s,fill .25s,opacity .25s}.node text{fill:var(--ink);font-family:var(--f-body);font-size:13px;font-weight:600;transition:opacity .25s}.node text.sub{fill:var(--muted);font-size:11.5px;font-weight:400}.node:hover rect{stroke:var(--ink)}.node.hot rect{stroke:var(--magenta);stroke-width:2px;fill:var(--magenta-soft)}.node.dim rect,.node.dim text{opacity:.38}.node.sel rect{stroke:var(--blue);stroke-width:2.5px}.tier{fill:none;stroke:var(--line);stroke-dasharray:4 4}.tier-cloud{fill:var(--blue-soft);stroke:var(--blue);stroke-width:1.5px}.tlabel{font-family:var(--f-mono);letter-spacing:.12em;fill:var(--muted);font-size:10.5px}.wire{stroke:var(--line);stroke-width:1.5px;fill:none}.wire.radio{stroke:var(--magenta);stroke-dasharray:5 5}.pkt-up{fill:var(--blue)}.pkt-down{fill:var(--magenta)}.legend{color:var(--muted);flex-wrap:wrap;gap:16px;padding:8px 4px 2px;font-size:12.5px;display:flex}.legend i{vertical-align:middle;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.detail{border-top:1px solid var(--line);min-height:120px;margin-top:12px;padding-top:14px}.detail h4{font-family:var(--f-display);margin-bottom:6px;font-size:19px}.detail p{color:var(--muted);font-size:15px}.detail .hint{font-family:var(--f-mono);color:var(--muted);letter-spacing:.06em;margin-bottom:6px;font-size:11.5px}@media (max-width:980px){.arch{grid-template-columns:minmax(0,1fr)}.diagram{position:static}}.features{background:var(--line);border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.feat{background:var(--surface);align-content:start;gap:8px;padding:22px 20px;transition:background .25s;display:grid}.feat:hover{background:var(--surface-2)}@media (max-width:1100px){.features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.features{grid-template-columns:minmax(0,1fr)}}.feat svg{width:24px;height:24px;color:var(--blue)}.feat h4{font-family:var(--f-display);font-size:18px;font-weight:600}.feat p{color:var(--muted);font-size:14.5px}.ui-tabs{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.ui-tab{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;font:inherit;color:var(--ink);border-radius:12px;flex:1;gap:2px;min-width:240px;padding:14px 18px;display:grid}.ui-tab b{font-family:var(--f-display);font-size:18px}.ui-tab span{color:var(--muted);font-size:13.5px}.ui-tab[aria-selected=true]{border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--magenta)}.ui-panel{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,36px);display:grid}.ui-panel[hidden]{display:none}.ui-side{gap:16px;display:grid}.ui-side .prose p{font-size:15.5px}.area-list{border-top:1px solid var(--line);gap:0;display:grid}.area{border-bottom:1px solid var(--line);grid-template-columns:minmax(120px,.8fr) minmax(0,2fr);gap:12px;padding:11px 0;font-size:14.5px;display:grid}.area b{font-weight:600}.area span{color:var(--muted)}.mock-note{font-family:var(--f-mono);color:var(--muted);letter-spacing:.06em;margin-top:8px;font-size:11px}@media (max-width:980px){.ui-panel{grid-template-columns:minmax(0,1fr)}}.mweb{--brand:var(--blue);border:1px solid var(--line);background:var(--bg);border-radius:12px;transition:--brand .3s;overflow:hidden;box-shadow:0 18px 40px -24px #0a1e3259}.mweb .chrome{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;display:flex}.mweb .chrome i{background:var(--line);border-radius:50%;width:9px;height:9px;display:inline-block}.mweb .url{min-width:0;font-family:var(--f-mono);color:var(--muted);background:var(--surface);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;padding:4px 10px;font-size:11.5px;overflow:hidden}.mweb .body{grid-template-columns:168px minmax(0,1fr);min-height:400px;display:grid}.mweb .side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:3px;padding:12px 10px;display:flex}.mweb .brand{font-family:var(--f-display);align-items:center;gap:8px;margin-bottom:10px;padding:4px;font-size:14px;font-weight:700;display:flex}.mweb .brand .sq{background:var(--brand);border-radius:6px;flex-shrink:0;width:22px;height:22px;transition:background .4s}.mweb .nv{color:var(--muted);border-radius:6px;padding:7px 9px;font-size:12.5px;transition:background .3s,color .3s}.mweb .nv.on{background:var(--brand)}@supports (color:color-mix(in lab, red, red)){.mweb .nv.on{background:color-mix(in srgb,var(--brand) 14%,transparent)}}.mweb .nv.on{color:var(--ink);font-weight:600}.mweb .nv.new{animation:.6s pop}@keyframes pop{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}.mweb .main{align-content:start;gap:10px;padding:12px;display:grid}.mweb .kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mweb .kpi{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 10px}.mweb .kpi span{color:var(--muted);font-size:11px;line-height:1.3;display:block}.mweb .kpi b{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:22px}.mweb .row2{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:8px;display:grid}.mweb .panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;position:relative;overflow:hidden}.mweb .panel .ph{color:var(--muted);border-bottom:1px solid var(--line);justify-content:space-between;padding:6px 9px;font-size:11px;display:flex}.mweb .panel svg{width:100%;height:auto;display:block}.thermal{aspect-ratio:4/3;background:radial-gradient(circle at 62% 46%,#fff3b0 0 5%,#ffb347 10%,#e2583e 20%,#7a2a7a 38%,#1f1446 62%,#0b0b22 100%);position:relative}.thermal:after{content:"";border:1.5px solid #ffffffd9;border-radius:3px;width:34px;height:34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.thermal span{font-family:var(--f-mono);color:#fff;font-size:10px;position:absolute;bottom:5px;left:6px}.alerts{gap:4px;padding:8px;display:grid}.alerts div{align-items:center;gap:8px;font-size:11.5px;display:flex}.alerts i{border-radius:50%;flex-shrink:0;width:7px;height:7px}.presets{flex-wrap:wrap;gap:8px;display:flex}.preset{font:500 13px/1 var(--f-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:9px 12px;display:flex}.preset i{border-radius:3px;width:12px;height:12px;display:inline-block}.preset[aria-pressed=true]{border-color:var(--ink);background:var(--surface-2)}@media (max-width:620px){.mweb .body{grid-template-columns:minmax(0,1fr)}.mweb .side{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap}.mweb .brand{width:100%;margin-bottom:4px}.mweb .row2{grid-template-columns:minmax(0,1fr)}}.gcs{background:var(--gcs-bg);color:var(--gcs-ink);border:1px solid var(--gcs-line);font-family:var(--f-body);border-radius:12px;overflow:hidden;box-shadow:0 18px 40px -24px #0009}.gcs .gtop{border-bottom:1px solid var(--gcs-line);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.gcs .gtop b{font-family:var(--f-display);letter-spacing:.02em;font-size:14px}.gchip{font-family:var(--f-mono);border:1px solid var(--gcs-line);color:var(--gcs-muted);white-space:nowrap;border-radius:5px;padding:3px 8px;font-size:10.5px}.gchip.ok{color:#6fe0a6;border-color:#6fe0a666}.gchip.amb{color:var(--gcs-amber);border-color:#f0b42973}.gcs .gbody{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);min-height:360px;display:grid}.gcs .gmap{border-right:1px solid var(--gcs-line);background:#0e2230;position:relative}.gcs .gmap svg{width:100%;height:100%;display:block}.gcs .gright{align-content:start;gap:10px;padding:12px;display:grid}.adi{aspect-ratio:1;border:2px solid var(--gcs-line);border-radius:50%;width:100%;max-width:190px;margin:0 auto;position:relative;overflow:hidden}.adi svg{width:100%;height:100%;display:block}.horizon{transform-origin:50px 50px;animation:7s ease-in-out infinite roll}@keyframes roll{0%,to{transform:rotate(-7deg)translateY(2px)}50%{transform:rotate(6deg)translateY(-3px)}}.tele{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.tele div{background:var(--gcs-panel);border:1px solid var(--gcs-line);border-radius:6px;padding:6px 8px}.tele span{color:var(--gcs-muted);font-size:10px;font-family:var(--f-mono);letter-spacing:.06em;display:block}.tele b{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.gbtns{gap:8px;display:grid}.gbtn{border:1px solid var(--gcs-line);background:var(--gcs-panel);color:var(--gcs-ink);font:600 13px/1.2 var(--f-body);text-align:center;border-radius:8px;padding:10px}.gbtn.big{padding:16px;font-size:15px}.gbtn.amber{border-color:var(--gcs-amber);color:var(--gcs-amber)}.gmodes{border-top:1px solid var(--gcs-line);flex-wrap:wrap;gap:6px;padding:8px 12px;display:flex}.gmodes span{font-family:var(--f-mono);background:var(--gcs-panel);border:1px solid var(--gcs-line);color:var(--gcs-muted);border-radius:5px;padding:4px 8px;font-size:10.5px}.gmodes span.on{color:var(--gcs-bg);background:var(--gcs-amber);border-color:var(--gcs-amber)}.gcs[data-mode=basic] .pro-only,.gcs[data-mode=pro] .basic-only,.gcs[data-mode=mobile] .pro-only{display:none}.gcs-wrap{margin:0 auto;transition:max-width .4s}.gcs-wrap[data-mode=mobile]{max-width:360px}.gcs[data-mode=mobile] .gbody{grid-template-columns:minmax(0,1fr)}.gcs[data-mode=mobile] .gmap{border-right:0;border-bottom:1px solid var(--gcs-line);min-height:240px}.gcs[data-mode=mobile] .adi{max-width:120px}.gcs[data-mode=mobile] .gright{grid-template-columns:120px 1fr;align-items:center}@media (max-width:620px){.gcs .gbody{grid-template-columns:minmax(0,1fr)}.gcs .gmap{border-right:0;border-bottom:1px solid var(--gcs-line);min-height:220px}}.custom{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:clamp(36px,5vw,56px);display:grid}.custom div{border-top:2px solid var(--ink);gap:6px;padding-top:12px;display:grid}.custom h4{font-family:var(--f-display);font-size:17px}.custom p{color:var(--muted);font-size:14.5px}@media (max-width:900px){.custom{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.custom{grid-template-columns:minmax(0,1fr)}}.module{background:var(--surface);border:1px solid var(--line);border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:clamp(20px,3vw,40px);margin-bottom:20px;padding:clamp(20px,3vw,32px);display:grid}.module .prose p{font-size:15.5px}.module .k{font-family:var(--f-mono);color:var(--magenta);letter-spacing:.12em;text-transform:uppercase;font-size:11.5px}.sim{gap:10px;display:grid}.sim-stage{border:1px solid var(--line);background:var(--bg);border-radius:10px;position:relative;overflow:hidden}.sim-stage canvas,.sim-stage svg{width:100%;height:auto;display:block}.sim-ctl{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sim-ctl label{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.sim-ctl input[type=range]{accent-color:var(--magenta);width:140px}.events{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.ev{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px;transition:border-color .3s,background .3s}.ev span{font-family:var(--f-mono);color:var(--muted);font-size:10.5px;display:block}.ev.on{border-color:var(--magenta);background:var(--magenta-soft)}.readout{font-family:var(--f-mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.readout b{color:var(--ink)}.states{flex-wrap:wrap;gap:6px;display:flex}.states span{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:12px;transition:all .3s}.states span.done{color:var(--ink);border-color:var(--ink)}.states span.now{color:var(--on-accent);background:var(--magenta);border-color:var(--magenta)}.heat-legend{font-family:var(--f-mono);color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.heat-legend i{background:linear-gradient(90deg,var(--surface-2),var(--warn),var(--crit),var(--magenta));border-radius:4px;width:120px;height:8px}@media (max-width:900px){.module{grid-template-columns:minmax(0,1fr)}}.sectors{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:28px;display:grid}.sector{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-content:start;gap:8px;padding:18px;transition:transform .25s,border-color .25s;display:grid}.sector:hover{border-color:var(--ink);transform:translateY(-3px)}.sector h4{font-family:var(--f-display);font-size:18px}.sector p{color:var(--muted);font-size:14.5px}.sector .uses{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.edge{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,32px) clamp(18px,3vw,40px);display:grid}.edge div{align-content:start;gap:8px;display:grid}.edge h4{font-family:var(--f-display);align-items:baseline;gap:10px;font-size:19px;display:flex}.edge h4 small{font-family:var(--f-mono);color:var(--magenta);font-size:11px;font-weight:500}.edge p{color:var(--muted);font-size:15px}@media (max-width:900px){.edge{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.edge{grid-template-columns:minmax(0,1fr)}}.price-bar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.tiers{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tier-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-content:start;gap:14px;padding:20px;display:grid}.tier-card.feat2{border-color:var(--magenta);box-shadow:inset 0 3px 0 var(--magenta)}.tier-card h4{font-family:var(--f-display);font-size:20px}.tier-card .who{color:var(--muted);margin-top:-8px;font-size:13.5px}.price{font-family:var(--f-display);font-variant-numeric:tabular-nums;font-size:36px;font-weight:700;line-height:1}.price small{font-family:var(--f-body);color:var(--muted);font-size:13px;font-weight:500}.spec{border-top:1px solid var(--line);gap:0;display:grid}.spec div{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:8px 0;font-size:13.5px;display:flex}.spec span{color:var(--muted)}.spec b{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.streams{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}.streams div{background:var(--surface-2);border-radius:12px;gap:6px;padding:16px;display:grid}.streams h4{font-family:var(--f-display);font-size:16px}.streams p{color:var(--muted);font-size:14px}@media (max-width:980px){.tiers,.streams{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.tiers,.streams{grid-template-columns:minmax(0,1fr)}}.ready{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.ready .scroll{overflow-x:auto}.rtable{border-collapse:collapse;width:100%;min-width:720px;font-size:14px}.rtable th{font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);background:var(--surface-2);padding:12px 16px;font-size:11px;font-weight:500}.rtable td{border-bottom:1px solid var(--line);vertical-align:top;padding:14px 16px}.rtable tr:last-child td{border-bottom:0}.rtable td:first-child{width:24%;font-weight:600}.rtable td.st{color:var(--muted);width:40%}.track{gap:3px;margin-bottom:6px;display:flex}.track i{background:var(--surface-2);border-radius:3px;flex:1;height:6px}.track i.f{background:var(--good)}.track i.p{background:var(--warn)}.stage{font-family:var(--f-mono);color:var(--muted);font-size:11px}.traction{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.traction div{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:4px;padding:16px;display:grid}.traction b{font-family:var(--f-display);font-size:16px}.traction span{color:var(--muted);font-size:13.5px}@media (max-width:900px){.traction{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.traction{grid-template-columns:minmax(0,1fr)}}.dji{gap:clamp(24px,3vw,36px);margin-top:clamp(48px,7vw,80px);display:grid}.dji-head{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:clamp(20px,3vw,40px);display:grid}.dji-head .prose p{font-size:15.5px}.paths{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px}.paths .scroll{overflow-x:auto}.paths svg{width:100%;min-width:520px;height:auto;display:block}.vendors{flex-wrap:wrap;gap:8px;display:flex}.vendor{border:1px solid var(--line);background:var(--surface);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 8px;font-size:13.5px;display:flex}.vendor i{border-radius:50%;width:9px;height:9px}.vendor small{font-family:var(--f-mono);color:var(--muted);font-size:11px}.stages{gap:0;display:grid;position:relative}.stg{grid-template-columns:56px minmax(0,1fr);gap:16px;display:grid;position:relative}.stg:before{content:"";background:var(--line);width:2px;position:absolute;top:0;bottom:0;left:27px}.stg:first-child:before{top:28px}.stg:last-child:before{bottom:calc(100% - 28px)}.stg .num{background:var(--surface);border:2px solid var(--line);width:56px;height:56px;font-family:var(--f-display);z-index:1;border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid;position:relative}.stg.part .num{border-color:var(--warn);color:var(--warn)}.stg .card{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:12px;margin-bottom:14px;padding:18px 20px;display:grid}.stg .card header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.stg h4{font-family:var(--f-display);font-size:19px}.stg .goal{color:var(--muted);font-size:15px}.stg .cols{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;display:grid}.stg ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.stg li{padding-left:16px;font-size:14.5px;position:relative}.stg li:before{content:"";background:var(--blue);border-radius:1px;width:6px;height:6px;position:absolute;top:.62em;left:0}.stg .done-when{background:var(--surface-2);border-radius:8px;align-self:start;padding:12px 14px;font-size:14px}.stg .done-when b{font-family:var(--f-mono);letter-spacing:.1em;color:var(--magenta);margin-bottom:4px;font-size:10.5px;font-weight:500;display:block}.st-chip{font-family:var(--f-mono);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:11px}.st-chip.part{border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.risks{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.risks div{border-top:2px solid var(--warn);gap:6px;padding-top:12px;display:grid}.risks h4{font-family:var(--f-display);font-size:16px}.risks p{color:var(--muted);font-size:14.5px}.srcs{color:var(--muted);font-size:12.5px}@media (max-width:900px){.dji-head,.stg .cols,.risks{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.stg{grid-template-columns:40px minmax(0,1fr);gap:10px}.stg .num{width:40px;height:40px;font-size:15px}.stg:before{left:19px}.stg:first-child:before{top:20px}}.b2b-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:clamp(18px,3vw,32px);display:grid}.hub{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px}.hub .scroll{overflow-x:auto}.hub svg{width:100%;min-width:620px;max-width:1000px;height:auto;margin:0 auto;display:block}.fe{cursor:pointer}.fe rect{fill:var(--surface);stroke:var(--line);stroke-width:1.25px;transition:all .3s}.fe:hover rect{stroke:var(--ink)}.fe.on rect{stroke:var(--magenta);stroke-width:2px;fill:var(--magenta-soft)}.fe text{fill:var(--ink);font-family:var(--f-body);font-size:15.5px;font-weight:600}.fe text.pf{fill:var(--muted);font-family:var(--f-mono);letter-spacing:.04em;font-size:10.5px;font-weight:400}.fe text.sb{fill:var(--muted);font-size:13px;font-weight:400}.dv rect{fill:var(--surface);stroke:var(--line);stroke-width:1.25px;transition:all .3s}.dv text{fill:var(--ink);font-family:var(--f-body);font-size:15px;font-weight:600;transition:opacity .3s}.dv text.sb{fill:var(--muted);font-size:12.5px;font-weight:400}.dv.on rect{stroke:var(--blue);stroke-width:2px;fill:var(--blue-soft)}.dv.off rect,.dv.off text{opacity:.4}.ln{fill:none;stroke:var(--line);stroke-width:1.5px;transition:stroke .3s,opacity .3s}.ln.on{stroke:var(--magenta);stroke-width:2px;stroke-dasharray:6 6;animation:1s linear infinite flow}.ln.dn.on{stroke:var(--blue)}.ln.off{opacity:.35}@keyframes flow{to{stroke-dashoffset:-12px}}.cust{background:var(--surface);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:14px 32px;padding:20px;display:grid}.cust .custpick{grid-column:1/-1}.cust .left{gap:10px;display:grid}.cust .right{gap:14px;display:grid}@media (max-width:760px){.cust{grid-template-columns:minmax(0,1fr)}}.cust h3{font-size:22px}.cust p{color:var(--muted);font-size:15px}.cust .row{gap:6px;display:grid}.cust .row b{font-family:var(--f-mono);letter-spacing:.1em;color:var(--muted);font-size:11px;font-weight:500}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:13px}.chip.m{background:var(--magenta-soft);border-color:var(--magenta)}.chip.d{background:var(--blue-soft);border-color:var(--blue)}.custpick{flex-wrap:wrap;gap:6px;display:flex}.flow{counter-reset:f;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:clamp(36px,5vw,56px);display:grid}.fstep{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-content:start;gap:8px;padding:18px;display:grid;position:relative}.fstep .k{align-items:center;gap:10px;display:flex}.fstep .k i{background:var(--ink);width:30px;height:30px;color:var(--bg);font-style:normal;font-family:var(--f-display);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.fstep h4{font-family:var(--f-display);font-size:17px}.fstep p{color:var(--muted);font-size:14.5px}.fstep .who{font-family:var(--f-mono);color:var(--magenta);letter-spacing:.06em;font-size:10.5px}.why{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:clamp(18px,3vw,32px);margin-top:clamp(36px,5vw,56px);display:grid}.why>div{align-content:start;gap:10px;display:grid}.why h4{font-family:var(--f-display);font-size:19px}.why p{color:var(--muted);font-size:15px}.rev{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px}.rev svg{width:100%;height:auto;display:block}@media (max-width:980px){.b2b-grid,.why{grid-template-columns:minmax(0,1fr)}.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.flow{grid-template-columns:minmax(0,1fr)}}.gloss-top{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.gloss-top input{font:15px var(--f-body);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;width:min(320px,100%);padding:10px 14px}.gloss{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1px;display:grid;overflow:hidden}.gloss div{background:var(--surface);gap:4px;padding:14px 16px;display:grid}.gloss b{font-family:var(--f-mono);color:var(--magenta);font-size:13px;font-weight:500}.gloss span{color:var(--muted);font-size:14px}footer{border-top:1px solid var(--line);color:var(--muted);padding-block:32px 48px;font-size:13px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
