/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-cyan-100:#ffd5df;--color-cyan-200:#ff9ab1;--color-cyan-300:#ff456d;--color-blue-100:oklch(93.2% .032 255.585);--color-blue-300:oklch(80.9% .105 251.813);--color-purple-100:#c9d9ff;--color-purple-300:#739dff;--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-white:#fff;--spacing:.25rem;--container-3xl:48rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--leading-tight:1.25;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-x-0{inset-inline:0}.top-0{top:0}.top-1\/2{top:50%}.left-4{left:calc(var(--spacing) * 4)}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-auto{margin-top:auto}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.h-12{height:calc(var(--spacing) * 12)}.min-h-\[420px\]{min-height:420px}.min-h-\[620px\]{min-height:620px}.min-h-screen{min-height:100vh}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-7xl{max-width:var(--container-7xl)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-blue-300\/20{border-color:#90c5ff33}@supports (color:color-mix(in lab, red, red)){.border-blue-300\/20{border-color:color-mix(in oklab, var(--color-blue-300) 20%, transparent)}}.border-cyan-300\/25{border-color:#ff456d40}@supports (color:color-mix(in lab, red, red)){.border-cyan-300\/25{border-color:color-mix(in oklab, var(--color-cyan-300) 25%, transparent)}}.border-cyan-300\/45{border-color:#ff456d73}@supports (color:color-mix(in lab, red, red)){.border-cyan-300\/45{border-color:color-mix(in oklab, var(--color-cyan-300) 45%, transparent)}}.border-cyan-300\/50{border-color:#ff456d80}@supports (color:color-mix(in lab, red, red)){.border-cyan-300\/50{border-color:color-mix(in oklab, var(--color-cyan-300) 50%, transparent)}}.border-purple-300\/20{border-color:#739dff33}@supports (color:color-mix(in lab, red, red)){.border-purple-300\/20{border-color:color-mix(in oklab, var(--color-purple-300) 20%, transparent)}}.border-purple-300\/25{border-color:#739dff40}@supports (color:color-mix(in lab, red, red)){.border-purple-300\/25{border-color:color-mix(in oklab, var(--color-purple-300) 25%, transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-\[\#0b1020\]\/70{background-color:oklab(17.7334% -.000262804 -.0341124/.7)}.bg-\[\#050711\]{background-color:#050711}.bg-blue-300\/10{background-color:#90c5ff1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-300\/10{background-color:color-mix(in oklab, var(--color-blue-300) 10%, transparent)}}.bg-cyan-300\/10{background-color:#ff456d1a}@supports (color:color-mix(in lab, red, red)){.bg-cyan-300\/10{background-color:color-mix(in oklab, var(--color-cyan-300) 10%, transparent)}}.bg-cyan-300\/15{background-color:#ff456d26}@supports (color:color-mix(in lab, red, red)){.bg-cyan-300\/15{background-color:color-mix(in oklab, var(--color-cyan-300) 15%, transparent)}}.bg-cyan-300\/\[0\.09\]{background-color:#ff456d17}@supports (color:color-mix(in lab, red, red)){.bg-cyan-300\/\[0\.09\]{background-color:color-mix(in oklab, var(--color-cyan-300) 9%, transparent)}}.bg-purple-300\/10{background-color:#739dff1a}@supports (color:color-mix(in lab, red, red)){.bg-purple-300\/10{background-color:color-mix(in oklab, var(--color-purple-300) 10%, transparent)}}.bg-white\/\[0\.04\]{background-color:#ffffff0a}@supports (color:color-mix(in lab, red, red)){.bg-white\/\[0\.04\]{background-color:color-mix(in oklab, var(--color-white) 4%, transparent)}}.bg-white\/\[0\.06\]{background-color:#ffffff0f}@supports (color:color-mix(in lab, red, red)){.bg-white\/\[0\.06\]{background-color:color-mix(in oklab, var(--color-white) 6%, transparent)}}.p-1{padding:var(--spacing)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-32{padding-top:calc(var(--spacing) * 32)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-12{padding-left:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.break-words{overflow-wrap:break-word}.text-blue-100{color:var(--color-blue-100)}.text-cyan-100{color:var(--color-cyan-100)}.text-cyan-200{color:var(--color-cyan-200)}.text-purple-100{color:var(--color-purple-100)}.text-slate-100{color:var(--color-slate-100)}.text-slate-200{color:var(--color-slate-200)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-white{color:var(--color-white)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-slate-500::placeholder{color:var(--color-slate-500)}@media (hover:hover){.hover\:border-cyan-300\/40:hover{border-color:#ff456d66}@supports (color:color-mix(in lab, red, red)){.hover\:border-cyan-300\/40:hover{border-color:color-mix(in oklab, var(--color-cyan-300) 40%, transparent)}}.hover\:bg-cyan-300\/10:hover{background-color:#ff456d1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-cyan-300\/10:hover{background-color:color-mix(in oklab, var(--color-cyan-300) 10%, transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-cyan-100:hover{color:var(--color-cyan-100)}.hover\:text-white:hover{color:var(--color-white)}}.focus\:border-cyan-300\/40:focus{border-color:#ff456d66}@supports (color:color-mix(in lab, red, red)){.focus\:border-cyan-300\/40:focus{border-color:color-mix(in oklab, var(--color-cyan-300) 40%, transparent)}}.focus\:bg-white\/\[0\.08\]:focus{background-color:#ffffff14}@supports (color:color-mix(in lab, red, red)){.focus\:bg-white\/\[0\.08\]:focus{background-color:color-mix(in oklab, var(--color-white) 8%, transparent)}}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-cyan-300:focus-visible{outline-color:var(--color-cyan-300)}@media (width>=40rem){.sm\:block{display:block}.sm\:w-72{width:calc(var(--spacing) * 72)}.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\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (width>=48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-flex{display:inline-flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:p-10{padding:calc(var(--spacing) * 10)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf0f7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent:#ff1846;--blue:#357cff;--display:"Orbitron", "Arial Black", sans-serif;--mono:"IBM Plex Mono", Consolas, monospace;background:#03040a;font-family:Noto Sans KR,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:#03040a;min-width:320px;min-height:100svh;margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{text-underline-offset:5px}::selection{color:#fff;background:#b91942}:focus-visible{outline-offset:5px;outline:2px solid #ff6b8b}.site-shell{isolation:isolate;min-height:100svh}.section-shell{z-index:10;width:min(100% - 4rem,1180px);margin-inline:auto;position:relative}.skip-link{z-index:100;color:#03040a;background:#fff;padding:12px 20px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:12px}.text-accent{color:var(--accent)}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(#03040af5,#03040ad9);border-bottom:1px solid #ffffff12}.site-header nav{min-height:84px}.brand-symbol{place-items:center;width:34px;height:36px;display:grid;position:relative}.brand-symbol:before,.brand-symbol:after,.brand-symbol span{content:"";border:2px solid var(--accent);width:14px;height:28px;position:absolute;transform:skew(-24deg)}.brand-symbol:before{border-top:0;border-right:0;left:4px}.brand-symbol:after{border-bottom:0;border-left:0;height:17px;right:1px}.brand-symbol span{border-color:currentColor currentColor #e8edff #e8edff;border-top-style:none;border-top-width:0;border-right-style:none;border-right-width:0;height:20px;top:7px;left:12px}.brand-name{font-family:var(--display);letter-spacing:.07em}.brand-dot{color:var(--accent)}.site-header .text-xs{font-family:var(--mono);letter-spacing:.13em;margin-top:5px;font-size:8px}.desktop-nav a{border-radius:3px;font-size:13px}.header-github{color:#e8edff;border:1px solid #ffffff42;border-radius:3px;transition:background .2s,border-color .2s}.header-github:hover{border-color:var(--accent);background:#ff18461a}.mobile-navigation{background:#070914f7}.ambient-background{overflow:hidden}.ambient-red{background:radial-gradient(circle,#ff184615,#0000 65%);border-radius:50%;width:850px;height:850px;position:absolute;top:-290px;right:-420px}.ambient-blue{background:radial-gradient(circle,#165bff16,#0000 65%);border-radius:50%;width:1050px;height:1050px;position:absolute;top:160px;left:-700px}.ambient-grid{background-image:linear-gradient(#9daed305 1px,#0000 1px),linear-gradient(90deg,#9daed305 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 90%);mask-image:linear-gradient(#000,#0000 90%)}.scanline{opacity:.35;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000012 3px 4px);position:absolute;inset:0}.hero{border-bottom:1px solid #ffffff13;align-items:center;min-height:min(960px,max(800px,100svh));padding:150px 0 140px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:linear-gradient(#03040a45,#0000 20% 81%,#03040a);position:absolute;inset:0}.hero-orbit{opacity:.78;width:min(1240px,115vw);position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.hero-orbit:before{content:"";filter:blur(30px);background:radial-gradient(at 65% 30%,#ff18461a,#0000 58%),radial-gradient(at 25% 70%,#0070ff21,#0000 60%);border-radius:50%;position:absolute;inset:12% 18%}.hero-orbit svg{width:100%;position:relative;overflow:visible}.orbit-traces{filter:drop-shadow(0 0 6px #ff184655);animation:8s ease-in-out infinite alternate orbit-breathe}.hero-content{text-align:center}.hero-kicker{font-family:var(--mono);letter-spacing:.24em;color:#aab2c5;justify-content:center;align-items:center;gap:10px;font-size:11px;display:flex}.signal-dot{background:var(--accent);width:5px;height:5px;box-shadow:0 0 12px var(--accent);border-radius:50%}.hero-wordmark{width:fit-content;font-family:var(--display);letter-spacing:-.065em;margin:36px auto 0;font-size:clamp(52px,10.6vw,140px);font-weight:900;line-height:1.22;position:relative}.hero-wordmark>span:first-child{color:#edf0f8;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px #ffffff35)drop-shadow(0 15px 35px #000a);background:linear-gradient(#fff 8%,#cbd2e3 38%,#727d99 49%,#f5f7ff 52%,#d6dcea 68%,#7d879e 100%);-webkit-background-clip:text;background-clip:text;display:inline-block;position:relative}.hero-wordmark>span:first-child:after{content:attr(data-text);-webkit-text-stroke:1px #ff18463d;color:#0000;-webkit-text-fill-color:transparent;z-index:-1;position:absolute;inset:0;transform:translate(2px,3px)}.hero-period{color:var(--accent);text-shadow:0 0 32px #ff18466b;margin-left:.04em;font-size:.7em;display:inline-block}.hero-subtitle{font-family:var(--display);letter-spacing:.24em;color:#ccd3e3;margin-top:20px;font-size:clamp(10px,1.4vw,17px);font-weight:600}.hero-subtitle span{color:#ff456d}.hero-identity{color:#f0f2fa;justify-content:center;align-items:center;gap:20px;margin-top:54px;font-size:14px;display:flex}.hero-identity p span{color:#8a95aa;margin-left:6px}.hero-identity-divider{background:#ffffff30;width:1px;height:14px}.hero-description{color:#a0a9be;margin-top:18px;font-size:14px;line-height:1.9}.hero-actions{justify-content:center;gap:12px;margin-top:32px;display:flex}.hero-bottom{font-family:var(--mono);letter-spacing:.1em;color:#788299;justify-content:space-between;align-items:center;font-size:9px;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.hero-bottom a{color:#c0c8d9;align-items:center;gap:20px;display:flex}.hero-bottom a span{color:var(--accent);font-size:19px}.primary-btn,.secondary-btn{border-radius:3px;justify-content:center;align-items:center;gap:.7rem;min-height:46px;padding:.8rem 1.4rem;font-size:13px;font-weight:600;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;display:inline-flex}.primary-btn{color:#fff;background:#ef1946;border:1px solid #ff456d;box-shadow:0 0 28px #ff18461a,inset 0 1px #ffffff25}.primary-btn:hover{background:#ff2d58;transform:translateY(-2px);box-shadow:0 6px 36px #ff184638}.secondary-btn{color:#e3e8f5;background:#ffffff06;border:1px solid #ffffff35}.secondary-btn:hover{background:#ffffff0b;border-color:#8e9bb4;transform:translateY(-2px)}.section-heading{max-width:800px}.section-eyebrow{letter-spacing:.09em;color:#ff6b8b;align-items:center;gap:10px;margin-bottom:22px;font-size:12px;display:inline-flex}.section-eyebrow:before{content:"";background:var(--accent);width:30px;height:1px;box-shadow:0 0 12px #ff18464d}.section-eyebrow svg{width:15px;height:15px}.section-title{font-family:var(--display);letter-spacing:-.035em;color:#edf0f7;overflow-wrap:anywhere;font-size:clamp(25px,3.8vw,46px);font-weight:700;line-height:1.25}.section-heading>p{color:#9ca7bc;max-width:670px;font-size:15px;line-height:1.9}main>section.section-shell{border-bottom:1px solid #ffffff13}main>section.section-shell:last-child{border-bottom:0}.glass-panel,.project-card,.activity-card,.contact-card,.writeup-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(130deg,#ffffff05,#fff0 65%),#080b16b8;border:1px solid #ffffff17;border-radius:8px;box-shadow:inset 0 1px #ffffff05}.glass-panel{position:relative}.glass-panel:before{content:"";background:linear-gradient(90deg,#ff184690,#0000);width:55px;height:1px;position:absolute;top:-1px;left:20px}.project-card,.activity-card,.contact-card,.writeup-card{transition:transform .2s,border-color .2s,background .2s}.project-card:hover,.activity-card:hover,.contact-card:hover,.writeup-card:hover{background-color:#10111f;border-color:#ff456d55;transform:translateY(-3px)}.project-card{min-height:280px;padding:1.75rem}.activity-card{flex-direction:column;height:auto;min-height:280px;padding:1.75rem;display:flex}.activity-card h3{font-size:20px;line-height:1.5}.activity-card p{color:#a5aec2;font-size:14px}.activity-card:first-child{background:radial-gradient(at 100% 0,#ff184610,#0000 65%),#080b16b8;border-color:#ff456d40}.activity-card:first-child svg{color:#ff819f}.contact-card{min-height:185px;padding:1.75rem;position:relative}.contact-card:after{content:"↗";color:#8995ad;font-size:22px;transition:color .2s,transform .2s;position:absolute;top:25px;right:25px}.contact-card:hover:after{color:#ff456d;transform:translate(2px,-2px)}.contact-card>span:last-child{font-family:var(--mono);font-size:clamp(12px,1.5vw,17px)}.skill-badge,.mini-badge{color:#c1cadd;background:#ffffff03;border:1px solid #ffffff16;border-radius:3px;align-items:center;display:inline-flex}.skill-badge{min-height:36px;font-size:12px;font-family:var(--mono);padding:.45rem .8rem}.mini-badge{min-height:28px;padding:.3rem .6rem;font-size:11px}.filter-chip{min-height:36px;font-family:var(--mono);border-width:1px;border-radius:3px;padding:.45rem .85rem;font-size:12px;transition:border-color .2s,background-color .2s,color .2s}.writeup-card{padding:1rem;display:block}.writeup-card>span:first-child{font-family:var(--mono);letter-spacing:.03em;font-size:10px}.writeup-card>span:last-child{font-size:14px;line-height:1.7}.research-row{border-top:1px solid #ffffff1c;grid-template-columns:44px 1fr 26px;align-items:start;gap:20px;padding:30px 8px;transition:background .2s;display:grid}.research-row:last-child{border-bottom:1px solid #ffffff1c}.research-row:hover{background:#ffffff03}.research-number{font-family:var(--mono);color:#59647b;padding-top:2px;font-size:12px}.research-meta{font-family:var(--mono);color:#ff819c;font-size:11px}.research-meta span{color:#647088;padding-inline:8px}.research-row h3{margin-top:12px;font-size:clamp(17px,2vw,22px);font-weight:600;line-height:1.55}.research-row p{color:#8e99af;max-width:880px;margin-top:10px;font-size:13px;line-height:1.9}.research-arrow{color:#ff456d;margin-top:30px;transition:transform .2s}.research-row:hover .research-arrow{transform:translate(4px)}.footer-wordmark{font-family:var(--display);letter-spacing:.06em;color:#8a94aa;margin-right:18px;font-size:11px}@keyframes orbit-breathe{0%{opacity:.5}to{opacity:1}}.markdown-body{overflow-wrap:anywhere;color:#cbd5e1;min-width:0;line-height:1.75}.markdown-table-scroll{border:1px solid #ffffff1f;border-radius:8px;max-width:100%;margin:1.5rem 0;overflow-x:auto}.markdown-table-scroll:focus-visible{outline-offset:3px;outline:2px solid #ff819f}.markdown-body table{border-collapse:collapse;overflow-wrap:normal;width:100%;font-size:.9rem}.markdown-body th,.markdown-body td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff1a;min-width:8rem;padding:.85rem 1rem}.markdown-body th{color:#e0f2fe;background:#ff456d14}.markdown-body tr:last-child td{border-bottom:0}.markdown-body pre{background:#00000040;border:1px solid #ffffff1f;border-radius:8px;max-width:100%;padding:1rem;overflow-x:auto}.markdown-body pre code{overflow-wrap:normal;background:0 0;border:0;padding:0}.markdown-body img{max-width:100%;height:auto}.markdown-body h2{color:#fff;margin:2.2rem 0 .8rem;font-size:1.5rem;font-weight:700}.markdown-body h3{color:#e0f2fe;margin:1.8rem 0 .7rem;font-size:1.15rem;font-weight:700}.markdown-body p,.markdown-body ul,.markdown-body ol{margin:.9rem 0}.markdown-body ul,.markdown-body ol{padding-left:1.25rem}.markdown-body li{margin:.45rem 0}.markdown-body code{color:#ffbdce;background:#ff456d14;border:1px solid #ff456d2e;border-radius:6px;padding:.12rem .32rem;font-size:.9em}.markdown-body a{color:#ff819f;text-decoration:none}.markdown-body a:hover{color:#fff}@media (width<=767px){.section-shell{width:min(100% - 2.5rem,1180px)}.site-header nav{min-height:72px}.hero{min-height:max(740px,94svh);padding:140px 0 125px}.hero-wordmark{margin-top:32px;font-size:clamp(40px,10.6vw,80px)}.hero-orbit{width:180vw;top:43%}.hero-kicker{letter-spacing:.15em;font-size:8px}.hero-subtitle{letter-spacing:.15em;font-size:9px}.hero-identity{flex-direction:column;gap:10px;margin-top:40px;font-size:13px}.hero-identity-divider{display:none}.hero-description{font-size:12px;line-height:1.9}.hero-actions{gap:10px}.hero-actions .primary-btn,.hero-actions .secondary-btn{padding:.8rem 1rem;font-size:12px}.hero-bottom{justify-content:center;bottom:25px}.hero-bottom>span{display:none}main>section.section-shell{padding-block:64px}.section-title{font-size:clamp(23px,5.5vw,38px)}.section-heading>p{font-size:14px}.activity-card{min-height:0;padding:1.4rem}.activity-card h3{font-size:18px}.research-row{grid-template-columns:24px 1fr 18px;gap:10px;padding-block:24px}.research-row p{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.research-meta{font-size:9px}.writeups-page>.section-heading{padding-top:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
