@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cd79e1ff94fa521b-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/89362aa296165c6d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/e11f95d95ac59fa4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/00f4982f357db61e-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/62a3c74fa0e47362-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/8201559e247ad180-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/2173e4bb28c315da-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c6f81e539d11fc99-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/25ab8995c98996d7-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/9ddf1512dbee9c99-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8247d8d2a376ae43-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/e270c9fc4fe96f5a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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:800;font-display:swap;src:url(/_next/static/media/6bb6a9cb68044e10-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/9a3689a7cda641d2-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:800;font-display:swap;src:url(/_next/static/media/bed26dc8a57eea87-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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.00%;size-adjust:110.36%}.__className_0df554{font-family:Be Vietnam Pro,Be Vietnam Pro Fallback;font-style:normal}.__variable_0df554{--font-sans:"Be Vietnam Pro","Be Vietnam Pro Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.p.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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.00%;size-adjust:134.59%}.__className_a55459{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_a55459{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:var(--font-sans),Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono),ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-inset-x-\[50vw\]{left:-50vw;right:-50vw}.inset-x-0{left:0;right:0}.inset-x-\[-10\%\]{left:-10%;right:-10%}.-bottom-px{bottom:-1px}.-left-\[1\.6rem\]{left:-1.6rem}.-left-px{left:-1px}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-\[-9999px\]{left:-9999px}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-\[16\%\]{top:16%}.top-\[40\%\]{top:40%}.isolate{isolation:isolate}.-z-0{z-index:0}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[96\]{z-index:96}.z-\[97\]{z-index:97}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-16{margin-top:4rem;margin-bottom:4rem}.mb-1\.5{margin-bottom:.375rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-14{margin-top:3.5rem}.mt-2{margin-top:.5rem}.mt-28{margin-top:7rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-\[16\/6\]{aspect-ratio:16/6}.aspect-\[4\/5\]{aspect-ratio:4/5}.h-0{height:0}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[clamp\(11rem\2c 22vw\2c 18rem\)\]{height:clamp(11rem,22vw,18rem)}.h-full{height:100%}.h-px{height:1px}.min-h-\[100dvh\]{min-height:100dvh}.w-0{width:0}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[10vw\]{width:10vw}.w-\[3px\]{width:3px}.w-\[84vw\]{width:84vw}.w-\[min\(80vw\2c 360px\)\]{width:min(80vw,360px)}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-3xl{max-width:48rem}.max-w-\[15ch\]{max-width:15ch}.max-w-\[20ch\]{max-width:20ch}.max-w-\[400px\]{max-width:400px}.max-w-\[40ch\]{max-width:40ch}.max-w-\[42ch\]{max-width:42ch}.max-w-\[44ch\]{max-width:44ch}.max-w-\[47ch\]{max-width:47ch}.max-w-\[54ch\]{max-width:54ch}.max-w-\[56ch\]{max-width:56ch}.max-w-\[62ch\]{max-width:62ch}.max-w-page{max-width:1400px}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.origin-bottom{transform-origin:bottom}.origin-center{transform-origin:center}.origin-left{transform-origin:left}.origin-right{transform-origin:right}.origin-top{transform-origin:top}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-6{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-6{--tw-translate-y:1.5rem}.-rotate-3{--tw-rotate:-3deg}.-rotate-3,.-skew-x-12{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-skew-x-12{--tw-skew-x:-12deg}.-skew-x-\[18deg\]{--tw-skew-x:-18deg}.-skew-x-\[18deg\],.skew-x-\[18deg\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skew-x-\[18deg\]{--tw-skew-x:18deg}.scale-x-0{--tw-scale-x:0}.scale-x-0,.scale-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-y-0{--tw-scale-y:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.select-none{user-select:none}.resize-y{resize:vertical}.resize{resize:both}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-mandatory{--tw-scroll-snap-strictness:mandatory}.snap-center{scroll-snap-align:center}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-14{gap:3.5rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-px{gap:1px}.gap-x-10{column-gap:2.5rem}.gap-x-6{column-gap:1.5rem}.gap-x-8{column-gap:2rem}.gap-x-\[0\.18em\]{column-gap:.18em}.gap-y-12{row-gap:3rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-5{row-gap:1.25rem}.gap-y-\[0\.12em\]{row-gap:.12em}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-clip{overflow:clip}.overflow-x-auto{overflow-x:auto}.overflow-x-clip{overflow-x:clip}.overscroll-x-contain{overscroll-behavior-x:contain}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.rounded-3xl{border-radius:1.5rem}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-full{border-radius:9999px}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-y-4{border-top-width:4px;border-bottom-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-accent{--tw-border-opacity:1;border-color:rgb(var(--accent)/var(--tw-border-opacity,1))}.border-accent\/40{border-color:rgb(var(--accent)/.4)}.border-fg{--tw-border-opacity:1;border-color:rgb(var(--fg)/var(--tw-border-opacity,1))}.border-line{--tw-border-opacity:1;border-color:rgb(var(--line)/var(--tw-border-opacity,1))}.border-line\/60{border-color:rgb(var(--line)/.6)}.bg-accent{--tw-bg-opacity:1;background-color:rgb(var(--accent)/var(--tw-bg-opacity,1))}.bg-accent\/10{background-color:rgb(var(--accent)/.1)}.bg-bg{--tw-bg-opacity:1;background-color:rgb(var(--bg)/var(--tw-bg-opacity,1))}.bg-bg\/80{background-color:rgb(var(--bg)/.8)}.bg-bg\/90{background-color:rgb(var(--bg)/.9)}.bg-fg{background-color:rgb(var(--fg)/var(--tw-bg-opacity,1))}.bg-fg,.bg-hot{--tw-bg-opacity:1}.bg-hot{background-color:rgb(var(--hot)/var(--tw-bg-opacity,1))}.bg-lime{--tw-bg-opacity:1;background-color:rgb(var(--lime)/var(--tw-bg-opacity,1))}.bg-line{--tw-bg-opacity:1;background-color:rgb(var(--line)/var(--tw-bg-opacity,1))}.bg-line\/60{background-color:rgb(var(--line)/.6)}.bg-panel{--tw-bg-opacity:1;background-color:rgb(var(--panel)/var(--tw-bg-opacity,1))}.bg-panel-elevated{--tw-bg-opacity:1;background-color:rgb(var(--panel-elevated)/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-accent{--tw-gradient-from:rgb(var(--accent)/1) var(--tw-gradient-from-position);--tw-gradient-to:rgb(var(--accent)/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-accent\/15{--tw-gradient-from:rgb(var(--accent)/0.15) var(--tw-gradient-from-position);--tw-gradient-to:rgb(var(--accent)/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-mint{--tw-gradient-to:rgb(var(--mint)/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgb(var(--mint)/1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-mint\/10{--tw-gradient-to:rgb(var(--mint)/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgb(var(--mint)/0.1) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-water{--tw-gradient-to:rgb(var(--water)/1) var(--tw-gradient-to-position)}.to-water\/10{--tw-gradient-to:rgb(var(--water)/0.1) var(--tw-gradient-to-position)}.object-cover{object-fit:cover}.object-\[center_35\%\]{object-position:center 35%}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[0\.06em\]{padding-left:.06em;padding-right:.06em}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-14{padding-top:3.5rem;padding-bottom:3.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0\.5{padding-bottom:.125rem}.pb-12{padding-bottom:3rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-\[0\.03em\]{padding-bottom:.03em}.pl-6{padding-left:1.5rem}.pl-8{padding-left:2rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-20{padding-top:5rem}.pt-24{padding-top:6rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-\[0\.3em\]{padding-top:.3em}.font-mono{font-family:var(--font-mono),ui-monospace,monospace}.font-sans{font-family:var(--font-sans),Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[clamp\(1\.1rem\2c 3vw\2c 3rem\)\]{font-size:clamp(1.1rem,3vw,3rem)}.text-\[clamp\(1\.5rem\2c 3\.4vw\2c 2\.5rem\)\]{font-size:clamp(1.5rem,3.4vw,2.5rem)}.text-\[clamp\(1\.5rem\2c 3\.6vw\2c 3\.25rem\)\]{font-size:clamp(1.5rem,3.6vw,3.25rem)}.text-\[clamp\(1\.5rem\2c 6\.4vw\2c 5\.5rem\)\]{font-size:clamp(1.5rem,6.4vw,5.5rem)}.text-\[clamp\(1\.6rem\2c 4\.2vw\2c 3\.6rem\)\]{font-size:clamp(1.6rem,4.2vw,3.6rem)}.text-\[clamp\(1\.75rem\2c 5vw\2c 3\.25rem\)\]{font-size:clamp(1.75rem,5vw,3.25rem)}.text-\[clamp\(1\.9rem\2c 4\.6vw\2c 3\.75rem\)\]{font-size:clamp(1.9rem,4.6vw,3.75rem)}.text-\[clamp\(1rem\2c 2vw\2c 1\.8rem\)\]{font-size:clamp(1rem,2vw,1.8rem)}.text-\[clamp\(2\.5rem\2c 8\.4vw\2c 7\.5rem\)\]{font-size:clamp(2.5rem,8.4vw,7.5rem)}.text-\[clamp\(2rem\2c 6vw\2c 4rem\)\]{font-size:clamp(2rem,6vw,4rem)}.text-\[clamp\(3rem\2c 10vw\2c 9rem\)\]{font-size:clamp(3rem,10vw,9rem)}.text-\[clamp\(3rem\2c 8\.4vw\2c 7\.25rem\)\]{font-size:clamp(3rem,8.4vw,7.25rem)}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[0\.92\]{line-height:.92}.leading-\[0\.95\]{line-height:.95}.leading-\[1\.02\]{line-height:1.02}.leading-\[1\.03\]{line-height:1.03}.leading-\[1\.12\]{line-height:1.12}.leading-\[1\.1\]{line-height:1.1}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[-0\.01em\]{letter-spacing:-.01em}.tracking-\[-0\.025em\]{letter-spacing:-.025em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.035em\]{letter-spacing:-.035em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[-0\.045em\]{letter-spacing:-.045em}.tracking-\[-0\.04em\]{letter-spacing:-.04em}.tracking-\[-0\.05em\]{letter-spacing:-.05em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.text-\[\#021a0e\]{--tw-text-opacity:1;color:rgb(2 26 14/var(--tw-text-opacity,1))}.text-\[\#08110c\]{--tw-text-opacity:1;color:rgb(8 17 12/var(--tw-text-opacity,1))}.text-accent{--tw-text-opacity:1;color:rgb(var(--accent)/var(--tw-text-opacity,1))}.text-bg{color:rgb(var(--bg)/var(--tw-text-opacity,1))}.text-bg,.text-fg{--tw-text-opacity:1}.text-fg{color:rgb(var(--fg)/var(--tw-text-opacity,1))}.text-hot{--tw-text-opacity:1;color:rgb(var(--hot)/var(--tw-text-opacity,1))}.text-lime{--tw-text-opacity:1;color:rgb(var(--lime)/var(--tw-text-opacity,1))}.text-line{--tw-text-opacity:1;color:rgb(var(--line)/var(--tw-text-opacity,1))}.text-muted{--tw-text-opacity:1;color:rgb(var(--muted)/var(--tw-text-opacity,1))}.text-muted\/60{color:rgb(var(--muted)/.6)}.text-muted\/80{color:rgb(var(--muted)/.8)}.text-muted\/90{color:rgb(var(--muted)/.9)}.text-on-accent{--tw-text-opacity:1;color:rgb(var(--on-accent)/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-water{--tw-text-opacity:1;color:rgb(var(--water)/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-\[0_0_0_0_rgb\(var\(--lime\)\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_0_rgb\(var\(--lime\)\)\]{--tw-shadow:0 0 0 0 rgb(var(--lime));--tw-shadow-colored:0 0 0 0 var(--tw-shadow-color)}.shadow-\[0_30px_80px_-20px_rgb\(var\(--accent\)\/0\.5\)\]{--tw-shadow:0 30px 80px -20px rgb(var(--accent)/0.5);--tw-shadow-colored:0 30px 80px -20px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[10px_10px_0_rgb\(var\(--hot\)\)\]{--tw-shadow:10px 10px 0 rgb(var(--hot));--tw-shadow-colored:10px 10px 0 var(--tw-shadow-color)}.shadow-\[10px_10px_0_rgb\(var\(--hot\)\)\],.shadow-\[4px_4px_0_rgb\(var\(--fg\)\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[4px_4px_0_rgb\(var\(--fg\)\)\]{--tw-shadow:4px 4px 0 rgb(var(--fg));--tw-shadow-colored:4px 4px 0 var(--tw-shadow-color)}.shadow-\[8px_8px_0_rgb\(var\(--accent\)\)\]{--tw-shadow:8px 8px 0 rgb(var(--accent));--tw-shadow-colored:8px 8px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-1{outline-width:1px}.outline-transparent{outline-color:transparent}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-inset{--tw-ring-inset:inset}.ring-white\/15{--tw-ring-color:rgb(255 255 255/0.15)}.blur-2xl{--tw-blur:blur(40px)}.blur-2xl,.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)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-xl{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px)}.transition-\[background\]{transition-property:background;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[backface-visibility\:hidden\]{backface-visibility:hidden}.\[background-size\:9px_9px\]{background-size:9px 9px}.\[background\:radial-gradient\(currentColor_28\%\2c transparent_30\%\)\]{background:radial-gradient(currentColor 28%,transparent 30%)}.\[mask-image\:linear-gradient\(\#000_60\%\2c transparent\)\]{mask-image:linear-gradient(#000 60%,transparent)}.\[mask-image\:linear-gradient\(90deg\2c transparent\2c \#000_12\%\2c \#000_88\%\2c transparent\)\]{mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.\[mask-image\:linear-gradient\(transparent\2c \#000_30\%\)\]{mask-image:linear-gradient(transparent,#000 30%)}.\[will-change\:transform\]{will-change:transform}:root{--bg:238 240 228;--fg:8 24 17;--muted:72 94 82;--line:207 215 197;--panel:247 248 240;--panel-elevated:228 233 219;--accent:10 120 60;--mint:22 163 74;--water:21 128 61;--hot:0 150 70;--lime:134 239 172;--on-accent:238 255 232;color-scheme:light}html.dark{--bg:6 13 10;--fg:232 243 233;--muted:128 156 141;--line:24 41 33;--panel:11 21 17;--panel-elevated:17 31 25;--accent:0 214 110;--mint:61 220 132;--water:74 222 128;--hot:0 230 118;--lime:170 255 205;--on-accent:4 16 11;color-scheme:dark}@media (prefers-color-scheme:dark){html:not(.light):not(.dark){--bg:6 13 10;--fg:232 243 233;--muted:128 156 141;--line:24 41 33;--panel:11 21 17;--panel-elevated:17 31 25;--accent:0 214 110;--mint:61 220 132;--water:74 222 128;--hot:0 230 118;--lime:170 255 205;--on-accent:4 16 11;color-scheme:dark}}.grad-accent{background-image:linear-gradient(115deg,rgb(var(--accent)),rgb(var(--mint)) 55%,rgb(var(--water)))}.jade-text{background:linear-gradient(100deg,rgb(var(--accent)),rgb(var(--mint)) 35%,rgb(var(--water)) 65%,rgb(var(--accent)));background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 7s ease-in-out infinite alternate}.jade-text *{background:inherit;-webkit-background-clip:text;background-clip:text;color:transparent;animation:inherit}@keyframes sheen{to{background-position:100% 0}}.outline-text{color:transparent;-webkit-text-stroke:1.5px rgb(var(--fg)/.55)}.grid-pattern{background-size:36px 36px;background-image:linear-gradient(to right,rgb(var(--line)/.5) 1px,transparent 1px),linear-gradient(to bottom,rgb(var(--line)/.5) 1px,transparent 1px)}.dot-pattern{background-size:24px 24px;background-image:radial-gradient(rgb(var(--line)/.8) 1px,transparent 1px)}html{scroll-behavior:smooth}body,html{background:rgb(var(--bg))}body{color:rgb(var(--fg));-webkit-font-smoothing:antialiased;overflow-x:clip}body:after{content:"";position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");animation:grain 1.2s steps(6) infinite}html.dark body:after{opacity:.09;mix-blend-mode:overlay}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}::selection{background:rgb(var(--lime));color:#08110c}:focus-visible{outline:2px solid rgb(var(--accent));outline-offset:3px}.aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.aurora i{position:absolute;border-radius:9999px;filter:blur(100px);opacity:.32;will-change:transform}.aurora i:first-child{width:46vw;height:46vw;left:-8vw;top:-10vw;background:rgb(var(--accent)/.55);animation:drift1 18s ease-in-out infinite alternate}.aurora i:nth-child(2){width:38vw;height:38vw;right:-6vw;top:8vh;background:rgb(var(--mint)/.35);animation:drift2 22s ease-in-out infinite alternate}.aurora i:nth-child(3){width:34vw;height:34vw;left:35vw;bottom:-14vw;background:rgb(var(--water)/.35);animation:drift3 26s ease-in-out infinite alternate}html.light .aurora i{opacity:.4}@keyframes drift1{to{transform:translate(14vw,10vh) scale(1.2)}}@keyframes drift2{to{transform:translate(-12vw,14vh) scale(.85)}}@keyframes drift3{to{transform:translate(-16vw,-10vh) scale(1.25)}}.spot{position:relative;isolation:isolate}.spot:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgb(var(--accent)/.18),transparent 60%)}.spot:hover:before{opacity:1}.spot:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;padding:1px;opacity:0;transition:opacity .35s;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgb(var(--mint)),transparent 70%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.spot:hover:after{opacity:1}.cursor-dot,.cursor-ring{position:fixed;left:0;top:0;z-index:120;pointer-events:none;display:none}@media (pointer:fine){.js .cursor-dot,.js .cursor-ring{display:block}}.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:9999px;background:rgb(var(--hot))}.cursor-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:9999px;border:1.5px solid rgb(var(--accent));transition:width .25s,height .25s,margin .25s,background .25s}.cursor-ring.is-hover{width:68px;height:68px;margin:-34px 0 0 -34px;background:rgb(var(--lime)/.18)}.scroll-bar{position:fixed;left:0;top:0;height:3px;width:100%;z-index:110;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,rgb(var(--accent)),rgb(var(--mint)),rgb(var(--hot)))}.marker{background:linear-gradient(transparent 58%,rgb(var(--lime)/.75) 58% 92%,transparent 92%);padding:0 .1em}html.dark .marker{background:linear-gradient(transparent 58%,rgb(var(--lime)/.28) 58% 92%,transparent 92%)}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis.lenis-smooth iframe{pointer-events:none}@keyframes marquee{to{transform:translate3d(-50%,0,0)}}.marquee-track{animation:marquee 36s linear infinite}.marquee-rev{animation-direction:reverse}.marquee:hover .marquee-track{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}.glow-sm{box-shadow:0 0 20px -5px rgb(var(--accent)/.3)}.glow-md{box-shadow:0 0 35px -8px rgb(var(--accent)/.35)}.halftone{background-image:radial-gradient(rgb(var(--fg)/.35) 1.2px,transparent 1.6px);background-size:10px 10px;-webkit-mask-image:radial-gradient(70% 60% at 85% 20%,#000,transparent 70%);mask-image:radial-gradient(70% 60% at 85% 20%,#000,transparent 70%);opacity:.5;pointer-events:none}*,:after,:before{border-radius:0!important}.cursor-ring{transform:rotate(45deg)}.cat{color:#38bdf8;filter:drop-shadow(0 0 5px rgb(14 165 233/.9)) drop-shadow(0 0 14px rgb(14 165 233/.45))}html.light .cat{color:#0369a1;filter:drop-shadow(0 0 6px rgb(56 189 248/.7))}.zz{color:#38bdf8;animation:zfloat 2.2s ease-in-out infinite}html.light .zz{color:#0369a1}@keyframes zfloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.cat-bubble{position:absolute;left:50%;bottom:calc(100% - 34px);transform:translateX(-50%);width:max-content;max-width:240px;pointer-events:none;z-index:2}.cat-bubble.below{bottom:auto;top:calc(100% - 20px)}.cb-in{pointer-events:auto;position:relative;background:#07120f;color:#7dd3fc;padding:2px 4px;font:700 12px/1.25 ui-monospace,SFMono-Regular,Menlo,Consolas,Noto Sans Mono CJK SC,monospace;white-space:pre;text-shadow:0 0 6px #0ea5e9;transform:rotate(-1deg)}html.light .cb-in{background:#fff;color:#0369a1;text-shadow:none}.cb-in p{margin:0;white-space:pre}.zfly{font:800 14px/1 ui-monospace,Menlo,Consolas,monospace}.cat-heart,.zfly{position:absolute;color:#38bdf8;text-shadow:0 0 8px #0ea5e9;pointer-events:none}.cat-heart{font-size:16px;line-height:1}.cat-shadow{position:absolute;left:14%;bottom:-6px;margin:0;font:700 8px/5px ui-monospace,Menlo,Consolas,monospace;white-space:pre;color:rgba(0,0,0,.55);pointer-events:none}html.light .cat-shadow{color:rgba(0,0,0,.4)}#contact .text-muted,#contact [class*="text-fg/"],#nctu .text-muted,#nctu [class*="text-fg/"],#top .text-muted,#top [class*="text-fg/"]{color:rgb(var(--fg))}.tk-outline{color:transparent;-webkit-text-stroke:2px #021a0e}.placeholder\:text-muted\/70::placeholder{color:rgb(var(--muted)/.7)}.last\:mb-0:last-child{margin-bottom:0}.last\:pb-0:last-child{padding-bottom:0}.hover\:-translate-x-0\.5:hover{--tw-translate-x:-0.125rem}.hover\:-translate-x-0\.5:hover,.hover\:-translate-y-0\.5:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent:hover{--tw-border-opacity:1;border-color:rgb(var(--accent)/var(--tw-border-opacity,1))}.hover\:border-accent\/60:hover{border-color:rgb(var(--accent)/.6)}.hover\:bg-fg:hover{--tw-bg-opacity:1;background-color:rgb(var(--fg)/var(--tw-bg-opacity,1))}.hover\:text-accent:hover{--tw-text-opacity:1;color:rgb(var(--accent)/var(--tw-text-opacity,1))}.hover\:text-bg:hover{--tw-text-opacity:1;color:rgb(var(--bg)/var(--tw-text-opacity,1))}.hover\:text-fg:hover{--tw-text-opacity:1;color:rgb(var(--fg)/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_5px_rgb\(var\(--lime\)\/0\.55\)\]:hover{--tw-shadow:0 0 0 5px rgb(var(--lime)/0.55);--tw-shadow-colored:0 0 0 5px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-accent:focus{--tw-border-opacity:1;border-color:rgb(var(--accent)/var(--tw-border-opacity,1))}.active\:scale-\[0\.98\]:active{--tw-scale-x:0.98;--tw-scale-y:0.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:opacity-70:disabled{opacity:.7}.group:hover .group-hover\:origin-left{transform-origin:left}.group\/src:hover .group-hover\/src\:-translate-y-0\.5{--tw-translate-y:-0.125rem}.group\/src:hover .group-hover\/src\:-translate-y-0\.5,.group\/src:hover .group-hover\/src\:translate-x-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/src:hover .group-hover\/src\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:-translate-y-0\.5{--tw-translate-y:-0.125rem}.group:hover .group-hover\:-translate-y-0\.5,.group:hover .group-hover\:-translate-y-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-1{--tw-translate-y:-0.25rem}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-0\.5,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:translate-y-0\.5{--tw-translate-y:0.125rem}.group:hover .group-hover\:scale-x-100,.group:hover .group-hover\:translate-y-0\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-x-100{--tw-scale-x:1}.group:hover .group-hover\:scale-y-100{--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-accent{--tw-text-opacity:1;color:rgb(var(--accent)/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-on-accent{--tw-text-opacity:1;color:rgb(var(--on-accent)/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-90{opacity:.9}@media (min-width:640px){.sm\:inline-flex{display:inline-flex}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:gap-3{gap:.75rem}.sm\:gap-6{gap:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:768px){.md\:static{position:static}.md\:sticky{position:sticky}.md\:bottom-6{bottom:1.5rem}.md\:right-6{right:1.5rem}.md\:top-28{top:7rem}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-span-9{grid-column:span 9/span 9}.md\:col-start-2{grid-column-start:2}.md\:mx-0{margin-left:0;margin-right:0}.md\:my-24{margin-top:6rem;margin-bottom:6rem}.md\:mb-0{margin-bottom:0}.md\:mb-5{margin-bottom:1.25rem}.md\:ml-auto{margin-left:auto}.md\:mr-0{margin-right:0}.md\:mt-0{margin-top:0}.md\:mt-4{margin-top:1rem}.md\:mt-5{margin-top:1.25rem}.md\:mt-7{margin-top:1.75rem}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:grid{display:grid}.md\:aspect-\[16\/10\]{aspect-ratio:16/10}.md\:h-12{height:3rem}.md\:h-9{height:2.25rem}.md\:h-\[100dvh\]{height:100dvh}.md\:w-12{width:3rem}.md\:w-9{width:2.25rem}.md\:w-\[72vw\]{width:72vw}.md\:w-max{width:max-content}.md\:max-w-\[940px\]{max-width:940px}.md\:snap-none{scroll-snap-type:none}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-\[7rem_1fr\]{grid-template-columns:7rem 1fr}.md\:flex-row{flex-direction:row}.md\:flex-col{flex-direction:column}.md\:items-center{align-items:center}.md\:justify-center{justify-content:center}.md\:justify-between{justify-content:space-between}.md\:gap-10{gap:2.5rem}.md\:gap-12{gap:3rem}.md\:gap-2{gap:.5rem}.md\:gap-20{gap:5rem}.md\:gap-8{gap:2rem}.md\:overflow-hidden{overflow:hidden}.md\:overflow-visible{overflow:visible}.md\:border-0{border-width:0}.md\:bg-transparent{background-color:transparent}.md\:p-0{padding:0}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:p-8{padding:2rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:py-20{padding-top:5rem;padding-bottom:5rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}.md\:py-36{padding-top:9rem;padding-bottom:9rem}.md\:pb-0{padding-bottom:0}.md\:pb-10{padding-bottom:2.5rem}.md\:pb-24{padding-bottom:6rem}.md\:pl-12{padding-left:3rem}.md\:pt-14{padding-top:3.5rem}.md\:pt-2{padding-top:.5rem}.md\:pt-32{padding-top:8rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:backdrop-blur-none{--tw-backdrop-blur: ;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.md\:will-change-transform{will-change:transform}}