html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}*,: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:DM Sans,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-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:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.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-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-8{bottom:2rem}.left-1\/2{left:50%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-\[120\]{z-index:120}.z-\[200\]{z-index:200}.order-last{order:9999}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-14{margin-top:3.5rem}.mt-16{margin-top:4rem}.mt-2{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-auto{margin-top:auto}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.min-h-0{min-height:0px}.min-h-\[1\.25em\]{min-height:1.25em}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[420px\]{min-height:420px}.min-h-\[44px\]{min-height:44px}.min-h-\[70px\]{min-height:70px}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-32{width:8rem}.w-5\/6{width:83.333333%}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.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-\[110px\]{min-width:110px}.min-w-\[44px\]{min-width:44px}.max-w-3xl{max-width:48rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-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))}.-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{--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))}.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))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.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\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.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-8{gap:2rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-1{row-gap:.25rem}.gap-y-2\.5{row-gap:.625rem}.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-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))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-white\/10{border-color:#ffffff1a}.bg-\[\#0a0a0a\]{--tw-bg-opacity: 1;background-color:rgb(10 10 10 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-neutral-300{--tw-bg-opacity: 1;background-color:rgb(212 212 212 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white\/5{background-color:#ffffff0d}.from-neutral-900\/40{--tw-gradient-from: rgb(23 23 23 / .4) var(--tw-gradient-from-position);--tw-gradient-to: rgb(23 23 23 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-neutral-950\/20{--tw-gradient-to: rgb(10 10 10 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(10 10 10 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black{--tw-gradient-to: #000 var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-28{padding-top:7rem;padding-bottom:7rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-28{padding-bottom:7rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-2{padding-top:.5rem}.pt-28{padding-top:7rem}.text-left{text-align:left}.text-center{text-align:center}.font-display{font-family:Space Grotesk,system-ui,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:DM Sans,system-ui,sans-serif}.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-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.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-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-green-400\/0{color:#4ade8000}.text-green-400\/30{color:#4ade804d}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/80{color:#fffc}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-60{opacity:.6}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.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)}.grayscale{--tw-grayscale: grayscale(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)}.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)}.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-filter{-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-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-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.will-change-transform{will-change:transform}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#333 #111;overflow-x:clip;max-width:100%;overscroll-behavior-x:none}body{margin:0;padding:0;background:#0a0a0a;color:#fff;font-family:DM Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;max-width:100%;overscroll-behavior-x:none}#root{min-height:100vh;overflow-x:clip;max-width:100%}@media (max-width: 767px){html,body{touch-action:pan-y pinch-zoom}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#111}::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#4ade80}::selection{background:#4ade8033;color:#fff}::-moz-selection{background:#4ade8033;color:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:0;left:0;z-index:10000;padding:.75rem 1.25rem;background:#4ade80;color:#0a0a0a;font-weight:600;font-size:.875rem;text-decoration:none;border-radius:0 0 8px;transform:translateY(-120%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0);outline:2px solid #fff;outline-offset:2px}:focus-visible{outline:2px solid #4ade80;outline-offset:2px}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.experience-card{animation:none!important}.particle{display:none}}@keyframes particle-rise{0%{transform:translateY(40px) scale(.7);opacity:0}12%{opacity:.6}88%{opacity:.12}to{transform:translateY(-65vh) scale(1.05);opacity:0}}@keyframes scroll-bounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(6px);opacity:1}}@keyframes float-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes card-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.experience-card{animation:card-float 4s ease-in-out infinite;transition:transform .4s ease,box-shadow .4s ease}.experience-card:hover{animation-play-state:paused;transform:translateY(-2px)!important;box-shadow:0 0 0 1px #4ade8059,0 0 28px #4ade8026,0 8px 32px #0006}@keyframes glow-pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes scale-in{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}@keyframes slide-up-fade{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-in-left{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes dot-pulse{0%,to{transform:scale(1);box-shadow:0 0 #4ade8066}50%{transform:scale(1.2);box-shadow:0 0 0 6px #4ade8000}}@keyframes reveal-line{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes badge-pop{0%{transform:scale(.85);opacity:0}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.particle{position:absolute;bottom:-10px;font-size:13px;color:#4ade80;opacity:0;animation:particle-rise linear infinite;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform,opacity}.fade-in{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.fade-in.visible{opacity:1;transform:translateY(0)}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;min-height:44px;background:#4ade80;color:#0a0a0a;border-radius:8px;font-family:DM Sans,sans-serif;font-weight:600;font-size:15px;line-height:1;text-decoration:none;border:none;cursor:pointer;position:relative;overflow:hidden;transition:background .2s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.btn-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.3) 50%,transparent 60%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite;opacity:0;transition:opacity .3s}.btn-primary:hover:after{opacity:1}.btn-primary:hover{background:#22c55e;transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px #4ade804d,0 0 0 1px #4ade801a}.btn-primary:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:0 2px 8px #4ade8033}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;min-height:44px;border:1.5px solid rgba(255,255,255,.12);color:#fff;border-radius:8px;font-family:DM Sans,sans-serif;font-weight:500;font-size:15px;line-height:1;text-decoration:none;background:transparent;cursor:pointer;position:relative;overflow:hidden;transition:border-color .25s,background .25s,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.btn-secondary:hover{border-color:#4ade8080;background:#4ade800f;transform:translateY(-2px);box-shadow:0 4px 16px #4ade801a}.btn-secondary:active{transform:translateY(0) scale(.98)}.card{border:1.5px solid rgba(255,255,255,.07);background:#ffffff05;border-radius:14px;position:relative;overflow:hidden;transition:background .3s,border-color .3s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(74,222,128,.3) 50%,transparent 100%);opacity:0;transition:opacity .35s}.card:hover{background:#ffffff0a;border-color:#4ade8038;transform:translateY(-3px);box-shadow:0 12px 40px -10px #0006,0 0 0 1px #4ade8014}.card:hover:before{opacity:1}.tech-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:500;color:#4ade80;background:#4ade8014;border:1px solid rgba(74,222,128,.18);border-radius:4px;white-space:nowrap;line-height:1.6;transition:background .2s,border-color .2s,transform .2s}.tech-badge:hover{background:#4ade8024;border-color:#4ade8059;transform:translateY(-1px)}.section-label{font-size:13px;font-weight:500;color:#4ade80;letter-spacing:.08em;text-transform:uppercase;font-family:DM Sans,monospace}.scroll-indicator{animation:scroll-bounce 2s ease-in-out infinite}.hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(74,222,128,.06) 0%,transparent 60%);pointer-events:none}.timeline-dot{animation:dot-pulse 2.5s ease-in-out infinite}.glow-border{position:relative}.glow-border:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:conic-gradient(from 180deg,transparent,rgba(74,222,128,.2),transparent,transparent);opacity:0;transition:opacity .4s;z-index:-1}.glow-border:hover:after{opacity:1}.float-element{animation:float-subtle 4s ease-in-out infinite}.float-element-delayed{animation:float-subtle 5s ease-in-out infinite;animation-delay:-1.5s}.icon-container{transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,box-shadow .3s}.card:hover .icon-container,.group:hover .icon-container{transform:scale(1.1) rotate(-3deg);background:#4ade8024!important;box-shadow:0 0 20px #4ade8033}.link-arrow{transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.group:hover .link-arrow,a:hover .link-arrow{transform:translate(3px)}.section-glow{position:relative}.section-glow:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:200px;height:1px;background:radial-gradient(ellipse at center,rgba(74,222,128,.3),transparent)}.stagger-children>*{opacity:0;transform:translateY(12px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}.stagger-children.visible>*:nth-child(1){transition-delay:0ms;opacity:1;transform:none}.stagger-children.visible>*:nth-child(2){transition-delay:60ms;opacity:1;transform:none}.stagger-children.visible>*:nth-child(3){transition-delay:.12s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(4){transition-delay:.18s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(5){transition-delay:.24s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(6){transition-delay:.3s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(7){transition-delay:.36s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(8){transition-delay:.42s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(9){transition-delay:.48s;opacity:1;transform:none}.stagger-children.visible>*:nth-child(10){transition-delay:.54s;opacity:1;transform:none}.magnetic-hover{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.magnetic-hover:hover{transform:scale(1.03)}.magnetic-hover:active{transform:scale(.97)}.reveal-line{transform-origin:top;animation:reveal-line 1.2s cubic-bezier(.16,1,.3,1) forwards}.nav-link{position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:1.5px;background:#4ade80;border-radius:1px;transition:width .25s cubic-bezier(.16,1,.3,1),left .25s cubic-bezier(.16,1,.3,1)}.nav-link:hover:after{width:60%;left:20%}.grain-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E")}.scroll-narrative-thread{position:fixed;top:0;right:18px;width:2px;height:100vh;z-index:90;pointer-events:none;background:#ffffff0a}.scroll-narrative-thread-bar{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:top center;transform:scaleY(0);background:linear-gradient(to bottom,#4ade8026,#4ade80d9);box-shadow:0 0 12px #4ade8059}.experience-year-scrub{position:absolute;right:8%;top:50%;transform:translateY(-50%);font-family:var(--font-display, inherit);font-size:clamp(120px,18vw,220px);font-weight:700;line-height:1;color:#4ade800f;letter-spacing:-.04em}.experience-chapter{will-change:transform,opacity}.writing-scroll-progress{height:2px;background:#ffffff0f;border-radius:999px;overflow:hidden}.writing-scroll-progress-bar{height:100%;width:100%;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,#4ade8033,#4ade80e6)}.writing-gallery-card{will-change:transform;transition:transform .35s ease,box-shadow .35s ease}.writing-gallery-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 16px 40px -20px #4ade8040}.section-parallax-glow{position:absolute;top:-20%;right:-10%;bottom:-20%;left:-10%;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 30%,rgba(74,222,128,.06),transparent 60%)}.section-motion>*:not(.section-parallax-glow){position:relative;z-index:1}.retro-boot-hint:hover{text-shadow:0 0 8px rgba(74,222,128,.35)}@media (max-width: 1023px){.scroll-narrative-thread,.experience-year-scrub,.retro-boot-hint{display:none}}main section{max-width:100%;overflow-x:clip}.writing-cinematic,.experience-cinematic{overflow-x:clip;max-width:100%}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:left-0:before{content:var(--tw-content);left:0}.before\:text-green-400:before{content:var(--tw-content);--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.before\:content-\[\'•\'\]:before{--tw-content: "•";content:var(--tw-content)}.hover\:scale-110:hover{--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))}.hover\:border-green-400\/30:hover{border-color:#4ade804d}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.hover\:text-green-300:hover{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.hover\:text-green-400:hover{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-\[0_0_12px_rgba\(74\,222\,128\,0\.15\)\]:hover{--tw-shadow: 0 0 12px rgba(74,222,128,.15);--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)}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-green-400:focus-visible{outline-color:#4ade80}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:translate-x-0{--tw-translate-x: 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))}.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\.06\]{--tw-scale-x: 1.06;--tw-scale-y: 1.06;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\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-green-400\/80{color:#4ade80cc}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group\/link:hover .group-hover\/link\:opacity-100{opacity:1}.group:hover .group-hover\:shadow-\[0_0_12px_rgba\(74\,222\,128\,0\.3\)\]{--tw-shadow: 0 0 12px rgba(74,222,128,.3);--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)}.group:hover .group-hover\:shadow-\[0_0_16px_rgba\(74\,222\,128\,0\.3\)\]{--tw-shadow: 0 0 16px rgba(74,222,128,.3);--tw-shadow-colored: 0 0 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)}@media (min-width: 640px){.sm\:order-none{order:0}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:hidden{display:none}.sm\:w-auto{width:auto}.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-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-stretch{align-items:stretch}.sm\:justify-start{justify-content:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:min-h-\[460px\]{min-height:460px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:pl-\[max\(1\.5rem\,calc\(\(100vw-64rem\)\/2\+1\.5rem\)\)\]{padding-left:max(1.5rem,calc((100vw - 64rem)/2 + 1.5rem))}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width: 1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}.framework-journey-cinematic{position:relative}.framework-journey-pin{position:relative;height:100vh;overflow:hidden;display:flex;align-items:center;background:#ffffff03;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.framework-journey-scanlines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px);opacity:.4}.framework-journey-hud{position:absolute;top:1.5rem;left:50%;transform:translate(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:.65rem}.framework-journey-tracker{display:flex;align-items:baseline;gap:.35rem;font-family:ui-monospace,monospace;font-size:.75rem;letter-spacing:.08em}.framework-journey-tracker-num{color:#4ade80;font-weight:700}.framework-journey-tracker-sep,.framework-journey-tracker-total{color:#ffffff59}.framework-journey-tracker-title{margin-left:.5rem;color:#4ade80bf;font-weight:600}.framework-journey-rail{display:flex;gap:.35rem}.framework-journey-rail-segment{width:2.5rem;height:3px;border-radius:999px;background:#ffffff1a;transition:background .3s,box-shadow .3s}.framework-journey-rail-segment.is-active{background:#4ade8059}.framework-journey-rail-segment.is-current{background:#4ade80d9;box-shadow:0 0 12px #4ade8073}.framework-journey-stage{position:relative;min-height:420px}.framework-journey-frame{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center}.framework-journey-kicker{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:#4ade80;margin-bottom:.75rem}.framework-journey-title{font-family:var(--font-display, inherit);font-weight:700;color:#fff;font-size:clamp(1.35rem,3vw,2rem);line-height:1.25;margin-bottom:1rem;max-width:42rem}.framework-journey-lead{color:#9ca3af;font-size:clamp(.9rem,1.5vw,1.05rem);line-height:1.65;max-width:38rem;margin-bottom:1.5rem}.framework-journey-scroll-hint{font-family:ui-monospace,monospace;font-size:.72rem;color:#4ade808c;letter-spacing:.06em}.framework-journey-step-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}@media (min-width: 768px){.framework-journey-step-grid{grid-template-columns:1fr 1fr;gap:3rem}}.framework-journey-narrative{font-style:italic;color:#d1d5db;line-height:1.6;margin-bottom:.75rem}.framework-journey-description{color:#6b7280;line-height:1.6;font-size:.9rem}.framework-journey-artifact-wrap{position:relative;height:280px;border:1px solid rgba(74,222,128,.18);border-radius:12px;background:radial-gradient(120% 90% at 50% 0%,rgba(74,222,128,.07),transparent 55%),radial-gradient(110% 110% at 50% 110%,rgba(74,222,128,.05),transparent 50%),#020604;box-shadow:inset 0 0 50px #000000b3,0 0 40px -14px #4ade8040;overflow:hidden}.framework-journey-artifact-wrap--lite{height:180px}.framework-artifact-canvas{width:100%;height:100%;display:block}.framework-journey-finale{align-items:center;text-align:center}.framework-journey-loop-canvas-wrap{width:min(560px,92%);height:260px;margin:0 auto 1rem}.framework-journey-narrate-btn{display:inline-flex;align-items:center;gap:.5rem;align-self:flex-start;margin-top:1.5rem;padding:.55rem 1.1rem;border-radius:999px;font-family:ui-monospace,monospace;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#4ade80;background:#4ade8014;border:1px solid rgba(74,222,128,.3);cursor:pointer;transition:background .25s,border-color .25s,box-shadow .25s}.framework-journey-narrate-btn:hover{background:#4ade8024;border-color:#4ade8080;box-shadow:0 0 20px -6px #4ade8080}.framework-journey-mute{position:absolute;bottom:1.5rem;right:1.5rem;z-index:30;display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:999px;color:#4ade80;background:#00000080;border:1px solid rgba(74,222,128,.25);cursor:pointer;transition:border-color .25s,box-shadow .25s}.framework-journey-mute:hover{border-color:#4ade8080;box-shadow:0 0 16px -4px #4ade8073}.framework-journey-loop-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:500;color:#4ade80;padding:.35rem .85rem;border-radius:999px;background:#4ade8014;border:1px solid rgba(74,222,128,.2);margin-bottom:1rem}.framework-journey-finale-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-bottom:1.25rem}.framework-journey-cta{justify-content:center}.framework-journey-lite-steps{display:flex;flex-direction:column;gap:1rem}.framework-journey-lite-step-wrap{display:flex;gap:1rem}.framework-journey-lite-num{font-family:ui-monospace,monospace;font-size:.65rem;font-weight:700;color:#4ade80;padding:.15rem .4rem;border-radius:999px;background:#4ade801a;border:1px solid rgba(74,222,128,.2)}.framework-journey-lite-icon{width:2rem;height:2rem;border-radius:.55rem;display:flex;align-items:center;justify-content:center;background:#4ade8014;border:1px solid rgba(74,222,128,.14)}.framework-journey-lite-step{margin-bottom:1rem}.project-card-stat{border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:1rem}.project-card-stat-value{display:block;font-family:var(--font-display, inherit);font-weight:700;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1;color:#4ade80;text-shadow:0 0 24px rgba(74,222,128,.35);margin-bottom:.35rem}.project-card-stat-label{display:block;font-size:.72rem;color:#6b7280;letter-spacing:.02em;line-height:1.4}.crt-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;overflow:hidden}.crt-layer{position:absolute;top:0;right:0;bottom:0;left:0}.crt-layer--base{z-index:0}.crt-screen{overflow:hidden}.crt-curvature{position:absolute;top:0;right:0;bottom:0;left:0;transform:perspective(900px) rotateX(2deg);transform-origin:center center}.crt-phosphor{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,rgba(255,255,255,.04),transparent 70%);mix-blend-mode:screen}.crt-scanlines{z-index:2;background:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0px,rgba(255,255,255,.06) 1px,transparent 1px,transparent 3px);opacity:1}.crt-scanlines-moving{z-index:3;background:repeating-linear-gradient(0deg,rgba(255,255,255,.08) 0px,rgba(255,255,255,.08) 1px,transparent 1px,transparent 4px);animation:crt-scan 8s linear infinite;opacity:.55;mix-blend-mode:soft-light}.crt-static{z-index:4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:240px 240px;mix-blend-mode:soft-light;opacity:0}.crt-static--idle{opacity:.12}.crt-static--burst{animation:crt-static-burst .13s steps(3,end)}@keyframes crt-static-burst{0%{opacity:.75;background-position:0 0}40%{opacity:.5;background-position:80px -40px}70%{opacity:.65;background-position:-60px 60px}to{opacity:0}}@keyframes crt-scan{0%{transform:translateY(0)}to{transform:translateY(12px)}}.crt-flicker{z-index:1;opacity:.025;animation:crt-flicker .12s infinite alternate;mix-blend-mode:overlay}@keyframes crt-flicker{0%{opacity:.015}to{opacity:.045}}.crt-vignette{z-index:5;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.72) 100%)}.retro-mode-overlay{position:fixed;isolation:isolate}.retro-mode-overlay.retro-poweron{animation:retro-poweron .7s ease-out forwards}.retro-mode-overlay.retro-poweroff{animation:retro-poweroff .6s ease-in forwards}@keyframes retro-poweron{0%{transform:scaleY(.002);filter:brightness(3);opacity:1}40%{transform:scaleY(.002);filter:brightness(2)}to{transform:scaleY(1);filter:brightness(1)}}@keyframes retro-poweroff{0%{transform:scaleY(1);filter:brightness(1);opacity:1}to{transform:scaleY(.002);filter:brightness(0);opacity:0}}.retro-dungeon-boot{display:flex;align-items:center;justify-content:center;background:#000}.retro-dungeon-boot__text{margin:0;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,2vw,.6rem);color:#c0c0c0d9;letter-spacing:.06em;animation:retro-dungeon-boot-pulse 1.4s ease-in-out infinite}@keyframes retro-dungeon-boot-pulse{0%,to{opacity:.55}50%{opacity:1}}.retro-terminal{--retro-bg: #000000;--retro-fg: #c0c0c0;--retro-fg-bright: #e0e0e0;--retro-dim: #a0a0a0;color:var(--retro-fg);cursor:text}.retro-terminal-header{color:var(--retro-dim)}.retro-terminal-divider{background:#a0a0a059}.terminal-art-slot{margin:0 auto .75rem;display:flex;justify-content:center;max-width:100%}.retro-hud-frame{margin:0 auto .6rem;width:min(100%,64rem);padding:.5rem .65rem;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.7rem,1.5vw,.85rem);color:var(--retro-fg, #c0c0c0);background:#000000b8;border:1px solid rgba(192,192,192,.28);border-radius:4px;box-shadow:inset 0 0 24px #00000059}.retro-hud-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;white-space:nowrap}.retro-hud-row--secondary{margin-top:.35rem;padding-top:.35rem;border-top:1px solid rgba(192,192,192,.15)}.retro-hud__portrait{width:28px;height:36px;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;border:1px solid rgba(192,192,192,.35);border-radius:2px;flex-shrink:0}.retro-hud__timer{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.55rem}.retro-header-timer{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.6rem,1.9vw,.78rem);letter-spacing:.06em;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.55),0 0 18px rgba(255,255,255,.25)}.retro-header-timer--pulse{display:inline-block;animation:retro-hud-timer-pulse .55s ease-out}@keyframes retro-hud-timer-pulse{0%{transform:scale(1);text-shadow:none}40%{transform:scale(1.18);text-shadow:0 0 10px rgba(255,255,255,.85),0 0 18px rgba(255,255,255,.45)}to{transform:scale(1);text-shadow:none}}.retro-hud__timer--pulse{display:inline-block;animation:retro-hud-timer-pulse .55s ease-out}@keyframes retro-hud-timer-pulse-reduced{0%{opacity:.85}50%{opacity:1}to{opacity:1}}@media (prefers-reduced-motion: reduce){.retro-hud__timer--pulse,.retro-header-timer--pulse{animation:retro-hud-timer-pulse-reduced .2s ease-out;transform:none}}.retro-hud-low{color:#fff;text-shadow:0 0 8px rgba(255,255,255,.55)}@media (max-width: 639px){.retro-hud__ext{display:none}}.retro-battle-status{margin:0 auto .5rem;width:min(100%,64rem);padding:.4rem .65rem;background:#000000c7;border:1px solid rgba(192,192,192,.35);border-radius:4px;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.65rem,1.4vw,.78rem)}.retro-battle-status--boss{border-color:#ffffff80;box-shadow:0 0 12px #ffffff14}.retro-battle-status__title{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,1.2vw,.52rem);color:#fff;margin-bottom:.25rem}.retro-battle-status__hp{font-family:Menlo,ui-monospace,monospace;color:var(--retro-fg, #c0c0c0);white-space:nowrap}.retro-battle-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 auto .6rem}.retro-battle-menu button{min-height:44px;padding:.4rem 1rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,1.6vw,.6rem);color:var(--retro-fg-bright, #e0e0e0);background:#0009;border:1px solid rgba(192,192,192,.4);border-radius:3px;cursor:pointer}.retro-battle-menu button:hover:not(:disabled),.retro-battle-menu button:focus-visible{border-color:#fff;color:#fff;outline:none}.retro-battle-menu button:disabled{opacity:.35;cursor:default}.retro-battle-menu__btn--active{color:#fff;border-color:#ffffffbf;box-shadow:0 0 10px #ffffff59,inset 0 0 12px #ffffff14}.retro-action-chrome{display:flex;flex-direction:column;gap:.35rem}.retro-actions-toggle{width:100%;min-height:44px;padding:.45rem .75rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,2.5vw,.52rem);letter-spacing:.06em;color:var(--retro-fg-bright, #e0e0e0);background:#000000b8;border:1px solid rgba(192,192,192,.45);border-radius:4px;cursor:pointer}.retro-actions-toggle--open{color:#fff;border-color:#ffffffa6}.retro-actions-toggle:hover,.retro-actions-toggle:focus-visible{border-color:#fff;color:#fff;outline:none}.retro-battle-stage-wrap{width:100%;max-width:64rem;margin:0 auto;min-height:0}.retro-battle-stage{width:100%;min-height:0}.retro-battle-stage__art{min-width:0;min-height:0}.retro-battle-stage__panel{display:flex;flex-direction:column;min-height:0;min-width:0}@media (max-width: 767px){.retro-battle-stage-wrap,.retro-battle-stage,.retro-battle-stage__panel{display:contents}.retro-battle-stage-wrap>.retro-hud-frame{order:1}.retro-battle-stage__panel .retro-battle-status{order:2}.retro-battle-stage__art{order:3}.retro-battle-stage__panel .retro-terminal-io{order:4}.retro-battle-stage__dock{order:5}.retro-battle-menu{margin:0;gap:.35rem}.retro-battle-menu button{flex:1 1 calc(50% - .2rem);max-width:calc(50% - .175rem);padding:.35rem .45rem;font-size:clamp(.38rem,2.6vw,.48rem)}.retro-cmd-bar{max-height:28vh;overflow-y:auto}}@media (min-width: 768px){.retro-battle-stage-wrap{display:flex;flex-direction:column;flex:1 1 auto;gap:.5rem}.retro-battle-stage-wrap>.retro-hud-frame{width:100%;margin:0;flex-shrink:0}.retro-battle-stage{display:flex;flex:1 1 auto;gap:.75rem;align-items:stretch;min-height:0}.retro-battle-stage__art{flex:1 1 0;align-self:flex-start;display:flex;flex-direction:column;justify-content:flex-start}.retro-battle-stage__art .terminal-art-wrap{flex:0 0 auto;display:flex;flex-direction:column;justify-content:flex-start}.retro-battle-stage__art .terminal-art-slot{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:center;margin-bottom:0}.retro-battle-stage__art .terminal-art-img{max-height:min(52vh,560px);max-width:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain}.retro-battle-stage__panel{flex:1 1 0;min-width:0}.retro-battle-stage__panel .retro-battle-status{width:100%;margin-bottom:.4rem}.retro-battle-stage__panel .retro-battle-menu{margin-bottom:.5rem}.retro-battle-stage__panel .retro-terminal-io{flex:1 1 auto;min-height:0}.retro-battle-stage__panel .retro-terminal-pane{flex:1 1 auto;min-height:10rem;border:1px solid rgba(192,192,192,.22);border-radius:4px;padding:.5rem .65rem;background:#00000073}.retro-battle-stage__dock{width:100%;flex-shrink:0}.retro-battle-stage__dock .retro-terminal-dock{position:static;margin-top:0;box-shadow:0 -10px 24px #000000d9;border-top:1px solid rgba(192,192,192,.28)}}.retro-sys-menu{position:relative;z-index:20}.retro-sys-menu__gear{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:.35rem .5rem;font-size:1.1rem;line-height:1;color:var(--retro-fg-bright, #e0e0e0);background:#000000b8;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer}.retro-sys-menu__gear:hover,.retro-sys-menu__gear:focus-visible{border-color:#ffffff8c;outline:none}.retro-sys-menu__dropdown{position:absolute;top:calc(100% + .35rem);right:0;min-width:11rem;padding:.35rem;background:#080808f5;border:1px solid rgba(192,192,192,.35);border-radius:4px;box-shadow:0 8px 24px #000000a6}.retro-sys-menu__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:44px;padding:.5rem .65rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,1.5vw,.52rem);letter-spacing:.05em;color:var(--retro-fg, #c0c0c0);background:transparent;border:none;border-radius:3px;cursor:pointer;text-align:left}.retro-sys-menu__item:hover,.retro-sys-menu__item:focus-visible{color:#fff;background:#ffffff14;outline:none}.retro-sys-menu__item--exit{color:#ffa0a0f2}.retro-sys-menu__badge{font-family:Menlo,ui-monospace,monospace;font-size:.65rem;letter-spacing:.06em;color:#a0ffa0f2}.retro-sys-menu__badge--off{color:#ffa0a0e6}.retro-sys-menu__audio{position:absolute;top:calc(100% + .35rem);right:0;z-index:21}.retro-audio-settings{width:min(18rem,calc(100vw - 2rem));padding:.75rem .85rem;font-family:Menlo,ui-monospace,monospace;font-size:.72rem;color:var(--retro-fg, #c0c0c0);background:#080808f0;border:1px solid rgba(192,192,192,.35);border-radius:6px;box-shadow:0 8px 24px #0000008c}.retro-audio-settings__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem;padding-bottom:.45rem;border-bottom:1px solid rgba(192,192,192,.2)}.retro-audio-settings__title{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.45rem;letter-spacing:.04em;color:var(--retro-fg-bright, #e0e0e0)}.retro-audio-settings__close{padding:.15rem .35rem;font-size:.75rem;line-height:1;color:#aaa;background:transparent;border:none;cursor:pointer}.retro-audio-settings__close:hover{color:#fff}.retro-audio-settings__row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:.15rem .5rem;align-items:center;margin-bottom:.55rem}.retro-audio-settings__label{display:flex;flex-direction:column;gap:.1rem;grid-column:1}.retro-audio-settings__hint{font-size:.62rem;color:#c0c0c08c}.retro-audio-settings__slider{grid-column:1 / -1;width:100%;accent-color:#c0c0c0;cursor:pointer}.retro-audio-settings__pct{grid-column:2;grid-row:1;min-width:2.25rem;text-align:right;font-variant-numeric:tabular-nums;color:#c0c0c0bf}.retro-audio-settings__reset{width:100%;margin-top:.35rem;padding:.45rem .5rem;font-family:inherit;font-size:.68rem;color:var(--retro-fg, #c0c0c0);background:#00000073;border:1px solid rgba(192,192,192,.3);border-radius:4px;cursor:pointer}.retro-audio-settings__reset:hover{border-color:#ffffff8c;color:#fff}.retro-dmg-float{position:absolute;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;pointer-events:none;z-index:20;animation:retro-dmg-rise .7s ease-out both}.retro-dmg-float--dealt{top:24%;right:28%;font-size:clamp(1rem,3vw,1.6rem);color:#fff;text-shadow:0 0 10px rgba(255,255,255,.6),0 2px 2px rgba(0,0,0,.9)}.retro-dmg-float--taken{bottom:14%;left:30%;font-size:clamp(.8rem,2.4vw,1.2rem);color:#e0e0e0;text-shadow:0 0 10px rgba(255,255,255,.6),0 2px 2px rgba(0,0,0,.9)}@keyframes retro-dmg-rise{0%{opacity:0;transform:translateY(6px) scale(.8)}18%{opacity:1;transform:translateY(0) scale(1.15)}35%{transform:translateY(-4px) scale(1)}to{opacity:0;transform:translateY(-26px) scale(1)}}.retro-encounter-banner{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);z-index:25;max-width:94%;padding:.7rem 1.2rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.6rem,2.2vw,1rem);line-height:1.5;text-align:center;overflow-wrap:break-word;color:#fff;background:#000000d9;border-top:2px solid rgba(255,255,255,.7);border-bottom:2px solid rgba(255,255,255,.7);white-space:nowrap;pointer-events:none;animation:retro-encounter-flash 1.4s steps(1) both}@keyframes retro-encounter-flash{0%,14%,28%{opacity:1;filter:invert(1)}7%,21%{opacity:1;filter:invert(0)}35%,90%{opacity:1;filter:invert(0)}to{opacity:0}}.terminal-art-img{display:block;max-width:min(100%,64rem);max-height:40vh;-o-object-fit:contain;object-fit:contain;animation:retro-art-fade .25s ease both}.terminal-art-img,.dungeon-map-img,.retro-win-image,.retro-title-hero,.retro-death-image{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 90%,transparent 100%);-webkit-mask-composite:source-in,xor;mask-composite:intersect}@keyframes retro-art-fade{0%{opacity:0}to{opacity:1}}.terminal-art-slot--shake{animation:retro-art-shake .35s ease-out both}@keyframes retro-art-shake{0%{transform:translate(0)}15%{transform:translate(-10px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(4px)}75%{transform:translate(-2px)}to{transform:translate(0)}}.retro-terminal-pane{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(192,192,192,.55) rgba(160,160,160,.12);scrollbar-gutter:stable;padding-bottom:.5rem}.retro-terminal-io{position:relative;min-height:0}.retro-terminal-dock{position:sticky;bottom:0;z-index:5;margin-top:auto;padding-bottom:env(safe-area-inset-bottom);background:var(--retro-bg, #000000);border-top:1px solid rgba(192,192,192,.28);box-shadow:0 -10px 24px #000000d9}.retro-terminal-input-bar{display:flex;align-items:flex-end;gap:.5rem;padding:.5rem 0 .15rem}.retro-terminal-input-line{flex:1;min-width:0}.retro-kb-toggle{flex-shrink:0;min-width:44px;min-height:44px;padding:0 .5rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.5rem;letter-spacing:.08em;color:var(--retro-fg, #c0c0c0);background:#0009;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer}.retro-kb-toggle--on{color:#000;background:#e0e0e0;border-color:#fff}.retro-cmd-bar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.5rem 0 .1rem}.retro-cmd-chip{min-height:44px;padding:.4rem .7rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,1.6vw,.55rem);line-height:1.4;letter-spacing:.05em;color:var(--retro-fg, #c0c0c0);background:#0009;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer}.retro-cmd-chip:hover:not(:disabled),.retro-cmd-chip:focus-visible{color:#fff;border-color:#ffffffa6;outline:none}.retro-cmd-chip:disabled{opacity:.35;cursor:default}.retro-cmd-chip--skip{color:var(--retro-fg-bright, #e0e0e0);border-style:dashed}.retro-terminal-pane::-webkit-scrollbar{width:10px}.retro-terminal-pane::-webkit-scrollbar-thumb{background:#c0c0c080;border-radius:4px;border:2px solid #000}.retro-terminal-pane::-webkit-scrollbar-track{background:#a0a0a01f}.terminal-flash--damage{animation:retro-damage-flash .24s ease-out both}@keyframes retro-damage-flash{0%{box-shadow:inset 0 0 #fff0}30%{box-shadow:inset 0 0 48px #ffffff59;filter:brightness(1.25)}to{box-shadow:inset 0 0 #fff0;filter:brightness(1)}}.retro-terminal-prompt{color:var(--retro-fg-bright)}.retro-terminal-caret{background:#c0c0c0e6;color:#000;text-shadow:none}.retro-terminal-caret-blink{animation:retro-caret-blink 1.06s steps(1) infinite}@keyframes retro-caret-blink{0%,49%{background:#c0c0c0e6;color:#000}50%,to{background:transparent;color:var(--retro-fg, #c0c0c0)}}.retro-title-screen{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:1.25rem 1rem 1.5rem;background:#000;cursor:pointer;overflow:visible}.retro-title-art{flex-shrink:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(.35rem,1.5vh,.75rem);width:min(92vw,780px);max-height:min(72vh,640px);overflow:visible}.retro-title-hero{display:block;width:100%;height:auto;flex-shrink:1;min-height:0;max-height:min(58vh,540px);-o-object-fit:contain;object-fit:contain;animation:retro-art-fade .4s ease both}.retro-title-logo-wrap{position:relative;display:inline-block;line-height:0;flex-shrink:0;z-index:1;overflow:visible}.retro-title-fire{position:absolute;pointer-events:none;overflow:visible}.retro-title-fire--pixel{z-index:0;top:-38%;left:31%;right:31%;bottom:26%}.retro-title-fire__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;opacity:.9;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(ellipse 78% 94% at 50% 78%,#000 58%,rgba(0,0,0,.7) 78%,transparent 98%);mask-image:radial-gradient(ellipse 78% 94% at 50% 78%,#000 58%,rgba(0,0,0,.7) 78%,transparent 98%)}.retro-title-fire__embers{position:absolute;top:104%;left:-68%;right:-68%;height:80%;overflow:visible}.retro-title-fire__ember{position:absolute;top:0;width:2px;height:2px;background:#ccc;image-rendering:pixelated;image-rendering:crisp-edges;opacity:0;animation:retro-title-ember-fall 2.2s linear infinite}.retro-title-fire__sparks{position:absolute;top:34%;left:-82%;right:-82%;height:89%;overflow:visible}.retro-title-fire__spark{position:absolute;background:#fff;image-rendering:pixelated;image-rendering:crisp-edges;opacity:0;box-shadow:0 0 4px #fff9;animation:retro-title-spark-shoot 1.6s steps(6) infinite}@keyframes retro-title-spark-shoot{0%{transform:translate(0);opacity:0}8%{opacity:1}55%{opacity:.85}to{transform:translate(var(--spark-x, 20px),var(--spark-y, -30px));opacity:0}}@keyframes retro-title-ember-fall{0%{transform:translateY(-4px) translate(0);opacity:0}10%{opacity:.8}70%{opacity:.45}to{transform:translateY(72px) translate(var(--ember-drift, 0px));opacity:0}}.retro-title-logo{position:relative;z-index:1;flex-shrink:0;width:min(58vw,220px);height:auto;-o-object-fit:contain;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;animation:retro-title-bob 2.8s ease-in-out infinite}@media (min-width: 768px){.retro-title-art{width:min(88vw,860px);max-height:min(76vh,680px);gap:clamp(.5rem,2vh,1rem)}.retro-title-hero{max-height:min(62vh,580px)}.retro-title-logo{width:min(42vw,280px)}.retro-title-fire__canvas{opacity:.84}}@media (min-width: 1024px){.retro-title-art{width:min(82vw,920px);max-height:min(78vh,720px)}.retro-title-hero{max-height:min(66vh,620px)}.retro-title-logo{width:min(36vw,300px)}}@keyframes retro-title-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.retro-title-press{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.8rem;color:var(--retro-fg, #c0c0c0)}.retro-title-start{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.9rem;color:var(--retro-fg-bright, #e0e0e0);background:#000000d9;border:2px solid rgba(192,192,192,.7);border-radius:.25rem;padding:.9rem 2.2rem;min-height:44px;cursor:pointer}.retro-title-start:active{background:#c0c0c033}.retro-terminal-hidden-input{position:absolute;width:1px;height:1px;opacity:0;border:none;padding:0;overflow:hidden;white-space:nowrap}.retro-audio-settings__close{min-width:44px;min-height:44px}.retro-audio-settings__reset{min-height:44px}.retro-audio-settings__slider{height:28px;margin:.2rem 0}@media (max-width: 480px){.retro-hud-frame{padding:.4rem .5rem;font-size:.62rem;margin-bottom:.45rem}.retro-hud-row{gap:.3rem .75rem}}@media (max-height: 700px){.terminal-art-img,.dungeon-map-img{max-height:30vh}.dungeon-inventory-wrap{max-height:34vh}}@media (prefers-reduced-motion: reduce){.retro-terminal-caret-blink,.crt-scanlines-moving,.crt-static--burst,.crt-static--idle,.crt-flicker,.retro-mode-overlay.retro-poweron,.retro-mode-overlay.retro-poweroff,.terminal-art-img,.terminal-art-slot--shake,.retro-title-logo,.retro-title-hero,.retro-title-fire__ember,.retro-title-fire__spark,.terminal-flash--damage,.retro-dmg-float,.retro-encounter-banner{animation:none}.crt-static--idle{opacity:0}}.dungeon-map-wrap{--map-chip-active-bg: #ffffff;--map-chip-active-fg: #000000;--map-chip-passive-bg: #000000;--map-chip-passive-fg: #cfcfcf;--map-chip-silver: #c0c0c0;--map-dim: rgba(160, 160, 160, .45);--map-active-ring: 0 0 0 2px #000000;--map-white-glow: 0 0 10px rgba(255, 255, 255, .55);margin:0 auto .75rem;width:-moz-fit-content;width:fit-content;max-width:100%}.dungeon-map{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%}.dungeon-map-stairs{position:absolute;transform:translate(-50%,-50%);z-index:2;display:inline-flex;align-items:center;justify-content:center;padding:.2rem .45rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(8px,1.35vw,13px);line-height:1.2;letter-spacing:.06em;white-space:nowrap;pointer-events:none;border-radius:3px;border:1px solid transparent;box-shadow:0 2px 10px #000000a6}.dungeon-map-stairs--sealed{color:var(--map-chip-passive-fg);background:var(--map-chip-passive-bg);border:1px solid var(--map-chip-silver);box-shadow:var(--map-active-ring),0 2px 10px #000000a6}.dungeon-map-stairs--open{color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),var(--map-white-glow),0 2px 10px #000000a6;animation:dungeon-map-stairs-pulse 1.6s ease-in-out infinite}.dungeon-map-stairs--tappable{cursor:pointer}.dungeon-map-stairs--tappable:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.dungeon-map-stairs--tappable:hover,.dungeon-map-stairs--tappable:focus-visible{color:#000;background:#fff;outline:none}@keyframes dungeon-map-stairs-pulse{0%,to{box-shadow:var(--map-active-ring),0 0 8px #ffffff59,0 2px 10px #000000a6}50%{box-shadow:var(--map-active-ring),0 0 16px #ffffffbf,0 0 28px #ffffff59,0 2px 10px #000000a6}}.dungeon-map-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:.2rem;padding:.12rem .28rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(5px,.95vw,9px);line-height:1;letter-spacing:.03em;border-radius:2px;border:1px solid transparent;vertical-align:middle;box-shadow:0 1px 6px #0000008c}.dungeon-map-badges{display:inline-flex;align-items:center;gap:.15rem;margin-left:.15rem}.dungeon-map-badge--you{margin-right:.2rem;margin-left:0;color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),0 1px 6px #0000008c}.dungeon-map-badge--enemy{font-weight:700;color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),0 1px 6px #0000008c}.dungeon-map-badge--lock{color:var(--map-chip-passive-fg);background:var(--map-chip-passive-bg);border:1px dashed var(--map-chip-silver);box-shadow:var(--map-active-ring),0 1px 6px #0000008c}.dungeon-map-legend{margin-top:.65rem;padding:.65rem .75rem;max-width:min(100%,64rem);font-family:Menlo,ui-monospace,monospace;font-size:clamp(.64rem,1.45vw,.74rem);color:#d2d2d2eb;background:#000000b8;border:1px solid rgba(192,192,192,.28);border-radius:4px;box-shadow:inset 0 0 24px #00000059}.dungeon-map-legend__title{margin-bottom:.45rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.44rem,1.25vw,.54rem);letter-spacing:.04em;color:var(--retro-fg-bright, #e0e0e0)}.dungeon-map-legend__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.35rem .85rem;margin:0;padding:0;list-style:none}.dungeon-map-legend__list li{display:flex;align-items:center;gap:.55rem}.dungeon-map-legend__symbol{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:3.1rem;min-height:1.35rem;padding:.28rem .45rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.44rem,1.15vw,.56rem);line-height:1;letter-spacing:.04em;border-radius:3px;border:1px solid transparent;box-shadow:0 2px 8px #00000080}.dungeon-map-legend__symbol--you{color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),0 2px 8px #00000080}.dungeon-map-legend__symbol--walk{color:#fff;background:transparent;border:none;box-shadow:none;text-decoration:underline;text-underline-offset:3px}.dungeon-map-legend__symbol--stairs-sealed{color:var(--map-chip-passive-fg);background:var(--map-chip-passive-bg);border:1px solid var(--map-chip-silver);box-shadow:var(--map-active-ring),0 2px 8px #00000080}.dungeon-map-legend__symbol--stairs-open{color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),var(--map-white-glow),0 2px 8px #00000080}.dungeon-map-legend__symbol--lock{color:var(--map-chip-passive-fg);background:var(--map-chip-passive-bg);border:1px dashed var(--map-chip-silver);box-shadow:var(--map-active-ring),0 2px 8px #00000080}.dungeon-map-legend__symbol--enemy{color:var(--map-chip-active-fg);background:var(--map-chip-active-bg);border:1px solid var(--map-chip-active-fg);box-shadow:var(--map-active-ring),0 2px 8px #00000080}.dungeon-map-legend__hint{margin:.45rem 0 0;padding-top:.4rem;border-top:1px solid rgba(192,192,192,.15);font-size:clamp(.6rem,1.3vw,.68rem);color:#c0c0c0bf}.dungeon-map-legend__hint strong{color:var(--retro-fg-bright, #e8e8e8);font-weight:600}.dungeon-map-legend__hint--open{color:#ffffffe6}.dungeon-map-img{display:block;max-width:min(100%,64rem);max-height:40vh;-o-object-fit:contain;object-fit:contain;animation:retro-art-fade .25s ease both}.dungeon-map-label{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 4px;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(6px,1.1vw,11px);line-height:1.3;letter-spacing:.04em;white-space:nowrap;text-align:center;background:transparent;border:none;pointer-events:none}.dungeon-map-label--pill{padding:2px 6px;background:#000000d1;border:1px solid rgba(160,160,160,.45);border-radius:2px;font-size:clamp(7px,1.4vw,10px);line-height:1.35;text-shadow:none}.dungeon-map-label--pill.dungeon-map-label--current{color:#fff;border-color:#fff;background:#000000eb;animation:dungeon-map-pill-glow 1.6s ease-in-out infinite}@keyframes dungeon-map-pill-glow{0%,to{box-shadow:0 0 6px #ffffff59}50%{box-shadow:0 0 12px #ffffffa6}}.dungeon-map-label--pill.dungeon-map-label--adjacent{color:#fff;border-color:#fff9;cursor:pointer;pointer-events:auto;text-decoration:underline;text-underline-offset:3px}.dungeon-map-label--pill.dungeon-map-label--adjacent:hover,.dungeon-map-label--pill.dungeon-map-label--adjacent:focus-visible{color:#fff;border-color:#ffffffd9;background:#000000eb;outline:none}.dungeon-map-label--pill.dungeon-map-label--reachable{color:#ffffffd1;text-decoration:underline;text-underline-offset:3px}.dungeon-map-label--pill.dungeon-map-label--dim{color:var(--map-dim);background:#000000b8;border-color:#a0a0a040}@media (prefers-reduced-motion: reduce){.dungeon-map-img{animation:none}.dungeon-map-label--pill.dungeon-map-label--current{animation:none;box-shadow:0 0 10px #ffffff8c}}.dungeon-map-wrap--fullscreen{max-height:none;height:100%;min-height:0;width:100%;margin:0;display:flex;flex-direction:column;overflow-y:auto}.dungeon-map-wrap--fullscreen .dungeon-map{flex:1 1 auto;min-height:0;width:100%;max-width:100%}.dungeon-map-wrap--fullscreen .dungeon-map-img{width:100%;max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.dungeon-map-wrap--fullscreen .dungeon-map-legend{flex-shrink:0;margin-top:.35rem;padding:.5rem .65rem;max-width:100%}.dungeon-panel-stage--map-fullscreen{flex:1 1 auto;min-height:0;width:min(100%,64rem);margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.dungeon-panel-stage--map-fullscreen .dungeon-map-wrap--fullscreen{flex:1 1 auto;min-height:0}.dungeon-sheet-wrap{margin:0 auto .75rem;width:min(100%,64rem);max-height:min(46vh,30rem);overflow-y:auto;padding:.65rem .75rem;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.64rem,1.45vw,.74rem);color:#d2d2d2eb;background:#000000b8;border:1px solid rgba(192,192,192,.28);border-radius:4px;box-shadow:inset 0 0 24px #00000059;animation:retro-art-fade .25s ease both}.dungeon-sheet-wrap--fullscreen{max-height:none;height:100%;width:100%;margin:0;font-size:clamp(.75rem,1.7vw,.95rem);padding:1rem 1.25rem;position:relative}.dungeon-panel-stage--sheet-fullscreen{flex:1 1 auto;min-height:0;width:min(100%,64rem);margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.dungeon-panel-stage--sheet-fullscreen .dungeon-sheet-wrap--fullscreen{flex:1 1 auto;min-height:0}.dungeon-sheet-header{margin-bottom:.6rem;padding-bottom:.45rem;border-bottom:1px solid rgba(192,192,192,.2);font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.46rem,1.3vw,.58rem);letter-spacing:.04em;color:var(--retro-fg-bright, #e0e0e0)}.dungeon-sheet-body{display:flex;gap:.85rem;align-items:flex-start;min-height:0}.dungeon-sheet-left{flex-shrink:0;width:clamp(5rem,22vw,9rem);display:flex;flex-direction:column;gap:.35rem}.dungeon-sheet-portrait{margin:0;border:1px solid rgba(192,192,192,.28);border-radius:3px;overflow:hidden;background:#00000073}.dungeon-sheet-portrait img{display:block;width:100%;height:auto;filter:grayscale(1) contrast(1.05)}.dungeon-sheet-slot{padding:.28rem .4rem;font-size:clamp(.58rem,1.2vw,.68rem);background:#00000073;border:1px solid rgba(192,192,192,.22);border-radius:3px;color:#c0c0c0bf}.dungeon-sheet-slot--equipped{border-color:#ffffff8c;color:#e0e0e0f2}.dungeon-sheet-slot--empty{border-style:dashed;color:#a0a0a073}.dungeon-sheet-main{flex:1;min-width:0}.dungeon-sheet-footer{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin-top:.6rem;padding-top:.45rem;border-top:1px solid rgba(192,192,192,.2);font-variant-numeric:tabular-nums;color:#c0c0c0d9}@media (max-width: 480px){.dungeon-sheet-body{flex-direction:column}.dungeon-sheet-left{width:100%;flex-direction:row;flex-wrap:wrap;align-items:flex-start}.dungeon-sheet-portrait{width:clamp(5.5rem,38vw,8rem)}.dungeon-sheet-left .dungeon-sheet-slot{flex:1 1 100%}}@media (prefers-reduced-motion: reduce){.dungeon-sheet-wrap{animation:none}}.dungeon-inventory-hero-name{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.38rem,1vw,.46rem);letter-spacing:.05em;text-align:center;color:#c0c0c0bf}.dungeon-inventory-main{display:flex;flex-direction:column;gap:.45rem}.dungeon-inventory-identity{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.4rem,1.1vw,.5rem);letter-spacing:.05em;color:#c0c0c0bf}.dungeon-inventory-xp{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .6rem;font-variant-numeric:tabular-nums;color:#c0c0c0d9}.dungeon-inventory-xp__bar{letter-spacing:.06em;color:#fff}.dungeon-inventory-group{min-width:0}.dungeon-inventory-section__title{margin:0 0 .3rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.4rem,1.1vw,.5rem);letter-spacing:.05em;color:#c0c0c0bf}.dungeon-inventory-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding:.14rem 0}.dungeon-inventory-row__name{min-width:0;overflow-wrap:break-word;color:#e0e0e0f2}.dungeon-inventory-row__value{flex-shrink:0;font-variant-numeric:tabular-nums;color:#c0c0c0cc}.dungeon-inventory-row__value--gold{color:#fff}.dungeon-inventory-row--selected{padding:.14rem .35rem;border:1px solid rgba(255,255,255,.35);border-radius:3px;box-shadow:0 0 8px #ffffff26}.dungeon-inventory-row--selected .dungeon-inventory-row__name{color:#fff;text-shadow:0 0 8px rgba(255,255,255,.35)}.dungeon-inventory-row--missing .dungeon-inventory-row__name,.dungeon-inventory-row--missing .dungeon-inventory-row__value{color:#a0a0a066}.dungeon-inventory-empty{padding:.14rem 0;color:#a0a0a080;font-style:italic}.dungeon-inventory-spell{padding:.14rem 0}.dungeon-inventory-spell__mp{flex-shrink:0;padding:.1rem .3rem;font-size:.9em;color:var(--map-chip-passive-fg, #cfcfcf);background:var(--map-chip-passive-bg, #000000);border:1px solid var(--map-chip-silver, #c0c0c0);border-radius:2px;box-shadow:0 0 0 1px #000}.dungeon-inventory-spell__desc{margin:.1rem 0 0;font-size:.92em;color:#c0c0c099}.dungeon-inventory-spell__tag{display:inline-block;padding:.08rem .28rem;color:var(--map-chip-passive-fg, #cfcfcf);background:var(--map-chip-passive-bg, #000000);border:1px dashed var(--map-chip-silver, #c0c0c0);border-radius:2px;box-shadow:0 0 0 1px #000}.dungeon-inventory-trinket{padding:.14rem 0}.dungeon-inventory-toast{position:absolute;top:.75rem;left:50%;transform:translate(-50%);z-index:2;padding:.5rem 1rem;font-size:.75rem;color:#fff;background:#000000e0;border:1px solid rgba(192,192,192,.4);border-radius:4px;animation:retro-art-fade .2s ease both}.dungeon-inventory-equip-btn{margin-top:.25rem;min-height:32px;padding:.25rem .5rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.42rem;color:#e0e0e0;background:#0000008c;border:1px solid rgba(192,192,192,.35);border-radius:3px;cursor:pointer}.dungeon-sheet-wrap--fullscreen .dungeon-sheet-body{flex:1;min-height:0}.dungeon-sheet-wrap--fullscreen .dungeon-sheet-main{overflow-y:auto;flex:1;min-height:0}.dungeon-inventory-dur{display:block;font-size:.65rem;opacity:.85;margin-top:.15rem}.dungeon-inventory-dur--broken{color:#ffb4b4}.dungeon-inventory-equip{display:flex;flex-direction:column;gap:.35rem}.dungeon-inventory-slot{display:flex;align-items:center;gap:.4rem;padding:.28rem .4rem;background:#00000073;border:1px solid rgba(192,192,192,.22);border-radius:3px;min-width:0}.dungeon-inventory-slot--filled{border-color:#fff6}.dungeon-inventory-slot--empty{border-style:dashed;opacity:.75}.dungeon-inventory-slot__text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.dungeon-inventory-slot__label{font-size:.65em;letter-spacing:.06em;color:#a0a0a0b3;text-transform:uppercase}.dungeon-inventory-slot__name{font-size:.85em;color:#e0e0e0f2;overflow-wrap:break-word}.dungeon-inventory-icon{position:relative;flex-shrink:0;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;background:#0000008c;border:1px solid rgba(192,192,192,.28);border-radius:3px;overflow:hidden}.dungeon-inventory-icon img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(1) contrast(1.05)}.dungeon-inventory-icon__mono{font-size:1rem;line-height:1}.dungeon-inventory-icon--broken{border-color:#ff78788c}.dungeon-inventory-icon--missing{opacity:.45}.dungeon-inventory-icon__crack{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 42%,rgba(255,100,100,.35) 48%,transparent 54%);pointer-events:none}.dungeon-inventory-tabs{display:flex;flex-wrap:wrap;gap:.25rem}.dungeon-inventory-tabs__btn{min-height:28px;padding:.2rem .45rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.36rem,.95vw,.44rem);letter-spacing:.04em;color:#c0c0c0bf;background:#00000073;border:1px solid rgba(192,192,192,.25);border-radius:3px;cursor:pointer}.dungeon-inventory-tabs__btn--active{color:#fff;border-color:#ffffff73;box-shadow:0 0 8px #ffffff1f}.dungeon-inventory-pane{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:.65rem;min-height:0;flex:1}.dungeon-inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.35rem;align-content:start;max-height:14rem;overflow-y:auto;padding:.15rem}.dungeon-inventory-grid-empty{padding:.5rem;color:#a0a0a08c;font-style:italic}.dungeon-inventory-grid__cell{content-visibility:auto;contain-intrinsic-size:72px 72px;position:relative;display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.35rem .25rem;min-height:4.5rem;color:inherit;background:#00000059;border:1px solid rgba(192,192,192,.2);border-radius:3px;cursor:pointer}.dungeon-inventory-grid__cell:hover{border-color:#c0c0c066}.dungeon-inventory-grid__cell--selected{border-color:#ffffff80;box-shadow:0 0 10px #ffffff26}.dungeon-inventory-grid__cell--missing{opacity:.5}.dungeon-inventory-grid__label{font-size:.62em;text-align:center;line-height:1.25;overflow-wrap:break-word;max-width:100%}.dungeon-inventory-grid__sublabel{font-size:.58em;color:#a0a0a0bf}.dungeon-inventory-grid__badge{position:absolute;top:.15rem;right:.15rem;padding:.05rem .2rem;font-size:.5rem;letter-spacing:.04em;color:#fff;background:#000000bf;border:1px solid rgba(255,255,255,.35);border-radius:2px}.dungeon-inventory-detail{min-width:0;padding:.35rem .45rem;background:#00000059;border:1px solid rgba(192,192,192,.18);border-radius:3px;overflow-y:auto;max-height:14rem}.dungeon-inventory-detail__header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;margin-bottom:.35rem}.dungeon-inventory-detail__title{margin:0;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.4rem,1vw,.48rem);letter-spacing:.04em;color:#e0e0e0f2}.dungeon-inventory-detail__subtitle{font-size:.85em;color:#a0a0a0cc}.dungeon-inventory-detail__body{margin:0 0 .4rem;font-size:.92em;color:#c0c0c0bf;line-height:1.45}.dungeon-inventory-detail__meta{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:.45rem}.dungeon-inventory-detail__chip{padding:.1rem .35rem;font-size:.85em;color:var(--map-chip-passive-fg, #cfcfcf);background:var(--map-chip-passive-bg, #000000);border:1px solid var(--map-chip-silver, #c0c0c0);border-radius:2px}.dungeon-inventory-detail__actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.dungeon-inventory-ladder{margin:.35rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.2rem}.dungeon-inventory-ladder__step{display:flex;gap:.4rem;align-items:baseline;font-size:.88em;color:#c0c0c0a6}.dungeon-inventory-ladder__step--current{color:#fff}.dungeon-inventory-ladder__step--current .dungeon-inventory-ladder__lvl{border-color:#ffffff8c;color:#fff}.dungeon-inventory-ladder__step--future{opacity:.45}.dungeon-inventory-ladder__lvl{flex-shrink:0;min-width:1.6rem;padding:.05rem .2rem;font-size:.75em;text-align:center;border:1px solid rgba(192,192,192,.3);border-radius:2px}.dungeon-inventory-ladder__text{min-width:0;line-height:1.35}.dungeon-inventory-gold{font-variant-numeric:tabular-nums;color:#e0e0e0d9}@media (max-width: 640px){.dungeon-inventory-pane{grid-template-columns:1fr}.dungeon-inventory-grid,.dungeon-inventory-detail{max-height:10rem}}.retro-levelup{position:absolute;top:38%;left:50%;z-index:45;transform:translate(-50%,-50%);font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(1rem,3.5vw,1.8rem);color:#fff;text-shadow:0 0 18px rgba(255,255,255,.6);pointer-events:none;animation:retro-levelup-pulse .8s ease-out both}@keyframes retro-levelup-pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}45%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60%) scale(1)}}.retro-continue-hint{min-height:44px;padding:.65rem 1.25rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,1.8vw,.65rem);line-height:1.6;color:var(--retro-fg-bright, #e0e0e0);background:#000000d1;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer;animation:retro-continue-glow 2.2s ease-in-out infinite}.retro-continue-hint--inline{display:block;margin:.6rem auto 0}.retro-continue-hint--floating{position:absolute;bottom:calc(1.25rem + env(safe-area-inset-bottom));left:50%;z-index:40;transform:translate(-50%)}.retro-continue-hint:hover,.retro-continue-hint:focus-visible{border-color:#ffffff8c;color:#fff;outline:none}@keyframes retro-continue-glow{0%,to{box-shadow:0 0 5px #ffffff1f;border-color:#c0c0c059}50%{box-shadow:0 0 16px #ffffff59;border-color:#fff9}}.retro-win-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#0a0a0ae0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:retro-win-in .5s ease-out both}@keyframes retro-win-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.retro-win-card{max-width:34rem;max-height:calc(100dvh - 2rem - env(safe-area-inset-bottom));overflow-y:auto;width:calc(100% - 2rem);padding:2rem;text-align:center;color:silver;background:#050505f2;border:1px solid rgba(192,192,192,.45);border-radius:.75rem;box-shadow:0 0 40px #ffffff14,inset 0 0 60px #ffffff08}.retro-win-image{display:block;margin:0 auto 1.25rem;max-width:100%;max-height:34vh;-o-object-fit:contain;object-fit:contain;animation:retro-art-fade .4s ease both}.retro-win-title{font-family:monospace;font-size:1.4rem;letter-spacing:.35em;margin-bottom:.75rem}.retro-win-text{font-family:monospace;font-size:.85rem;line-height:1.6;opacity:.85;margin-bottom:1.5rem}.retro-win-actions{display:flex;flex-direction:column;gap:.6rem;align-items:center}.retro-win-btn{display:inline-block;min-height:44px;font-family:monospace;font-size:.85rem;color:#e0e0e0;padding:.7rem 1.4rem;border:1px solid rgba(192,192,192,.45);border-radius:.5rem;background:#0a0a0acc;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.retro-win-btn:hover{background:#c0c0c01f;box-shadow:0 0 16px #ffffff26}.retro-win-btn-primary{background:#c0c0c029;border-color:#e0e0e0b3;font-weight:700}.retro-win-card--wide{max-width:40rem;text-align:left}.retro-win-time{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.55rem,1.8vw,.7rem);margin-bottom:1rem;color:#fff}.retro-win-rank{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.6rem,2vw,.85rem);margin-bottom:.75rem;color:#fff;letter-spacing:.08em}.retro-win-form{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.25rem}.retro-win-label{display:flex;flex-direction:column;gap:.35rem;font-family:Menlo,ui-monospace,monospace;font-size:.75rem}.retro-win-input{min-height:40px;padding:.45rem .65rem;font-family:Menlo,ui-monospace,monospace;font-size:.85rem;color:#e0e0e0;background:#0009;border:1px solid rgba(192,192,192,.35);border-radius:4px}.retro-win-privacy{font-size:.65rem;opacity:.75;line-height:1.5;margin:0}.retro-win-error{font-size:.75rem;color:#f88;margin:0}.retro-win-leaderboard{margin-bottom:1.25rem;overflow-x:auto}.retro-win-leaderboard__title{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.55rem;margin-bottom:.5rem}.retro-win-leaderboard table{width:100%;border-collapse:collapse;font-family:Menlo,ui-monospace,monospace;font-size:.75rem}.retro-win-leaderboard th,.retro-win-leaderboard td{padding:.35rem .5rem;border-bottom:1px solid rgba(192,192,192,.2);text-align:left}.retro-win-leaderboard__highlight{background:#ffffff14}.retro-champion-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:flex;align-items:center;justify-content:center;background:#080808d9;cursor:pointer}.retro-champion-card{max-width:32rem;padding:1.5rem;text-align:center;background:#050505f2;border:1px solid rgba(192,192,192,.4);border-radius:.5rem;cursor:default}.retro-champion-text{font-family:Menlo,ui-monospace,monospace;font-size:.85rem;line-height:1.65;margin:0 0 .75rem}.retro-champion-kicker{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.5rem;margin:0 0 1rem;opacity:.85}.retro-champion-dismiss{min-height:44px;padding:.6rem 1rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:.5rem;color:#e0e0e0;background:#000000b3;border:1px solid rgba(192,192,192,.4);border-radius:4px;cursor:pointer}.retro-death-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;display:flex;align-items:center;justify-content:center;padding:1rem;background:#040404eb;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:retro-win-in .6s ease-out both}.retro-death-card{display:flex;flex-direction:column;align-items:center;max-width:min(100%,64rem);width:100%;max-height:calc(100dvh - 2rem);overflow-y:auto;padding:1rem 1.25rem 1.75rem;text-align:center}.retro-death-art{position:relative;width:min(100%,64rem);max-height:min(72vh,42rem);margin-bottom:1.25rem;display:flex;justify-content:center;align-items:center}.retro-death-image{display:block;width:100%;max-height:min(72vh,42rem);-o-object-fit:contain;object-fit:contain;filter:contrast(1.05);animation:retro-art-fade .5s ease both}.retro-death-quote{margin:0 0 1.25rem;font-family:Cormorant Garamond,Palatino Linotype,Book Antiqua,Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(1.25rem,3.2vw,1.75rem);line-height:1.55;letter-spacing:.02em;color:#e0dcd2f2;text-shadow:0 1px 12px rgba(0,0,0,.65);min-height:4.5em}.retro-death-quote__caret{display:inline-block;width:.08em;height:.9em;margin-left:.06em;vertical-align:-.08em;background:#e0dcd2d9;animation:retro-caret-blink 1.06s steps(1) infinite}.retro-death-continue{position:absolute;left:50%;bottom:clamp(.75rem,4vh,1.75rem);z-index:2;transform:translate(-50%);min-height:44px;padding:.55rem 1.1rem;font-family:Menlo,ui-monospace,monospace;font-size:.75rem;letter-spacing:.08em;color:#e8e8e8f2;background:#000000c7;border:1px solid rgba(192,192,192,.45);border-radius:4px;box-shadow:0 0 24px #000000d9,0 4px 16px #0000008c;cursor:pointer;animation:retro-win-in .4s ease-out both;white-space:nowrap}.retro-death-continue:hover,.retro-death-continue:focus-visible{color:#fff;border-color:#ffffff8c;outline:none}@media (prefers-reduced-motion: reduce){.retro-levelup,.retro-continue-hint,.retro-win-image,.retro-death-image,.retro-death-continue,.retro-death-quote__caret{animation:none}}.retro-legacy-warn-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:64;display:flex;align-items:center;justify-content:center;padding:1rem;background:#040404e0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:retro-win-in .35s ease-out both}.retro-legacy-warn-card{width:min(100%,28rem);padding:1.25rem 1.35rem 1.35rem;border:1px solid rgba(192,192,192,.4);border-radius:6px;background:#0a0a0af0;box-shadow:0 0 24px #ffffff14,inset 0 0 0 1px #e0e0e00f;text-align:center}.retro-legacy-warn-kicker{margin:0 0 .5rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,1.4vw,.52rem);line-height:1.6;letter-spacing:.08em;color:#c0c0c0e6}.retro-legacy-warn-title{margin:0 0 .85rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.55rem,2vw,.72rem);line-height:1.65;color:#fff}.retro-legacy-warn-body,.retro-legacy-warn-tip{margin:0 0 .75rem;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.68rem,1.8vw,.82rem);line-height:1.6;color:#e0e0e0eb}.retro-legacy-warn-tip{margin-bottom:1.1rem;color:#c0c0c0d9;font-size:clamp(.62rem,1.6vw,.76rem)}.retro-legacy-warn-actions{display:flex;flex-direction:column;gap:.55rem}@media (min-width: 480px){.retro-legacy-warn-actions{flex-direction:row}.retro-legacy-warn-actions .retro-legacy-warn-btn{flex:1}}.retro-legacy-warn-btn{min-height:44px;padding:.65rem .85rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,1.6vw,.55rem);line-height:1.5;color:var(--retro-fg-bright, #e0e0e0);background:#000000bf;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer}.retro-legacy-warn-btn--yolo{color:#f0f0f0;border-color:#e0e0e08c;background:#181818e6;box-shadow:0 0 14px #ffffff1f}.retro-legacy-warn-btn:hover,.retro-legacy-warn-btn:focus-visible{border-color:#ffffff8c;outline:none}.retro-legacy-warn-btn--yolo:hover,.retro-legacy-warn-btn--yolo:focus-visible{border-color:#ffffffbf;box-shadow:0 0 18px #ffffff2e}.dungeon-onboarding-stage{flex:1 1 auto;min-height:0;display:flex;align-items:center;justify-content:center;overflow-y:auto;overflow-x:hidden}.hero-confirm{width:100%;max-width:28rem;padding:1rem;animation:hero-confirm-in .45s ease-out both}.hero-confirm__layout{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center}.hero-confirm__details{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%;min-width:0}@media (min-width: 640px){.hero-confirm{max-width:min(64rem,100%);padding:.75rem 1.5rem 1rem}.hero-confirm__layout{flex-direction:row;align-items:center;gap:1.75rem;text-align:left}.hero-confirm__details{flex:1;max-width:42%;min-width:12rem;align-items:flex-start;text-align:left}.hero-confirm__portrait{width:58%;flex-shrink:0;max-height:min(72vh,44rem)}.hero-confirm__portrait img{max-height:min(72vh,44rem)}.hero-confirm__loadout,.hero-confirm__actions{align-self:stretch}}.retro-terminal--hero-confirm .dungeon-onboarding-stage{flex:1 1 auto}@media (min-width: 640px){.retro-terminal--hero-confirm .hero-confirm__portrait{width:62%;max-height:min(78vh,50rem)}.retro-terminal--hero-confirm .hero-confirm__portrait img{max-height:min(78vh,50rem)}.retro-terminal--hero-confirm .hero-confirm__details{max-width:38%}}.hero-confirm--fading{animation:hero-confirm-out .5s ease-in forwards}@media (prefers-reduced-motion: reduce){.hero-confirm--fading{animation:none;opacity:0}}@keyframes hero-confirm-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes hero-confirm-out{to{opacity:0;transform:scale(.92)}}.hero-confirm__portrait{margin:0;width:min(220px,55vw);max-height:min(40vh,16rem)}.hero-confirm__portrait img{display:block;width:100%;height:auto;max-height:min(40vh,16rem);-o-object-fit:contain;object-fit:contain;image-rendering:pixelated}.hero-confirm__name{margin:0;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.65rem,2.5vw,.85rem);line-height:1.6;color:#fff}.hero-confirm__subtitle{margin:0;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.7rem,2vw,.85rem);color:#e0e0e0d9}.hero-confirm__loadout{font-family:Menlo,ui-monospace,monospace;font-size:clamp(.65rem,1.8vw,.8rem);line-height:1.7;color:#e0e0e0e6;padding:.75rem 1rem;border:1px solid rgba(192,192,192,.25);width:100%}.hero-confirm__actions{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.5rem}.hero-confirm__btn{min-height:44px;padding:.65rem 1rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,1.6vw,.55rem);line-height:1.5;color:var(--retro-fg-bright, #e0e0e0);background:#000000bf;border:1px solid rgba(192,192,192,.35);border-radius:4px;cursor:pointer}.hero-confirm__btn--primary{color:#fff;border-color:#ffffff80}.hero-confirm__btn:hover,.hero-confirm__btn:focus-visible{border-color:#ffffffa6;outline:none}.rules-briefing{background:#080808eb}.retro-terminal--intro .dungeon-onboarding-stage{flex:1 1 auto}.rules-briefing__panel{width:100%;max-width:min(56rem,100%);max-height:100%;overflow-y:auto;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem}.rules-briefing__header{text-align:center}.rules-briefing__title{margin:0;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.55rem,2.2vw,.75rem);line-height:1.7;color:#fff;letter-spacing:.04em}.rules-briefing__tagline{margin:.65rem 0 0;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.7rem,1.8vw,.85rem);color:#c0c0c0d9}.rules-briefing__body{display:flex;flex-direction:column;gap:1.25rem}.rules-briefing__story{display:flex;flex-direction:column;gap:.85rem}.rules-briefing__paragraph{margin:0;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.68rem,1.7vw,.82rem);line-height:1.65;color:#e0e0e0eb}.rules-briefing__commands{padding:.85rem 1rem;border:1px solid rgba(192,192,192,.28);border-radius:4px;background:#00000073}.rules-briefing__commands-heading{margin:0 0 .75rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.45rem,1.5vw,.55rem);line-height:1.6;color:var(--retro-fg-bright, #e0e0e0);letter-spacing:.06em}.rules-briefing__command-grid{display:grid;grid-template-columns:1fr;gap:.85rem 1.25rem}@media (min-width: 640px){.rules-briefing__panel{padding:1.25rem 1.5rem 1.5rem;gap:1.5rem}.rules-briefing__header{text-align:left}.rules-briefing__body{flex-direction:row;align-items:flex-start;gap:1.5rem}.rules-briefing__story{flex:1;min-width:0}.rules-briefing__commands{flex:0 0 42%;max-width:20rem}.rules-briefing__command-grid{grid-template-columns:1fr}}.rules-briefing__command-group{min-width:0}.rules-briefing__command-label{margin:0 0 .35rem;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.62rem,1.5vw,.72rem);font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.04em}.rules-briefing__command-list{margin:0;padding:0;list-style:none;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.62rem,1.5vw,.75rem);line-height:1.55;color:#c0c0c0eb}.rules-briefing__command-list li+li{margin-top:.2rem}.rules-briefing__enter-btn{display:block;width:100%;margin:0;min-height:48px;padding:.85rem 1.25rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.5rem,2vw,.65rem);line-height:1.6;text-align:center;color:#fff;background:#000000d1;border:1px solid rgba(255,255,255,.45);border-radius:4px;cursor:pointer;box-shadow:0 0 12px #ffffff40,0 0 24px #ffffff1f;animation:rules-briefing-enter-glow 2.4s ease-in-out infinite}.rules-briefing__enter-btn:hover,.rules-briefing__enter-btn:focus-visible{border-color:#ffffffbf;box-shadow:0 0 16px #fff6,0 0 32px #fff3;outline:none}@keyframes rules-briefing-enter-glow{0%,to{box-shadow:0 0 12px #ffffff40,0 0 24px #ffffff1f;transform:translateY(0)}50%{box-shadow:0 0 18px #ffffff73,0 0 36px #ffffff38;transform:translateY(-2px)}}.retro-terminal-io--onboarding-mode .retro-terminal-pane,.retro-terminal-io--onboarding-mode.retro-terminal-io--intro-mode .retro-terminal-dock,.retro-terminal-io--onboarding-mode.retro-terminal-io--hero-confirm-mode .retro-terminal-dock,.retro-terminal-io--onboarding-mode.retro-terminal-io--char-create-mode .retro-terminal-dock{display:none}.char-create{width:100%;max-width:min(64rem,100%);padding:1rem 1.25rem 1.5rem;animation:hero-confirm-in .45s ease-out both}.char-create__header{display:flex;flex-direction:column;align-items:center;gap:.65rem;margin-bottom:1rem}@media (min-width: 640px){.char-create__header{flex-direction:row;justify-content:space-between;align-items:center}}.char-create__title{margin:0;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.5rem,1.8vw,.65rem);letter-spacing:.05em;color:var(--retro-fg-bright, #e0e0e0)}.char-create__steps{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:center;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.4rem,1.2vw,.52rem);letter-spacing:.04em;color:#c0c0c0bf}.char-create__step--active{color:#000;background:#fff;padding:.12rem .35rem;border-radius:2px}.char-create__step--done{color:#fff}.char-create__prompt{margin:0 0 1.25rem;text-align:center;font-family:Menlo,ui-monospace,monospace;font-size:clamp(.75rem,2vw,.95rem);line-height:1.6;color:#e0e0e0e6;max-width:36rem;margin-inline:auto}.char-create__name-form{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;width:100%;max-width:28rem;margin:0 auto}.char-create__name-input{width:100%;min-height:3.5rem;padding:.85rem 1rem;font-family:Menlo,ui-monospace,monospace;font-size:clamp(1.1rem,3.5vw,1.5rem);line-height:1.4;color:#fff;background:#000000d1;border:2px solid rgba(192,192,192,.45);border-radius:4px;outline:none;box-shadow:inset 0 0 0 1px #ffffff0f}.char-create__name-input:focus{border-color:#fff;box-shadow:0 0 0 1px #ffffff59,0 0 24px #ffffff1f}.char-create__name-error{margin:0;font-family:Menlo,ui-monospace,monospace;font-size:.8rem;color:#ff8a8a;text-align:center}.char-create__continue{margin-top:.25rem}.char-create__avatars{display:grid;gap:.85rem;width:100%;margin:0 auto}.char-create__avatars--sex{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));max-width:36rem}.char-create__avatars--race,.char-create__avatars--class{grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));max-width:28rem}.char-create__avatar{display:flex;flex-direction:column;align-items:center;gap:.45rem;min-height:44px;padding:.65rem .55rem .75rem;font:inherit;color:inherit;background:#000000b8;border:1px solid rgba(192,192,192,.32);border-radius:4px;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.char-create__avatar:hover,.char-create__avatar:focus-visible{border-color:#fff;transform:translateY(-2px);box-shadow:0 0 20px #ffffff24;outline:none}.char-create__avatar-figure{margin:0;width:min(120px,28vw)}.char-create__avatar-figure img{display:block;width:100%;height:auto;max-height:min(22vh,9rem);-o-object-fit:contain;object-fit:contain;image-rendering:pixelated}.char-create__avatar-label{font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.42rem,1.4vw,.52rem);line-height:1.5;color:#fff}.char-create__avatar-blurb{font-family:Menlo,ui-monospace,monospace;font-size:clamp(.62rem,1.6vw,.74rem);line-height:1.45;color:#e0e0e0d1;text-align:center}.retro-terminal--char-create .dungeon-onboarding-stage{flex:1 1 auto}.retro-charcreate{margin:0 auto .75rem;width:min(100%,64rem);padding:.55rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-family:"Press Start 2P",Menlo,ui-monospace,monospace;font-size:clamp(.44rem,1.3vw,.56rem);letter-spacing:.05em;color:#c0c0c0bf;background:#000000b8;border:1px solid rgba(192,192,192,.28);border-radius:4px}.retro-charcreate__title{color:var(--retro-fg-bright, #e0e0e0)}.retro-charcreate__steps{display:flex;gap:.55rem;white-space:nowrap}.retro-charcreate__step--active{color:#000;background:#fff;padding:.1rem .3rem;border-radius:2px}.retro-charcreate__step--done{color:#fff}.terminal-art-slot--lobby-enter{animation:lobby-art-in .6s ease-out both}@media (prefers-reduced-motion: reduce){.terminal-art-slot--lobby-enter,.rules-briefing__enter-btn{animation:none}}@keyframes lobby-art-in{0%{opacity:0}to{opacity:1}}.retro-terminal-io--panel-mode .retro-terminal-pane{display:none}.dungeon-panel-stage{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.retro-terminal-io--panel-mode{flex:0 0 auto}
