@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Orbitron:wght@500;600;700;800&family=Rajdhani:wght@500;600;700&family=Space+Grotesk:wght@400;500;700&display=swap";*,:before,:after{--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 / .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 / .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: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Outfit,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans SC,PingFang SC,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]){-webkit-text-decoration:underline dotted;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,samp,pre{font-family:JetBrains Mono,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,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-3{top:.75rem;right:.75rem;bottom:.75rem;left:.75rem}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-1{bottom:-.25rem}.-left-10{left:-2.5rem}.-right-0\.5{right:-.125rem}.-top-0\.5{top:-.125rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.left-6{left:1.5rem}.right-0{right:0}.right-1\.5{right:.375rem}.right-3{right:.75rem}.right-4{right:1rem}.right-5{right:1.25rem}.right-6{right:1.5rem}.right-\[var\(--container-gutter\)\]{right:var(--container-gutter)}.right-full{right:100%}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-16{top:4rem}.top-2{top:.5rem}.top-24{top:6rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[calc\(100\%\+7px\)\]{top:calc(100% + 7px)}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-\[10020\]{z-index:10020}.z-\[100\]{z-index:100}.z-\[11000\]{z-index:11000}.z-\[12020\]{z-index:12020}.z-\[120\]{z-index:120}.z-\[1\]{z-index:1}.z-\[200\]{z-index:200}.z-\[250\]{z-index:250}.z-\[2\]{z-index:2}.z-\[300\]{z-index:300}.z-\[3\]{z-index:3}.z-\[400\]{z-index:400}.z-\[420\]{z-index:420}.z-\[500\]{z-index:500}.z-\[520\]{z-index:520}.order-1{order:1}.order-2{order:2}.col-span-2{grid-column:span 2 / span 2}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.m-0{margin:0}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-\[0\.85rem\]{margin-top:.85rem;margin-bottom:.85rem}.-mt-1{margin-top:-.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-24{margin-bottom:6rem}.mb-3{margin-bottom:.75rem}.mb-3\.5{margin-bottom:.875rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.mb-\[1\.02rem\]{margin-bottom:1.02rem}.mb-\[1\.05rem\]{margin-bottom:1.05rem}.mb-\[1\.12rem\]{margin-bottom:1.12rem}.mb-\[2rem\]{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-3{margin-left:.75rem}.ml-\[0\.06em\]{margin-left:.06em}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\[1\.46rem\]{margin-top:1.46rem}.mt-\[1rem\]{margin-top:1rem}.mt-\[2\.2rem\]{margin-top:2.2rem}.mt-\[2rem\]{margin-top:2rem}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.aspect-\[16\/10\]{aspect-ratio:16/10}.aspect-\[3\/2\]{aspect-ratio:3/2}.aspect-\[4\/3\]{aspect-ratio:4/3}.\!h-20{height:5rem!important}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[0\.92rem\]{height:.92rem}.h-\[10px\]{height:10px}.h-\[11px\]{height:11px}.h-\[168px\]{height:168px}.h-\[16px\]{height:16px}.h-\[17px\]{height:17px}.h-\[1px\]{height:1px}.h-\[206px\]{height:206px}.h-\[220px\]{height:220px}.h-\[24rem\]{height:24rem}.h-\[280px\]{height:280px}.h-\[2px\]{height:2px}.h-\[320px\]{height:320px}.h-\[36px\]{height:36px}.h-\[38px\]{height:38px}.h-\[3px\]{height:3px}.h-\[400px\]{height:400px}.h-\[40px\]{height:40px}.h-\[420px\]{height:420px}.h-\[43px\]{height:43px}.h-\[5px\]{height:5px}.h-\[7px\]{height:7px}.h-\[80px\]{height:80px}.h-\[calc\(100vh-3\.5rem\)\]{height:calc(100vh - 3.5rem)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-10{min-height:2.5rem}.min-h-\[110px\]{min-height:110px}.min-h-\[120px\]{min-height:120px}.min-h-\[220px\]{min-height:220px}.min-h-\[22px\]{min-height:22px}.min-h-\[28px\]{min-height:28px}.min-h-\[32px\]{min-height:32px}.min-h-\[340px\]{min-height:340px}.min-h-\[36px\]{min-height:36px}.min-h-\[38px\]{min-height:38px}.min-h-\[40px\]{min-height:40px}.min-h-\[420px\]{min-height:420px}.min-h-\[45vh\]{min-height:45vh}.min-h-\[60vh\]{min-height:60vh}.min-h-\[96px\]{min-height:96px}.min-h-screen{min-height:100vh}.\!w-20{width:5rem!important}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[0\.92rem\]{width:.92rem}.w-\[10px\]{width:10px}.w-\[11px\]{width:11px}.w-\[160px\]{width:160px}.w-\[17px\]{width:17px}.w-\[320px\]{width:320px}.w-\[3px\]{width:3px}.w-\[560px\]{width:560px}.w-\[5px\]{width:5px}.w-\[68\%\]{width:68%}.w-\[74px\]{width:74px}.w-\[7px\]{width:7px}.w-\[80px\]{width:80px}.w-\[84\%\]{width:84%}.w-\[88\%\]{width:88%}.w-\[88px\]{width:88px}.w-\[94\%\]{width:94%}.w-\[min\(80vw\,320px\)\]{width:min(80vw,320px)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[16px\]{min-width:16px}.min-w-\[180px\]{min-width:180px}.min-w-\[40px\]{min-width:40px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[1280px\]{max-width:1280px}.max-w-\[1288px\]{max-width:1288px}.max-w-\[1332px\]{max-width:1332px}.max-w-\[2160px\]{max-width:2160px}.max-w-\[220px\]{max-width:220px}.max-w-\[36ch\]{max-width:36ch}.max-w-\[40rem\]{max-width:40rem}.max-w-\[42ch\]{max-width:42ch}.max-w-\[48ch\]{max-width:48ch}.max-w-\[520px\]{max-width:520px}.max-w-\[57ch\]{max-width:57ch}.max-w-\[58ch\]{max-width:58ch}.max-w-\[680px\]{max-width:680px}.max-w-\[760px\]{max-width:760px}.max-w-\[780px\]{max-width:780px}.max-w-\[85vw\]{max-width:85vw}.max-w-\[92vw\]{max-width:92vw}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-left{transform-origin:left}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-1\.5{--tw-translate-y: .375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-125{--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[0\.9\]{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-0{--tw-scale-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-100{--tw-scale-x: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[pulse_0\.5s_infinite\]{animation:pulse .5s infinite}.animate-\[pulse_1\.6s_ease-in-out_infinite\]{animation:pulse 1.6s ease-in-out infinite}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.animate-\[scan_1s_ease-in-out_infinite\]{animation:scan 1s ease-in-out infinite}.animate-\[shimmer_1\.5s_ease-in-out_infinite\]{animation:shimmer 1.5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-none{animation:none}@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(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-crosshair{cursor:crosshair}.cursor-default{cursor:default}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:grab}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.touch-pan-y{--tw-pan-y: pan-y;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.snap-start{scroll-snap-align:start}.scroll-mt-28{scroll-margin-top:7rem}.scroll-mt-32{scroll-margin-top:8rem}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.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-7{gap:1.75rem}.gap-8{gap:2rem}.gap-\[0\.7rem\]{gap:.7rem}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-3\.5{-moz-column-gap:.875rem;column-gap:.875rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-x-7{-moz-column-gap:1.75rem;column-gap:1.75rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-5{row-gap:1.25rem}.gap-y-8{row-gap:2rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-14>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3.5rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-24>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(6rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(6rem * var(--tw-space-y-reverse))}.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))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.space-y-\[0\.86rem\]>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.86rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.86rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-white\/10>:not([hidden])~:not([hidden]){border-color:#ffffff1a}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overscroll-contain{overscroll-behavior:contain}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[1\.4rem\]{border-radius:1.4rem}.rounded-\[18px\]{border-radius:18px}.rounded-\[22px\]{border-radius:22px}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-\[4px\]{border-radius:4px}.rounded-\[7px\]{border-radius:7px}.rounded-\[var\(--radius-card\)\]{border-radius:var(--radius-card)}.rounded-\[var\(--radius-control\)\]{border-radius:var(--radius-control)}.rounded-\[var\(--radius-panel\)\]{border-radius:var(--radius-panel)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-\[0\.5px\]{border-width:.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-accent-blue\/20{border-color:#3b82f633}.border-accent-blue\/30{border-color:#3b82f64d}.border-accent-blue\/40{border-color:#3b82f666}.border-accent-blue\/45{border-color:#3b82f673}.border-accent-blue\/50{border-color:#3b82f680}.border-accent-blue\/60{border-color:#3b82f699}.border-accent-blue\/70{border-color:#3b82f6b3}.border-amber-400\/30{border-color:#fbbf244d}.border-amber-400\/35{border-color:#fbbf2459}.border-amber-400\/50{border-color:#fbbf2480}.border-blue-400\/30{border-color:#60a5fa4d}.border-blue-400\/35{border-color:#60a5fa59}.border-blue-400\/40{border-color:#60a5fa66}.border-blue-400\/\[0\.25\]{border-color:#60a5fa40}.border-blue-500\/40{border-color:#3b82f666}.border-blue-500\/50{border-color:#3b82f680}.border-cyan-500\/30{border-color:#06b6d44d}.border-emerald-400\/50{border-color:#34d39980}.border-green-400\/30{border-color:#4ade804d}.border-green-500\/20{border-color:#22c55e33}.border-purple-400\/50{border-color:#c084fc80}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/20{border-color:#ef444433}.border-red-500\/40{border-color:#ef444466}.border-red-500\/50{border-color:#ef444480}.border-transparent{border-color:transparent}.border-violet-300\/30{border-color:#c4b5fd4d}.border-white\/10{border-color:#ffffff1a}.border-white\/15{border-color:#ffffff26}.border-white\/20{border-color:#fff3}.border-white\/30{border-color:#ffffff4d}.border-white\/35{border-color:#ffffff59}.border-white\/5{border-color:#ffffff0d}.border-white\/70{border-color:#ffffffb3}.border-white\/\[0\.048\]{border-color:#ffffff0c}.border-white\/\[0\.04\]{border-color:#ffffff0a}.border-white\/\[0\.05\]{border-color:#ffffff0d}.border-white\/\[0\.06\]{border-color:#ffffff0f}.border-white\/\[0\.075\]{border-color:#ffffff13}.border-white\/\[0\.07\]{border-color:#ffffff12}.border-white\/\[0\.082\]{border-color:#ffffff15}.border-white\/\[0\.08\]{border-color:#ffffff14}.border-white\/\[0\.09\]{border-color:#ffffff17}.border-white\/\[0\.10\]{border-color:#ffffff1a}.border-white\/\[0\.12\]{border-color:#ffffff1f}.border-white\/\[0\.14\]{border-color:#ffffff24}.border-white\/\[0\.16\]{border-color:#ffffff29}.border-white\/\[0\.17\]{border-color:#ffffff2b}.border-white\/\[0\.18\]{border-color:#ffffff2e}.border-white\/\[0\.1\]{border-color:#ffffff1a}.border-white\/\[0\.28\]{border-color:#ffffff47}.border-white\/\[0\.2\]{border-color:#fff3}.border-yellow-300\/30{border-color:#fde0474d}.border-zinc-700\/55{border-color:#3f3f468c}.border-zinc-700\/70{border-color:#3f3f46b3}.bg-\[\#000\]{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-\[\#01040a\]{--tw-bg-opacity: 1;background-color:rgb(1 4 10 / var(--tw-bg-opacity, 1))}.bg-\[\#020202\]{--tw-bg-opacity: 1;background-color:rgb(2 2 2 / var(--tw-bg-opacity, 1))}.bg-\[\#020202\]\/90{background-color:#020202e6}.bg-\[\#020202\]\/95{background-color:#020202f2}.bg-\[\#02040a\]{--tw-bg-opacity: 1;background-color:rgb(2 4 10 / var(--tw-bg-opacity, 1))}.bg-\[\#04070b\]{--tw-bg-opacity: 1;background-color:rgb(4 7 11 / var(--tw-bg-opacity, 1))}.bg-\[\#050505\]{--tw-bg-opacity: 1;background-color:rgb(5 5 5 / var(--tw-bg-opacity, 1))}.bg-\[\#050505\]\/70{background-color:#050505b3}.bg-\[\#050505\]\/85{background-color:#050505d9}.bg-\[\#05070b\]\/\[0\.68\]{background-color:#05070bad}.bg-\[\#05070c\]{--tw-bg-opacity: 1;background-color:rgb(5 7 12 / var(--tw-bg-opacity, 1))}.bg-\[\#050912\]\/\[0\.88\]{background-color:#050912e0}.bg-\[\#060606\]{--tw-bg-opacity: 1;background-color:rgb(6 6 6 / var(--tw-bg-opacity, 1))}.bg-\[\#080808\]{--tw-bg-opacity: 1;background-color:rgb(8 8 8 / var(--tw-bg-opacity, 1))}.bg-\[\#0a0a0a\]{--tw-bg-opacity: 1;background-color:rgb(10 10 10 / var(--tw-bg-opacity, 1))}.bg-\[\#0a0e1a\]\/90{background-color:#0a0e1ae6}.bg-\[\#0e0e0e\]{--tw-bg-opacity: 1;background-color:rgb(14 14 14 / var(--tw-bg-opacity, 1))}.bg-\[\#0f0f0f\]{--tw-bg-opacity: 1;background-color:rgb(15 15 15 / var(--tw-bg-opacity, 1))}.bg-\[\#111\]{--tw-bg-opacity: 1;background-color:rgb(17 17 17 / var(--tw-bg-opacity, 1))}.bg-accent-blue{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-accent-blue\/10{background-color:#3b82f61a}.bg-accent-blue\/15{background-color:#3b82f626}.bg-accent-blue\/20{background-color:#3b82f633}.bg-accent-blue\/5{background-color:#3b82f60d}.bg-accent-blue\/50{background-color:#3b82f680}.bg-accent-blue\/70{background-color:#3b82f6b3}.bg-accent-blue\/80{background-color:#3b82f6cc}.bg-accent-blue\/\[0\.25\]{background-color:#3b82f640}.bg-amber-400\/10{background-color:#fbbf241a}.bg-amber-400\/80{background-color:#fbbf24cc}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-500\/25{background-color:#f59e0b40}.bg-bg{--tw-bg-opacity: 1;background-color:rgb(5 6 8 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/20{background-color:#0003}.bg-black\/35{background-color:#00000059}.bg-black\/45{background-color:#00000073}.bg-black\/60{background-color:#0009}.bg-black\/70{background-color:#000000b3}.bg-black\/80{background-color:#000c}.bg-black\/\[0\.72\]{background-color:#000000b8}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/15{background-color:#3b82f626}.bg-cyan-400{--tw-bg-opacity: 1;background-color:rgb(34 211 238 / var(--tw-bg-opacity, 1))}.bg-emerald-400{--tw-bg-opacity: 1;background-color:rgb(52 211 153 / var(--tw-bg-opacity, 1))}.bg-emerald-400\/90{background-color:#34d399e6}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-emerald-500\/70{background-color:#10b981b3}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-green-400\/10{background-color:#4ade801a}.bg-green-500\/5{background-color:#22c55e0d}.bg-green-500\/50{background-color:#22c55e80}.bg-orange-400{--tw-bg-opacity: 1;background-color:rgb(251 146 60 / var(--tw-bg-opacity, 1))}.bg-orange-500\/10{background-color:#f973161a}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/5{background-color:#ef44440d}.bg-red-500\/70{background-color:#ef4444b3}.bg-red-900\/10{background-color:#7f1d1d1a}.bg-red-950\/80{background-color:#450a0acc}.bg-sky-400\/\[0\.06\]{background-color:#38bdf80f}.bg-transparent{background-color:transparent}.bg-violet-300\/10{background-color:#c4b5fd1a}.bg-white\/10{background-color:#ffffff1a}.bg-white\/15{background-color:#ffffff26}.bg-white\/20{background-color:#fff3}.bg-white\/5{background-color:#ffffff0d}.bg-white\/\[0\.015\]{background-color:#ffffff04}.bg-white\/\[0\.01\]{background-color:#ffffff03}.bg-white\/\[0\.02\]{background-color:#ffffff05}.bg-white\/\[0\.03\]{background-color:#ffffff08}.bg-white\/\[0\.04\]{background-color:#ffffff0a}.bg-white\/\[0\.05\]{background-color:#ffffff0d}.bg-white\/\[0\.06\]{background-color:#ffffff0f}.bg-white\/\[0\.08\]{background-color:#ffffff14}.bg-white\/\[0\.09\]{background-color:#ffffff17}.bg-white\/\[0\.16\]{background-color:#ffffff29}.bg-white\/\[0\.1\]{background-color:#ffffff1a}.bg-white\/\[0\.9\]{background-color:#ffffffe6}.bg-yellow-300\/10{background-color:#fde0471a}.bg-zinc-800\/40{background-color:#27272a66}.bg-zinc-900{--tw-bg-opacity: 1;background-color:rgb(24 24 27 / var(--tw-bg-opacity, 1))}.bg-zinc-950\/35{background-color:#09090b59}.bg-\[linear-gradient\(90deg\,rgba\(255\,255\,255\,0\.03\)\,rgba\(255\,255\,255\,0\.012\)_48\%\,transparent\)\]{background-image:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.012) 48%,transparent)}.bg-\[linear-gradient\(rgba\(18\,16\,16\,0\)_50\%\,rgba\(0\,0\,0\,0\.2\)_50\%\)\,linear-gradient\(90deg\,rgba\(255\,0\,0\,0\.03\)\,rgba\(0\,255\,0\,0\.01\)\,rgba\(0\,0\,255\,0\.03\)\)\]{background-image:linear-gradient(#12101000 50%,#0003 50%),linear-gradient(90deg,#ff000008,#00ff0003,#0000ff08)}.bg-\[linear-gradient\(rgba\(255\,255\,255\,0\.014\)_1px\,transparent_1px\)\,linear-gradient\(90deg\,rgba\(255\,255\,255\,0\.014\)_1px\,transparent_1px\)\]{background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px)}.bg-\[linear-gradient\(to_bottom\,rgba\(3\,5\,9\,0\.28\)\,rgba\(3\,5\,9\,0\.52\)\)\]{background-image:linear-gradient(to bottom,#03050947,#03050985)}.bg-\[radial-gradient\(circle_at_20\%_0\%\,rgba\(255\,255\,255\,0\.08\)\,rgba\(0\,0\,0\,0\)_62\%\)\]{background-image:radial-gradient(circle at 20% 0%,#ffffff14,#0000 62%)}.bg-\[radial-gradient\(circle_at_20\%_0\%\,rgba\(255\,255\,255\,0\.12\)\,rgba\(0\,0\,0\,0\)_62\%\)\]{background-image:radial-gradient(circle at 20% 0%,#ffffff1f,#0000 62%)}.bg-\[radial-gradient\(circle_at_22\%_20\%\,rgba\(255\,255\,255\,0\.06\)\,transparent_48\%\)\,linear-gradient\(180deg\,rgba\(3\,8\,15\,0\.72\)\,rgba\(1\,4\,10\,0\.92\)\)\]{background-image:radial-gradient(circle at 22% 20%,rgba(255,255,255,.06),transparent 48%),linear-gradient(180deg,#03080fb8,#01040aeb)}.bg-\[radial-gradient\(circle_at_50\%_45\%\,rgba\(96\,165\,250\,0\.06\)\,transparent_62\%\)\]{background-image:radial-gradient(circle at 50% 45%,rgba(96,165,250,.06),transparent 62%)}.bg-\[repeating-linear-gradient\(0deg\,transparent\,transparent_2px\,rgba\(255\,255\,255\,0\.4\)_2px\,rgba\(255\,255\,255\,0\.4\)_3px\)\]{background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.4) 2px,rgba(255,255,255,.4) 3px)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.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))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-scanlines{background-image:linear-gradient(to bottom,#fff0,#fff0 50%,#0003 50%,#0003)}.from-\[\#04070c\]\/90{--tw-gradient-from: rgb(4 7 12 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(4 7 12 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#080808\]{--tw-gradient-from: #080808 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 8 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-\[\#0a0a0a\]{--tw-gradient-from: #0a0a0a var(--tw-gradient-from-position);--tw-gradient-to: rgb(10 10 10 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-accent-blue\/50{--tw-gradient-from: rgb(59 130 246 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-accent-blue\/80{--tw-gradient-from: rgb(59 130 246 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-400{--tw-gradient-from: #fbbf24 var(--tw-gradient-from-position);--tw-gradient-to: rgb(251 191 36 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-500\/20{--tw-gradient-from: rgb(245 158 11 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-500\/5{--tw-gradient-from: rgb(245 158 11 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-black\/20{--tw-gradient-from: rgb(0 0 0 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/\[0\.08\]{--tw-gradient-from: rgb(59 130 246 / .08) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-400{--tw-gradient-from: #22d3ee var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500\/5{--tw-gradient-from: rgb(6 182 212 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-400{--tw-gradient-from: #34d399 var(--tw-gradient-from-position);--tw-gradient-to: rgb(52 211 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-500\/20{--tw-gradient-from: rgb(16 185 129 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/20{--tw-gradient-from: rgb(168 85 247 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/15{--tw-gradient-from: rgb(255 255 255 / .15) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/\[0\.03\]{--tw-gradient-from: rgb(255 255 255 / .03) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/\[0\.05\]{--tw-gradient-from: rgb(255 255 255 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/\[0\.07\]{--tw-gradient-from: rgb(255 255 255 / .07) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-\[\#04070c\]\/40{--tw-gradient-to: rgb(4 7 12 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(4 7 12 / .4) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-accent-blue\/20{--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(59 130 246 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-accent-blue\/50{--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(59 130 246 / .5) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-black\/10{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / .1) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-cyan-400{--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #22d3ee var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-cyan-400\/90{--tw-gradient-to: rgb(34 211 238 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(34 211 238 / .9) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-violet-500\/20{--tw-gradient-to: rgb(139 92 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(139 92 246 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/30{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .3) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/\[0\.02\]{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .02) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/\[0\.03\]{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .03) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/\[0\.04\]{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .04) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[\#050608\]{--tw-gradient-to: #050608 var(--tw-gradient-to-position)}.to-\[\#0a0a0f\]{--tw-gradient-to: #0a0a0f var(--tw-gradient-to-position)}.to-\[\#0f0f14\]{--tw-gradient-to: #0f0f14 var(--tw-gradient-to-position)}.to-accent-blue\/60{--tw-gradient-to: rgb(59 130 246 / .6) var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to: #3b82f6 var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-cyan-500\/\[0\.06\]{--tw-gradient-to: rgb(6 182 212 / .06) var(--tw-gradient-to-position)}.to-green-400{--tw-gradient-to: #4ade80 var(--tw-gradient-to-position)}.to-green-500{--tw-gradient-to: #22c55e var(--tw-gradient-to-position)}.to-green-500\/20{--tw-gradient-to: rgb(34 197 94 / .2) var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.to-orange-500{--tw-gradient-to: #f97316 var(--tw-gradient-to-position)}.to-orange-500\/10{--tw-gradient-to: rgb(249 115 22 / .1) var(--tw-gradient-to-position)}.to-orange-500\/20{--tw-gradient-to: rgb(249 115 22 / .2) var(--tw-gradient-to-position)}.to-orange-500\/5{--tw-gradient-to: rgb(249 115 22 / .05) var(--tw-gradient-to-position)}.to-purple-500\/20{--tw-gradient-to: rgb(168 85 247 / .2) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-violet-500\/20{--tw-gradient-to: rgb(139 92 246 / .2) var(--tw-gradient-to-position)}.to-white\/\[0\.01\]{--tw-gradient-to: rgb(255 255 255 / .01) var(--tw-gradient-to-position)}.bg-\[length\:100\%_4px\,3px_100\%\]{background-size:100% 4px,3px 100%}.bg-\[size\:30px_30px\]{background-size:30px 30px}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1\.32rem\]{padding:1.32rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.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-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-\[0\.38rem\]{padding-left:.38rem;padding-right:.38rem}.px-\[0\.68rem\]{padding-left:.68rem;padding-right:.68rem}.px-\[7px\]{padding-left:7px;padding-right:7px}.py-0{padding-top:0;padding-bottom:0}.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-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.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-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[0\.1rem\]{padding-top:.1rem;padding-bottom:.1rem}.py-\[0\.3rem\]{padding-top:.3rem;padding-bottom:.3rem}.py-\[1px\]{padding-top:1px;padding-bottom:1px}.py-\[2px\]{padding-top:2px;padding-bottom:2px}.py-\[3px\]{padding-top:3px;padding-bottom:3px}.py-\[4px\]{padding-top:4px;padding-bottom:4px}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-12{padding-bottom:3rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-\[0\.42rem\]{padding-bottom:.42rem}.pb-\[2\.54rem\]{padding-bottom:2.54rem}.pb-\[2\.5rem\]{padding-bottom:2.5rem}.pb-\[3\.3rem\]{padding-bottom:3.3rem}.pb-\[3px\]{padding-bottom:3px}.pb-\[8\.1rem\]{padding-bottom:8.1rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-6{padding-left:1.5rem}.pl-7{padding-left:1.75rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-16{padding-top:4rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-28{padding-top:7rem}.pt-3{padding-top:.75rem}.pt-32{padding-top:8rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-\[1\.2rem\]{padding-top:1.2rem}.pt-\[2\.56rem\]{padding-top:2.56rem}.pt-\[5\.68rem\]{padding-top:5.68rem}.pt-\[5rem\]{padding-top:5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-baseline{vertical-align:baseline}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:JetBrains Mono,monospace}.font-sans{font-family:Outfit,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans SC,PingFang SC,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[0\.83rem\]{font-size:.83rem}.text-\[0\.94rem\]{font-size:.94rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.98em\]{font-size:.98em}.text-\[0\.9rem\]{font-size:.9rem}.text-\[1\.02rem\]{font-size:1.02rem}.text-\[10\.2px\]{font-size:10.2px}.text-\[10\.3px\]{font-size:10.3px}.text-\[10\.4px\]{font-size:10.4px}.text-\[10\.5px\]{font-size:10.5px}.text-\[10\.8px\]{font-size:10.8px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.4px\]{font-size:12.4px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[17px\]{font-size:17px}.text-\[1rem\]{font-size:1rem}.text-\[2rem\]{font-size:2rem}.text-\[3\.2rem\]{font-size:3.2rem}.text-\[7\.8px\]{font-size:7.8px}.text-\[7px\]{font-size:7px}.text-\[8\.6px\]{font-size:8.6px}.text-\[8\.7px\]{font-size:8.7px}.text-\[8px\]{font-size:8px}.text-\[9\.2px\]{font-size:9.2px}.text-\[9\.5px\]{font-size:9.5px}.text-\[9\.8px\]{font-size:9.8px}.text-\[9px\]{font-size:9px}.text-\[clamp\(0\.95rem\,0\.86vw\,0\.99rem\)\]{font-size:clamp(.95rem,.86vw,.99rem)}.text-\[clamp\(1\.1rem\,1\.42vw\,1\.5rem\)\]{font-size:clamp(1.1rem,1.42vw,1.5rem)}.text-\[clamp\(1\.32rem\,6\.4vw\,2\.5rem\)\]{font-size:clamp(1.32rem,6.4vw,2.5rem)}.text-\[clamp\(1\.9rem\,3\.8vw\,3\.4rem\)\]{font-size:clamp(1.9rem,3.8vw,3.4rem)}.text-\[clamp\(2\.2rem\,4\.8vw\,4\.8rem\)\]{font-size:clamp(2.2rem,4.8vw,4.8rem)}.text-\[clamp\(2\.8rem\,14vw\,6\.5rem\)\]{font-size:clamp(2.8rem,14vw,6.5rem)}.text-base{font-size:1rem;line-height:1.5rem}.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-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.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-5{line-height:1.25rem}.leading-8{line-height:2rem}.leading-\[0\.42rem\]{line-height:.42rem}.leading-\[0\.52rem\]{line-height:.52rem}.leading-\[0\.6rem\]{line-height:.6rem}.leading-\[0\.85\]{line-height:.85}.leading-\[0\.88\]{line-height:.88}.leading-\[1\.04\]{line-height:1.04}.leading-\[1\.08\]{line-height:1.08}.leading-\[1\.16\]{line-height:1.16}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.25\]{line-height:1.25}.leading-\[1\.58\]{line-height:1.58}.leading-\[1\.66\]{line-height:1.66}.leading-\[1\.68\]{line-height:1.68}.leading-\[1\.75\]{line-height:1.75}.leading-\[1\.78\]{line-height:1.78}.leading-\[1\.82\]{line-height:1.82}.leading-\[1\.88\]{line-height:1.88}.leading-\[1\.8\]{line-height:1.8}.leading-\[8px\]{line-height:8px}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-\[-0\.018em\]{letter-spacing:-.018em}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[-0\.05em\]{letter-spacing:-.05em}.tracking-\[0\.002em\]{letter-spacing:.002em}.tracking-\[0\.01em\]{letter-spacing:.01em}.tracking-\[0\.03em\]{letter-spacing:.03em}.tracking-\[0\.04em\]{letter-spacing:.04em}.tracking-\[0\.065em\]{letter-spacing:.065em}.tracking-\[0\.06em\]{letter-spacing:.06em}.tracking-\[0\.074em\]{letter-spacing:.074em}.tracking-\[0\.07em\]{letter-spacing:.07em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.095em\]{letter-spacing:.095em}.tracking-\[0\.09em\]{letter-spacing:.09em}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.13em\]{letter-spacing:.13em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-\[0\.168em\]{letter-spacing:.168em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.1em\]{letter-spacing:.1em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-\[0\.25em\]{letter-spacing:.25em}.tracking-\[0\.26em\]{letter-spacing:.26em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.35em\]{letter-spacing:.35em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent-blue{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-accent-blue\/35{color:#3b82f659}.text-accent-blue\/40{color:#3b82f666}.text-accent-blue\/45{color:#3b82f673}.text-accent-blue\/55{color:#3b82f68c}.text-accent-blue\/60{color:#3b82f699}.text-accent-blue\/70{color:#3b82f6b3}.text-accent-blue\/75{color:#3b82f6bf}.text-accent-blue\/80{color:#3b82f6cc}.text-accent-blue\/90{color:#3b82f6e6}.text-accent-blue\/95{color:#3b82f6f2}.text-amber-200\/90{color:#fde68ae6}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.text-amber-300\/80{color:#fcd34dcc}.text-amber-300\/90{color:#fcd34de6}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-amber-400\/80{color:#fbbf24cc}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-blue-200\/60{color:#bfdbfe99}.text-blue-300\/90{color:#93c5fde6}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-400\/60{color:#60a5fa99}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-emerald-200\/90{color:#a7f3d0e6}.text-emerald-300{--tw-text-opacity: 1;color:rgb(110 231 183 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-100\/90{color:#f3f4f6e6}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-200\/90{color:#e5e7ebe6}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-300\/80{color:#d1d5dbcc}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-purple-300{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-400\/70{color:#f87171b3}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-500\/60{color:#ef444499}.text-sky-200\/90{color:#bae6fde6}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-violet-200\/90{color:#ddd6fee6}.text-violet-300{--tw-text-opacity: 1;color:rgb(196 181 253 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/15{color:#ffffff26}.text-white\/20{color:#fff3}.text-white\/40{color:#fff6}.text-white\/45{color:#ffffff73}.text-white\/50{color:#ffffff80}.text-white\/55{color:#ffffff8c}.text-white\/60{color:#fff9}.text-white\/70{color:#ffffffb3}.text-white\/80{color:#fffc}.text-white\/90{color:#ffffffe6}.text-white\/\[0\.05\]{color:#ffffff0d}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-zinc-100{--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.text-zinc-100\/95{color:#f4f4f5f2}.text-zinc-200{--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity, 1))}.text-zinc-200\/90{color:#e4e4e7e6}.text-zinc-300{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.text-zinc-300\/80{color:#d4d4d8cc}.text-zinc-300\/90{color:#d4d4d8e6}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-400\/70{color:#a1a1aab3}.text-zinc-400\/80{color:#a1a1aacc}.text-zinc-400\/85{color:#a1a1aad9}.text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.text-zinc-500\/90{color:#71717ae6}.text-zinc-600{--tw-text-opacity: 1;color:rgb(82 82 91 / var(--tw-text-opacity, 1))}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-gray-600::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(75 85 99 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-600::placeholder{--tw-placeholder-opacity: 1;color:rgb(75 85 99 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-700::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(55 65 81 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-700::placeholder{--tw-placeholder-opacity: 1;color:rgb(55 65 81 / var(--tw-placeholder-opacity, 1))}.caret-cyan-400{caret-color:#22d3ee}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-55{opacity:.55}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.opacity-\[0\.025\]{opacity:.025}.opacity-\[0\.028\]{opacity:.028}.opacity-\[0\.14\]{opacity:.14}.mix-blend-overlay{mix-blend-mode:overlay}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px 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-\[0_0_10px_rgba\(56\,189\,248\,0\.12\)\]{--tw-shadow: 0 0 10px rgba(56,189,248,.12);--tw-shadow-colored: 0 0 10px 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-\[0_0_10px_rgba\(59\,130\,246\,0\.35\)\]{--tw-shadow: 0 0 10px rgba(59,130,246,.35);--tw-shadow-colored: 0 0 10px 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-\[0_0_10px_rgba\(59\,130\,246\,0\.5\)\]{--tw-shadow: 0 0 10px rgba(59,130,246,.5);--tw-shadow-colored: 0 0 10px 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-\[0_0_12px_rgba\(0\,0\,0\,0\.5\)\]{--tw-shadow: 0 0 12px rgba(0,0,0,.5);--tw-shadow-colored: 0 0 12px 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-\[0_0_12px_rgba\(59\,130\,246\,0\.4\)\]{--tw-shadow: 0 0 12px rgba(59,130,246,.4);--tw-shadow-colored: 0 0 12px 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-\[0_0_18px_rgba\(59\,130\,246\,0\.10\)\]{--tw-shadow: 0 0 18px rgba(59,130,246,.1);--tw-shadow-colored: 0 0 18px 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-\[0_0_20px_rgba\(16\,185\,129\,0\.3\)\]{--tw-shadow: 0 0 20px rgba(16,185,129,.3);--tw-shadow-colored: 0 0 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-\[0_0_20px_rgba\(168\,85\,247\,0\.3\)\]{--tw-shadow: 0 0 20px rgba(168,85,247,.3);--tw-shadow-colored: 0 0 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-\[0_0_20px_rgba\(251\,191\,36\,0\.3\)\]{--tw-shadow: 0 0 20px rgba(251,191,36,.3);--tw-shadow-colored: 0 0 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-\[0_0_24px_rgba\(59\,130\,246\,0\.05\)\]{--tw-shadow: 0 0 24px rgba(59,130,246,.05);--tw-shadow-colored: 0 0 24px 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-\[0_0_28px_rgba\(59\,130\,246\,0\.06\)\]{--tw-shadow: 0 0 28px rgba(59,130,246,.06);--tw-shadow-colored: 0 0 28px 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-\[0_0_30px_rgba\(0\,0\,0\,0\.55\)\]{--tw-shadow: 0 0 30px rgba(0,0,0,.55);--tw-shadow-colored: 0 0 30px 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-\[0_0_30px_rgba\(59\,130\,246\,0\.12\)\,0_8px_32px_0_rgba\(0\,0\,0\,0\.4\)\,inset_0_1px_0_0_rgba\(96\,165\,250\,0\.15\)\]{--tw-shadow: 0 0 30px rgba(59,130,246,.12),0 8px 32px 0 rgba(0,0,0,.4),inset 0 1px 0 0 rgba(96,165,250,.15);--tw-shadow-colored: 0 0 30px var(--tw-shadow-color), 0 8px 32px 0 var(--tw-shadow-color), inset 0 1px 0 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)}.shadow-\[0_0_40px_rgba\(59\,130\,246\,0\.08\)\]{--tw-shadow: 0 0 40px rgba(59,130,246,.08);--tw-shadow-colored: 0 0 40px 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-\[0_0_4px_currentColor\]{--tw-shadow: 0 0 4px currentColor;--tw-shadow-colored: 0 0 4px 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-\[0_0_4px_rgba\(52\,211\,153\,0\.4\)\]{--tw-shadow: 0 0 4px rgba(52,211,153,.4);--tw-shadow-colored: 0 0 4px 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-\[0_0_6px_currentColor\]{--tw-shadow: 0 0 6px currentColor;--tw-shadow-colored: 0 0 6px 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-\[0_0_8px_currentColor\]{--tw-shadow: 0 0 8px currentColor;--tw-shadow-colored: 0 0 8px 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-\[0_0_8px_rgba\(16\,185\,129\,0\.6\)\]{--tw-shadow: 0 0 8px rgba(16,185,129,.6);--tw-shadow-colored: 0 0 8px 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-\[0_0_8px_rgba\(251\,191\,36\,0\.4\)\]{--tw-shadow: 0 0 8px rgba(251,191,36,.4);--tw-shadow-colored: 0 0 8px 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-\[0_10px_20px_rgba\(0\,0\,0\,0\.5\)\]{--tw-shadow: 0 10px 20px rgba(0,0,0,.5);--tw-shadow-colored: 0 10px 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-\[0_12px_30px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow: 0 12px 30px rgba(0,0,0,.3);--tw-shadow-colored: 0 12px 30px 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-\[0_12px_30px_rgba\(0\,0\,0\,0\.36\)\]{--tw-shadow: 0 12px 30px rgba(0,0,0,.36);--tw-shadow-colored: 0 12px 30px 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-\[0_16px_40px_rgba\(0\,0\,0\,0\.34\)\]{--tw-shadow: 0 16px 40px rgba(0,0,0,.34);--tw-shadow-colored: 0 16px 40px 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-\[0_2px_12px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow: 0 2px 12px rgba(0,0,0,.35);--tw-shadow-colored: 0 2px 12px 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-\[0_8px_30px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow: 0 8px 30px rgba(0,0,0,.28);--tw-shadow-colored: 0 8px 30px 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-\[0_8px_32px_0_rgba\(0\,0\,0\,0\.37\)\,inset_0_1px_0_0_rgba\(255\,255\,255\,0\.05\)\]{--tw-shadow: 0 8px 32px 0 rgba(0,0,0,.37),inset 0 1px 0 0 rgba(255,255,255,.05);--tw-shadow-colored: 0 8px 32px 0 var(--tw-shadow-color), inset 0 1px 0 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)}.shadow-\[0_8px_32px_0_rgba\(0\,0\,0\,0\.4\)\,inset_0_1px_0_0_rgba\(255\,255\,255\,0\.04\)\]{--tw-shadow: 0 8px 32px 0 rgba(0,0,0,.4),inset 0 1px 0 0 rgba(255,255,255,.04);--tw-shadow-colored: 0 8px 32px 0 var(--tw-shadow-color), inset 0 1px 0 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)}.shadow-inner{--tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);--tw-shadow-colored: inset 0 2px 4px 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)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px 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}.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);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-black{--tw-ring-opacity: 1;--tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity, 1))}.ring-white\/\[0\.06\]{--tw-ring-color: rgb(255 255 255 / .06)}.blur{--tw-blur: blur(8px);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)}.blur-2xl{--tw-blur: blur(40px);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)}.blur-3xl{--tw-blur: blur(64px);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)}.blur-\[26px\]{--tw-blur: blur(26px);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)}.brightness-\[0\.86\]{--tw-brightness: brightness(.86);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)}.contrast-\[0\.96\]{--tw-contrast: contrast(.96);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)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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)}.drop-shadow-\[0_0_6px_rgba\(34\,211\,238\,0\.4\)\]{--tw-drop-shadow: drop-shadow(0 0 6px rgba(34,211,238,.4));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)}.drop-shadow-\[0_0_8px_rgba\(16\,185\,129\,0\.6\)\]{--tw-drop-shadow: drop-shadow(0 0 8px rgba(16,185,129,.6));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)}.drop-shadow-\[0_0_8px_rgba\(168\,85\,247\,0\.6\)\]{--tw-drop-shadow: drop-shadow(0 0 8px rgba(168,85,247,.6));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)}.drop-shadow-\[0_0_8px_rgba\(251\,191\,36\,0\.6\)\]{--tw-drop-shadow: drop-shadow(0 0 8px rgba(251,191,36,.6));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)}.drop-shadow-\[0_12px_26px_rgba\(0\,0\,0\,0\.32\)\]{--tw-drop-shadow: drop-shadow(0 12px 26px rgba(0,0,0,.32));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)}.drop-shadow-\[0_1px_2px_rgba\(0\,0\,0\,0\.45\)\]{--tw-drop-shadow: drop-shadow(0 1px 2px rgba(0,0,0,.45));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)}.drop-shadow-\[0_1px_2px_rgba\(0\,0\,0\,0\.6\)\]{--tw-drop-shadow: drop-shadow(0 1px 2px rgba(0,0,0,.6));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)}.drop-shadow-\[0_1px_3px_rgba\(0\,0\,0\,0\.8\)\]{--tw-drop-shadow: drop-shadow(0 1px 3px rgba(0,0,0,.8));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)}.invert{--tw-invert: invert(100%);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)}.saturate-\[0\.86\]{--tw-saturate: saturate(.86);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)}.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{--tw-backdrop-blur: blur(8px);-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-\[10px\]{--tw-backdrop-blur: blur(10px);-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-\[1px\]{--tw-backdrop-blur: blur(1px);-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-\[6px\]{--tw-backdrop-blur: blur(6px);-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-lg{--tw-backdrop-blur: blur(16px);-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-md{--tw-backdrop-blur: blur(12px);-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-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)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-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);-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-saturate-\[160\%\]{--tw-backdrop-saturate: saturate(160%);-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-saturate-\[180\%\]{--tw-backdrop-saturate: saturate(180%);-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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[background-color\,border-color\,backdrop-filter\]{transition-property:background-color,border-color,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[border-color\,background-color\,color\,box-shadow\,transform\]{transition-property:border-color,background-color,color,box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\,filter\]{transition-property:transform,filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;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-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.duration-\[2500ms\]{transition-duration:2.5s}.duration-\[320ms\]{transition-duration:.32s}.duration-\[440ms\]{transition-duration:.44s}.duration-\[460ms\]{transition-duration:.46s}.duration-\[520ms\]{transition-duration:.52s}.ease-\[cubic-bezier\(0\.22\,0\.84\,0\.24\,1\)\]{transition-timing-function:cubic-bezier(.22,.84,.24,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.will-change-transform{will-change:transform}.\[-ms-overflow-style\:none\]{-ms-overflow-style:none}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.\[scrollbar-width\:none\]{scrollbar-width:none}:root{--radius-panel: 16px;--radius-card: 14px;--radius-control: 12px;--color-bg: #050608;--color-glass: rgba(10, 12, 18, .75);--color-accent: #3b82f6;--color-accent-glow: rgba(59, 130, 246, .4);--nav-safe-top: 64px;--container-gutter: max(1.5rem, calc((100vw - 80rem)/2 + 1.5rem) )}.brand-wordmark{display:inline-flex;align-items:center;gap:.12em;line-height:1;letter-spacing:inherit}.brand-wordmark__eyes{display:inline-flex;align-items:center;gap:.16em;margin-inline:.06em .02em}.brand-wordmark__eye{position:relative;width:.92em;height:.68em;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.24),rgba(255,255,255,.04) 60%,transparent 72%),linear-gradient(180deg,#ffffff1f,#ffffff05);box-shadow:inset 0 0 0 1px #ffffff0f,0 0 12px #ffffff0f}.brand-wordmark__eye:after{content:"";position:absolute;top:50%;left:50%;width:.22em;height:.22em;border-radius:999px;transform:translate(-50%,-50%);background:currentColor;box-shadow:0 0 10px #3b82f661}.brand-wordmark--accent .brand-wordmark__eye{border-color:#60a5fa99;background:radial-gradient(circle at 50% 50%,rgba(96,165,250,.28),rgba(96,165,250,.08) 60%,transparent 72%),linear-gradient(180deg,#60a5fa2e,#ffffff0a);box-shadow:inset 0 0 0 1px #60a5fa1f,0 0 14px #3b82f62e}.glass-panel{background:var(--color-glass);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0000005e}.neon-glow{box-shadow:0 0 15px var(--color-accent-glow),0 0 5px var(--color-accent)}.premium-gradient{background:linear-gradient(135deg,#3b82f61a,#3b82f60d,#06b6d41a)}.hero-stroke{-webkit-text-stroke:2px rgba(255,255,255,.6);color:transparent;transition:color .6s cubic-bezier(.22,1,.36,1),-webkit-text-stroke-color .6s cubic-bezier(.22,1,.36,1)}.group\/hero:hover .hero-stroke{color:#ffffffeb;-webkit-text-stroke-color:transparent}.hero-diamond{animation:heroDiamondSpin 20s linear infinite}@keyframes heroDiamondSpin{to{transform:rotate(360deg)}}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.about-scan{height:1px;background:linear-gradient(90deg,transparent,rgba(59,130,246,.5),rgba(6,182,212,.35),transparent);background-size:200% 100%;animation:aboutScanMove 4s ease-in-out infinite}@keyframes aboutScanMove{0%{background-position:100% 0;opacity:.3}50%{opacity:1}to{background-position:-100% 0;opacity:.3}}.about-dot-grid{background-image:radial-gradient(circle,rgba(255,255,255,.025) 1px,transparent 1px);background-size:28px 28px}.about-bracket{animation:aboutBracketPulse 4s ease-in-out infinite}@keyframes aboutBracketPulse{0%,to{opacity:.12}50%{opacity:.25}}.about-timeline{background:linear-gradient(to bottom,transparent 0%,rgba(59,130,246,.12) 15%,rgba(59,130,246,.12) 85%,transparent 100%)}.about-skill-tag{transition:all .25s ease}.about-skill-tag:hover{border-color:#3b82f640;color:#3b82f6cc;box-shadow:0 0 12px #3b82f614;background:#3b82f60a}.about-shimmer{position:relative;overflow:hidden}.about-shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.03) 50%,transparent 70%);background-size:200% 100%;animation:aboutShimmer 4s ease-in-out infinite}@keyframes aboutShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.about-num{text-shadow:0 0 40px rgba(59,130,246,.06);transition:text-shadow .6s ease}.about-num:hover{text-shadow:0 0 60px rgba(59,130,246,.15)}.about-skill-row{transition:background .2s ease}.about-skill-row:hover{background:#ffffff04}.about-skill-row:hover .about-skill-dot{background:#3b82f699;box-shadow:0 0 8px #3b82f64d}html{scroll-behavior:auto;overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.lenis-scrolling .backdrop-blur-md,.lenis-scrolling .backdrop-blur-lg,.lenis-scrolling .backdrop-blur-xl{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background-color:#020202f2!important}.contain-paint{contain:paint}body{-webkit-overflow-scrolling:touch;overflow-x:clip}.bg-starfield-black{background:#000}.starfield-sky-drift{transform-origin:var(--north-pole-x, 51.6%) var(--north-pole-y, 12.8%);animation:northernSkySpin 600s linear infinite;transform:translateZ(0);backface-visibility:hidden;will-change:transform;contain:layout paint style}body.starfield-dragging{cursor:grabbing!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.starfield-polaris{position:absolute;width:4.2px;height:4.2px;margin-left:-2.1px;margin-top:-2.1px;border-radius:9999px;background:radial-gradient(circle at 34% 32%,#fffffffc,#d9ecffe6 62%,#d9ecff00);box-shadow:0 0 14px #c4dcff8c,0 0 4px #ffffffb8;opacity:.96}.starfield-dot{position:absolute;border-radius:9999px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,1) 0%,var(--star-color, rgba(255, 255, 255, .9)) 28%,rgba(255,255,255,0) 100%);animation-iteration-count:infinite;animation-fill-mode:both;transform-origin:center;will-change:opacity;transform:translateZ(0);backface-visibility:hidden}.starfield-dot-rhythm-a{animation-name:starTwinkleA;animation-timing-function:ease-in-out}.starfield-dot-rhythm-b{animation-name:starTwinkleB;animation-timing-function:cubic-bezier(.46,.04,.54,.96)}.starfield-dot-rhythm-c{animation-name:starTwinkleC;animation-timing-function:cubic-bezier(.4,.02,.6,.98)}.starfield-dot-far.starfield-dot-size-micro{filter:blur(.3px);box-shadow:0 0 1px var(--star-glow-color, rgba(255, 255, 255, .06))}.starfield-dot-far.starfield-dot-size-normal{box-shadow:0 0 2px var(--star-glow-color, rgba(255, 255, 255, .1)),0 0 .5px #ffffff1f}.starfield-dot-far.starfield-dot-size-bright{box-shadow:0 0 3px var(--star-glow-color, rgba(255, 255, 255, .12)),0 0 1px #ffffff2e}.starfield-dot-near.starfield-dot-size-micro{box-shadow:0 0 5px var(--star-glow-color, rgba(255, 255, 255, .12)),0 0 1px #ffffff24}.starfield-dot-near.starfield-dot-size-normal{box-shadow:0 0 9px var(--star-glow-color, rgba(255, 255, 255, .2)),0 0 1.5px #ffffff38}.starfield-dot-near.starfield-dot-size-bright{box-shadow:0 0 6px var(--star-glow-color, rgba(255, 255, 255, .2)),0 0 1px #ffffff3d}.starfield-dot-anchor{box-shadow:0 0 16px var(--star-glow-color, rgba(255, 255, 255, .32)),0 0 3px #ffffff61;transition:filter .22s ease,box-shadow .22s ease,opacity .22s ease}.starfield-dot-anchor-active{filter:brightness(1.2) saturate(1.1);box-shadow:0 0 24px var(--star-glow-color, rgba(255, 255, 255, .44)),0 0 5px #ffffff85}.starfield-constellation-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.starfield-constellation-group{opacity:0;transition:opacity .42s cubic-bezier(.22,1,.36,1)}.starfield-constellation-group line{stroke:#bcdbff52;stroke-width:1.34;stroke-linecap:round;stroke-dasharray:none;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 7px rgba(147,197,253,.26));transition:stroke .28s ease,stroke-width .28s ease,filter .28s ease,opacity .28s ease}.starfield-constellation-group.is-active{opacity:.92}.starfield-constellation-group.is-active line{stroke:#daecffdb;stroke-width:2.05;filter:drop-shadow(0 0 12px rgba(147,197,253,.64));animation:constellationPulse 3.4s ease-in-out infinite}@keyframes constellationPulse{0%{opacity:.58}50%{opacity:.9}to{opacity:.58}}@keyframes northernSkySpin{0%{transform:rotate(calc(var(--sky-phase-deg, 0deg) + var(--drag-rotation-deg, 0deg)))}to{transform:rotate(calc(var(--sky-phase-deg, 0deg) + var(--drag-rotation-deg, 0deg) - 360deg))}}@keyframes starTwinkleA{0%{opacity:var(--twinkle-min, .14)}36%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .48)}62%{opacity:var(--twinkle-max, .42)}82%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .35)}to{opacity:var(--twinkle-min, .14)}}@keyframes starTwinkleB{0%{opacity:var(--twinkle-min, .14)}18%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .72)}36%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .2)}56%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .9)}76%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .32)}to{opacity:var(--twinkle-min, .14)}}@keyframes starTwinkleC{0%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .26)}24%{opacity:var(--twinkle-min, .14)}46%{opacity:var(--twinkle-max, .42)}64%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .44)}84%{opacity:calc(var(--twinkle-min, .14) + var(--twinkle-range, .24) * .82)}to{opacity:var(--twinkle-min, .14)}}canvas{contain:strict}pre{contain:paint}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-card-in{animation:cardFadeIn .5s ease-out forwards}@keyframes statusBreath{0%{transform:scale(.85);opacity:.45;box-shadow:0 0 #60a5fa00}50%{transform:scale(1.15);opacity:1;box-shadow:0 0 10px 3px #60a5fad9,0 0 22px 8px #3b82f68c}to{transform:scale(.85);opacity:.45;box-shadow:0 0 #60a5fa00}}.status-breath{width:9px;height:9px;border-radius:9999px;background:#60a5fa;animation:statusBreath 2.2s ease-in-out infinite}@keyframes glitchTop{0%{transform:translate(0);clip-path:inset(0 0 62% 0);opacity:.7}10%{transform:translate(2px,-1px);clip-path:inset(0 0 55% 0)}20%{transform:translate(-1px);clip-path:inset(0 0 68% 0)}35%{transform:translate(1px,-2px);clip-path:inset(0 0 50% 0)}50%{transform:translate(-2px,1px);clip-path:inset(0 0 72% 0)}70%{transform:translate(1px);clip-path:inset(0 0 58% 0)}to{transform:translate(0);clip-path:inset(0 0 62% 0);opacity:.7}}@keyframes glitchBottom{0%{transform:translate(0);clip-path:inset(38% 0 0 0);opacity:.6}15%{transform:translate(-2px,1px);clip-path:inset(45% 0 0 0)}30%{transform:translate(1px,2px);clip-path:inset(35% 0 0 0)}45%{transform:translate(-1px,-1px);clip-path:inset(52% 0 0 0)}65%{transform:translate(2px);clip-path:inset(40% 0 0 0)}to{transform:translate(0);clip-path:inset(38% 0 0 0);opacity:.6}}@keyframes glitchWave{0%{transform:translate(0);opacity:.18}50%{transform:translate(3px);opacity:.28}to{transform:translate(-2px);opacity:.18}}.glitch-text{position:relative;display:inline-block;color:#ffffffeb;text-shadow:0 0 12px rgba(59,130,246,.18)}.glitch-text:before,.glitch-text:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.glitch-text:before{color:#60a5fad9;animation:glitchTop 2.6s steps(10,end) infinite}.glitch-text:after{color:#3b82f68c;animation:glitchBottom 2.2s steps(10,end) infinite}.glitch-wave{background:repeating-linear-gradient(180deg,#60a5fa29,#60a5fa29 2px,#0000 3px,#0000 6px);mix-blend-mode:screen;animation:glitchWave 3s steps(8,end) infinite}.project-detail-editorial{--project-font-title: "Outfit", "Avenir Next", "SF Pro Display", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-copy: "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-ui: "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-mono: "JetBrains Mono", "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace}.project-detail-editorial main{font-family:var(--project-font-copy)}.project-detail-editorial .font-mono{font-family:var(--project-font-mono)}.project-detail-editorial .project-editorial-title{font-family:var(--project-font-title);font-weight:640;letter-spacing:.003em;line-height:1.09;max-width:20ch;text-wrap:balance;color:#f8fbfffc}.project-detail-editorial .project-editorial-lead{font-family:var(--project-font-copy);color:#e9f1fbfa;font-size:clamp(1.1rem,1.2vw,1.28rem);line-height:1.78;max-width:62ch}.project-detail-layout{display:grid;gap:clamp(2.5rem,4vw,4.25rem);align-items:start}@media(min-width:1100px){.project-detail-layout{grid-template-columns:minmax(0,1fr) 320px}}@media(min-width:1320px){.project-detail-layout{grid-template-columns:minmax(0,1fr) 352px}}.project-story-hero{position:relative;padding:.8rem 0 2.4rem;border-bottom:1px solid rgba(148,163,184,.1)}.project-story-hero:before{content:none}.project-story-grid{position:relative;z-index:1}.project-story-copy{display:grid;align-content:start;gap:1.15rem;min-width:0;max-width:62rem}.project-story-meta{display:flex;flex-wrap:wrap;gap:.7rem}.project-story-meta-pill{display:inline-flex;align-items:center;min-height:auto;padding:0;border:none;border-radius:0;background:transparent;color:#cbd5e1b8;font-family:var(--project-font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}.project-story-meta-pill+.project-story-meta-pill:before{content:"/";margin-right:.7rem;color:#64748b99}.project-story-actions{display:flex;flex-wrap:wrap;gap:.8rem 1rem}.project-story-action{display:inline-flex;align-items:center;gap:.5rem;min-height:42px;padding:.72rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:#ffffff08;color:#f1f5f9e6;font-family:var(--project-font-mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease}.project-story-action:hover{border-color:#e2e8f047;background:#ffffff0f;color:#f8fafcfa;transform:translateY(-1px)}.project-story-action-primary{border-color:#90caf947;background:#09182cdb;color:#ebf5fff5}.project-story-action-primary:hover{border-color:#bfdbfe6b;background:#0b1f39f0;color:#f8fafcfa}.project-story-action-secondary{border-color:#ffffff14;background:transparent;color:#cbd5e1c2}.project-story-visual{display:grid;gap:1rem;align-content:start}.project-story-visual-frame{position:relative;overflow:hidden;display:block;width:100%;padding:0;border:1px solid rgba(148,163,184,.14);border-radius:28px;background:radial-gradient(circle at top right,rgba(37,99,235,.18),transparent 34%),linear-gradient(180deg,#060a12f5,#04070ef0);cursor:zoom-in;text-align:left;transition:border-color .22s ease,transform .22s ease,box-shadow .22s ease}.project-story-visual-frame:hover{border-color:#e2e8f038;transform:translateY(-1px);box-shadow:0 20px 48px #00000042}.project-story-visual-image{width:100%;aspect-ratio:4 / 5;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .32s ease}.project-story-visual-frame:hover .project-story-visual-image{transform:scale(1.014)}.project-story-visual-caption{display:grid;gap:.45rem;max-width:62rem}.project-story-eyebrow{display:inline-flex;margin-bottom:.35rem;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#bae6fdd1}.project-story-visual-caption strong{display:block;color:#f8fbfffa;font-family:var(--project-font-title);font-size:clamp(1.08rem,1.22vw,1.26rem);font-weight:620;line-height:1.28;letter-spacing:-.01em}.project-story-visual-caption p{margin:0;color:#bfcddfbd;font-size:14px;line-height:1.72;text-wrap:pretty}.project-story-facts{position:relative;z-index:1;display:grid;gap:0;margin-top:clamp(1.8rem,3vw,2.5rem);border-top:1px solid rgba(148,163,184,.14);border-bottom:1px solid rgba(148,163,184,.1)}@media(min-width:720px){.project-story-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1320px){.project-story-facts{grid-template-columns:repeat(4,minmax(0,1fr))}}.project-story-fact{min-width:0;padding:1rem 1.05rem 1rem 0;border-top:1px solid rgba(148,163,184,.08)}.project-story-fact-label{display:inline-flex;margin-bottom:.35rem;color:#94a3b8d1;font-family:var(--project-font-mono);font-size:9.8px;letter-spacing:.12em;text-transform:uppercase}.project-story-fact dd{margin:0}.project-story-fact strong{display:block;color:#f8fbfffa;font-family:var(--project-font-title);font-size:1rem;font-weight:600;line-height:1.35;letter-spacing:-.01em}.project-story-fact p{margin:.3rem 0 0;color:#bfcddfad;font-size:12.5px;line-height:1.66}.project-story-gallery{display:grid;gap:.95rem;margin-top:clamp(1.35rem,2vw,1.8rem)}.project-story-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.project-story-gallery-head span,.project-story-gallery-open{color:#cbd5e1c2;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.project-story-gallery-open{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:0 .7rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:transparent;transition:border-color .18s ease,color .18s ease,background-color .18s ease}.project-story-gallery-open:hover{border-color:#e2e8f03d;color:#f8fafcf0;background:#ffffff0a}.project-story-gallery-strip{display:flex;flex-wrap:nowrap;gap:.82rem;overflow-x:auto;padding-bottom:.18rem;scroll-snap-type:x proximity;scrollbar-width:none}.project-story-gallery-strip::-webkit-scrollbar{display:none}.project-story-gallery-item{display:grid;gap:.45rem;flex:0 0 10.5rem;min-width:0;text-align:left;scroll-snap-align:start}.project-story-gallery-item-media{display:block;overflow:hidden;border:1px solid rgba(148,163,184,.14);border-radius:18px;background:#04070ee6;transition:border-color .18s ease,transform .18s ease}.project-story-gallery-item:hover .project-story-gallery-item-media,.project-story-gallery-item.is-active .project-story-gallery-item-media{border-color:#bfdbfe47;transform:translateY(-1px)}.project-story-gallery-item-image{width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;display:block}.project-story-gallery-item-copy{display:grid;gap:.14rem}.project-story-gallery-item-index{color:#94a3b8b8;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.project-story-gallery-item-title{color:#e2e8f0db;font-size:13px;line-height:1.5;text-wrap:pretty}.project-detail-section{display:grid;gap:1rem}.project-detail-section-head{max-width:52rem;display:grid;gap:.55rem}.project-detail-section-kicker{color:#94a3b8d1;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.project-detail-section-head h2{margin:0;color:#f8fbfffa;font-family:var(--project-font-title);font-size:clamp(1.58rem,2vw,2.05rem);font-weight:620;line-height:1.16;letter-spacing:-.03em;text-wrap:balance}.project-detail-section-head p{margin:0;color:#bfcddfbd;font-size:15px;line-height:1.72;max-width:52ch}.project-detail-panel{border:1px solid rgba(148,163,184,.12);border-radius:24px;background:linear-gradient(180deg,#070b13d1,#04070ee6);padding:clamp(1rem,2vw,1.45rem);box-shadow:0 18px 48px #0000002e}.project-detail-reading-panel{padding-top:clamp(1.2rem,2vw,1.5rem)}.project-related-section{padding-top:.2rem}.project-related-grid{display:grid;gap:1rem}@media(min-width:900px){.project-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.project-related-card{display:grid;overflow:hidden;border:1px solid rgba(148,163,184,.12);border-radius:22px;background:linear-gradient(180deg,#070b13d1,#04070ee6);text-decoration:none;transition:border-color .22s ease,transform .22s ease,background-color .22s ease}.project-related-card:hover{border-color:#bfdbfe47;transform:translateY(-2px)}.project-related-card-media{overflow:hidden;border-bottom:1px solid rgba(148,163,184,.12);background:#04070ee6}.project-related-card-image{width:100%;aspect-ratio:16 / 10;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .32s ease}.project-related-card:hover .project-related-card-image{transform:scale(1.03)}.project-related-card-body{display:grid;gap:.8rem;padding:1rem 1rem 1.1rem}.project-related-card-meta{display:flex;flex-wrap:wrap;gap:.6rem;color:#94a3b8cc;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.project-related-card-meta span+span:before{content:"/";margin-right:.6rem;color:#64748b94}.project-related-card h3{margin:0;color:#f8fbfffa;font-family:var(--project-font-title);font-size:1.12rem;line-height:1.24;letter-spacing:-.02em}.project-related-card p{margin:0;color:#bfcddfc2;font-size:14px;line-height:1.68}.project-related-card-tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-related-card-tags span{display:inline-flex;align-items:center;padding:.3rem .52rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;color:#cbd5e1c7;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial){--blog-mono-font: "JetBrains Mono", "Share Tech Mono", "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace;--blog-divider-color: rgba(220, 234, 255, .055);--blog-divider-width: .5px}.blog-list-page{isolation:isolate;--blog-title-color: rgba(191, 220, 255, .96);--blog-title-hover: rgba(242, 249, 255, .99)}.blog-list-page:before,.blog-reading-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,#00000038,#0000005c);opacity:1}.blog-list-page:after{display:none}.blog-list-page .blog-feed-meta{color:#bacfe9e0;font-family:var(--blog-mono-font)}.blog-list-page .blog-feed-tags{min-height:0}.blog-list-page .blog-feed-card mark{color:#d8e4f1db;background:#2a384d38}.blog-list-page .blog-feed-link{border-top-color:var(--blog-divider-color);position:relative;overflow:hidden;contain:content;padding-left:0!important;padding-right:0!important;transition:background-color .3s ease,border-color .26s ease,padding-left .26s ease,padding-right .26s ease}.blog-list-page .blog-feed-link:before{display:none}.blog-list-page .blog-feed-link:after{display:none}.blog-list-page .blog-feed-link:hover{background-color:#3b82f604}@media(min-width:960px){.blog-list-page .blog-feed-link:hover{border-top-color:#cee3ff2e;padding-left:3rem!important;padding-right:3rem!important}.blog-list-page .blog-feed-link:hover:before{opacity:1;transform:translate(0)}.blog-list-page .blog-feed-inline-content{transition:transform .34s cubic-bezier(.2,.82,.24,1);will-change:transform}.blog-list-page .blog-feed-link:hover .blog-feed-inline-content{transform:translate(0)}}.blog-list-page .blog-feed-link:hover .blog-feed-meta{color:#c8dcf5f2}.blog-list-page .blog-feed-link:hover .blog-feed-tag{border-color:#ffffff38;color:#e6f0ffe6}.blog-list-page .blog-feed-link:hover .blog-feed-card-abstract{color:#e1ebfaf2}.blog-list-page .blog-feed-card{transition:none}.blog-list-page .blog-feed-inline-content{min-width:0}.blog-row-hover-preview{opacity:0;transform:translate3d(0,6px,0) scale(.99);transition:top .24s cubic-bezier(.22,.82,.24,1),left .24s cubic-bezier(.22,.82,.24,1),width .24s cubic-bezier(.22,.82,.24,1),opacity .18s ease,transform .24s cubic-bezier(.22,.82,.24,1)}.blog-row-hover-preview.is-visible{opacity:1;transform:translateZ(0) scale(1)}.blog-row-hover-preview-panel{border-radius:8px;border:1px solid rgba(185,216,255,.32);overflow:hidden;isolation:isolate;box-shadow:0 18px 38px #0108126b,0 0 0 1px #98caff2e,inset 0 0 0 1px #ffffff14;animation:blogPreviewPanelIn .32s cubic-bezier(.22,.82,.24,1) both}.blog-row-hover-preview-image-shell{position:relative;height:100%;width:100%;overflow:hidden}.blog-row-hover-preview-image{position:absolute;top:0;right:0;bottom:0;left:0;transform:scale(1.05);filter:saturate(.88) contrast(1.18) brightness(.82) blur(2px);animation:blogPreviewImageAssemble .78s cubic-bezier(.16,.88,.24,1) both}.blog-row-hover-preview-pixel{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;mix-blend-mode:screen;filter:saturate(1.1) contrast(1.2) brightness(.94);image-rendering:pixelated;-webkit-mask-image:radial-gradient(circle,rgba(0,0,0,.98) 56%,rgba(0,0,0,0) 62%);-webkit-mask-size:22px 22px;-webkit-mask-position:0 0;mask-image:radial-gradient(circle,#000000fa 56%,#0000 62%);mask-size:22px 22px;mask-position:0 0;animation:blogPreviewPixelAssemble .76s steps(16,end) both}.blog-row-hover-preview-particles{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background-image:radial-gradient(circle,rgba(206,232,255,.5) 1.15px,transparent 1.9px),radial-gradient(circle,rgba(132,189,255,.38) 1px,transparent 1.72px),radial-gradient(circle at 58% 44%,#a0d2ff1f,#a0d2ff00 70%);background-size:7px 7px,10px 10px,100% 100%;background-position:0 0,3px 4px,center;mix-blend-mode:screen;opacity:.48;filter:blur(.15px);animation:blogPreviewParticlesScatter .82s cubic-bezier(.2,.86,.24,1) both}.blog-row-hover-preview-vignette{background:linear-gradient(90deg,#02060c47,#02060c0f 42%,#02060c42),linear-gradient(180deg,#02060c24,#02060c03 52%,#02060c2e)}.blog-row-hover-preview-frame{border:1px solid rgba(212,231,255,.28);box-shadow:inset 0 0 0 1px #ffffff0d,inset 0 0 24px #65a7ff24}.blog-row-hover-preview.is-project .blog-row-hover-preview-panel{border-radius:6px;border-color:#bedbff3d;box-shadow:0 10px 24px #01081257,0 0 0 1px #94c4ff29}.blog-row-hover-preview.is-project .blog-row-hover-preview-image{transform:scale(1.01);filter:saturate(.92) contrast(1.06) brightness(.88);animation:blogPreviewProjectIn .26s cubic-bezier(.22,.82,.24,1) both}.blog-row-hover-preview.is-project .blog-row-hover-preview-pixel,.blog-row-hover-preview.is-project .blog-row-hover-preview-particles{display:none}.blog-row-hover-preview.is-project .blog-row-hover-preview-vignette{background:linear-gradient(90deg,#02060c33,#02060c0a 44%,#02060c29),linear-gradient(180deg,#02060c14,#02060c03 56%,#02060c1f)}.blog-row-hover-preview.is-project .blog-row-hover-preview-frame{border-color:#c4dfff33;box-shadow:inset 0 0 0 1px #ffffff0a}@keyframes blogPreviewPanelIn{0%{opacity:0;transform:translate3d(4px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes blogPreviewProjectIn{0%{opacity:0;transform:translate3d(6px,0,0) scale(1.015);filter:saturate(.78) contrast(1.1) brightness(.76)}to{opacity:1;transform:translateZ(0) scale(1.01);filter:saturate(.92) contrast(1.06) brightness(.88)}}@keyframes blogPreviewImageAssemble{0%{opacity:.02;transform:scale(1.14);filter:saturate(.4) contrast(1.4) brightness(.38) blur(20px)}52%{opacity:.52;transform:scale(1.05);filter:saturate(.75) contrast(1.12) brightness(.62) blur(6px)}to{opacity:1;transform:scale(1.014);filter:saturate(.94) contrast(1.03) brightness(.86) blur(0)}}@keyframes blogPreviewPixelAssemble{0%{opacity:1;transform:scale(1.1);-webkit-mask-size:48px 48px;mask-size:48px 48px;filter:saturate(1.3) contrast(1.32) brightness(1.08)}55%{opacity:.72;transform:scale(1.04);-webkit-mask-size:24px 24px;mask-size:24px 24px;filter:saturate(1.18) contrast(1.2) brightness(1)}to{opacity:0;transform:scale(1);-webkit-mask-size:12px 12px;mask-size:12px 12px;filter:saturate(1) contrast(1) brightness(.94)}}@keyframes blogPreviewParticlesScatter{0%{opacity:1;transform:scale(1.14);filter:blur(1.4px)}50%{opacity:.82;transform:scale(1.05);filter:blur(.4px)}to{opacity:0;transform:scale(1);filter:blur(0)}}@media(prefers-reduced-motion:reduce){.blog-row-hover-preview{transition:none!important;transform:none!important}.blog-row-hover-preview-panel,.blog-row-hover-preview-image,.blog-row-hover-preview-pixel,.blog-row-hover-preview-particles{animation:none}}.blog-feed-prompt{animation:blogCursorBlink .8s steps(2,start) infinite}@keyframes blogCursorBlink{0%,to{opacity:.5}50%{opacity:1}}.blog-list-page .blog-feed-map-soften{background:linear-gradient(180deg,#02060c80,#02060c61 18%,#02060c38 38%,#02060c1f 56%,#02060c0d 72%,#02060c05),linear-gradient(90deg,#02060cb8,#02060c94 36%,#02060c5c 58%,#02060c33 74%,#02060c14 88%,#02060c05)}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip{position:relative;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-color:var(--blog-divider-color)!important;pointer-events:auto}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip section.border-t{border-top-color:var(--blog-divider-color)!important}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-divider{height:var(--blog-divider-width);background:linear-gradient(90deg,rgba(220,234,255,0) 0%,var(--blog-divider-color) 14%,var(--blog-divider-color) 86%,rgba(220,234,255,0) 100%)}@media(min-width:960px){:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip{background:transparent;box-shadow:none;border-left:none!important;padding-bottom:.72rem}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip:before{display:none}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip>section{margin-left:0;margin-right:0}}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip::-webkit-scrollbar{width:4px}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip::-webkit-scrollbar-track{background:transparent}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-strip::-webkit-scrollbar-thumb:hover{background:#fff3}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-side-title{color:#d7e8fff0;font-family:var(--blog-mono-font);font-size:12.1px;font-weight:560;letter-spacing:.14em;text-transform:uppercase}.blog-list-page .blog-hero-title{line-height:.85;letter-spacing:-.044em;text-shadow:0 0 22px rgba(255,255,255,.04)}.blog-list-page .blog-hero-caption{text-wrap:pretty;color:#ccddf1e6}.blog-list-page .blog-feed-card-title{color:var(--blog-title-color)}.blog-list-page .blog-feed-link:hover .blog-feed-card-title{color:var(--blog-title-hover)}.blog-list-page .blog-feed-card-abstract{color:#d0e0f4eb}.blog-list-page .blog-side-input{font-family:var(--blog-mono-font);background:transparent!important;border-color:#ffffff2e!important;color:#f7fbfffa;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.blog-list-page .blog-side-input::-moz-placeholder{color:#a9bad3e6}.blog-list-page .blog-side-input::placeholder{color:#a9bad3e6}.blog-list-page .blog-side-input:focus{border-color:#ffffff4d!important;background:#ffffff0a!important;box-shadow:none}.blog-list-page .blog-side-input:-webkit-autofill,.blog-list-page .blog-side-input:-webkit-autofill:hover,.blog-list-page .blog-side-input:-webkit-autofill:focus,.blog-list-page .blog-side-input:-webkit-autofill:active{-webkit-text-fill-color:rgba(187,203,224,.8);box-shadow:0 0 0 1000px #04070db3 inset!important;-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s}.blog-list-page .blog-module-pill{position:relative;overflow:hidden;font-family:var(--blog-mono-font);border-radius:0;border-color:#ffffff1a;background:#ffffff08;color:#c8d8f0d9;transition:border-color .2s ease,color .2s ease,background-color .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;cursor:pointer}.blog-list-page .blog-module-pill:hover{border-color:#3b82f659;background:#3b82f60d;color:#f0f8fff2}.blog-list-page .blog-module-pill .blog-pill-ripple-dot{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.blog-list-page .blog-module-pill .blog-pill-ripple-dot:before,.blog-list-page .blog-module-pill .blog-pill-ripple-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(59,130,246,.55) 1px,transparent 1px);background-size:5px 5px;pointer-events:none}.blog-list-page .blog-module-pill .blog-pill-ripple-dot:before{animation:blogPillDotWave .7s ease-out forwards}.blog-list-page .blog-module-pill .blog-pill-ripple-dot:after{background-image:radial-gradient(circle,rgba(59,130,246,.35) 1px,transparent 1px);background-size:5px 5px;background-position:2.5px 2.5px;animation:blogPillDotWave2 .7s ease-out forwards;animation-delay:.1s;opacity:0}.blog-list-page .blog-module-pill.blog-module-pill-active{border-color:#3b82f659;background:#3b82f614;color:#fffffffa;animation:blogPillBorderPulse 2.4s ease-in-out infinite}@keyframes blogPillDotWave{0%{clip-path:circle(0% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:.9}30%{clip-path:circle(40% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:1}to{clip-path:circle(150% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:0}}@keyframes blogPillDotWave2{0%{clip-path:circle(0% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:0}10%{opacity:.8}40%{clip-path:circle(35% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:.6}to{clip-path:circle(150% at var(--ripple-x, 50%) var(--ripple-y, 50%));opacity:0}}@keyframes blogPillBorderPulse{0%,to{border-color:#3b82f659;box-shadow:none}50%{border-color:#3b82f680;box-shadow:0 0 4px #3b82f61a}}@keyframes blogPillGlitch{0%{transform:translate(0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(-1px)}to{transform:translate(0)}}.blog-list-page .blog-module-pill.blog-module-pill-entering{opacity:0;animation:pillParticleAppear .46s ease-out forwards;animation-delay:var(--pill-delay, 0ms)}.blog-list-page .blog-module-pill.blog-module-pill-entering:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(59,130,246,.65) 1px,transparent 1px),radial-gradient(circle,rgba(147,197,253,.35) 1px,transparent 1px);background-size:4px 4px,7px 7px;background-position:0 0,2px 2px;pointer-events:none;z-index:3;animation:pillParticleDissolve .52s ease-out forwards;animation-delay:var(--pill-delay, 0ms)}.blog-list-page .blog-module-pill.blog-module-pill-exiting{animation:pillParticleExit .42s ease-in forwards;animation-delay:var(--pill-delay, 0ms)}.blog-list-page .blog-module-pill.blog-module-pill-exiting:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(59,130,246,.55) 1px,transparent 1px),radial-gradient(circle,rgba(147,197,253,.28) 1px,transparent 1px);background-size:10px 10px,16px 16px;background-position:0 0,2px 2px;pointer-events:none;z-index:3;animation:pillParticleMaterialize .42s ease-in forwards;animation-delay:var(--pill-delay, 0ms)}@keyframes pillParticleAppear{0%{opacity:0;transform:translateY(4px)}35%{opacity:.65}to{opacity:1;transform:translateY(0)}}@keyframes pillParticleDissolve{0%{opacity:1;background-size:4px 4px,7px 7px}40%{opacity:.7;background-size:5px 5px,9px 9px}75%{opacity:.3;background-size:7px 7px,12px 12px}to{opacity:0;background-size:10px 10px,16px 16px}}@keyframes pillParticleExit{0%{opacity:1;transform:translateY(0)}60%{opacity:.35}to{opacity:0;transform:translateY(3px)}}@keyframes pillParticleMaterialize{0%{opacity:0;background-size:10px 10px,16px 16px}30%{opacity:.5;background-size:7px 7px,12px 12px}70%{opacity:.85;background-size:5px 5px,9px 9px}to{opacity:1;background-size:4px 4px,7px 7px}}.blog-list-page .blog-module-expand{border-radius:0;background:#ffffff05;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.blog-list-page .blog-module-expand:hover{background:#ffffff0f}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card{position:relative;padding:.78rem 0;background:transparent;transition:transform .2s ease;z-index:1;display:block}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:before{content:"";position:absolute;top:-8px;right:-12px;bottom:-8px;left:-12px;border-radius:4px;border:1px solid transparent;background:transparent;overflow:hidden;transition:border-color .2s ease,background-color .2s ease;pointer-events:none;z-index:-1}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover{transform:translate(1px)}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover:before{border-color:#ffffff1a;background:#3b82f608}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover .blog-sidebar-project-title{color:#fff}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover .blog-sidebar-project-desc{color:#e1ebfaf2}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover .blog-sidebar-project-code{color:#3b82f6b3}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card .blog-sidebar-project-tech{transition:border-color .2s ease,color .2s ease}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-card:hover .blog-sidebar-project-tech{border-color:#3b82f659;color:#dcf0ffeb}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-cover{display:none!important}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-code{font-family:var(--blog-mono-font);opacity:.9;transition:color .2s ease}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-title{font-family:var(--blog-mono-font);color:#f0f8fffa;line-height:1.34;transition:color .2s ease}:is(.blog-list-page,.blog-reading-page,.project-detail-editorial) .blog-sidebar-project-desc{color:#d0e0f4e6;transition:color .2s ease}.blog-list-page .blog-project-status{display:inline-flex;align-items:center;gap:.28rem;border:1px solid rgba(255,255,255,.2);border-radius:0;background:#ffffff05}.blog-list-page .blog-project-status-online,.blog-list-page .blog-project-status-active{border-color:#4ade8080;color:#86efacfa;background:#10b98114}.blog-list-page .blog-project-status-offline{border-color:#a1a1aa5c;color:#d4d4d8db;background:#71717a24}.blog-list-page .blog-project-status-beta{border-color:#fde68a59;color:#fef08aeb}.blog-list-page .blog-project-status-dev{border-color:#60a5fa80;color:#93c5fdfa;background:#2563eb29}.blog-list-page .blog-project-ai-status{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.2);border-radius:0;background:#ffffff05}.blog-list-page .blog-project-ai-status-on{border-color:#22d3ee73;color:#67e8f9f5;background:#06b6d41f}.blog-list-page .blog-project-ai-status-off{border-color:#a1a1aa5c;color:#d4d4d8d6;background:#71717a1f}.blog-list-page .blog-project-status-dot{width:.34rem;height:.34rem;border-radius:999px;background:#4ade80;box-shadow:0 0 #4ade80a6;animation:blogStatusPulse 1.8s ease-in-out infinite}.blog-list-page .blog-uplink-submit{font-family:var(--blog-mono-font);border-color:#ffffff57;background:#f7fafefa;color:#080a0ee6}.blog-list-page .blog-uplink-submit:hover{border-color:#fff6;background:#fff}.blog-list-page .blog-feed-tag{border-radius:999px;border-color:#60a5fa47;background:linear-gradient(180deg,#3b82f61f,#3b82f608);color:#d8effffa;font-family:var(--blog-mono-font)}.blog-list-page .blog-feed-tag-featured{border-color:#93c5fd9e;background:#3b82f638;color:#f0f8fffc}.blog-list-page .blog-feed-card:before{display:none}.blog-open-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12050;pointer-events:auto;cursor:progress;background:#02060c70;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.blog-open-loading-core{display:inline-flex;align-items:center;gap:.52rem;padding:.42rem .68rem;border:1px solid rgba(255,255,255,.2);background:#03080fb8;color:#dfeefff0;font-family:var(--blog-mono-font);font-size:11px;letter-spacing:.115em;text-transform:uppercase;white-space:nowrap}.blog-open-loading-spinner{width:.82rem;height:.82rem;border-radius:999px;border:1.5px solid rgba(147,197,253,.36);border-top-color:#93c5fdfa;border-right-color:#93c5fdad;animation:blogOpenSpin .8s linear infinite}@keyframes blogOpenSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.blog-open-loading-spinner{animation:none!important}.blog-row-hover-preview-image{animation:none!important;transition:none!important}}.home-project-card{position:relative}.home-project-card:before{content:"";position:absolute;left:0;top:0;height:1px;width:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.55),transparent);opacity:0;transition:opacity .5s;z-index:3}.group:hover .home-project-card:before{opacity:1}.home-project-feed-link{position:relative;overflow:hidden;transition:background-color .3s ease}.home-project-feed-link:hover{background-color:#3b82f604}.home-project-feed-link:hover .home-project-feed-title{color:#f2f9fffc}.home-project-feed-link:hover .home-project-feed-abstract{color:#e1ebfaf2}.home-project-feed-link:hover .home-project-feed-tag{border-color:#ffffff38;color:#e6f0ffe6}.home-project-feed-link:hover .home-project-feed-card{transform:translate(2px)}.home-project-ripple{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4;overflow:hidden}.home-project-ripple-wave{position:absolute;width:16px;height:16px;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.22) 1px,transparent 1px);background-size:4px 4px;opacity:0;animation:homeProjectRipple .6s ease-out forwards}@keyframes homeProjectRipple{0%{width:16px;height:16px;margin-left:-8px;margin-top:-8px;opacity:.7}to{width:500px;height:500px;margin-left:-250px;margin-top:-250px;opacity:0}}@media(prefers-reduced-motion:reduce){.home-project-ripple-wave{animation:none!important;opacity:0!important}}.footer-reference{--footer-tech-font: "Outfit", "JetBrains Mono", "Share Tech Mono", "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, sans-serif;--footer-divider: rgba(220, 234, 255, .1);--footer-divider-w: 1px}.footer-reference-sky{position:relative;overflow:hidden}.footer-reference-sky:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#0000003d,#0000005c);opacity:1}.footer-reference-sky:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--footer-divider-w);background:var(--footer-divider)}.footer-reference-body{position:relative;overflow:hidden;border-top-color:var(--footer-divider)!important;background:#020408d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.footer-reference-body:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(rgba(88,103,127,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(88,103,127,.04) 1px,transparent 1px);background-size:30px 30px,30px 30px;opacity:.6}.footer-reference .footer-brand-word{font-family:var(--project-font-title, var(--footer-tech-font));font-size:clamp(.96rem,.58vw,1.04rem);font-weight:380;letter-spacing:.126em;line-height:1;color:#f8fcfffa}.footer-reference .footer-brand-mark{box-shadow:0 0 0 1px #ffffff26 inset}.footer-reference .footer-brand-copy{font-family:var(--project-font-copy, var(--footer-tech-font));font-size:clamp(.82rem,.46vw,.9rem);font-weight:280;letter-spacing:.092em;line-height:1.66;color:#8ea0bcb8}.footer-reference .footer-col-title{font-family:var(--project-font-title, var(--footer-tech-font));font-size:clamp(.82rem,.45vw,.9rem);font-weight:380;letter-spacing:.108em;line-height:1.06;color:#eef7fff2}.footer-reference .footer-col-link{display:inline-flex;align-items:center;min-height:2.15rem;padding:.24rem 0;font-family:var(--project-font-copy, var(--footer-tech-font));font-size:clamp(.8rem,.42vw,.88rem);font-weight:280;letter-spacing:.1em;line-height:1.14;color:#95a7c1a3;position:relative;transition:color .2s ease,letter-spacing .25s ease,text-shadow .2s ease}.footer-reference .footer-col-link:hover{letter-spacing:.13em;color:#c8e1fff2;text-shadow:0 0 8px rgba(100,180,255,.3),0 0 20px rgba(100,180,255,.1)}.footer-reference .footer-link-grid .footer-col{min-width:0}@media(min-width:640px){.footer-reference .footer-link-grid .footer-col{padding-left:1rem;border-left:var(--footer-divider-w) solid var(--footer-divider)}.footer-reference .footer-link-grid .footer-col:first-child{border-left:none;padding-left:0}}.footer-reference .footer-meta-row{border-top:var(--footer-divider-w) solid var(--footer-divider)}.footer-reference .footer-meta{font-family:var(--project-font-mono, var(--footer-tech-font));font-size:clamp(.72rem,.36vw,.78rem);font-weight:260;letter-spacing:.11em;line-height:1.2;color:#7e92ae8f}.footer-reference .footer-meta-signature{font-weight:240;letter-spacing:.125em;color:#70829c70}@keyframes blogStatusPulse{0%{box-shadow:0 0 #4ade80a8;opacity:.9}60%{box-shadow:0 0 0 8px #4ade8000;opacity:1}to{box-shadow:0 0 #4ade8000;opacity:.9}}.blog-sidebar-panel{border-radius:var(--radius-panel);background:linear-gradient(to bottom right,rgba(255,255,255,.05),rgba(255,255,255,.02),transparent);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff0a;padding:1.1rem 1.15rem;animation:blogWidgetEnter .46s cubic-bezier(.22,1,.36,1) both}.blog-sidebar-panel:nth-of-type(2){animation-delay:55ms}.blog-sidebar-panel:nth-of-type(3){animation-delay:.11s}.blog-sidebar-panel:nth-of-type(4){animation-delay:165ms}.blog-detail-sidebar-strip .blog-sidebar-panel{margin-bottom:.9rem}.blog-detail-sidebar-strip .blog-sidebar-panel:last-child{margin-bottom:0}.blog-detail-sidebar-strip .blog-sidebar-panel .blog-side-title{border-left:none;padding-left:0}.blog-sidebar-section-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.58rem;padding-bottom:.52rem;border-bottom:1px solid rgba(220,234,255,.06)}.blog-sidebar-label{color:#d6e4f5d6;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.072em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.3rem}.blog-sidebar-stat{color:#a1b5d0c2;font-family:var(--project-font-mono);font-size:9.4px;letter-spacing:.03em;text-transform:uppercase;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;border-radius:999px;border:1px solid rgba(148,163,184,.14);background:#ffffff05;padding:.2rem .44rem}.blog-sidebar-divider{border:0;border-top:1px solid rgba(220,234,255,.06);margin:.9rem 0}.blog-sidebar-item{display:flex;align-items:flex-start;gap:.6rem;padding:.6rem .65rem;border-radius:10px;border:1px solid transparent;background:transparent;transition:border-color .17s ease,background-color .17s ease;text-decoration:none}.blog-sidebar-item:hover{border-color:#3b82f62e;background:#ffffff06}.blog-sidebar-item-title{color:#dfedffe0;font-size:12.8px;line-height:1.42;letter-spacing:.002em;text-wrap:pretty;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .16s ease}.blog-sidebar-item:hover .blog-sidebar-item-title{color:#f4fafffa}.blog-sidebar-item-meta{color:#a2b6d0c2;font-family:var(--project-font-mono);font-size:9.5px;letter-spacing:.02em;font-variant-numeric:tabular-nums;line-height:1.25;margin-top:.18rem}.blog-sidebar-item-thumb{width:44px;height:44px;flex-shrink:0;border-radius:8px;border:1px solid rgba(255,255,255,.09);-o-object-fit:cover;object-fit:cover}.blog-sidebar-cta-row{display:flex;gap:.5rem;margin-top:.56rem}.blog-sidebar-cta{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;border-radius:9px;border:1px solid rgba(148,163,184,.14);background:#ffffff04;padding:.52rem .7rem;color:#d6e4f5cc;font-family:var(--project-font-mono);font-size:10.2px;font-weight:580;letter-spacing:.048em;text-transform:uppercase;text-decoration:none;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.blog-sidebar-cta:hover{border-color:#ffffff2e;background:#ffffff0a;color:#f4fafff5}.blog-topic-chip{font-family:var(--project-font-mono);transition:border-color .16s ease,background-color .16s ease,color .16s ease}.blog-topic-chip:hover{border-color:#ffffff5c;color:#fff}.blog-topic-chip.is-active{background:#fff;border-color:#fffc;color:#000}.blog-sidebar-input{transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.blog-sidebar-input:focus{border-color:#3b82f64d;background:#060e1cb8;box-shadow:0 0 0 1px #3b82f61a inset}.blog-index-progress{margin-bottom:1rem;padding:0 0 .95rem;border-bottom:1px solid rgba(255,255,255,.08)}.blog-index-progress-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.blog-index-progress-label{color:#c0d0e2c2;font-family:var(--project-font-mono);font-size:9.6px;letter-spacing:.14em;text-transform:uppercase}.blog-index-bar{height:2.5px;border-radius:999px;background:#ffffff0f;overflow:hidden}.blog-index-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#3b82f680,#93c5fdcc);box-shadow:0 0 8px #3b82f647,0 0 2px #3b82f626;transition:width .26s cubic-bezier(.22,1,.36,1)}.blog-index-percent{color:#93c5fdeb;font-family:var(--project-font-mono);font-size:10.5px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;min-width:2.4em;text-align:right}.blog-index-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.16rem}.blog-index-row{margin:0}.blog-index-link{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.72rem;width:100%;min-height:2.25rem;padding:.52rem 0 .52rem .92rem;border-left:1px solid rgba(255,255,255,.08);background:transparent;text-align:left;transition:border-color .16s ease,background-color .15s ease,transform .15s ease}.blog-index-link:before{content:"";position:absolute;left:-1px;top:.4rem;bottom:.4rem;width:1px;background:transparent;transition:background-color .16s ease,box-shadow .16s ease}.blog-index-link.is-sub{margin-left:1rem;min-height:2.25rem}.blog-index-link:hover{border-left-color:#dceaff29;background:linear-gradient(90deg,#ffffff07,#fff0);transform:translate(1px)}.blog-index-link.is-done{border-left-color:#c8d2e12e}.blog-index-link.is-active{border-left-color:#639bff85;background:linear-gradient(90deg,rgba(59,130,246,.08),rgba(59,130,246,.02) 62%,transparent)}.blog-index-link.is-active:before{background:#63a5ffeb;box-shadow:0 0 0 1.5px #63a5ff1f,0 0 14px #3b82f633;animation:tocActivePulse 2s ease-in-out infinite}.blog-index-label{color:#d2e0f0bd;font-family:var(--project-font-copy);font-size:13.2px;line-height:1.5;letter-spacing:.005em;text-wrap:pretty}.blog-index-link.is-sub .blog-index-label{font-size:12.15px;color:#c2d3e99e}.blog-index-link.is-done .blog-index-label{color:#d8e6f6cc}.blog-index-link.is-active .blog-index-label{color:#c7e1fff5;font-weight:560}.blog-index-number{min-width:2.4rem;color:#84b2e2c2;font-family:var(--project-font-mono);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.08em;opacity:.9}.blog-index-link.is-active .blog-index-number{color:#ebf0f8f2;opacity:1}.blog-index-link.is-done .blog-index-number{color:#b4c3d7d1;opacity:1}@keyframes blogHeadingFlash{0%{background-color:transparent;box-shadow:none}14%{background-color:#3b82f629;box-shadow:0 0 0 1px #60a5fa52 inset}34%{background-color:transparent;box-shadow:none}52%{background-color:#3b82f61c;box-shadow:0 0 0 1px #60a5fa3d inset}76%{background-color:transparent;box-shadow:none}to{background-color:transparent;box-shadow:none}}.blog-heading-flash{animation:blogHeadingFlash 1.1s ease-out forwards;border-radius:4px;padding-inline:.1em;margin-inline:-.1em}@keyframes tocActivePulse{0%,to{opacity:1;box-shadow:0 0 0 1.5px #63a5ff1f,0 0 14px #3b82f633}50%{opacity:.7;box-shadow:0 0 0 1px #63a5ff14,0 0 8px #3b82f61f}}.blog-post-meta-grid{display:flex;flex-direction:column;gap:.42rem;margin-bottom:.7rem}.blog-post-meta-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.blog-post-meta-key{color:#a2b6d0b8;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.blog-post-meta-val{color:#dceaffe6;font-family:var(--project-font-mono);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.02em}.blog-post-meta-tags{display:flex;flex-wrap:wrap;gap:.34rem;padding-top:.56rem;border-top:1px solid rgba(255,255,255,.06)}.blog-post-meta-tag{font-family:var(--project-font-mono);font-size:9.4px;letter-spacing:.04em;text-transform:uppercase;padding:.18rem .48rem;border:1px solid rgba(255,255,255,.1);background:#ffffff06;color:#c8d8f0cc;transition:border-color .16s ease,color .16s ease}.blog-post-meta-tag:hover{border-color:#3b82f64d;color:#f0f8fff2}.blog-preview-rail{box-shadow:inset 0 0 0 1px #94a3b80a}.blog-preview-rail img{transition:opacity .18s ease,filter .18s ease,transform .22s ease}.blog-preview-rail:hover img{filter:brightness(.9);transform:none}.blog-reading-page{--project-font-title: "Outfit", "Avenir Next", "SF Pro Display", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-copy: "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-ui: "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-mono: var(--blog-mono-font, "JetBrains Mono", "IBM Plex Mono", monospace);--blog-reading-max: 69ch}.blog-reading-page main{font-family:var(--project-font-copy)}.blog-reading-page [data-text-select]{font-family:var(--project-font-copy);letter-spacing:.001em}.blog-reading-page .blog-detail-shell{max-width:980px}.blog-reading-page .blog-detail-header{max-width:43rem}.blog-reading-page .blog-detail-meta{color:#d0e0f4c2}.blog-reading-page .blog-detail-kicker{color:#9cbbe1e6;letter-spacing:.18em}.blog-reading-page .blog-detail-title{text-wrap:balance;max-width:18ch;color:#f8fcfffc;letter-spacing:-.028em;line-height:1;font-weight:640;font-family:var(--project-font-title)}.blog-reading-page .blog-detail-dek{text-wrap:pretty;color:#dbe8f8d1;letter-spacing:.002em;font-size:clamp(1rem,1.15vw,1.12rem)}.project-reading-page .project-hero{display:grid;gap:1.1rem;margin-bottom:clamp(2.8rem,6vw,4.6rem)}.project-reading-page .project-hero-back{display:inline-flex;align-items:center;gap:.4rem;color:#7baeebc7;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;transition:color .18s ease,transform .18s ease}.project-reading-page .project-hero-back:hover{color:#baddfff5;transform:translate(-1px)}.project-reading-page .project-hero-shell{display:grid;gap:clamp(1.35rem,3vw,2.3rem)}.project-reading-page .project-hero-media{display:grid;gap:.82rem}.project-reading-page .project-hero-stage{position:relative;display:block;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:32px;background:radial-gradient(circle at top right,rgba(96,165,250,.2),transparent 30%),linear-gradient(180deg,#070d18f5,#03070efa);box-shadow:0 30px 70px #00000047,inset 0 1px #ffffff0d;cursor:zoom-in;isolation:isolate;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.project-reading-page .project-hero-stage:hover{transform:translateY(-1px);border-color:#cce2ff2e;box-shadow:0 34px 76px #00000057,inset 0 1px #ffffff12}.project-reading-page .project-hero-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#02060d0a,#02060d24 42%,#02060d7a),radial-gradient(circle at 82% 18%,rgba(191,219,254,.12),transparent 30%)}.project-reading-page .project-hero-image{display:block;width:100%;aspect-ratio:16 / 8.75;-o-object-fit:cover;object-fit:cover}.project-reading-page .project-hero-counter{position:absolute;top:1rem;right:1rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-width:4.2rem;min-height:2rem;padding:.34rem .58rem;border:1px solid rgba(226,237,255,.28);border-radius:999px;color:#f6fbfff5;font-family:var(--project-font-mono);font-size:9.4px;letter-spacing:.1em;background:#02091394;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.project-reading-page .project-hero-media-caption{display:grid;gap:.3rem;max-width:46rem}.project-reading-page .project-hero-kicker{color:#95b2d3bd;font-family:var(--project-font-mono);font-size:9.6px;letter-spacing:.16em;text-transform:uppercase}.project-reading-page .project-hero-media-caption strong{color:#f4f9fffa;font-family:var(--project-font-title);font-size:clamp(1rem,1.12vw,1.16rem);line-height:1.28}.project-reading-page .project-hero-media-caption p{margin:0;color:#c4d3e6bd;font-size:.96rem;line-height:1.72}.project-reading-page .project-hero-copy{display:grid;gap:1.4rem;max-width:76rem}.project-reading-page .project-hero-copy-main{display:grid;gap:1.05rem}.project-reading-page .project-hero-meta{display:flex;flex-wrap:wrap;gap:.46rem .82rem;color:#b1c2d6ad;font-family:var(--project-font-mono);font-size:9.8px;letter-spacing:.12em;text-transform:uppercase}.project-reading-page .project-hero-meta-kicker{color:#9ec9fcd6}.project-reading-page .project-hero-meta span+span:before{content:"/";margin-right:.82rem;color:#606e8094}.project-reading-page .project-hero-title{margin:0;max-width:13ch;color:#f8fcfffc;font-family:var(--project-font-title);font-size:clamp(2.6rem,5vw,4.6rem);font-weight:660;line-height:.96;letter-spacing:-.04em;text-wrap:balance}.project-reading-page .project-hero-dek{margin:0;max-width:46rem;color:#e2ecf7e0;font-size:clamp(1.06rem,1.34vw,1.24rem);line-height:1.86;text-wrap:pretty}.project-reading-page .project-hero-status{color:#889bb2a3;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.project-reading-page .project-hero-actions{display:flex;flex-wrap:wrap;gap:.68rem}.project-reading-page .project-hero-action{display:inline-flex;align-items:center;justify-content:center;gap:.48rem;min-height:42px;padding:.78rem 1.04rem;border-radius:999px;border:1px solid rgba(148,163,184,.14);color:#eef4fcf0;font-family:var(--project-font-mono);font-size:9.8px;letter-spacing:.11em;text-transform:uppercase;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease}.project-reading-page .project-hero-action:hover{transform:translateY(-1px)}.project-reading-page .project-hero-action-primary{border-color:#94cbff47;background:#0b1c32db}.project-reading-page .project-hero-action-primary:hover{border-color:#bfdbfe6b;background:#0c223cf0}.project-reading-page .project-hero-action-secondary{background:#ffffff05}.project-reading-page .project-hero-action-secondary:hover{border-color:#d1dff033;background:#ffffff0a}.project-reading-page .project-hero-facts-shell{align-self:start;display:grid;gap:.8rem;min-width:0;padding:1.12rem 1.14rem 1.02rem;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:linear-gradient(180deg,#09101cc7,#050a1299),radial-gradient(circle at top right,rgba(96,165,250,.12),transparent 38%);box-shadow:0 20px 48px #00000038,inset 0 1px #ffffff0a}.project-reading-page .project-hero-facts-kicker{margin:0;color:#9dbbdce6;font-family:var(--project-font-mono);font-size:9.8px;letter-spacing:.16em;text-transform:uppercase}.project-reading-page .project-hero-facts{display:grid;grid-template-columns:1fr;gap:.88rem;margin:0}.project-reading-page .project-hero-fact{min-width:0;display:grid;gap:.26rem;padding-top:.82rem;border-top:1px solid rgba(255,255,255,.08)}.project-reading-page .project-hero-fact:first-child{padding-top:0;border-top:0}.project-reading-page .project-hero-fact dt{color:#8ca0b8b8;font-family:var(--project-font-mono);font-size:9.2px;letter-spacing:.14em;text-transform:uppercase}.project-reading-page .project-hero-fact-value{margin:0;color:#f0f6fcf5;font-size:1.04rem;line-height:1.46;text-wrap:balance}.project-reading-page .project-hero-fact-detail{margin:0;color:#a5b7cebd;font-size:.9rem;line-height:1.62}.project-reading-page .project-detail-article-shell{display:block}.project-reading-page .project-detail-article-shell.has-sidebar{display:grid;gap:clamp(2.25rem,4vw,4rem)}.project-reading-page .project-detail-main{min-width:0;max-width:100%}.project-reading-page .project-detail-body-section{max-width:66rem}.project-reading-page .project-reading-body-shell{padding-top:.1rem}.project-reading-page .project-detail-sidebar-strip{border:0;border-radius:0;background:transparent;box-shadow:none}.project-reading-page .project-detail-sidebar-strip .blog-side-title{color:#d9e4f0e0}.project-reading-page .project-detail-sidebar-strip .blog-index-progress{margin-bottom:.82rem;padding-bottom:.8rem}.project-reading-page .project-detail-sidebar-strip .blog-index-link{padding:.42rem 0 .42rem .94rem;border:0;border-left:1px solid rgba(255,255,255,.09);border-radius:0;background:transparent}.project-reading-page .project-detail-sidebar-strip .blog-index-link:before{display:block}.project-reading-page .project-detail-sidebar-strip .blog-index-link.is-sub{margin-left:.95rem;padding-left:.94rem}.project-reading-page .project-detail-sidebar-strip .blog-index-link:hover{border-left-color:#d6e2f32e;background:linear-gradient(90deg,#ffffff07,#fff0);transform:translate(1px)}.project-reading-page .project-detail-sidebar-strip .blog-index-link.is-done{border-left-color:#c8d2e12e}.project-reading-page .project-detail-sidebar-strip .blog-index-link.is-active{border-left-color:#e1eaf46b;background:linear-gradient(90deg,#dce6f014,#dce6f005 62%,#dce6f000);box-shadow:none}.project-reading-page .project-detail-sidebar-strip .blog-index-label{color:#cddae9ad;font-size:12.4px;line-height:1.48}.project-reading-page .project-detail-sidebar-strip .blog-index-link.is-sub .blog-index-label{font-size:11.85px;color:#bacbdf9e}.project-reading-page .project-detail-sidebar-strip .blog-index-link.is-active .blog-index-label{color:#f4f9fff5}.project-reading-page .project-detail-sidebar-strip .blog-index-number{min-width:2.4rem;color:#90b1d2c2}@media(min-width:960px){.project-reading-page .project-detail-article-shell.has-sidebar{grid-template-columns:minmax(0,1fr) minmax(220px,248px)}.project-reading-page .project-detail-sidebar-strip{padding:0 0 0 2rem}}@media(min-width:1100px){.project-reading-page .project-hero-copy{grid-template-columns:minmax(0,1.2fr) minmax(260px,320px);align-items:start;gap:1.8rem}}@media(min-width:1280px){.project-reading-page .project-detail-article-shell.has-sidebar{grid-template-columns:minmax(0,1fr) minmax(236px,264px)}}@media(max-width:767px){.project-reading-page .project-hero-title{max-width:100%;font-size:clamp(2.25rem,14vw,3.2rem)}.project-reading-page .project-hero-image{aspect-ratio:16 / 10}.project-reading-page .project-hero-meta span+span:before{margin-right:.56rem}}.blog-reading-page .blog-detail-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;max-width:42rem}.blog-reading-page .blog-detail-stat-card{min-width:0;padding-top:.82rem;border-top:1px solid rgba(255,255,255,.08)}.blog-reading-page .blog-detail-stat-card dt{color:#8ea6c1eb;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.blog-reading-page .blog-detail-stat-card dd{margin-top:.3rem;color:#f2f7fcf5;font-size:.98rem;line-height:1.45;text-wrap:balance}.blog-reading-page .blog-hero{display:grid;gap:1rem}.blog-reading-page .blog-hero-stage{position:relative;display:block;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:28px;background:radial-gradient(circle at top right,rgba(96,165,250,.18),transparent 28%),linear-gradient(180deg,#070d18f5,#03070efa);box-shadow:0 30px 60px #0000004d,inset 0 1px #ffffff0d;cursor:zoom-in;isolation:isolate;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.blog-reading-page .blog-hero-stage:hover{transform:translateY(-1px);border-color:#c4e0ff2e;box-shadow:0 34px 68px #00000057,inset 0 1px #ffffff0f}.blog-reading-page .blog-hero-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#02060d05,#02060d1f 44%,#02060d6b),radial-gradient(circle at 82% 18%,rgba(191,219,254,.14),transparent 30%)}.blog-reading-page .blog-hero-counter{position:absolute;top:1.08rem;right:1.08rem;z-index:2;padding:.42rem .58rem;border:1px solid rgba(226,237,255,.38);border-radius:999px;color:#f6fbfffa;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.1em;background:#020913b3;box-shadow:0 8px 18px #0000003d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.blog-reading-page .blog-hero-image{display:block;width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover}.blog-reading-page .blog-hero-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.1rem 1.8rem;align-items:start;padding-bottom:.08rem}.blog-reading-page .blog-hero-caption{min-width:0;padding-left:.18rem}.blog-reading-page .blog-hero-kicker{display:inline-flex;color:#95b2d3c7;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.blog-reading-page .blog-hero-title{margin-top:.42rem;color:#f3f9fff7;font-family:var(--project-font-title);font-size:clamp(1.1rem,1.45vw,1.34rem);line-height:1.26;text-wrap:pretty}.blog-reading-page .blog-hero-detail{margin-top:.46rem;max-width:42rem;color:#c8d8eacc;font-size:.96rem;line-height:1.72;text-wrap:pretty}.blog-reading-page .blog-hero-facts{min-width:14.2rem;display:grid;grid-template-columns:repeat(2,minmax(7rem,1fr));gap:.8rem 1.15rem;padding-left:1.4rem;padding-top:.18rem;border-left:1px solid rgba(255,255,255,.08)}.blog-reading-page .blog-hero-facts div{display:grid;gap:.18rem}.blog-reading-page .blog-hero-facts dt{color:#8fa8c4bd;font-family:var(--project-font-mono);font-size:9.4px;letter-spacing:.14em;text-transform:uppercase}.blog-reading-page .blog-hero-facts dd{color:#edf4fbf2;font-size:.96rem;line-height:1.45}.blog-reading-page .blog-hero-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.72rem}.blog-reading-page .blog-hero-thumb{display:grid;grid-template-columns:5.4rem minmax(0,1fr);align-items:center;gap:.78rem;width:100%;padding:.54rem;border:1px solid rgba(255,255,255,.07);border-radius:16px;background:linear-gradient(180deg,#ffffff07,#ffffff04);text-align:left;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.blog-reading-page .blog-hero-thumb:hover{border-color:#c4e0ff29;background:linear-gradient(180deg,#ffffff0a,#ffffff05);transform:translateY(-1px)}.blog-reading-page .blog-hero-thumb.is-active{border-color:#7dd3fc57;background:linear-gradient(180deg,#38bdf81c,#38bdf808);box-shadow:inset 0 0 0 1px #7dd3fc14}.blog-reading-page .blog-hero-thumb-media{display:block;overflow:hidden;border-radius:12px;aspect-ratio:4 / 3;background:#070c16a8}.blog-reading-page .blog-hero-thumb-image{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.blog-reading-page .blog-hero-thumb-copy{min-width:0;display:grid;gap:.18rem}.blog-reading-page .blog-hero-thumb-index{color:#94aac5cc;font-family:var(--project-font-mono);font-size:9.2px;letter-spacing:.12em;text-transform:uppercase}.blog-reading-page .blog-hero-thumb-title{color:#e4eef8e6;font-size:.8rem;line-height:1.45;font-weight:500;text-wrap:pretty}.blog-reading-page .project-detail-md{font-size:clamp(16px,.98vw,17.6px);line-height:1.9;color:#dee8f4e6;letter-spacing:.002em;font-family:var(--project-font-copy)}.blog-reading-page .project-detail-md h2{display:flex;align-items:baseline;gap:.62rem;font-size:clamp(1.34rem,1.72vw,1.72rem);line-height:1.32;margin-top:2.6em;margin-bottom:.92em;letter-spacing:-.018em;font-weight:630;border-top:1px solid rgba(148,163,184,.07);padding-top:1.24em;text-transform:none;color:#f4f9fff5;font-family:var(--project-font-title)}.blog-reading-page .project-detail-md h3{display:flex;align-items:baseline;gap:.56rem;font-size:clamp(1.08rem,1.32vw,1.3rem);line-height:1.45;margin-top:1.88em;margin-bottom:.62em;color:#e8f3ffeb;font-family:var(--project-font-title);font-weight:600}.blog-reading-page .project-detail-md p,.blog-reading-page .project-detail-md li{max-width:min(100%,var(--blog-reading-max));color:#dae8fad6;font-family:var(--project-font-copy)}.blog-reading-page .project-heading-number{display:inline-flex;font-family:var(--project-font-mono);font-size:.78em;font-weight:560;letter-spacing:.04em;color:#a3bcdacc;transform:translateY(-.012em)}.blog-reading-page .project-detail-md h3 .project-heading-number{font-size:.74em;font-weight:540;color:#bcd0ead6;transform:translateY(-.01em)}.blog-reading-page .project-heading-divider{display:none}.project-heading-divider{display:inline-flex;align-items:baseline}.blog-reading-page .project-detail-md p{margin:1.05em 0 1.22em;color:#dae8fad6;line-height:1.9}.blog-reading-page .project-detail-md ul,.blog-reading-page .project-detail-md ol{margin:1.3em 0;padding-left:1.45em}.blog-reading-page .project-detail-md li+li{margin-top:.58em}.blog-reading-page .project-detail-md blockquote{max-width:min(100%,calc(var(--blog-reading-max) + 2rem));margin:1.8em 0;padding:.1rem 0 .1rem 1.12rem;border-left-width:2px;border-left-color:#7dd3fc42;background:none;border-radius:0;color:#dce9f8cc;font-style:italic;font-weight:500}.blog-reading-page .project-detail-md table{width:100%;margin:1.3rem 0 1.44rem;border-collapse:separate;border-spacing:0;border:1px solid rgba(148,163,184,.11);border-radius:8px;overflow:hidden;background:#05091152}.blog-reading-page .project-detail-md thead th{color:#d3e2f4d1;background:#0a101ba8;font-family:var(--project-font-mono);font-size:10.8px;letter-spacing:.034em;text-transform:uppercase;text-align:left;padding:.6rem .72rem;border-bottom:1px solid rgba(148,163,184,.08)}.blog-reading-page .project-detail-md tbody td{color:#e0ebf9e0;font-family:var(--project-font-mono);font-size:12.2px;letter-spacing:.005em;padding:.6rem .72rem;border-bottom:1px solid rgba(148,163,184,.06)}.blog-reading-page .project-detail-md tbody tr:last-child td{border-bottom:0}.blog-reading-page .project-detail-md tbody tr:nth-child(2n) td{background:#080d1729}@keyframes blogWidgetEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.blog-network-switch-item{animation:blogNetworkSwitchIn .44s cubic-bezier(.22,.84,.24,1)}@keyframes blogNetworkSwitchIn{0%{opacity:0;transform:translateY(2px) scale(.985);filter:blur(.4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media(prefers-reduced-motion:reduce){.blog-sidebar-panel,.blog-network-switch-item{animation:none}}.blog-reading-page .project-detail-figure{margin:1.4rem 0 1.58rem;max-width:min(100%,calc(var(--blog-reading-max) + 1.75rem));border:1px solid rgba(148,163,184,.075);border-radius:14px;background:#070c161f}.blog-reading-page .project-detail-figure-media{border-bottom:1px solid rgba(148,163,184,.06)}.blog-reading-page .project-detail-figure figcaption{padding:.72rem .92rem .82rem}.blog-reading-page .project-code-block-wrap{max-width:min(100%,calc(var(--blog-reading-max) + 2.1rem));border-radius:14px;border-color:#94a3b81f;background:#04080f6b}.blog-reading-page .project-code-block-toolbar{background:#090e1980;border-bottom-color:#94a3b812}.blog-reading-page .blog-detail-footer-head{max-width:39rem}.blog-reading-page .blog-detail-footer-kicker{color:#8fabc8e6;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase}.blog-reading-page .blog-detail-footer-title{margin-top:.62rem;color:#f4f9fff7;font-family:var(--project-font-title);font-size:clamp(1.4rem,2vw,1.88rem);line-height:1.08;letter-spacing:-.024em}.blog-reading-page .blog-detail-footer-copy{margin-top:.72rem;color:#c9d8e9d6;max-width:35rem;line-height:1.78}.blog-reading-page .blog-detail-related-stack{margin-top:2rem;display:grid;gap:0;max-width:60rem}.blog-reading-page .blog-detail-related-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.84rem 1.4rem;align-items:start;min-width:0;border-top:1px solid rgba(255,255,255,.09);padding:1.28rem .2rem 1.22rem 0;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.blog-reading-page .blog-detail-related-link:hover{border-top-color:#93c5fd75;background:linear-gradient(90deg,#ffffff07,#fff0);transform:translateY(-1px)}.blog-reading-page .blog-detail-related-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.35rem .82rem;color:#91a7c1d1;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.blog-reading-page .blog-detail-related-body{min-width:0;max-width:40rem}.blog-reading-page .blog-detail-related-title{color:#eff6fcf7;font-family:var(--project-font-title);font-size:1.12rem;line-height:1.34;text-wrap:pretty}.blog-reading-page .blog-detail-related-summary{margin-top:.48rem;color:#c8d8e9cc;font-size:.98rem;line-height:1.74;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-reading-page .blog-detail-related-cta{align-self:center;display:inline-flex;align-items:center;white-space:nowrap;color:#aad2ffe6;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.blog-reading-page .blog-detail-related-cta:after{content:"↗";margin-left:.42rem;font-size:.95em}.blog-reading-page .blog-detail-related-link:first-child{border-top-color:#ffffff1f}.blog-reading-page .blog-detail-related-link:last-child{border-bottom:1px solid rgba(255,255,255,.09)}.blog-reading-page .blog-detail-related-link:hover .blog-detail-related-cta{color:#d9eefff5}@media(max-width:1024px){.blog-reading-page .blog-detail-shell{max-width:100%}.blog-reading-page .project-detail-md{font-size:clamp(15.4px,1vw,16.4px);line-height:1.84}.blog-reading-page .project-detail-md h2{margin-top:1.45em;font-size:clamp(1.28rem,1.42vw,1.52rem)}.blog-reading-page .blog-detail-title{max-width:100%}.blog-reading-page .blog-hero-meta{grid-template-columns:1fr;gap:.9rem}.blog-reading-page .blog-hero-facts{min-width:0;padding-left:0;padding-top:.92rem;border-left:0;border-top:1px solid rgba(255,255,255,.08)}.blog-reading-page .blog-hero-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-reading-page .blog-detail-stat-grid{grid-template-columns:1fr}.blog-reading-page .blog-detail-related-link{grid-template-columns:1fr;gap:.56rem}.blog-reading-page .blog-detail-related-cta{align-self:start}.project-reading-page .project-cover-stage{border-radius:22px}}@media(max-width:640px){.blog-reading-page .blog-hero-stage{border-radius:22px}.blog-reading-page .blog-hero-counter{top:.8rem;right:.8rem;padding:.38rem .52rem}.blog-reading-page .blog-hero-rail{grid-template-columns:1fr}.blog-reading-page .blog-hero-thumb{grid-template-columns:4.6rem minmax(0,1fr)}.project-reading-page .project-mobile-meta{display:grid;gap:1rem;margin:-.4rem 0 1.7rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.08)}.project-reading-page .project-mobile-meta-list{display:grid;gap:.85rem}.project-reading-page .project-mobile-meta-row{display:grid;gap:.24rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.07)}.project-reading-page .project-mobile-meta-row:first-child{padding-top:0;border-top:0}.project-reading-page .project-mobile-meta-row dt{color:#8fa8c4bd;font-family:var(--project-font-mono);font-size:9.4px;letter-spacing:.14em;text-transform:uppercase}.project-reading-page .project-mobile-meta-row dd{margin:0;color:#edf4fbf2;font-size:.98rem;line-height:1.45}.project-reading-page .project-mobile-actions{display:flex;flex-wrap:wrap;gap:.85rem 1rem;align-items:center}.blog-index-link{padding-left:.78rem}.blog-index-link.is-sub{margin-left:.72rem}}.project-article-shell{position:relative;overflow:hidden;border:1px solid rgba(148,163,184,.16);border-radius:3px;background:radial-gradient(130% 150% at 88% -12%,#3b82f624,#02050b00 40%),linear-gradient(180deg,#03070eeb,#02050be6);box-shadow:0 18px 34px #0000003d}.project-ref-shell{position:relative;width:100%;max-width:1560px;margin-inline:auto;border-top:1px solid rgba(148,163,184,.1);padding-top:.5rem}.project-ref-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,#3b82f608,#3b82f600 30%),radial-gradient(120% 90% at 75% 10%,rgba(59,130,246,.04),transparent 60%);opacity:.85}.project-ref-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;align-items:start}.project-ref-main{min-width:0;max-width:100%}.project-ref-header{padding-bottom:1.1rem;border-bottom:1px solid rgba(148,163,184,.06)}.project-ref-section{margin-top:1.1rem;padding-top:.6rem}.project-ref-section+.project-ref-section{margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid rgba(148,163,184,.08)}.project-ref-image-frame{position:relative;margin-top:.45rem;border:1px solid rgba(148,163,184,.14);background:#04080e9e;padding:.34rem;overflow:hidden}.project-ref-image-frame:before,.project-ref-image-frame:after{content:"";position:absolute;width:10px;height:10px;pointer-events:none}.project-ref-image-frame:before{left:-1px;top:-1px;border-left:1px solid rgba(125,211,252,.44);border-top:1px solid rgba(125,211,252,.44)}.project-ref-image-frame:after{right:-1px;bottom:-1px;border-right:1px solid rgba(125,211,252,.44);border-bottom:1px solid rgba(125,211,252,.44)}.project-ref-image-trigger{border:1px solid rgba(148,163,184,.08)}.project-ref-image-caption{margin-top:.45rem;display:flex;align-items:center;gap:.75rem;padding:.34rem .2rem .06rem}.project-ref-image-id{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.12em;color:#94a3b8c7;text-transform:uppercase;white-space:nowrap}.project-ref-image-line{flex:1;height:1px;background:linear-gradient(to right,#94a3b852,#94a3b80f)}.project-ref-image-text{color:#cbd5e1d6;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62%}.project-ref-aside{display:none}.project-ref-aside-inner{position:sticky;top:6.35rem;border-left:1px dashed rgba(148,163,184,.14);padding-left:1.05rem;max-height:calc(100vh - 7rem);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4.5rem}.project-ref-aside-inner::-webkit-scrollbar{width:0;height:0}.project-ref-aside-fade{position:absolute;inset-inline:0;bottom:0;height:120px;pointer-events:none;background:linear-gradient(180deg,#02060d00,#02060d38 70%,#02060d66)}.project-article-header{padding:clamp(1.4rem,2.4vw,2.3rem) clamp(1rem,2.4vw,2.35rem) clamp(1.5rem,2.3vw,2.05rem);border-bottom:1px solid rgba(148,163,184,.13);scroll-margin-top:118px}.project-article-title{margin:0;color:#f8fafcfa;font-size:clamp(1.95rem,4vw,3.08rem);line-height:1.08;font-weight:620;letter-spacing:.004em;text-wrap:balance}.project-article-lead{margin:.8rem 0 0;color:#cbd5e1eb;font-size:clamp(.98rem,1.5vw,1.08rem);line-height:1.88;max-width:74ch;text-wrap:pretty}.project-article-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;padding:clamp(1.25rem,2.2vw,2rem) clamp(1rem,2.4vw,2.35rem) clamp(1.7rem,2.4vw,2.35rem);align-items:start}.project-article-main{min-width:0}.project-article-section{min-width:0;scroll-margin-top:118px}.project-article-section+.project-article-section{margin-top:2.3rem;padding-top:2.15rem;border-top:1px solid rgba(148,163,184,.11)}.project-article-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem;margin-bottom:.96rem}.project-article-section-kicker{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#94a3b8d6}.project-article-aside{display:none}.project-article-aside-inner{position:sticky;top:6.45rem;border-left:1px solid rgba(148,163,184,.2);padding-left:1.05rem;max-height:calc(100vh - 7.2rem);overflow-y:auto;scrollbar-width:thin}.project-article-aside-kicker{font-family:JetBrains Mono,monospace;font-size:9.8px;letter-spacing:.14em;text-transform:uppercase;color:#94a3b8c7}.project-article-facts{margin-top:.8rem;display:grid;gap:.48rem}.project-article-fact{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem;padding-bottom:.38rem;border-bottom:1px dashed rgba(148,163,184,.16)}.project-article-fact span{color:#94a3b8db;font-family:JetBrains Mono,monospace;font-size:9.8px;letter-spacing:.06em;text-transform:uppercase}.project-article-fact strong{color:#e2e8f0f0;font-family:JetBrains Mono,monospace;font-size:10.4px;letter-spacing:.04em;text-transform:uppercase;text-align:right}.project-article-links{margin-top:.65rem;display:flex;flex-direction:column;gap:.34rem}.project-aside-link{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .55rem;border:1px solid transparent;border-radius:2px;background:transparent;color:#cbd5e1d6;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase;text-align:left;transition:border-color .17s ease,color .17s ease,background-color .17s ease}.project-aside-link.is-active{border-color:#7dd3fc4d;background:#142f4a66;color:#e0f2fefa}.project-aside-link:hover{border-color:#94a3b83d;background:#090f198f;color:#f8fafcfa}.project-aside-link.is-external{border-color:#3b82f647;color:#bae6fdf0}.project-aside-link.is-external:hover{border-color:#7dd3fc66;background:#0e1d3580;color:#e0f2fefa}.project-context-panel+.project-context-panel{margin-top:.7rem;padding-top:.7rem;border-top:1px solid rgba(148,163,184,.1)}.project-context-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.project-context-count{font-family:JetBrains Mono,monospace;font-size:10.2px;letter-spacing:.09em;text-transform:uppercase;color:#a9b8cedb;white-space:nowrap}.project-index-list{margin:.42rem 0 0;padding:0;list-style:none;position:relative}.project-index-list:before{display:none}.project-index-row+.project-index-row{margin-top:.22rem}.project-index-link{position:relative;width:100%;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:.4rem;padding:.38rem .36rem;border:1px solid transparent;background:transparent;text-align:left;border-radius:7px;transition:border-color .17s ease,background-color .17s ease,color .17s ease}.project-index-link.is-sub{padding-left:.68rem}.project-index-link:hover{border-color:#94a3b82e;background:#09111f33}.project-index-link.is-active{border-color:#60a5fa4d;background:#0d1d2e4d}.project-index-order{display:inline-flex;align-items:center;justify-content:flex-start;width:100%;min-width:0;height:auto;padding:0;border:0;color:#a5b8cfd6;font-family:var(--project-font-mono);font-size:10.4px;letter-spacing:.01em;font-weight:500;font-variant-numeric:tabular-nums;border-radius:0;line-height:1;background:transparent}.project-index-dot{display:none}.project-index-link.is-active .project-index-dot{background:#60a5fafa;box-shadow:0 0 0 1px #1e4068a6,0 0 9px #60a5fa6b}.project-index-label{color:#d8e3f1f2;font-size:12.5px;line-height:1.42;letter-spacing:.001em;white-space:normal;text-wrap:pretty}.project-index-link.is-sub .project-index-order{font-size:9.8px}.project-index-link.is-sub .project-index-label{font-size:12px;color:#c2d2e6e0}.project-index-link.is-active .project-index-order{color:#d4e5f8fa}.project-index-link.is-active .project-index-label{color:#f3f9fffc}.project-detail-aside .project-aside-block-title{color:#aebed4f0;letter-spacing:.12em;font-size:11.4px}.project-detail-aside .project-aside-block-count{color:#a5b5cbe0;font-size:11px}.project-detail-aside .project-aside-block-auto{color:#718096db}.project-aside-related-link{display:block;border:1px solid rgba(148,163,184,.14);background:#070d1757;border-radius:10px;padding:.62rem .7rem;transition:border-color .18s ease,background-color .18s ease}.project-aside-related-link:hover{border-color:#94a3b852;background:#0b142485}.project-aside-related-title{display:block;color:#e9f1fafa;font-size:14.2px;line-height:1.4;font-weight:560}.project-aside-related-subtitle{display:block;margin-top:.24rem;color:#b4c4d9e6;font-size:12.4px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-aside-feed-item{gap:.64rem}.project-aside-feed-date{color:#a1b2c9d6;font-size:10px}.project-aside-feed-link{color:#dfeaf6f5;font-size:13.4px;line-height:1.38;text-wrap:pretty}.project-aside-feed-item:hover .project-aside-feed-link{color:#f0f8fffc}.project-aside-log-item{padding-bottom:.58rem;border-bottom:1px solid rgba(148,163,184,.1)}.project-aside-log-item:last-child{border-bottom:0;padding-bottom:0}.project-aside-log-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.project-aside-log-code{color:#60a5fad1;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.11em;text-transform:uppercase}.project-aside-log-date{color:#94a3b8c7;font-family:var(--project-font-mono);font-size:9.6px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.project-aside-log-link{display:block;color:#e2e8f0f0;font-size:13.2px;line-height:1.42;text-wrap:pretty;transition:color .18s ease}.project-aside-log-link:hover{color:#f8fafcfc}.blog-reading-page .project-aside-related-link{border-radius:6px;border-color:#94a3b81a;background:#050a1266}.blog-reading-page .project-aside-related-title{font-size:13.8px}.blog-reading-page .project-aside-related-subtitle{font-size:12px}.project-related-card{display:grid;grid-template-columns:70px minmax(0,1fr);gap:.72rem;align-items:start;padding:.45rem;border:1px solid rgba(39,39,42,.76);background:linear-gradient(180deg,#09090bb8,#050506a3);transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.project-related-card:hover{border-color:#71717abd;background:linear-gradient(180deg,#101014d1,#070709b8);transform:translateY(-1px)}.project-related-thumb{position:relative;display:block;aspect-ratio:4 / 3;overflow:hidden;border:1px solid rgba(63,63,70,.72);background:#0c0d11b8}.project-related-thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,#09090b00 35%,#09090b6b)}.project-related-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:saturate(.88) contrast(1.03);transition:transform .22s ease,filter .22s ease}.project-related-card:hover .project-related-thumb img{transform:scale(1.035);filter:saturate(1.03) contrast(1.08)}.project-related-copy{min-width:0;display:flex;flex-direction:column;gap:.34rem}.project-related-headline{display:flex;align-items:flex-start;justify-content:space-between;gap:.55rem}.project-related-title{color:#e4e8eeed;font-size:12.6px;line-height:1.35;font-weight:600;letter-spacing:.01em;text-wrap:pretty}.project-related-subtitle{color:#94a3b8d6;font-size:11.2px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-related-status-chip{display:inline-flex;align-items:center;justify-content:center;padding:.16rem .34rem;border:1px solid rgba(148,163,184,.36);font-family:var(--project-font-mono);font-size:8.7px;letter-spacing:.08em;text-transform:uppercase;line-height:1.15;white-space:nowrap;border-radius:2px}.project-related-status-chip.is-live{border-color:#14b8a66b;color:#6ee7d8eb;background:#042c2873}.project-related-status-chip.is-beta{border-color:#facc1561;color:#fde047f0;background:#46320666}.project-related-status-chip.is-rd{border-color:#71717a8a;color:#a1a1aaf2;background:#18181b9e}.project-meta-badge{display:inline-flex;align-items:center;padding:.32rem .64rem;border:1px solid rgba(82,82,91,.7);background:#09090b8a;color:#a1a1aafa;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;line-height:1;border-radius:2px;transition:border-color .16s ease,color .16s ease,background-color .16s ease}.project-meta-badge:hover{border-color:#a1a1aab8;color:#e4e8eef5;background:#18181bbd}.project-aside-link.is-nav{display:flex;align-items:flex-start;text-transform:none;line-height:1.35;gap:.12rem;flex-direction:column}.project-aside-link.is-nav span{color:#bae6fdf2;font-family:JetBrains Mono,monospace;font-size:9.6px;letter-spacing:.06em;text-transform:uppercase}.project-aside-link.is-nav small{color:#e2e8f0de;font-size:11.3px;font-family:inherit;letter-spacing:.01em;line-height:1.4}.project-aside-tag-list{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.34rem}.project-aside-tag{display:inline-flex;align-items:center;padding:.24rem .45rem;border:1px solid rgba(148,163,184,.2);background:#080e1870;color:#cbd5e1e6;font-family:JetBrains Mono,monospace;font-size:9.3px;letter-spacing:.04em;line-height:1;text-transform:uppercase;border-radius:2px}.project-detail-md-shell{position:relative;padding-top:.1rem}.project-detail-md{color:#f1f6fcfc;font-family:var(--project-font-copy);font-size:clamp(16.9px,1.1vw,18.8px);line-height:1.94;letter-spacing:.003em;max-width:100%;margin-inline:0}.project-detail-md>:first-child{margin-top:0}.project-detail-md h1,.project-detail-md h2,.project-detail-md h3,.project-detail-md h4{font-family:var(--project-font-title);font-weight:620;color:#f8fbfffa;letter-spacing:.002em;line-height:1.26;margin-top:2.38rem;margin-bottom:.84rem}.project-detail-md h1{font-size:clamp(1.5rem,2.7vw,2rem);margin-top:.4rem}.project-detail-md h2{display:flex;align-items:baseline;gap:.72rem;font-size:clamp(1.76rem,2.1vw,2.24rem);font-family:var(--project-font-title);font-weight:660;letter-spacing:-.026em;color:#f9fcfffb;margin-top:4.35rem;margin-bottom:.92rem;padding:0;border:none;background:none}.project-detail-md h2:before,.project-detail-md h2:after{display:none}.project-detail-md h3{display:flex;align-items:baseline;gap:.54rem;font-size:clamp(1.18rem,1.3vw,1.42rem);font-weight:610;margin-top:2.45rem;margin-bottom:.64rem;color:#e9f3fff2;letter-spacing:-.01em}.project-detail-md h3:before{display:none}.project-heading-number{flex:0 0 auto;min-width:0;display:inline-flex;align-items:center;justify-content:flex-start;font-family:var(--project-font-mono);font-size:.72em;font-weight:560;letter-spacing:.008em;font-variant-numeric:tabular-nums;color:#b0c2d9e6;transform:translateY(-.008em);padding:0;border:0;border-radius:0;background:transparent}.project-detail-md h3 .project-heading-number{min-width:0;font-size:.64em;font-weight:520;letter-spacing:.008em;color:#a2b4cbd6;transform:translateY(-.004em)}.project-heading-text{display:inline-block;min-width:0}.project-detail-md h2[id],.project-detail-md h3[id]{scroll-margin-top:118px}.project-detail-md h2+p,.project-detail-md h3+p{margin-top:.82rem}.project-detail-md p{margin:1.02rem 0 1.42rem;color:#dbe5f1e6;text-align:left;text-wrap:pretty;overflow-wrap:anywhere;max-width:68ch}.project-detail-md strong{color:#ebf5fff2;font-weight:600}.project-detail-md ul,.project-detail-md ol{margin:.92rem 0 1.55rem;padding-left:1.52rem;max-width:66ch}.project-detail-md li{margin:.52rem 0;color:#dbe5f1e0;overflow-wrap:anywhere;line-height:1.86}.project-detail-md ul>li::marker{color:#ffffff2e}.project-detail-md ol>li::marker{color:#bfdbfee6;font-family:JetBrains Mono,monospace;font-size:.88em}.project-detail-md li>p{margin:.34rem 0}.project-detail-md hr{border:0;height:1px;margin:3rem 0;background:linear-gradient(to right,transparent,rgba(255,255,255,.06),transparent)}.project-detail-md blockquote{margin:1.55rem 0;padding:1.02rem 1.12rem;border-left:2px solid rgba(125,211,252,.42);background:linear-gradient(90deg,#3b82f624,#3b82f608);color:#e6f1fff5;border-radius:0 6px 6px 0}.project-detail-md pre{margin:1.3rem 0;padding:1rem 1.08rem;border:1px solid rgba(148,163,184,.16);background:#040912d6;border-radius:10px;overflow-x:auto}.project-detail-md code{font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.86em;color:#c6e2fffa}.project-detail-md pre code{display:block;min-width:-moz-max-content;min-width:max-content;font-size:.82rem;line-height:1.74;color:#dbeafef5}.project-detail-md pre code.hljs{background:transparent;color:#e2e8f0f5}.project-detail-md pre .hljs-keyword,.project-detail-md pre .hljs-selector-tag,.project-detail-md pre .hljs-meta .hljs-keyword{color:#7dd3fcfa}.project-detail-md pre .hljs-string,.project-detail-md pre .hljs-attr,.project-detail-md pre .hljs-template-tag{color:#c4b5fdf5}.project-detail-md pre .hljs-number,.project-detail-md pre .hljs-literal,.project-detail-md pre .hljs-symbol{color:#fcd34df5}.project-detail-md pre .hljs-title,.project-detail-md pre .hljs-function,.project-detail-md pre .hljs-section{color:#93c5fdfa}.project-detail-md pre .hljs-comment,.project-detail-md pre .hljs-quote{color:#94a3b8eb;font-style:italic}.project-detail-md :not(pre)>code{padding:.14rem .34rem;border:1px solid rgba(148,163,184,.2);border-radius:5px;background:#94a3b817}.project-code-block-wrap{margin:1.36rem 0;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:#030810f0;overflow:hidden;box-shadow:inset 0 1px #94a3b814}.project-code-block-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.52rem .7rem;border-bottom:1px solid rgba(148,163,184,.18);background:#08101cd9}.project-code-lang{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.08em;color:#94a3b8e6;text-transform:uppercase}.project-code-copy{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid rgba(148,163,184,.26);background:#0f172a9e;color:#e2e8f0f0;border-radius:4px;padding:0;line-height:1;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.project-code-copy:hover{border-color:#7dd3fc80;color:#bae6fd;background:#0e2036c2}.project-code-copy:focus-visible{outline:1px solid rgba(125,211,252,.72);outline-offset:1px}.project-code-block-wrap pre{margin:0;border:0;border-radius:0;background:transparent;padding:.9rem 1rem 1.02rem}.project-detail-md table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:1.2rem 0}.project-detail-md thead{background:#ffffff0a}.project-detail-md th,.project-detail-md td{border:1px solid rgba(255,255,255,.08);padding:.56rem .68rem;font-size:.92em;white-space:normal}.project-detail-md a{display:inline-flex;align-items:center;min-height:2.5rem;padding:.22rem .18rem;color:#8fd4fffa;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:#8fd4ff75;border-bottom:0;font-weight:520}.project-detail-md a:hover{color:#d0f2ff;text-decoration-color:#d0f2ffe0}.project-detail-md img{display:block;width:100%;max-width:100%;max-height:min(72vh,760px);-o-object-fit:contain;object-fit:contain;margin:0;border-radius:2px;background:#03070eb8;box-shadow:0 8px 16px #00000024}.pd-hero{padding:.8rem 0 .55rem}.project-cinematic-page{--pd-radius-frame: 0px;--pd-radius-panel: 0px;--pd-radius-control: 0px;position:relative;overflow-x:clip}.pd-hero-inner{width:min(100%,1240px);margin:0 auto;padding:0 1.5rem;display:grid;gap:1.1rem}.pd-hero-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pd-back{display:inline-flex;align-items:center;gap:.38rem;min-height:2rem;padding:0 .76rem;border:1px solid rgba(255,255,255,.09);border-radius:var(--pd-radius-control);background:#ffffff05;color:#d4e2f2d1;font-family:var(--project-font-mono, monospace);font-size:9.8px;letter-spacing:.14em;text-transform:uppercase;transition:border-color .16s ease,color .16s ease,background-color .16s ease,transform .16s ease}.pd-back:hover{border-color:#ffffff29;background:#ffffff0a;color:#fff;transform:translate(-1px)}.pd-hero-meta{display:flex;flex-wrap:wrap;gap:.34rem .62rem;color:#a1b5cda8;font-family:var(--project-font-mono, monospace);font-size:9.8px;letter-spacing:.14em;text-transform:uppercase}.pd-hero-meta span+span:before{content:"/";margin-right:.6rem;color:#7894b94d}.pd-hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);grid-template-areas:"copy media" "tail tail";gap:clamp(2.3rem,4.2vw,4.6rem);align-items:start;padding-top:1.2rem}@media(min-width:1180px){.pd-hero-grid{grid-template-columns:minmax(18rem,.9fr) minmax(0,1.1fr);gap:clamp(2.8rem,5vw,5rem);align-items:start}.pd-copy-head{align-self:start;padding-top:clamp(2.2rem,4vw,3.8rem)}.pd-copy-tail{align-self:start;padding-bottom:0}}.pd-copy-head{grid-area:copy;min-width:0;display:grid;gap:1.05rem;align-self:start;padding-left:0;border-left:none;padding-top:1rem}.pd-copy-tail{grid-area:tail;min-width:0;display:grid;gap:1rem;align-self:start;position:relative;z-index:4;padding-top:1.25rem;padding-left:0;border-left:none;border-top:1px solid rgba(255,255,255,.08)}.pd-kicker{margin:0;color:#a6c4e6c7;font-family:var(--project-font-mono, monospace);font-size:9.4px;letter-spacing:.28em;text-transform:uppercase}.pd-title{margin:0;max-width:10ch;color:#f8fcfffa;font-family:var(--project-font-title, sans-serif);font-size:clamp(2.72rem,5.2vw,5.58rem);font-weight:700;line-height:.88;letter-spacing:.08em;text-transform:uppercase;text-wrap:balance;overflow-wrap:anywhere;word-break:break-word;text-shadow:0 0 24px rgba(122,187,255,.1),0 0 60px rgba(67,124,214,.08)}.pd-desc{margin:0;max-width:31rem;color:#e5edf7e6;font-family:var(--project-font-copy, sans-serif);font-size:clamp(1.02rem,1.18vw,1.22rem);line-height:1.88;text-wrap:pretty}.pd-summary{margin:0;max-width:28rem;color:#96b0cda8;font-family:var(--project-font-copy, sans-serif);font-size:.88rem;line-height:1.8}.pd-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:100%;margin:0;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055);position:relative;z-index:8;overflow:visible}.pd-facts:before{content:"";position:absolute;inset:-1px 0 auto 0;height:1px;background:linear-gradient(90deg,#70b3f500,#70b3f52e 16%,#70b3f51a 52%,#70b3f500);pointer-events:none}.pd-fact{position:relative;min-width:0;display:grid;gap:.34rem;padding:1.1rem 1.2rem 1.1rem 1rem;border:none;border-right:1px solid rgba(255,255,255,.055);border-left:1px solid rgba(112,179,245,.22);background:transparent;clip-path:none;outline:none;overflow:visible;transition:border-left-color .18s ease,background-color .18s ease}.pd-fact:hover,.pd-fact:focus-within,.pd-fact.is-active{border-left-color:#70b3f56b;background:linear-gradient(90deg,rgba(112,179,245,.04),transparent 38%)}.pd-fact:last-child{border-right:none}.pd-fact:after{display:none}.pd-fact-head{display:inline-flex;align-items:center;gap:.46rem;min-width:0}.pd-fact-icon{display:inline-flex;align-items:center;justify-content:center;color:#a0bcdbb3;opacity:.92}.pd-fact dt{color:#90a8c3b3;font-family:var(--project-font-mono, monospace);font-size:8.8px;letter-spacing:.14em;text-transform:uppercase}.pd-fact dd{margin:0;color:#f1f7fcf0;font-size:.94rem;line-height:1.44;text-wrap:balance}.pd-fact-preview{display:none}.pd-fact-preview strong{color:#f2f7fcf5;font-size:.88rem;line-height:1.28;font-weight:590;letter-spacing:-.01em}.pd-fact-preview p{margin:0;color:#b1c5dcb3;font-size:.78rem;line-height:1.55;text-wrap:pretty}.pd-fact-preview-list{display:grid;gap:.22rem;margin:0;padding:0;list-style:none}.pd-fact-preview-list li{color:#cfdeefd6;font-family:var(--project-font-mono, monospace);font-size:8.9px;letter-spacing:.08em;text-transform:uppercase}.pd-fact-preview-list li:before{content:"/";margin-right:.48rem;color:#769ac280}.pd-fact-preview-map{position:relative;width:100%;height:6.4rem;overflow:hidden;border:none;background:transparent;--pd-location-accent: rgba(166, 220, 255, .96);--pd-location-glow: rgba(120, 193, 255, .28);--pd-location-beam: rgba(118, 182, 255, .22);--pd-location-projection-core: rgba(226, 242, 255, .98);--pd-location-projection-glow: rgba(152, 202, 255, .26);--pd-location-projection-beam: rgba(132, 189, 255, .24)}.pd-fact-preview-map-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.pd-fact-preview-map-stage{position:absolute;top:0;right:0;bottom:0;left:0;transform:scale(1.125);transform-origin:50% 50%}.pd-fact-preview-map-projection{position:absolute;left:50%;bottom:-.22rem;width:78%;height:34%;transform:translate(-50%);pointer-events:none;background:radial-gradient(circle at 50% 8%,color-mix(in srgb,var(--pd-location-projection-core) 56%,transparent),#a4daff08 52%,#a4daff00 82%),radial-gradient(circle at 50% 0%,var(--pd-location-projection-glow),rgba(164,218,255,.03) 60%,rgba(164,218,255,0) 84%),linear-gradient(180deg,color-mix(in srgb,var(--pd-location-projection-beam) 96%,transparent),#6fb8ff00);filter:blur(9px);opacity:.82}.pd-fact-preview-map-soften{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% 52%,#02060c00 38%,#02060c0d 60%,#02060c38 84%,#02060c80),linear-gradient(180deg,#02060c24,#02060c08 34%,#02060c14 74%,#02060c2e),linear-gradient(90deg,#02060c61,#02060c17 18%,#02060c17 82%,#02060c61)}@media(min-width:768px){.pd-fact-preview{display:grid;gap:.18rem;position:absolute;left:50%;bottom:calc(100% + .12rem);width:min(13.5rem,calc(100vw - 4rem));padding:.08rem .22rem .32rem;border:none;background:transparent;box-shadow:none;opacity:0;transform:translate3d(-50%,6px,0) scale(.985);transform-origin:center bottom;pointer-events:none;transition:opacity .15s ease,transform .18s cubic-bezier(.2,.86,.24,1);z-index:4}.pd-fact-preview:before{content:"";position:absolute;left:1.2rem;right:1.2rem;top:.2rem;bottom:1.2rem;pointer-events:none;background:radial-gradient(circle at 50% 22%,#b9d8ff29,#b9d8ff00 62%),linear-gradient(180deg,#98caff0d,#98caff00 74%);filter:blur(8px);opacity:.72}.pd-fact-preview:after{content:"";position:absolute;left:50%;bottom:.08rem;width:6.2rem;height:1px;transform:translate(-50%);background:linear-gradient(90deg,#72b5f600,#72b5f657 50%,#72b5f600);opacity:.76}.pd-fact-preview-beam{position:absolute;left:50%;bottom:-.02rem;width:4.6rem;height:2.4rem;transform:translate(-50%);background:linear-gradient(180deg,#59a4f22e,#59a4f20d 54%,#59a4f200),radial-gradient(circle at 50% 0%,#93d2ff1f,#93d2ff00 72%);clip-path:polygon(18% 0,82% 0,100% 100%,0 100%);filter:blur(4px);opacity:.58}.pd-fact:hover .pd-fact-preview,.pd-fact:focus-within .pd-fact-preview,.pd-fact.is-active .pd-fact-preview{opacity:1;transform:translate3d(-50%,0,0) scale(1)}.pd-fact-preview.is-map{width:min(13.8rem,calc(100vw - 4rem));padding-top:0}.pd-fact-preview.is-map strong{display:inline-flex;align-items:center;gap:.34rem;margin-top:.08rem;color:#def0fff0;font-family:var(--project-font-title);font-size:.74rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 10px rgba(120,192,255,.22)}.pd-fact-preview.is-map strong:before{content:"LOC";color:#89c0ffb8;font-family:var(--project-font-mono, monospace);font-size:7px;letter-spacing:.18em}.pd-fact-preview.is-map p{margin-top:.16rem;color:#b4d6f4bd;font-size:.64rem;line-height:1.45;text-shadow:0 0 8px rgba(92,169,240,.12)}.pd-fact-preview-map{height:3.2rem;border:none;background:transparent;box-shadow:none}.pd-fact-preview-map:before{display:none}.pd-fact-preview-map:after{display:none}.pd-fact-preview-map-soften{background:radial-gradient(circle at 50% 50%,#02060c00 34%,#02060c1f 62%,#02060c9e 88%,#02060cf0),linear-gradient(90deg,#02060c94,#02060c1f 16%,#02060c1f 84%,#02060c94),linear-gradient(180deg,#02060c80,#02060c1f 18%,#02060c14 78%,#02060c6b)}.pd-fact.is-location{z-index:40}.pd-fact.is-location .pd-fact-preview{left:50%;width:min(23.6rem,calc(100vw - 2rem));min-height:auto;bottom:calc(100% + .12rem);gap:0;padding:0;background:radial-gradient(circle at 50% 46%,#060e185c,#060e1833 42%,#060e1814 68%,#060e1800);border:none;box-shadow:none;backdrop-filter:blur(8px) saturate(1.04);-webkit-backdrop-filter:blur(8px) saturate(1.04);transform:translate3d(-50%,9px,0) scale(.985);transform-origin:center bottom;overflow:visible;isolation:isolate;mask-image:radial-gradient(circle at 50% 50%,rgba(0,0,0,1) 52%,rgba(0,0,0,.92) 72%,transparent 100%);-webkit-mask-image:radial-gradient(circle at 50% 50%,rgba(0,0,0,1) 52%,rgba(0,0,0,.92) 72%,transparent 100%);z-index:60;transition:opacity .12s ease,transform .14s cubic-bezier(.18,.84,.24,1)}.pd-fact.is-location .pd-fact-preview:before{display:block;content:"";position:absolute;top:-1rem;right:-1.5rem;bottom:-.45rem;left:-1.5rem;pointer-events:none;background:radial-gradient(circle at 50% 54%,color-mix(in srgb,var(--pd-location-projection-glow) 92%,transparent),#a0d2ff24 28%,#08121e1f 52%,#08121e00 88%);filter:blur(13px);opacity:.88;z-index:0}.pd-fact.is-location .pd-fact-preview:after{display:none}.pd-fact.is-location .pd-fact-preview-beam{display:block;left:50%;bottom:-.12rem;width:11.4rem;height:3.8rem;transform:translate(-50%);background:linear-gradient(180deg,color-mix(in srgb,var(--pd-location-projection-beam) 100%,transparent),#5cabff24 44%,#5cabff00),radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--pd-location-projection-core) 60%,transparent),#a2dbff14 42%,#a2dbff00 76%);clip-path:polygon(20% 0,80% 0,100% 100%,0 100%);filter:blur(11px);mix-blend-mode:screen;opacity:.76}.pd-fact.is-location .pd-fact-preview.is-map{width:min(23.6rem,calc(100vw - 2rem))}.pd-fact.is-location .pd-fact-preview-map{position:relative;z-index:1;inset:auto;width:min(23.6rem,calc(100vw - 2rem));height:auto;aspect-ratio:2.08 / 1;border:none;background:radial-gradient(circle at 50% 50%,#0a142238,#0a14221a 34%,#0a142208 58%,#0a142200 88%),radial-gradient(circle,color-mix(in srgb,var(--pd-location-projection-core) 34%,transparent) .72px,transparent 1.12px) 0 0 / 14px 14px,radial-gradient(circle,color-mix(in srgb,var(--pd-location-projection-glow) 24%,transparent) .72px,transparent 1.12px) 7px 7px / 14px 14px,radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--pd-location-projection-glow) 48%,transparent),#4a94e600 56%);box-shadow:none;backdrop-filter:blur(2px) saturate(1.08);-webkit-backdrop-filter:blur(2px) saturate(1.08);mask-image:radial-gradient(circle at 50% 50%,rgba(0,0,0,1) 44%,rgba(0,0,0,.96) 68%,transparent 98%);-webkit-mask-image:radial-gradient(circle at 50% 50%,rgba(0,0,0,1) 44%,rgba(0,0,0,.96) 68%,transparent 98%)}.pd-fact-preview-map-canvas{opacity:.98;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--pd-location-projection-glow) 42%,transparent)) drop-shadow(0 0 14px rgba(152,202,255,.12))}.pd-fact-preview-map-country-shape{filter:drop-shadow(0 0 12px var(--pd-location-glow))}.pd-fact-preview-map-country-dots{filter:drop-shadow(0 0 7px var(--pd-location-glow))}.pd-fact.is-location .pd-fact-preview-map:before{display:none}.pd-fact.is-location .pd-fact-preview-map:after{display:none}.pd-fact-preview-map-soften{background:radial-gradient(circle at 50% 50%,#02060c00 56%,#02060c08 70%,#02060c1f 88%,#02060c47),linear-gradient(90deg,#02060c2e,#02060c05 18%,#02060c05 82%,#02060c2e),linear-gradient(180deg,#02060c14,#02060c03 18%,#02060c03 72%,#02060c0f);opacity:.58}.pd-fact-preview-map-marker{position:absolute;width:.52rem;height:.52rem;border-radius:999px;background:var(--pd-location-accent);box-shadow:0 0 0 .24rem color-mix(in srgb,var(--pd-location-accent) 20%,transparent),0 0 12px color-mix(in srgb,var(--pd-location-accent) 54%,transparent);transform:translate(-50%,-50%)}.pd-fact-preview-map-marker:before{content:"";position:absolute;top:-.34rem;right:-.34rem;bottom:-.34rem;left:-.34rem;border:1px solid color-mix(in srgb,var(--pd-location-accent) 34%,transparent);border-radius:999px}.pd-fact-preview-map-marker:after{content:"";position:absolute;top:-1.08rem;right:-1.08rem;bottom:-1.08rem;left:-1.08rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--pd-location-accent) 22%,transparent),#a4dbff05 58%,#a4dbff00 80%)}.pd-fact.is-location:hover .pd-fact-preview,.pd-fact.is-location:focus-within .pd-fact-preview,.pd-fact.is-location.is-active .pd-fact-preview{transform:translate3d(-50%,0,0) scale(1)}}@keyframes pdFactMapScan{0%{transform:translateY(-120%);opacity:0}18%{opacity:.8}to{transform:translateY(320%);opacity:0}}.pd-actions{display:flex;flex-wrap:wrap;gap:.56rem}.pd-btn{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;min-width:7.25rem;min-height:2.5rem;padding:0 .92rem;border:1px solid rgba(255,255,255,.11);border-radius:var(--pd-radius-control);background:#ffffff05;color:#e0ecf8e6;font-family:var(--project-font-mono, monospace);font-size:9.6px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.pd-btn:hover{border-color:#ffffff2e;background:#ffffff0d;color:#f5f9fffa;transform:translateY(-1px)}.pd-btn-primary{border-color:#7bb2ec33;background:linear-gradient(180deg,#0c1c32e6,#081526b8)}.pd-btn-primary:hover{border-color:#a6cdf557;background:linear-gradient(180deg,#0e223cf2,#0a192cc7)}.pd-tags{display:flex;flex-wrap:wrap;gap:.4rem;padding-top:.12rem}.pd-tag{display:inline-flex;align-items:center;min-height:1.58rem;padding:.18rem .58rem;border:1px solid rgba(255,255,255,.07);border-radius:var(--pd-radius-control);background:#ffffff05;color:#b5c9e2b8;font-family:var(--project-font-mono, monospace);font-size:9px;letter-spacing:.11em;text-transform:uppercase}.pd-tag.is-muted{color:#93a8c285}.pd-media{grid-area:media;min-width:0;display:grid;gap:1rem}.pd-media.is-gallery{gap:1.16rem;position:relative}@media(min-width:1024px){.pd-media.is-gallery{grid-template-columns:minmax(0,1fr);grid-template-areas:"showcase" "note" "thumbs";row-gap:1.04rem;align-items:start}.pd-media.is-gallery .pd-showcase-frame{grid-area:showcase}.pd-media.is-gallery .pd-frame-note{grid-area:note}.pd-media.is-gallery .pd-thumbs-shell{grid-area:thumbs}}.pd-showcase-frame{position:relative;display:block;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#03070e,#03070e),linear-gradient(135deg,rgba(112,179,245,.08) 0,transparent 30%);cursor:zoom-in;padding:0;aspect-ratio:5 / 3.55;isolation:isolate;clip-path:none;box-shadow:none;transition:border-color .22s ease,background-color .22s ease,box-shadow .22s ease}.pd-showcase-frame:hover,.pd-showcase-frame.is-hovered,.pd-showcase-frame:focus-visible{border-color:#9ed0ff47;transform:none;box-shadow:0 0 0 1px #4a95ff14}.pd-showcase-frame:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,#70b3f52e,#70b3f52e) left 14px top 0 / 1px 3.8rem no-repeat,linear-gradient(90deg,#70b3f524,#70b3f524) right 16px bottom 0 / 1px 3.1rem no-repeat,linear-gradient(0deg,#70b3f524,#70b3f524) left 0 bottom 14px / 4.4rem 1px no-repeat,linear-gradient(0deg,#70b3f51a,#70b3f51a) right 0 top 16px / 3rem 1px no-repeat,linear-gradient(135deg,transparent 0 48%,rgba(112,179,245,.16) 48% 50%,transparent 50%) right top / 34px 34px no-repeat;z-index:1}.pd-showcase-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.015) 0%,transparent 24%,transparent 62%,rgba(3,8,15,.5) 100%),linear-gradient(135deg,rgba(112,179,245,.05) 0,transparent 18%);z-index:1}.pd-showcase-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;position:relative;z-index:0;transition:transform .28s cubic-bezier(.2,.86,.24,1)}.pd-showcase-frame:hover .pd-showcase-img,.pd-showcase-frame.is-hovered .pd-showcase-img,.pd-showcase-frame:focus-visible .pd-showcase-img{transform:scale(1.026)}.pd-showcase-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;opacity:0;transition:opacity .18s ease}.pd-showcase-atmosphere.is-active{opacity:.96}.pd-showcase-atmosphere:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#040a132e,#040a1314 38%,#040a134d),linear-gradient(90deg,#1146942e,#1146940a 38%,#1146941f);z-index:0}.pd-showcase-map{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.16;mix-blend-mode:screen}.pd-showcase-map-soften{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#040a121f,#040a120a 40%,#040a1233),linear-gradient(90deg,#040a125c,#040a1214 28%,#040a1214 72%,#040a1257),linear-gradient(rgba(92,167,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(92,167,255,.1) 1px,transparent 1px);background-size:auto,auto,18px 18px,18px 18px;background-position:center,center,center,center;mask-image:radial-gradient(circle at 72% 38%,rgba(0,0,0,.85) 0%,rgba(0,0,0,.58) 28%,rgba(0,0,0,.14) 68%,transparent 100%);-webkit-mask-image:radial-gradient(circle at 72% 38%,rgba(0,0,0,.85) 0%,rgba(0,0,0,.58) 28%,rgba(0,0,0,.14) 68%,transparent 100%)}.pd-showcase-particles{position:absolute;top:8%;right:10%;bottom:10%;left:42%;background-image:radial-gradient(circle at center,rgba(132,196,255,.26) 0 1px,transparent 1.4px),radial-gradient(circle at center,rgba(92,167,255,.16) 0 .8px,transparent 1.2px);background-size:12px 12px,20px 20px;background-position:0 0,5px 5px;background-repeat:repeat;mix-blend-mode:screen;opacity:.26;filter:none;mask-image:radial-gradient(circle at 28% 46%,transparent 0%,rgba(0,0,0,.74) 20%,rgba(0,0,0,.96) 58%,transparent 100%);-webkit-mask-image:radial-gradient(circle at 28% 46%,transparent 0%,rgba(0,0,0,.74) 20%,rgba(0,0,0,.96) 58%,transparent 100%);animation:none}.pd-showcase-wave,.pd-showcase-scanline{display:none}.pd-frame-count{z-index:3}@keyframes pdShowcaseParticlesDrift{0%{transform:translateZ(0) scale(1.04)}50%{transform:translate3d(-1.5%,1.2%,0) scale(1.01)}to{transform:translate3d(-3%,2%,0) scale(.98)}}@keyframes pdShowcaseWaveSweep{0%{opacity:.16;transform:translate3d(-12%,0,0) scaleX(1.08)}42%{opacity:.62}to{opacity:.08;transform:translate3d(10%,0,0) scaleX(1.16)}}@keyframes pdShowcaseScan{0%{opacity:0;transform:translateY(-120%)}18%{opacity:.78}to{opacity:0;transform:translateY(340%)}}.pd-loading-box{position:relative;width:72px;height:72px;border:1px solid rgba(100,180,255,.18);background:#050608c7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;overflow:hidden}.pd-loading-scanline{width:100%;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(100,180,255,.6) 50%,transparent 100%);animation:pdScanlineMove 1.4s ease-in-out infinite;position:absolute;left:0}.pd-loading-label{font-family:var(--font-mono, ui-monospace, monospace);font-size:9px;font-weight:500;letter-spacing:.22em;color:#64b4ffb3;position:relative;z-index:1;margin-top:6px}@keyframes pdScanlineMove{0%{top:0;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.pd-scan{position:absolute;z-index:2;pointer-events:none}.pd-scan:before,.pd-scan:after{content:"";position:absolute;background:#64b4ff73}.pd-scan:before{width:28px;height:1px}.pd-scan:after{width:1px;height:28px}.pd-scan-tl{top:10px;left:10px}.pd-scan-tl:before{top:0;left:0}.pd-scan-tl:after{top:0;left:0}.pd-scan-tr{top:10px;right:10px}.pd-scan-tr:before{top:0;right:0}.pd-scan-tr:after{top:0;right:0}.pd-scan-bl{bottom:10px;left:10px}.pd-scan-bl:before{bottom:0;left:0}.pd-scan-bl:after{bottom:0;left:0}.pd-scan-br{bottom:10px;right:10px}.pd-scan-br:before{bottom:0;right:0}.pd-scan-br:after{bottom:0;right:0}.pd-frame-count{position:absolute;top:1.15rem;right:1.15rem;z-index:2;display:inline-flex;align-items:center;min-width:3.56rem;justify-content:center;height:1.74rem;padding:0 .62rem;border:1px solid rgba(255,255,255,.07);background:#040a128f;color:#dcebffd1;font-family:var(--project-font-mono, monospace);font-size:8.8px;letter-spacing:.18em;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}.pd-frame-sep{color:#7896c85c;margin:0 .12rem}.pd-frame-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.6rem 0 0;background:transparent;border-top:1px solid rgba(255,255,255,.055)}.pd-media.is-gallery .pd-frame-note{margin-top:0;padding:.2rem 0 0;border-left:none;border-top:none;align-items:center}.pd-frame-note-copy{min-width:0;display:grid;gap:.26rem}.pd-media.is-gallery .pd-frame-note-copy{grid-template-columns:minmax(0,1fr);align-items:start;gap:.16rem}.pd-frame-note-head{display:flex;align-items:center;justify-content:flex-start;gap:.6rem;min-height:.85rem}.pd-media.is-gallery .pd-frame-note-head{grid-row:auto;align-items:center;min-height:0}.pd-frame-inline-count{margin:0;color:#91abc8b8;font-family:var(--project-font-mono, monospace);font-size:9.4px;letter-spacing:.14em;text-transform:uppercase}.pd-media.is-gallery .pd-frame-inline-count{color:#7f9aba8a}.pd-frame-note strong{color:#f3f8fcf2;font-size:1.12rem;line-height:1.28;font-weight:590}.pd-media.is-gallery .pd-frame-note strong{font-size:1.12rem;line-height:1.22;letter-spacing:-.015em}.pd-frame-note p{margin:0;color:#b8cce4bd;font-size:.92rem;line-height:1.65;text-wrap:pretty}.pd-media.is-gallery .pd-frame-note p{color:#a7bcd6a8;font-size:.88rem;line-height:1.58;max-width:28rem}.pd-frame-nav{display:inline-flex;align-items:center;gap:1.14rem}.pd-media.is-gallery .pd-frame-nav{gap:1.14rem;margin-top:.08rem;justify-self:end}.pd-frame-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border:1px solid rgba(152,189,227,.16);background:transparent;color:#c8dcf59e;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);transition:border-color .18s ease,color .18s ease}.pd-frame-nav-btn:hover{border-color:#aad3f747;background:transparent;color:#f6fafff5;transform:none}.pd-frame-nav-btn svg{width:.88rem;height:.88rem;stroke-width:1.75}.pd-thumbs-shell{display:grid;gap:.76rem;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.05)}.pd-thumbs-head{display:flex;align-items:center;justify-content:space-between}.pd-thumbs-meta{color:#92adca9e;font-family:var(--project-font-mono, monospace);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.pd-thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(8.6rem,12vw,10.4rem);gap:.82rem;overflow-x:auto;padding-bottom:.08rem;scrollbar-width:none;scroll-snap-type:x proximity;align-items:stretch}.pd-thumbs::-webkit-scrollbar{display:none}.pd-media.has-compact-thumbs .pd-thumbs{grid-auto-flow:unset;grid-auto-columns:unset;grid-template-columns:repeat(var(--pd-thumb-count),minmax(0,1fr));overflow-x:visible;scroll-snap-type:none}.pd-thumb{position:relative;display:block;padding:0;border:1px solid rgba(255,255,255,.06);background:transparent;opacity:.68;cursor:pointer;scroll-snap-align:start;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);transition:opacity .18s ease,border-color .18s ease}.pd-thumb:hover{opacity:.9;transform:none}.pd-thumb.is-active{opacity:1;border-color:#b6dcfc3d;background:transparent;box-shadow:none}.pd-thumb-media{position:relative;display:block;overflow:hidden;width:100%;aspect-ratio:16 / 9.5;background:linear-gradient(180deg,#03080fe6,#03080fe6),linear-gradient(135deg,rgba(112,179,245,.05) 0,transparent 26%);clip-path:none}.pd-media.has-compact-thumbs .pd-thumb-media{aspect-ratio:16 / 10.2}.pd-thumb-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.pd-thumb-index{position:absolute;left:.38rem;top:.34rem;color:#e9f1faeb;font-family:var(--project-font-mono, monospace);font-size:8px;letter-spacing:.12em;text-transform:uppercase;background:#040a127a;padding:.16rem .22rem}@media(max-width:767px){.footer-reference .footer-col-link{min-height:2.35rem;padding:.34rem 0}.pd-hero-inner{padding:0 1rem;gap:.95rem}.pd-hero-topbar{flex-direction:column;align-items:flex-start;gap:.62rem}.pd-hero-grid{grid-template-columns:1fr;grid-template-areas:"copy" "media" "tail";gap:1.35rem}.pd-copy-head,.pd-copy-tail{padding-left:0;border-left:none}.pd-title{max-width:100%;font-size:clamp(1.72rem,10vw,2.7rem);line-height:.98;letter-spacing:.045em}.pd-desc{font-size:.95rem}.pd-summary{font-size:.88rem}.pd-back{min-height:2.35rem;padding-inline:.82rem}.pd-frame-nav-btn{width:2.5rem;height:2.5rem}.pd-copy-tail{gap:.92rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.pd-back{font-size:9px;height:1.72rem;padding:0 .56rem}.pd-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}.pd-fact-preview{display:none}.pd-showcase-frame{aspect-ratio:4 / 3.35;padding:.52rem}.pd-showcase-frame:before,.pd-showcase-frame:after{top:.52rem;right:.52rem;bottom:.52rem;left:.52rem}.pd-frame-note{grid-template-columns:1fr;gap:.84rem;padding:.35rem 0 0}.pd-frame-count{top:.8rem;right:.8rem}.pd-btn{min-height:2.5rem;padding:0 .6rem;font-size:9px}.pd-thumb{min-width:min(4.9rem,21vw)}.pd-thumbs{grid-auto-columns:min(7.8rem,36vw);gap:.56rem}.pd-media.has-compact-thumbs .pd-thumbs{grid-template-columns:repeat(var(--pd-thumb-count),minmax(0,1fr))}}@media(max-width:479px){.pd-facts{grid-template-columns:1fr}.pd-frame-nav{justify-content:flex-start}}.project-cinematic-page{--project-font-title: "Outfit", "Avenir Next", "SF Pro Display", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-copy: "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-mono: var(--blog-mono-font, "JetBrains Mono", "IBM Plex Mono", monospace);background:transparent}.project-cinematic-page main{font-family:var(--project-font-copy)}.project-cinematic-hero{position:relative;min-height:calc(100svh - 5.68rem);overflow:clip;border-bottom:1px solid rgba(255,255,255,.06);background:#02050a}.project-cinematic-hero.is-single-frame{min-height:clamp(34rem,calc(100svh - 9rem),48rem)}.project-cinematic-hero-media{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;cursor:zoom-in}.project-cinematic-hero-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:saturate(.94) contrast(1.02) brightness(.72);transform:scale(1.02)}.project-cinematic-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#02040957,#0204093d,#02040929 36%,#020409d6 78%,#020409fa),linear-gradient(90deg,#020409b8,#0204092e 52%,#020409a3)}.project-cinematic-hero-glow{position:absolute;inset:auto 0 0 0;height:30rem;background:radial-gradient(circle at 18% 72%,rgba(125,211,252,.18),transparent 30%),radial-gradient(circle at 72% 18%,rgba(191,219,254,.12),transparent 22%);pointer-events:none}.project-cinematic-hero-inner{position:relative;z-index:1;display:grid;grid-template-rows:auto 1fr auto;min-height:calc(100svh - 5.68rem);gap:clamp(1.4rem,3vw,2.4rem);width:min(100%,1440px);margin:0 auto;padding:1.25rem 1.5rem 1.8rem}.project-cinematic-hero.is-single-frame .project-cinematic-hero-inner{grid-template-rows:auto 1fr;min-height:clamp(34rem,calc(100svh - 9rem),48rem);padding-bottom:2.2rem}.project-cinematic-floating-ui{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.project-cinematic-back,.project-cinematic-end-link{display:inline-flex;align-items:center;gap:.48rem;min-height:2.35rem;padding:0 .9rem;border:1px solid rgba(236,244,255,.14);background:#040a128f;color:#d6e8fce0;font-family:var(--project-font-mono);font-size:10.2px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:color .18s ease,transform .18s ease,border-color .18s ease,background-color .18s ease}.project-cinematic-back:hover,.project-cinematic-end-link:hover{color:#f4f9ff;border-color:#ecf4ff3d;background:#070f1bad;transform:translate(-1px)}.project-cinematic-counter{display:grid;justify-items:end;gap:.16rem;min-width:5.25rem;min-height:2.35rem;padding:.46rem .82rem;border:1px solid rgba(236,244,255,.2);background:#040a1285;color:#f7fbfff2;font-family:var(--project-font-mono);letter-spacing:.12em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.project-cinematic-counter span{font-size:8.5px;text-transform:uppercase;color:#d0e1f4c2}.project-cinematic-counter strong{font-size:10.4px;font-weight:600}.project-cinematic-hero-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,336px);gap:clamp(1.2rem,3vw,2.5rem);align-items:end;min-width:0;margin-top:auto}.project-cinematic-hero.is-single-frame .project-cinematic-hero-shell{align-items:center;margin-top:2.4rem}.project-cinematic-copy{position:relative;display:grid;gap:1rem;min-width:0;max-width:52rem}.project-cinematic-copy:before{content:"";position:absolute;top:-2.2rem;right:-2.6rem;bottom:-2rem;left:-1.8rem;background:radial-gradient(circle at 18% 32%,rgba(7,14,24,.82),rgba(7,14,24,.56) 42%,rgba(7,14,24,.16) 72%,transparent 100%);filter:blur(16px);z-index:-1;pointer-events:none}.project-cinematic-meta{display:flex;flex-wrap:wrap;gap:.46rem .82rem;color:#deecfcd1;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.project-cinematic-meta span+span:before{content:"/";margin-right:.82rem;color:#adc2da61}.project-cinematic-title{margin:0;max-width:min(12ch,100%);color:#fbfdfffe;font-family:var(--project-font-title);font-size:clamp(3.6rem,9vw,7.4rem);line-height:.92;letter-spacing:-.055em;text-wrap:balance}.project-cinematic-dek{margin:0;max-width:40rem;color:#eaf1fae6;font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.82;text-wrap:pretty}.project-cinematic-aside{display:grid;gap:.92rem;min-width:0}.project-cinematic-ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;padding:1.08rem 1.12rem;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#0409108a,#04091033);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:inset 0 1px #ffffff0a}.project-cinematic-ledger-item{display:grid;gap:.22rem;min-width:0}.project-cinematic-ledger-item dt{color:#bccfe6b8;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.project-cinematic-ledger-item dd{margin:0;color:#f7fafff2;font-size:.98rem;line-height:1.42;text-wrap:balance}.project-cinematic-frame-note{display:grid;gap:.34rem;padding:1rem 1.08rem;border:1px solid rgba(255,255,255,.08);background:#040a126b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.project-cinematic-frame-kicker{color:#bfd2e8bd;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase}.project-cinematic-frame-note strong{color:#f9fcfffa;font-family:var(--project-font-title);font-size:1.08rem;line-height:1.18}.project-cinematic-frame-note p{margin:0;color:#d7e4f5b8;font-size:.92rem;line-height:1.62}.project-cinematic-actions{display:flex;flex-wrap:wrap;gap:.72rem}.project-cinematic-hero.is-single-frame .project-cinematic-actions{margin-top:.1rem}.project-cinematic-action{display:inline-flex;align-items:center;justify-content:center;gap:.48rem;min-height:2.72rem;padding:.76rem 1.02rem;border:1px solid rgba(239,246,255,.14);border-radius:0;background:#050b134d;color:#f4f8fdf2;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;transition:transform .18s ease,border-color .18s ease,background-color .18s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-cinematic-action:hover{transform:translateY(-1px);border-color:#f0f6ff3d;background:#08101c66}.project-cinematic-action.is-primary{border-color:#93c5fd47;background:#0c223c94}.project-cinematic-thumb-rail{display:flex;flex-wrap:nowrap;align-items:flex-start;overflow-x:auto;gap:.8rem;padding-bottom:.18rem;scroll-snap-type:x proximity;scrollbar-width:none}.project-cinematic-thumb-rail::-webkit-scrollbar{display:none}.project-cinematic-thumb{display:grid;grid-template-columns:4.8rem minmax(0,1fr);gap:.72rem;align-items:center;min-width:0;flex:0 0 15rem;padding:.56rem;border:1px solid rgba(255,255,255,.08);border-radius:0;background:#040a1252;text-align:left;scroll-snap-align:start;transition:transform .18s ease,border-color .18s ease,background-color .18s ease;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.project-cinematic-thumb:hover{transform:translateY(-1px);border-color:#f0f6ff2e;background:#08101c6b}.project-cinematic-thumb.is-active{border-color:#7dd3fc57;background:#091d3470}.project-cinematic-thumb-media{display:block;overflow:hidden;width:100%;border-radius:0;aspect-ratio:4 / 3;background:#03080fd1}.project-cinematic-thumb-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.project-cinematic-thumb-copy{display:grid;gap:.14rem;min-width:0}.project-cinematic-thumb-index{color:#bfd2e8a8;font-family:var(--project-font-mono);font-size:8.8px;letter-spacing:.14em;text-transform:uppercase}.project-cinematic-thumb-title{color:#f1f6fcdb;font-size:.8rem;line-height:1.38;text-wrap:pretty}.project-cinematic-body{position:relative;padding:2.4rem 1.5rem 0}.project-cinematic-body:before{content:"";position:absolute;top:0;left:50%;width:min(100% - 3rem,1160px);height:1px;transform:translate(-50%);background:linear-gradient(90deg,#fff0,#ffffff14 18%,#82b0e42e,#ffffff14 82%,#fff0);pointer-events:none}.project-cinematic-body-inner{width:min(100%,1160px);margin:0 auto}.project-cinematic-page{--project-font-title: "Orbitron", "Space Grotesk", "Avenir Next", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-copy: "Manrope", "Outfit", "Avenir Next", "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-ui: "Rajdhani", "Manrope", "Avenir Next", "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--project-font-mono: "Rajdhani", "IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace}.project-cinematic-reading-rail{max-width:62rem;margin:0 auto 2.8rem;display:grid;gap:.7rem;padding:1rem 0 1rem 1.55rem;border:none;border-left:1px solid rgba(112,179,245,.26);background:linear-gradient(90deg,rgba(112,179,245,.04),transparent 20%);clip-path:none;position:relative}.project-cinematic-reading-rail:before{content:"";position:absolute;left:-1px;top:.42rem;width:2.4rem;height:1px;background:linear-gradient(90deg,#70b3f542,#70b3f500);pointer-events:none}.project-cinematic-reading-head{display:grid;gap:.42rem}.project-cinematic-reading-kicker{color:#9accffb8;font-family:var(--project-font-mono);font-size:8.8px;letter-spacing:.24em;text-transform:uppercase}.project-cinematic-reading-head p{margin:0;color:#d6e2f0d6;font-size:.9rem;line-height:1.76;max-width:42rem;text-wrap:pretty}.project-cinematic-reading-meta{display:flex;flex-wrap:wrap;gap:.42rem .78rem;color:#90bae09e;font-family:var(--project-font-mono);font-size:8.6px;letter-spacing:.18em;text-transform:uppercase}.project-cinematic-reading-meta span+span:before{content:"/";margin-right:.78rem;color:#7b95b547}.project-cinematic-chip-row{display:flex;flex-wrap:wrap;gap:.56rem}.project-cinematic-chip{display:inline-flex;align-items:center;min-height:2rem;padding:.32rem .72rem;border:1px solid rgba(240,246,255,.12);background:#050b1366;color:#f4f8fde0;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}.project-cinematic-chip.is-muted{color:#cddcefb3}.project-cinematic-status{margin:0 auto .72rem;width:min(100%,50rem);color:#a7b6caa8;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.project-cinematic-status.is-accent{color:#9acfffc7}.project-cinematic-article-shell{padding-top:.4rem}.pd-article-stack{display:grid;gap:0;padding-top:.2rem}.pd-article-intro,.pd-article-narrative{max-width:52rem;margin-inline:auto;width:100%}.pd-article-intro{padding-top:.8rem;padding-bottom:2rem;position:relative}.pd-article-intro:before{content:"";position:absolute;left:0;top:0;width:min(100%,52rem);height:1px;background:linear-gradient(90deg,#70b3f538,#70b3f50f 30%,#fff0)}.pd-article-narrative{padding:2rem 0 .4rem}.pd-article-section{width:100%;padding:clamp(2.4rem,5vw,3.4rem) 0;border-top:1px solid rgba(255,255,255,.055);position:relative}.pd-article-section:before{content:"";position:absolute;top:-1px;left:0;width:clamp(3.6rem,8vw,6rem);border-top:1px solid rgba(112,179,245,.28)}.pd-article-section-grid{max-width:70rem;margin-inline:auto;display:grid;grid-template-columns:minmax(0,12.75rem) minmax(0,1fr);gap:clamp(1.9rem,3.4vw,3rem);align-items:start}.pd-article-section-lead{min-width:0;display:grid;align-content:start;gap:.42rem;padding-top:.1rem}.pd-article-section-lead h2{margin:0;display:flex;align-items:flex-start;max-width:9.25rem;min-height:2.36em;color:#f5f9fff7;font-family:var(--project-font-copy);font-size:clamp(1.42rem,1.7vw,1.72rem);font-weight:600;line-height:1.18;letter-spacing:-.014em;word-spacing:.05em;text-transform:none;white-space:normal;text-wrap:balance}.pd-article-section-main{min-width:0;display:grid;gap:1.3rem;padding-left:clamp(1.4rem,2.6vw,2rem);border-left:1px solid rgba(112,179,245,.16)}.pd-article-copy{max-width:46rem}.pd-article-figure{margin:0}.pd-article-figure-btn{display:block;width:100%;overflow:hidden;border:1px solid rgba(255,255,255,.06);background:transparent;padding:0;cursor:zoom-in;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);transition:border-color .18s ease}.pd-article-figure-btn:hover{border-color:#a7cff42e;transform:none}.pd-article-figure-img{display:block;width:100%;aspect-ratio:16 / 9.8;-o-object-fit:cover;object-fit:cover;clip-path:none}.pd-reveal{opacity:1;transform:translateY(0)}.pd-reveal:not(.is-visible){opacity:0;transform:translateY(48px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.pd-reveal.is-visible{opacity:1;transform:translateY(0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.pd-block-index{display:block;font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;font-weight:500;letter-spacing:.2em;color:#7ea5ce8a;margin-bottom:.35rem}@media(max-width:767px){.pd-article-intro{padding-bottom:1.6rem}.pd-article-narrative{padding-top:1.5rem}.pd-article-section{padding:1.65rem 0}.pd-article-section-grid{grid-template-columns:1fr;gap:1rem}.pd-article-section-lead{gap:.34rem}.pd-article-section-lead h2{font-size:clamp(1.3rem,6vw,1.7rem)}.pd-article-section-main{gap:.95rem;padding-left:0;border-left:none}.pd-article-figure-img{aspect-ratio:16 / 10.8}}.project-cinematic-prose{max-width:52rem;margin-inline:0}.project-cinematic-page .project-detail-md{font-size:clamp(16px,1.02vw,17px);line-height:1.98;color:#dde8f4d1;font-family:var(--project-font-copy)}.project-cinematic-page .project-detail-md,.project-cinematic-page .project-detail-md p,.project-cinematic-page .project-detail-md li,.project-cinematic-page .project-detail-md strong,.project-cinematic-page .project-detail-md blockquote{font-family:var(--project-font-copy)}.project-cinematic-page .project-detail-md>p:first-of-type{margin-top:0;margin-bottom:1.45rem;color:#eef5fcf5;font-size:clamp(1.18rem,1.42vw,1.36rem);line-height:1.84;letter-spacing:-.018em;max-width:48rem}.project-cinematic-page .project-detail-md h2{margin-top:2.5rem;margin-bottom:.8rem;font-size:clamp(1.46rem,1.82vw,1.82rem);line-height:1.18;letter-spacing:-.014em;word-spacing:.05em;font-family:var(--project-font-copy);font-weight:600;color:#f3f8fff5;text-transform:none}.project-cinematic-page .project-detail-md h3{margin-top:2.1rem;margin-bottom:.72rem;font-size:clamp(1rem,1.04vw,1.08rem);color:#d9e6f6eb;font-family:var(--project-font-copy);font-weight:600;letter-spacing:-.008em;word-spacing:.04em;text-transform:none}.project-cinematic-page .project-heading-number{color:#84b3e0b8}.project-cinematic-page .project-detail-md p,.project-cinematic-page .project-detail-md li{color:#d6e2efcc;max-width:46rem}.project-cinematic-page .project-detail-md ul,.project-cinematic-page .project-detail-md ol{max-width:46rem;margin-top:1rem}.project-cinematic-page .project-detail-md blockquote{max-width:44rem;margin:2rem 0;padding:.1rem 0 .1rem 1.2rem;border-left:1.5px solid rgba(191,219,254,.28);background:transparent;border-radius:0;color:#e9f1facc}.project-cinematic-page .project-code-block-wrap{max-width:46rem;border-color:#ffffff14;background:#0409108f;box-shadow:none}.project-cinematic-page .project-code-block-toolbar{background:#070d1894;border-bottom-color:#ffffff0f}.project-cinematic-page .project-detail-figure{max-width:min(100%,68rem);margin:2.6rem 0;border:0;background:#ffffff05;overflow:hidden}.project-cinematic-page .project-detail-figure-media{border-bottom:0}.project-cinematic-page .project-detail-figure figcaption{padding:1rem 1.1rem 1.08rem;color:#d1dfefb8;font-size:.94rem;line-height:1.66}.project-cinematic-related{max-width:62rem;margin:4.8rem auto 0;padding-top:2rem;border-top:1px solid rgba(255,255,255,.08)}.project-cinematic-related-head{max-width:38rem}.project-cinematic-related-head>p:first-child{margin:0;color:#9accffb8;font-family:var(--project-font-mono);font-size:8.8px;letter-spacing:.24em;text-transform:uppercase}.project-cinematic-related-head h2{margin-top:.72rem;color:#f8fcfffa;font-family:var(--project-font-title);font-size:clamp(1.62rem,2vw,1.96rem);line-height:1.08;letter-spacing:.01em;text-transform:uppercase}.project-cinematic-related-head>p:last-child{margin-top:.76rem;color:#c0d2e5ad;max-width:32rem;font-size:.88rem;line-height:1.72}.project-cinematic-related-stack{margin-top:2.1rem;display:grid;gap:.8rem}.project-cinematic-related-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.72rem 1.4rem;padding:1.1rem 1.2rem 1.1rem 1rem;border:none;border-left:1px solid rgba(112,179,245,.2);border-bottom:1px solid rgba(255,255,255,.055);background:transparent;clip-path:none;transition:border-left-color .18s ease,border-bottom-color .18s ease}.project-cinematic-related-link:hover{transform:none;border-left-color:#70b3f557;border-bottom-color:#70b3f53d}.project-cinematic-related-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.36rem .78rem;color:#a9bcd3ad;font-family:var(--project-font-mono);font-size:9.8px;letter-spacing:.14em;text-transform:uppercase}.project-cinematic-related-body h3{color:#f4f9fffa;font-family:var(--project-font-title);font-size:1.16rem;line-height:1.3}.project-cinematic-related-body p{margin-top:.5rem;color:#c8d8eac7;line-height:1.72}.project-cinematic-related-cta{align-self:center;color:#b1d8ffe6;font-family:var(--project-font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.project-cinematic-related-cta:after{content:"↗";margin-left:.42rem}.project-cinematic-endcap{display:flex;justify-content:center;margin:3rem auto 0;padding-top:2rem}@media(max-width:1200px){.project-cinematic-hero-shell{grid-template-columns:1fr}.project-cinematic-aside{max-width:36rem}}@media(max-width:767px){.project-cinematic-hero{min-height:calc(100svh - 5.2rem)}.project-cinematic-hero.is-single-frame{min-height:clamp(29rem,calc(100svh - 7rem),38rem)}.project-cinematic-hero-inner{min-height:calc(100svh - 5.2rem);gap:1rem;padding:.9rem 1rem 1rem}.project-cinematic-hero.is-single-frame .project-cinematic-hero-inner{min-height:clamp(29rem,calc(100svh - 7rem),38rem);padding-bottom:1.2rem}.project-cinematic-floating-ui{align-items:center}.project-cinematic-back,.project-cinematic-end-link{max-width:calc(100vw - 6.3rem);font-size:9.1px;letter-spacing:.1em;box-shadow:0 10px 30px #0000002e}.project-cinematic-counter{min-width:4.6rem;min-height:2rem;padding:.38rem .72rem}.project-cinematic-counter span{font-size:8px}.project-cinematic-counter strong{font-size:9.6px}.project-cinematic-title{max-width:100%;font-size:clamp(2.8rem,14vw,4.5rem)}.project-cinematic-dek{font-size:1rem;line-height:1.72}.project-cinematic-meta{gap:.32rem .6rem;font-size:9px;letter-spacing:.1em}.project-cinematic-meta span+span:before{margin-right:.6rem}.project-cinematic-aside{gap:.72rem}.project-cinematic-hero.is-single-frame .project-cinematic-hero-shell{margin-top:1.1rem;align-items:end}.project-cinematic-ledger{gap:.78rem .82rem;padding:.92rem .96rem}.project-cinematic-ledger-item dd{font-size:.92rem}.project-cinematic-frame-note{padding:.9rem .96rem}.project-cinematic-actions{gap:.56rem}.project-cinematic-action{min-height:2.35rem;padding:.58rem .8rem;font-size:8.8px}.project-cinematic-thumb{flex:0 0 13.5rem;grid-template-columns:4.2rem minmax(0,1fr)}.project-cinematic-body{padding:1.9rem 1rem 0}.project-cinematic-reading-rail{margin-bottom:1.35rem;padding:.95rem}.project-cinematic-reading-kicker,.project-cinematic-reading-meta{font-size:8.8px;letter-spacing:.12em}.project-cinematic-reading-head p{font-size:.98rem}.project-cinematic-chip-row{gap:.42rem}.project-cinematic-chip{min-height:1.8rem;padding:.24rem .58rem;font-size:8.8px}.project-cinematic-page .project-detail-md{font-size:16px}.project-cinematic-page .project-detail-md>p:first-of-type{font-size:1.14rem;max-width:100%;margin-bottom:1.1rem}.project-cinematic-page .project-detail-md h2{margin-top:2.5rem;font-size:clamp(1.6rem,8vw,2.2rem)}.project-cinematic-related{margin-top:2.8rem;padding-top:1.5rem}.project-cinematic-related-link{grid-template-columns:1fr}.project-cinematic-related-cta{align-self:start}.project-cinematic-endcap{justify-content:flex-start;margin-top:2.4rem}}.project-category-chip{display:inline-flex;align-items:center;padding:.38rem .82rem;border:1px solid rgba(255,255,255,.18);background:#ffffff1a;color:#f1f5f9f0;font-family:JetBrains Mono,monospace;font-size:10.2px;font-weight:600;letter-spacing:.075em;text-transform:uppercase;line-height:1;border-radius:1px}.project-year-chip{display:inline-flex;align-items:center;gap:.34rem;padding:.34rem .64rem;border:1px solid rgba(148,163,184,.16);background:#080e1775;color:#cbd5e1db;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.05em;line-height:1;border-radius:1px}.project-year-chip.is-muted{border-color:#94a3b81a;color:#94a3b8c7;background:#080c1466}.project-tech-chip{display:inline-flex;align-items:center;padding:.31rem .62rem;border:1px solid rgba(148,163,184,.16);background:#080d189e;color:#cbd5e1e0;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.05em;line-height:1;white-space:nowrap;border-radius:2px;transition:border-color .22s ease,background-color .22s ease,color .22s ease,transform .22s ease}.project-tech-chip:hover{border-color:#94dcff57;background:#0a1222c7;color:#f1f5f9fa}.project-action-chip{display:inline-flex;align-items:center;gap:.38rem;justify-content:center;padding:.5rem .88rem;border:1px solid rgba(148,163,184,.18);background:#070c1480;color:#e2e8f0e6;font-family:JetBrains Mono,monospace;font-size:10.1px;letter-spacing:.04em;line-height:1;border-radius:1px;transition:border-color .18s ease,color .18s ease,background-color .18s ease}.project-action-chip.is-primary{border-color:#e0f2fe47;background:#f1f5f91a;color:#f8fafcf5}.project-action-chip:hover{border-color:#e2e8f057;background:#0f1725c2;color:#f8fafcfa}.project-action-chip.is-primary:hover{border-color:#e2e8f06b;background:#f1f5f929;color:#f0f9fffa}.project-action-divider{width:1px;height:11px;background:#94a3b838;margin-inline:.1rem}.project-nav-kicker{font-family:JetBrains Mono,monospace;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8d1}.project-inline-link{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.05em;color:#94a3b8eb;text-transform:uppercase;transition:color .16s ease,opacity .16s ease,border-color .16s ease;opacity:.9;border-bottom:1px dotted transparent}.project-inline-link:hover{color:#e2e8f0fa;opacity:1;border-bottom-color:#e2e8f06b}.project-cover-trigger{border:1px solid rgba(148,163,184,.13);background:#04080f8f;border-radius:2px;box-shadow:0 10px 20px #00000024}.project-cover-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;padding:.1rem .1rem .2rem}.project-cover-meta p{margin:0;color:#cbd5e1d6;font-size:13.5px;line-height:1.6;text-wrap:pretty;flex:1;min-width:min(100%,280px)}.pg-suite{display:flex;flex-direction:column;gap:10px}.pg-stage-wrap{position:relative;overflow:hidden;border-radius:12px;background:#06080e}.pg-stage{display:block;width:100%;cursor:zoom-in;background:transparent;border:none;padding:0;margin:0;line-height:0;font-size:0}.pg-stage-image{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .4s ease;border-radius:0}.pg-stage:hover .pg-stage-image{transform:scale(1.01)}.pg-overlay-bottom{position:absolute;bottom:0;left:0;right:0;z-index:10;display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding:2.5rem 1rem .85rem;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.25) 55%,transparent 100%);pointer-events:none}.pg-overlay-bottom>*{pointer-events:auto}.pg-overlay-info{display:flex;align-items:center;gap:.6rem;min-width:0}.pg-counter{flex-shrink:0;font-family:var(--project-font-mono, "JetBrains Mono", monospace);font-size:11px;letter-spacing:.06em;color:#fff9}.pg-active-title{font-size:13px;color:#ffffffe0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pg-icon-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#0006;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffffb3;cursor:pointer;transition:color .18s ease,border-color .18s ease,background .18s ease}.pg-icon-btn:hover{color:#fff;border-color:#ffffff59;background:#0009}.pg-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fffc;cursor:pointer;opacity:0;transition:opacity .22s ease,color .18s ease,border-color .18s ease,background .18s ease}.pg-stage-wrap:hover .pg-nav{opacity:1}.pg-nav:hover{color:#fff;border-color:#ffffff4d;background:#000000a6}.pg-nav-prev{left:.6rem}.pg-nav-next{right:.6rem}.pg-thumbs{display:flex;gap:8px;overflow-x:auto;padding:2px 0;scrollbar-width:none;-ms-overflow-style:none}.pg-thumbs::-webkit-scrollbar{display:none}.pg-thumb{flex:1 0 0;min-width:72px;max-width:140px;aspect-ratio:16 / 10;border-radius:8px;overflow:hidden;border:2px solid rgba(255,255,255,.06);background:#080a10cc;cursor:pointer;opacity:.5;transition:opacity .2s ease,border-color .2s ease,transform .2s ease;padding:0}.pg-thumb:hover{opacity:.8;transform:translateY(-1px)}.pg-thumb.is-active{opacity:1;border-color:#ffffff8c}.pg-thumb-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}@media(min-width:1080px){.project-article-grid{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:clamp(1.2rem,2.6vw,2.8rem)}.project-article-aside{display:block;align-self:start}.project-ref-grid{grid-template-columns:minmax(0,1fr) minmax(288px,332px);gap:clamp(.85rem,1.8vw,1.7rem)}.project-ref-aside{display:block;position:relative;min-width:0;align-self:start;padding-left:.2rem}}@media(max-width:960px){.project-action-divider{display:none}}@media(max-width:640px){.project-detail-editorial .project-editorial-title{max-width:12ch;letter-spacing:-.015em}.project-detail-editorial .project-editorial-lead{max-width:100%}.project-story-fact{padding-right:0}.project-story-hero{padding:.2rem 0 1.8rem}.project-story-copy{gap:.92rem}.project-story-visual{gap:.82rem}.project-story-visual-image{aspect-ratio:16 / 10}.project-story-gallery-item{flex-basis:9rem}}.project-detail-media-block{margin:1.18rem 0;display:flex;flex-direction:column;gap:1rem}.project-detail-media-block[data-layout=duo],.project-detail-media-block[data-layout=trio],.project-detail-media-block[data-layout=quad]{display:grid}.project-detail-media-block[data-layout=duo]{grid-template-columns:1fr}@media(min-width:768px){.project-detail-media-block[data-layout=duo]{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-detail-media-block[data-layout=trio]{grid-template-columns:1fr}@media(min-width:768px){.project-detail-media-block[data-layout=trio]{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)}.project-detail-media-block[data-layout=trio]>:first-child{grid-row:span 2}}.project-detail-media-block[data-layout=quad]{grid-template-columns:1fr}@media(min-width:640px){.project-detail-media-block[data-layout=quad]{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-detail-media-block[data-layout=rail]{display:flex;flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5rem;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;-ms-overflow-style:none;scrollbar-width:none}.project-detail-media-block[data-layout=rail]::-webkit-scrollbar{display:none}.project-detail-media-block[data-layout=rail]>.project-detail-figure{flex:0 0 76%;scroll-snap-align:start}@media(min-width:640px){.project-detail-media-block[data-layout=rail]>.project-detail-figure{flex-basis:58%}}@media(min-width:1024px){.project-detail-media-block[data-layout=rail]>.project-detail-figure{flex-basis:44%}}.project-detail-media-block[data-layout=duo] .project-detail-figure-media,.project-detail-media-block[data-layout=trio] .project-detail-figure-media,.project-detail-media-block[data-layout=quad] .project-detail-figure-media,.project-detail-media-block[data-layout=rail] .project-detail-figure-media{min-height:0;aspect-ratio:4 / 3}.project-detail-media-block[data-layout=quad] .project-detail-figure-media,.project-detail-media-block[data-layout=rail] .project-detail-figure-media{aspect-ratio:16 / 10}.project-detail-media-block[data-layout=trio]>:not(:first-child) .project-detail-figure-media{aspect-ratio:16 / 10}.project-detail-media-block>.project-detail-figure+.project-detail-figure{margin-top:0}.project-detail-figure{margin:0;padding:.08rem;border:1px solid rgba(148,163,184,.12);background:#05091152;border-radius:8px}.project-detail-figure-media{width:100%;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:zoom-in;border-radius:7px;overflow:hidden;min-height:clamp(210px,42vh,540px)}.project-detail-figure-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .22s ease,opacity .22s ease}.project-detail-figure-media:hover img{transform:scale(1.012);opacity:.98}.project-detail-figure-hint{position:absolute;right:.8rem;top:.8rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.14);background:#0006;padding:.36rem .52rem;color:#e4ecf5e6;font-family:var(--project-font-mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.project-detail-figure figcaption{margin-top:.5rem;display:flex;flex-direction:column;gap:.18rem}.project-detail-figure figcaption strong{color:#e6eef8fa;font-size:12.8px;line-height:1.4;font-weight:600}.project-detail-figure figcaption span{color:#94a3b8e6;font-family:var(--project-font-mono);font-size:11.1px;letter-spacing:.012em;text-align:left;line-height:1.52}@media(prefers-reduced-motion:reduce){.glitch-text:before,.glitch-text:after,.glitch-wave{animation:none}.starfield-sky-drift,.starfield-dot{animation:none}.starfield-constellation-group.is-active line{animation:none}.status-breath{animation:none}}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}@keyframes tocFlashPulse{0%{opacity:0}14%{opacity:1}32%{opacity:.15}52%{opacity:.95}74%{opacity:.1}to{opacity:0}}@keyframes tocDataFlow{0%{background-position:0 0,0 0}to{background-position:72px 0,0 0}}.toc-flash{position:relative}.toc-flash:before{content:"";position:absolute;left:-1rem;right:-1rem;top:-.75rem;bottom:-.75rem;border-radius:var(--radius-control);background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='72'%20height='24'%20viewBox='0%200%2072%2024'%3E%3Crect%20width='72'%20height='24'%20fill='none'/%3E%3Cg%20fill='rgb(147%2C197%2C253)'%3E%3Crect%20x='2'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='10'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.10'/%3E%3Crect%20x='18'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='26'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.14'/%3E%3Crect%20x='34'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.08'/%3E%3Crect%20x='42'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.12'/%3E%3Crect%20x='50'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='58'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.10'/%3E%3Crect%20x='66'%20y='2'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='2'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.08'/%3E%3Crect%20x='10'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='18'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.12'/%3E%3Crect%20x='26'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='34'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.16'/%3E%3Crect%20x='42'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='50'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.10'/%3E%3Crect%20x='58'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='66'%20y='10'%20width='4'%20height='4'%20fill-opacity='0.12'/%3E%3Crect%20x='2'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='10'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.12'/%3E%3Crect%20x='18'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='26'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.10'/%3E%3Crect%20x='34'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='42'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.14'/%3E%3Crect%20x='50'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3Crect%20x='58'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.10'/%3E%3Crect%20x='66'%20y='18'%20width='4'%20height='4'%20fill-opacity='0.06'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(90deg,#3b82f63d,#3b82f629 35%,#3b82f61a 65%,#3b82f600);background-repeat:repeat,no-repeat;background-size:72px 24px,cover;background-position:0 0,0 0;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 78%,transparent 100%);border:1px solid rgba(59,130,246,.22);box-shadow:0 0 0 1px #3b82f60f;opacity:0;pointer-events:none;transform-origin:left center;animation:tocFlashPulse 3s ease-out 1,tocDataFlow 3s linear 1}@media(prefers-reduced-motion:reduce){.toc-flash:before{animation:none;opacity:1}}.hljs{color:#e2e8f0eb;background:transparent}.hljs-comment,.hljs-quote{color:#94a3b89e;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-literal{color:#60a5faf2}.hljs-string,.hljs-regexp,.hljs-attr,.hljs-template-string{color:#34d399eb}.hljs-number,.hljs-symbol,.hljs-bullet{color:#fbbf24eb}.hljs-title,.hljs-section,.hljs-function .hljs-title{color:#a78bfaeb}.hljs-built_in,.hljs-type,.hljs-class .hljs-title{color:#3b82f6eb}.hljs-variable,.hljs-params{color:#cbd5e1eb}.hljs-meta,.hljs-meta .hljs-keyword{color:#f472b6e6}@keyframes typing-char{0%{opacity:.35;color:#94a3b873;text-shadow:none}45%{opacity:.9;color:#60a5faf2;text-shadow:0 0 14px rgba(59,130,246,.28)}to{opacity:1;color:#e2e8f0eb;text-shadow:none}}.chat-char{display:inline-block;vertical-align:baseline}.chat-char-anim{animation:typing-char .26s ease-out both;will-change:opacity,color}@keyframes route-loader-draw{0%{stroke-dashoffset:80;opacity:.25}55%{opacity:1}to{stroke-dashoffset:0;opacity:.9}}.route-loader-draw{overflow:visible}.route-loader-draw path,.route-loader-draw line,.route-loader-draw polyline,.route-loader-draw polygon,.route-loader-draw circle,.route-loader-draw rect{stroke-dasharray:80;stroke-dashoffset:80;animation:route-loader-draw .95s ease-in-out infinite;will-change:stroke-dashoffset,opacity}.orbit-tracer-loader{--orbit-loader-size: 72px;position:relative;width:var(--orbit-loader-size);height:var(--orbit-loader-size);overflow:visible}.orbit-tracer-loader-md{--orbit-loader-size: 104px}.orbit-tracer-loader-sm{--orbit-loader-size: 72px}.orbit-tracer-plane{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-16deg)}.orbit-tracer-orbit{position:absolute;left:50%;top:50%;width:calc(var(--orbit-loader-size) * .85);height:calc(var(--orbit-loader-size) * .44);transform:translate(-50%,-50%);border-radius:9999px;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 0 10px #ffffff0a}.orbit-tracer-comet{position:absolute;left:50%;top:50%;width:0;height:0;transform:translateZ(0);will-change:transform}.orbit-tracer-tail{position:absolute;right:0;top:0;width:calc(var(--orbit-loader-size) * .46);height:calc(var(--orbit-loader-size) * .028);transform:translate(-2px,-50%);border-radius:9999px;background:linear-gradient(90deg,#ffffff0d,#ffffffbd);filter:blur(.6px);opacity:.8}.orbit-tracer-glow{position:absolute;left:0;top:0;width:calc(var(--orbit-loader-size) * .14);height:calc(var(--orbit-loader-size) * .14);transform:translate(-50%,-50%);border-radius:9999px;background:radial-gradient(circle,#ffffffa8,#ffffff0f 72%,#fff0);filter:blur(.55px);opacity:.78}.orbit-tracer-head{position:absolute;left:0;top:0;width:calc(var(--orbit-loader-size) * .075);height:calc(var(--orbit-loader-size) * .075);border-radius:9999px;transform:translate(-50%,-50%);background:#fffffff2;box-shadow:0 0 12px #ffffff57,0 0 4px #ffffff6b;animation:orbitTracerPulse 2s ease-in-out infinite}@keyframes orbitTracerPulse{0%{opacity:.68}50%{opacity:1}to{opacity:.68}}.grid-seq-loader{--grid-cell-size: 10px;--grid-gap-size: calc(var(--grid-cell-size) * .42);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap-size);align-items:center;justify-items:center}.grid-seq-loader-sm{--grid-cell-size: 10px}.grid-seq-loader-md{--grid-cell-size: 14px}.grid-seq-cell{width:var(--grid-cell-size);height:var(--grid-cell-size);border-radius:9999px;border:none;background:radial-gradient(circle at 34% 34%,#ffffff38,#ffffff14 68%,#ffffff0a);box-shadow:0 0 #fff0;transition:opacity .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1),filter .42s cubic-bezier(.22,1,.36,1),box-shadow .42s cubic-bezier(.22,1,.36,1),background .42s cubic-bezier(.22,1,.36,1);opacity:.16;transform:scale(.88);filter:blur(.1px) brightness(.74)}.grid-seq-cell.is-trail-2{opacity:.34;transform:scale(.95);filter:blur(.1px) brightness(.9);box-shadow:0 0 5px #ffffff1f;background:radial-gradient(circle at 34% 34%,#ffffff61,#ffffff24 72%,#ffffff0f)}.grid-seq-cell.is-trail{opacity:.56;transform:scale(1);filter:blur(0px) brightness(1);box-shadow:0 0 8px #ffffff2e,0 0 1px #fff3;background:radial-gradient(circle at 34% 34%,#ffffffbd,#ffffff3d 74%,#ffffff17)}.grid-seq-cell.is-active{background:radial-gradient(circle at 36% 36%,#fffffffa,#ffffff6b 68%,#ffffff24);box-shadow:0 0 12px #ffffff57,0 0 4px #ffffff4d;transform:scale(1.08);filter:blur(0px) brightness(1.08);opacity:.96}.layout-backdrop-minimal .starfield-sky-drift{animation:none;transform:none;will-change:auto}.layout-backdrop-minimal .starfield-dot{animation:none!important;filter:none!important;box-shadow:none!important;opacity:.42;will-change:auto}.layout-backdrop-minimal .starfield-dot-anchor,.layout-backdrop-minimal .starfield-dot-anchor-active,.layout-backdrop-minimal .starfield-constellation-group,.layout-backdrop-minimal .starfield-polaris{filter:none!important;box-shadow:none!important}.layout-backdrop-minimal .footer-reference-sky{height:14px!important}.layout-backdrop-minimal .footer-reference-body:before{opacity:.32}.prj-card-img{transition:transform .7s cubic-bezier(.22,1,.36,1),filter .7s ease}.group:hover .prj-card-img{transform:scale(1.04);filter:brightness(1.08)}.prj-card-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(5,6,8,.82) 0%,rgba(5,6,8,.3) 35%,transparent 65%);pointer-events:none;z-index:1}.prj-card-shine{background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.06) 45%,rgba(255,255,255,.03) 55%,transparent 70%);background-size:250% 100%;background-position:100% 0;transition:background-position .8s cubic-bezier(.22,1,.36,1)}.group:hover .prj-card-shine{background-position:-50% 0}.prj-card-arrow{transform:translate(6px,6px);opacity:0;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .4s ease}.group:hover .prj-card-arrow{transform:translate(0);opacity:1}.prj-cta-circle{transition:transform .5s cubic-bezier(.22,1,.36,1),background-color .4s ease}.prj-cta-circle svg{transition:transform .5s cubic-bezier(.22,1,.36,1)}.group:hover .prj-cta-circle{transform:scale(1.12);background-color:#ffffff1f}.group:hover .prj-cta-circle svg{transform:rotate(45deg)}.project-hero-section{position:relative}.project-hero-section:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;opacity:.28;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");background-size:180px 180px}.project-meta-strip{position:relative;border-bottom:none!important}.project-meta-strip:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,#3b82f600,#3b82f652 20%,#3b82f670,#3b82f652 80%,#3b82f600)}.project-meta-item{position:relative;padding-left:14px}.project-meta-item:before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:2px;border-radius:2px;background:linear-gradient(180deg,#3b82f699,#3b82f626)}.project-meta-item dt:before{content:"";display:inline-block;width:4px;height:4px;border-radius:9999px;background:#3b82f699;margin-right:6px;vertical-align:middle;position:relative;top:-.5px}.project-lightbox-dot{width:6px;height:6px;border-radius:9999px;background:#fff3;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;cursor:pointer}.project-lightbox-dot:hover{background:#fff6}.project-lightbox-dot.is-active{background:#3b82f6e6;transform:scale(1.35);box-shadow:0 0 6px #3b82f680}.selection\:bg-accent-blue\/30 *::-moz-selection{background-color:#3b82f64d}.selection\:bg-accent-blue\/30 *::selection{background-color:#3b82f64d}.selection\:text-white *::-moz-selection{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.selection\:text-white *::selection{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.selection\:bg-accent-blue\/30::-moz-selection{background-color:#3b82f64d}.selection\:bg-accent-blue\/30::selection{background-color:#3b82f64d}.selection\:text-white::-moz-selection{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.selection\:text-white::selection{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-600::-moz-placeholder{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-600::placeholder{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.placeholder\:text-zinc-500\/80::-moz-placeholder{color:#71717acc}.placeholder\:text-zinc-500\/80::placeholder{color:#71717acc}.before\:pointer-events-none:before{content:var(--tw-content);pointer-events:none}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);top:0;right:0;bottom:0;left:0}.before\:z-0:before{content:var(--tw-content);z-index:0}.before\:rounded-\[var\(--radius-card\)\]:before{content:var(--tw-content);border-radius:var(--radius-card)}.before\:bg-gradient-to-br:before{content:var(--tw-content);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.before\:from-blue-400\/\[0\.12\]:before{content:var(--tw-content);--tw-gradient-from: rgb(96 165 250 / .12) var(--tw-gradient-from-position);--tw-gradient-to: rgb(96 165 250 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.before\:from-blue-500\/\[0\.08\]:before{content:var(--tw-content);--tw-gradient-from: rgb(59 130 246 / .08) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.before\:via-transparent:before{content:var(--tw-content);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.before\:to-cyan-400\/\[0\.08\]:before{content:var(--tw-content);--tw-gradient-to: rgb(34 211 238 / .08) var(--tw-gradient-to-position)}.before\:to-cyan-500\/\[0\.05\]:before{content:var(--tw-content);--tw-gradient-to: rgb(6 182 212 / .05) var(--tw-gradient-to-position)}.before\:opacity-0:before{content:var(--tw-content);opacity:0}.before\:opacity-60:before{content:var(--tw-content);opacity:.6}.before\:transition-opacity:before{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.before\:duration-300:before{content:var(--tw-content);transition-duration:.3s}.first\:border-t-0:first-child{border-top-width:0px}.odd\:bg-white\/\[0\.015\]:nth-child(odd){background-color:#ffffff04}.focus-within\:border-accent-blue\/50:focus-within{border-color:#3b82f680}.hover\:border-accent-blue\/30:hover{border-color:#3b82f64d}.hover\:border-accent-blue\/40:hover{border-color:#3b82f666}.hover\:border-accent-blue\/50:hover{border-color:#3b82f680}.hover\:border-accent-blue\/60:hover{border-color:#3b82f699}.hover\:border-accent-blue\/70:hover{border-color:#3b82f6b3}.hover\:border-amber-400\/30:hover{border-color:#fbbf244d}.hover\:border-amber-400\/50:hover{border-color:#fbbf2480}.hover\:border-blue-400\/50:hover{border-color:#60a5fa80}.hover\:border-blue-400\/\[0\.35\]:hover{border-color:#60a5fa59}.hover\:border-cyan-400\/40:hover{border-color:#22d3ee66}.hover\:border-emerald-400\/30:hover{border-color:#34d3994d}.hover\:border-purple-400\/30:hover{border-color:#c084fc4d}.hover\:border-red-500\/30:hover{border-color:#ef44444d}.hover\:border-red-500\/40:hover{border-color:#ef444466}.hover\:border-sky-100\/\[0\.32\]:hover{border-color:#e0f2fe52}.hover\:border-white\/10:hover{border-color:#ffffff1a}.hover\:border-white\/20:hover{border-color:#fff3}.hover\:border-white\/30:hover{border-color:#ffffff4d}.hover\:border-white\/40:hover{border-color:#fff6}.hover\:border-white\/\[0\.13\]:hover{border-color:#ffffff21}.hover\:border-white\/\[0\.14\]:hover{border-color:#ffffff24}.hover\:border-white\/\[0\.18\]:hover{border-color:#ffffff2e}.hover\:border-white\/\[0\.2\]:hover{border-color:#fff3}.hover\:border-white\/\[0\.3\]:hover{border-color:#ffffff4d}.hover\:border-zinc-500\/70:hover{border-color:#71717ab3}.hover\:bg-\[\#070b12\]:hover{--tw-bg-opacity: 1;background-color:rgb(7 11 18 / var(--tw-bg-opacity, 1))}.hover\:bg-accent-blue\/20:hover{background-color:#3b82f633}.hover\:bg-accent-blue\/25:hover{background-color:#3b82f640}.hover\:bg-accent-blue\/30:hover{background-color:#3b82f64d}.hover\:bg-accent-blue\/5:hover{background-color:#3b82f60d}.hover\:bg-black\/80:hover{background-color:#000c}.hover\:bg-transparent:hover{background-color:transparent}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:bg-white\/\[0\.02\]:hover{background-color:#ffffff05}.hover\:bg-white\/\[0\.03\]:hover{background-color:#ffffff08}.hover\:bg-white\/\[0\.04\]:hover{background-color:#ffffff0a}.hover\:bg-white\/\[0\.06\]:hover{background-color:#ffffff0f}.hover\:bg-white\/\[0\.12\]:hover{background-color:#ffffff1f}.hover\:bg-white\/\[0\.14\]:hover{background-color:#ffffff24}.hover\:bg-white\/\[0\.1\]:hover{background-color:#ffffff1a}.hover\:bg-zinc-900\/55:hover{background-color:#18181b8c}.hover\:px-10:hover{padding-left:2.5rem;padding-right:2.5rem}.hover\:text-accent-blue:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.hover\:text-cyan-400:hover{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.hover\:text-red-200:hover{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:text-slate-50:hover{--tw-text-opacity: 1;color:rgb(248 250 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:text-zinc-100:hover{--tw-text-opacity: 1;color:rgb(244 244 245 / var(--tw-text-opacity, 1))}.hover\:text-zinc-200\/90:hover{color:#e4e4e7e6}.hover\:text-zinc-300:hover{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_10px_rgba\(34\,211\,238\,0\.2\)\]:hover{--tw-shadow: 0 0 10px rgba(34,211,238,.2);--tw-shadow-colored: 0 0 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_0_15px_rgba\(16\,185\,129\,0\.15\)\]:hover{--tw-shadow: 0 0 15px rgba(16,185,129,.15);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_0_15px_rgba\(168\,85\,247\,0\.15\)\]:hover{--tw-shadow: 0 0 15px rgba(168,85,247,.15);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_0_15px_rgba\(251\,191\,36\,0\.15\)\]:hover{--tw-shadow: 0 0 15px rgba(251,191,36,.15);--tw-shadow-colored: 0 0 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_0_22px_rgba\(59\,130\,246\,0\.18\)\]:hover{--tw-shadow: 0 0 22px rgba(59,130,246,.18);--tw-shadow-colored: 0 0 22px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-\[0_0_40px_rgba\(59\,130\,246\,0\.2\)\,0_8px_40px_0_rgba\(0\,0\,0\,0\.5\)\]:hover{--tw-shadow: 0 0 40px rgba(59,130,246,.2),0 8px 40px 0 rgba(0,0,0,.5);--tw-shadow-colored: 0 0 40px var(--tw-shadow-color), 0 8px 40px 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)}.hover\:shadow-\[0_8px_40px_0_rgba\(59\,130\,246\,0\.15\)\,inset_0_1px_0_0_rgba\(255\,255\,255\,0\.08\)\]:hover{--tw-shadow: 0 8px 40px 0 rgba(59,130,246,.15),inset 0 1px 0 0 rgba(255,255,255,.08);--tw-shadow-colored: 0 8px 40px 0 var(--tw-shadow-color), inset 0 1px 0 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)}.hover\:before\:opacity-100:hover:before{content:var(--tw-content);opacity:1}.focus\:border-accent-blue\/40:focus{border-color:#3b82f666}.focus\:border-accent-blue\/50:focus{border-color:#3b82f680}.focus\:border-white\/30:focus{border-color:#ffffff4d}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--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);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-accent-blue\/20:focus{--tw-ring-color: rgb(59 130 246 / .2)}.focus-visible\:ring-2:focus-visible{--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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-white\/\[0\.3\]:focus-visible{--tw-ring-color: rgb(255 255 255 / .3)}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width: 0px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:w-12{width:3rem}.group:hover .group-hover\:-translate-y-1{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(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: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/card:hover .group-hover\/card\:scale-\[1\.03\]{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/showcase:hover .group-hover\/showcase\:scale-\[1\.015\]{--tw-scale-x: 1.015;--tw-scale-y: 1.015;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[1\.03\]{--tw-scale-x: 1.03;--tw-scale-y: 1.03;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(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-50{--tw-scale-x: .5;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-blue-500\/50{border-color:#3b82f680}.group:hover .group-hover\:border-white\/\[0\.14\]{border-color:#ffffff24}.group:hover .group-hover\:bg-accent-blue{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:bg-black\/45{background-color:#00000073}.group:hover .group-hover\:bg-orange-500\/20{background-color:#f9731633}.group:hover .group-hover\:bg-white\/\[0\.1\]{background-color:#ffffff1a}.group:hover .group-hover\:text-accent-blue{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-accent-blue\/60{color:#3b82f699}.group:hover .group-hover\:text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-zinc-200{--tw-text-opacity: 1;color:rgb(228 228 231 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-zinc-200\/90{color:#e4e4e7e6}.group:hover .group-hover\:text-zinc-300{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.group\/card:hover .group-hover\/card\:opacity-0{opacity:0}.group\/card:hover .group-hover\/card\:opacity-100,.group\/showcase:hover .group-hover\/showcase\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-\[0\.62\]{opacity:.62}.group:hover .group-hover\:opacity-\[0\.72\]{opacity:.72}.group:hover .group-hover\:opacity-\[0\.88\]{opacity:.88}.group:hover .group-hover\:shadow-\[0_4px_16px_rgba\(0\,0\,0\,0\.45\)\]{--tw-shadow: 0 4px 16px rgba(0,0,0,.45);--tw-shadow-colored: 0 4px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\/card:hover .group-hover\/card\:ring-white\/\[0\.12\]{--tw-ring-color: rgb(255 255 255 / .12)}.group\/card:hover .group-hover\/card\:brightness-\[0\.88\]{--tw-brightness: brightness(.88);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)}.group:hover .group-hover\:brightness-\[0\.96\]{--tw-brightness: brightness(.96);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)}.group\/card:hover .group-hover\/card\:saturate-\[1\.04\]{--tw-saturate: saturate(1.04);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)}.group:hover .group-hover\:saturate-\[0\.96\]{--tw-saturate: saturate(.96);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)}.group:hover .group-hover\:duration-\[170ms\]{transition-duration:.17s}.group:hover .group-hover\:duration-\[200ms\]{transition-duration:.2s}@media(min-width:640px){.sm\:inset-4{top:1rem;right:1rem;bottom:1rem;left:1rem}.sm\:bottom-4{bottom:1rem}.sm\:left-4{left:1rem}.sm\:right-4{right:1rem}.sm\:col-span-1{grid-column:span 1 / span 1}.sm\:-mt-2{margin-top:-.5rem}.sm\:mb-14{margin-bottom:3.5rem}.sm\:mb-32{margin-bottom:8rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:mt-10{margin-top:2.5rem}.sm\:mt-24{margin-top:6rem}.sm\:mt-3{margin-top:.75rem}.sm\:mt-32{margin-top:8rem}.sm\:mt-4{margin-top:1rem}.sm\:mt-6{margin-top:1.5rem}.sm\:mt-8{margin-top:2rem}.sm\:line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:aspect-\[16\/10\]{aspect-ratio:16/10}.sm\:\!h-24{height:6rem!important}.sm\:h-10{height:2.5rem}.sm\:h-11{height:2.75rem}.sm\:h-3\.5{height:.875rem}.sm\:h-5{height:1.25rem}.sm\:h-52{height:13rem}.sm\:h-8{height:2rem}.sm\:h-9{height:2.25rem}.sm\:h-\[188px\]{height:188px}.sm\:h-\[320px\]{height:320px}.sm\:h-\[360px\]{height:360px}.sm\:h-\[480px\]{height:480px}.sm\:h-\[48px\]{height:48px}.sm\:min-h-0{min-height:0px}.sm\:min-h-\[260px\]{min-height:260px}.sm\:min-h-\[32px\]{min-height:32px}.sm\:min-h-\[380px\]{min-height:380px}.sm\:min-h-\[38px\]{min-height:38px}.sm\:min-h-\[60vh\]{min-height:60vh}.sm\:\!w-24{width:6rem!important}.sm\:w-10{width:2.5rem}.sm\:w-11{width:2.75rem}.sm\:w-3\.5{width:.875rem}.sm\:w-5{width:1.25rem}.sm\:w-8{width:2rem}.sm\:w-9{width:2.25rem}.sm\:w-\[340px\]{width:340px}.sm\:min-w-max{min-width:-moz-max-content;min-width:max-content}.sm\:max-w-\[560px\]{max-width:560px}.sm\:max-w-\[720px\]{max-width:720px}.sm\:max-w-sm{max-width:24rem}.sm\:shrink-0{flex-shrink:0}.sm\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sm\:scale-\[0\.985\]{--tw-scale-x: .985;--tw-scale-y: .985;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-12{gap:3rem}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-3\.5{gap:.875rem}.sm\:gap-4{gap:1rem}.sm\:gap-5{gap:1.25rem}.sm\:gap-6{gap:1.5rem}.sm\:gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.sm\:space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.sm\:space-y-20>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(5rem * var(--tw-space-y-reverse))}.sm\:space-y-24>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(6rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(6rem * var(--tw-space-y-reverse))}.sm\:overflow-x-auto{overflow-x:auto}.sm\:whitespace-nowrap{white-space:nowrap}.sm\:p-10{padding:2.5rem}.sm\:p-12{padding:3rem}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:p-\[1\.48rem\]{padding:1.48rem}.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem}.sm\:px-2{padding-left:.5rem;padding-right:.5rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:px-9{padding-left:2.25rem;padding-right:2.25rem}.sm\:px-\[0\.6rem\]{padding-left:.6rem;padding-right:.6rem}.sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}.sm\:py-8{padding-top:2rem;padding-bottom:2rem}.sm\:py-\[0\.24rem\]{padding-top:.24rem;padding-bottom:.24rem}.sm\:pb-\[2\.86rem\]{padding-bottom:2.86rem}.sm\:pr-3{padding-right:.75rem}.sm\:pt-10{padding-top:2.5rem}.sm\:pt-20{padding-top:5rem}.sm\:pt-5{padding-top:1.25rem}.sm\:pt-\[2\.84rem\]{padding-top:2.84rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-\[0\.89rem\]{font-size:.89rem}.sm\:text-\[0\.96rem\]{font-size:.96rem}.sm\:text-\[1\.02rem\]{font-size:1.02rem}.sm\:text-\[1\.12rem\]{font-size:1.12rem}.sm\:text-\[10\.5px\]{font-size:10.5px}.sm\:text-\[10px\]{font-size:10px}.sm\:text-\[11px\]{font-size:11px}.sm\:text-\[12px\]{font-size:12px}.sm\:text-\[5rem\]{font-size:5rem}.sm\:text-\[7\.4px\]{font-size:7.4px}.sm\:text-\[8\.2px\]{font-size:8.2px}.sm\:text-\[8\.5px\]{font-size:8.5px}.sm\:text-\[clamp\(1\.7rem\,3vw\,2\.5rem\)\]{font-size:clamp(1.7rem,3vw,2.5rem)}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:text-xs{font-size:.75rem;line-height:1rem}.sm\:leading-\[0\.6rem\]{line-height:.6rem}.sm\:leading-\[0\.7rem\]{line-height:.7rem}.sm\:leading-\[1\.95\]{line-height:1.95}.sm\:tracking-\[0\.16em\]{letter-spacing:.16em}.sm\:hover\:scale-\[0\.995\]:hover{--tw-scale-x: .995;--tw-scale-y: .995;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}@media(min-width:768px){.md\:top-14{top:3.5rem}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-5{grid-column:span 5 / span 5}.md\:col-span-7{grid-column:span 7 / span 7}.md\:-mr-16{margin-right:-4rem}.md\:-mt-4{margin-top:-1rem}.md\:mb-24{margin-bottom:6rem}.md\:mt-14{margin-top:3.5rem}.md\:mt-28{margin-top:7rem}.md\:mt-40{margin-top:10rem}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}.md\:aspect-auto{aspect-ratio:auto}.md\:h-20{height:5rem}.md\:h-\[260px\]{height:260px}.md\:h-\[420px\]{height:420px}.md\:min-h-\[420px\]{min-height:420px}.md\:min-h-\[72vh\]{min-height:72vh}.md\:w-28{width:7rem}.md\:w-80{width:20rem}.md\:w-\[380px\]{width:380px}.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-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[minmax\(0\,1\.15fr\)_minmax\(0\,0\.85fr\)\]{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-0{gap:0px}.md\:gap-6{gap:1.5rem}.md\:space-y-32>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(8rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(8rem * var(--tw-space-y-reverse))}.md\:border-r{border-right-width:1px}.md\:border-t-0{border-top-width:0px}.md\:border-white\/\[0\.04\]{border-color:#ffffff0a}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:px-0{padding-left:0;padding-right:0}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-\[3rem\]{padding-top:3rem;padding-bottom:3rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-36{padding-bottom:9rem}.md\:pb-\[0\.7rem\]{padding-bottom:.7rem}.md\:pt-10{padding-top:2.5rem}.md\:pt-14{padding-top:3.5rem}.md\:pt-24{padding-top:6rem}.md\:pt-32{padding-top:8rem}.md\:pt-\[6\.1rem\]{padding-top:6.1rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-\[10px\]{font-size:10px}.md\:text-\[11px\]{font-size:11px}.md\:text-\[12px\]{font-size:12px}.md\:text-\[1rem\]{font-size:1rem}.md\:text-\[7\.5rem\]{font-size:7.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xs{font-size:.75rem;line-height:1rem}.md\:leading-\[0\.7rem\]{line-height:.7rem}.md\:hover\:px-\[3rem\]:hover{padding-left:3rem;padding-right:3rem}}@media(min-width:900px){.min-\[900px\]\:ml-auto{margin-left:auto}.min-\[900px\]\:mt-10{margin-top:2.5rem}.min-\[900px\]\:aspect-\[3\/2\]{aspect-ratio:3/2}.min-\[900px\]\:w-\[42\%\]{width:42%}.min-\[900px\]\:w-\[58\%\]{width:58%}.min-\[900px\]\:flex-row{flex-direction:row}.min-\[900px\]\:flex-row-reverse{flex-direction:row-reverse}.min-\[900px\]\:items-end{align-items:flex-end}.min-\[900px\]\:items-stretch{align-items:stretch}.min-\[900px\]\:justify-end{justify-content:flex-end}.min-\[900px\]\:self-center{align-self:center}.min-\[900px\]\:rounded-none{border-radius:0}.min-\[900px\]\:border-0{border-width:0px}.min-\[900px\]\:bg-transparent{background-color:transparent}.min-\[900px\]\:p-0{padding:0}.min-\[900px\]\:px-3{padding-left:.75rem;padding-right:.75rem}.min-\[900px\]\:py-3{padding-top:.75rem;padding-bottom:.75rem}.min-\[900px\]\:pl-0{padding-left:0}.min-\[900px\]\:pl-12{padding-left:3rem}.min-\[900px\]\:pr-0{padding-right:0}.min-\[900px\]\:pr-12{padding-right:3rem}.min-\[900px\]\:pt-0{padding-top:0}.min-\[900px\]\:text-right{text-align:right}}@media(min-width:960px){.min-\[960px\]\:sticky{position:sticky}.min-\[960px\]\:top-\[5\.76rem\]{top:5.76rem}.min-\[960px\]\:order-1{order:1}.min-\[960px\]\:order-2{order:2}.min-\[960px\]\:block{display:block}.min-\[960px\]\:h-\[calc\(100vh-5\.9rem\)\]{height:calc(100vh - 5.9rem)}.min-\[960px\]\:max-h-\[calc\(100vh-5\.9rem\)\]{max-height:calc(100vh - 5.9rem)}.min-\[960px\]\:w-\[19\.5rem\]{width:19.5rem}.min-\[960px\]\:grid-cols-\[minmax\(0\,1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.min-\[960px\]\:grid-cols-\[minmax\(0\,820px\)_minmax\(260px\,312px\)\]{grid-template-columns:minmax(0,820px) minmax(260px,312px)}.min-\[960px\]\:gap-10{gap:2.5rem}.min-\[960px\]\:gap-12{gap:3rem}.min-\[960px\]\:overflow-y-auto{overflow-y:auto}.min-\[960px\]\:border-y-0{border-top-width:0px;border-bottom-width:0px}.min-\[960px\]\:border-l{border-left-width:1px}.min-\[960px\]\:border-r-0{border-right-width:0px}.min-\[960px\]\:border-l-white\/\[0\.06\]{border-left-color:#ffffff0f}.min-\[960px\]\:bg-transparent{background-color:transparent}.min-\[960px\]\:p-0{padding:0}.min-\[960px\]\:pb-\[3\.8rem\]{padding-bottom:3.8rem}.min-\[960px\]\:pl-11{padding-left:2.75rem}.min-\[960px\]\:pl-12{padding-left:3rem}.min-\[960px\]\:pr-10{padding-right:2.5rem}.min-\[960px\]\:pr-3{padding-right:.75rem}.min-\[960px\]\:pt-8{padding-top:2rem}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-12{grid-column:span 12 / span 12}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-5{grid-column:span 5 / span 5}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-7{grid-column:span 7 / span 7}.lg\:-mr-24{margin-right:-6rem}.lg\:mt-0{margin-top:0}.lg\:flex{display:flex}.lg\:h-\[56px\]{height:56px}.lg\:h-auto{height:auto}.lg\:min-h-\[340px\]{min-height:340px}.lg\:min-h-\[80vh\]{min-height:80vh}.lg\:w-\[45\%\]{width:45%}.lg\:w-\[55\%\]{width:55%}.lg\:max-w-\[820px\]{max-width:820px}.lg\:shrink-0{flex-shrink:0}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:flex-wrap{flex-wrap:wrap}.lg\:items-start{align-items:flex-start}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-\[4\.2rem\]{gap:4.2rem}.lg\:gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.lg\:gap-x-\[2\.2rem\]{-moz-column-gap:2.2rem;column-gap:2.2rem}.lg\:space-y-40>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(10rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(10rem * var(--tw-space-y-reverse))}.lg\:border-l{border-left-width:1px}.lg\:border-t-0{border-top-width:0px}.lg\:px-0{padding-left:0;padding-right:0}.lg\:px-14{padding-left:3.5rem;padding-right:3.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:px-\[3\.2rem\]{padding-left:3.2rem;padding-right:3.2rem}.lg\:py-4{padding-top:1rem;padding-bottom:1rem}.lg\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}.lg\:pb-32{padding-bottom:8rem}.lg\:pb-\[3\.1rem\]{padding-bottom:3.1rem}.lg\:pl-16{padding-left:4rem}.lg\:pr-16{padding-right:4rem}.lg\:pt-20{padding-top:5rem}.lg\:pt-28{padding-top:7rem}.lg\:pt-\[3rem\]{padding-top:3rem}.lg\:text-right{text-align:right}.lg\:text-\[0\.98rem\]{font-size:.98rem}}@media(min-width:1200px){.min-\[1200px\]\:grid-cols-\[minmax\(0\,1fr\)_380px\]{grid-template-columns:minmax(0,1fr) 380px}.min-\[1200px\]\:gap-14{gap:3.5rem}}@media(min-width:1280px){.xl\:col-span-5{grid-column:span 5 / span 5}.xl\:col-span-7{grid-column:span 7 / span 7}.xl\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\>\*\]\:relative>*{position:relative}.\[\&\>\*\]\:z-10>*{z-index:10}.\[\&\>\*\]\:space-y-\[2\.45rem\]>*>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.45rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.45rem * var(--tw-space-y-reverse))}@media(min-width:960px){.min-\[960px\]\:\[\&\>\*\]\:space-y-\[2\.72rem\]>*>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.72rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.72rem * var(--tw-space-y-reverse))}}.\[\&_tbody\]\:text-gray-200 tbody{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.\[\&_tbody_td\]\:align-top tbody td{vertical-align:top}.\[\&_tbody_tr\:hover\]\:bg-accent-blue\/5 tbody tr:hover{background-color:#3b82f60d}.\[\&_tbody_tr\:nth-child\(odd\)\]\:bg-white\/\[0\.015\] tbody tr:nth-child(odd){background-color:#ffffff04}.\[\&_tbody_tr\]\:border-b tbody tr{border-bottom-width:1px}.\[\&_tbody_tr\]\:border-white\/5 tbody tr{border-color:#ffffff0d}.\[\&_td\]\:px-4 td{padding-left:1rem;padding-right:1rem}.\[\&_td\]\:py-3 td{padding-top:.75rem;padding-bottom:.75rem}.\[\&_th\]\:whitespace-nowrap th{white-space:nowrap}.\[\&_th\]\:px-4 th{padding-left:1rem;padding-right:1rem}.\[\&_th\]\:py-3 th{padding-top:.75rem;padding-bottom:.75rem}.\[\&_th\]\:font-semibold th{font-weight:600}.\[\&_thead\]\:tracking-wide thead{letter-spacing:.025em}.\[\&_thead\]\:text-gray-300 thead{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}
