@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-3xl:48rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--leading-relaxed:1.625;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.isolate{isolation:isolate}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.m-0{margin:calc(var(--spacing)*0)}.mx-auto{margin-inline:auto}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-grid{display:inline-grid}.max-h-96{max-height:calc(var(--spacing)*96)}.min-h-8{min-height:calc(var(--spacing)*8)}.min-h-screen{min-height:100vh}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-crt-green{border-color:var(--crt-green)}.border-crt-green-dim,.border-crt-green-dim\/30{border-color:var(--crt-green-dim)}@supports (color:color-mix(in lab,red,red)){.border-crt-green-dim\/30{border-color:color-mix(in oklab,var(--crt-green-dim)30%,transparent)}}.border-crt-green-dim\/40{border-color:var(--crt-green-dim)}@supports (color:color-mix(in lab,red,red)){.border-crt-green-dim\/40{border-color:color-mix(in oklab,var(--crt-green-dim)40%,transparent)}}.bg-crt-dark{background-color:var(--crt-dark)}.bg-crt-darker{background-color:var(--crt-darker)}.bg-crt-green{background-color:var(--crt-green)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing)*0)}.p-3{padding:calc(var(--spacing)*3)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-14{padding-top:calc(var(--spacing)*14)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-12{padding-left:calc(var(--spacing)*12)}.text-center{text-align:center}.text-left{text-align:left}.align-top{vertical-align:top}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.688rem\]{font-size:.688rem}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.text-crt-darker{color:var(--crt-darker)}.text-crt-green{color:var(--crt-green)}.text-crt-green-dim{color:var(--crt-green-dim)}.text-inherit{color:inherit}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}@media(hover:hover){.group-hover\:border-crt-green:is(:where(.group):hover *){border-color:var(--crt-green)}.group-hover\:text-crt-green:is(:where(.group):hover *){color:var(--crt-green)}}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:bg-crt-darker:hover{background-color:var(--crt-darker)}.hover\:text-crt-green:hover{color:var(--crt-green)}}.focus\:text-crt-green:focus{color:var(--crt-green)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media not all and (min-width:40rem){.max-sm\:block{display:block}.max-sm\:hidden{display:none}}@media(min-width:40rem){.sm\:contents{display:contents}.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}.sm\:gap-0{gap:calc(var(--spacing)*0)}.sm\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sm\:text-center{text-align:center}.sm\:text-left{text-align:left}.sm\:text-right{text-align:right}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}}@media(min-width:64rem){.lg\:gap-6{gap:calc(var(--spacing)*6)}}}:root{--crt-green:#ffb830;--crt-green-dim:#997020;--crt-green-glow:#fc6;--crt-dark:#1a1208;--crt-darker:#0c0804;--crt-border:#4d3010;--font-mono:"Fira Code","Courier New",monospace}@font-face{font-family:VT323;src:url(https://fonts.gstatic.com/s/vt323/v17/pxiKyp0ihIEF2isfFJU.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Fira Code;src:url(https://cdn.jsdelivr.net/npm/firacode@6.2.0/distr/woff2/FiraCode-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Fira Code;src:url(https://cdn.jsdelivr.net/npm/firacode@6.2.0/distr/woff2/FiraCode-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--crt-darker);color:var(--crt-green);font-family:VT323,Courier New,monospace;font-size:18px;line-height:1.5;overflow-x:hidden}::-moz-selection{background:var(--crt-green);color:var(--crt-darker)}::selection{background:var(--crt-green);color:var(--crt-darker)}::-webkit-scrollbar{background:var(--crt-darker);width:16px}::-webkit-scrollbar-track{background:var(--crt-darker);border-left:2px solid var(--crt-green-dim)}::-webkit-scrollbar-thumb{background:var(--crt-green-dim);border:2px solid var(--crt-green)}::-webkit-scrollbar-thumb:hover{background:var(--crt-green)}.crt{position:relative}.crt:before{content:"";pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,#0000002e,#0000002e 1px,#0000 1px 2px);width:100%;height:100dvh;min-height:-webkit-fill-available;position:fixed;top:0;left:0}.crt:after{content:"";background:radial-gradient(ellipse at center,transparent 0%,var(--crt-dark)90%,#000000a6 100%);width:100%;height:100dvh;min-height:-webkit-fill-available;position:fixed;top:0;left:0}@supports (color:color-mix(in lab,red,red)){.crt:after{background:radial-gradient(ellipse at center,transparent 0%,color-mix(in srgb,var(--crt-dark)55%,transparent)90%,#000000a6 100%)}}.crt:after{pointer-events:none;z-index:9998}.glow{text-shadow:0 0 3px var(--crt-green),0 0 8px var(--crt-green-glow),0 0 24px var(--crt-green-glow)}@supports (color:color-mix(in lab,red,red)){.glow{text-shadow:0 0 3px var(--crt-green),0 0 8px var(--crt-green-glow),0 0 24px color-mix(in srgb,var(--crt-green-glow)60%,transparent)}}.glow-sm{text-shadow:0 0 2px var(--crt-green),0 0 12px var(--crt-green-glow)}@supports (color:color-mix(in lab,red,red)){.glow-sm{text-shadow:0 0 2px var(--crt-green),0 0 12px color-mix(in srgb,var(--crt-green-glow)50%,transparent)}}.glow-subtle{text-shadow:0 0 2px var(--crt-green),0 0 6px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.glow-subtle{text-shadow:0 0 2px var(--crt-green),0 0 6px color-mix(in srgb,var(--crt-green)40%,transparent)}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.cursor{background:var(--crt-green);vertical-align:middle;width:12px;height:20px;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes flicker{0%{opacity:.97}5%{opacity:.95}10%{opacity:.97}15%{opacity:.94}20%{opacity:.98}50%{opacity:.96}80%{opacity:.98}90%{opacity:.94}to{opacity:.97}}.flicker{animation:.3s infinite flicker}.box{border:1px solid var(--crt-green-dim);background:var(--crt-dark);padding:16px;position:relative}.box-double{border:1px solid var(--crt-green-dim);background:var(--crt-darker);padding:16px}.box-title{background:var(--crt-darker);padding:0 8px;position:absolute;top:-12px;left:16px}.section-panel{border:1px solid var(--crt-green-dim);background:var(--crt-darker);scroll-margin-top:4rem}.section-header{background:var(--crt-green-dim)}@supports (color:color-mix(in lab,red,red)){.section-header{background:color-mix(in srgb,var(--crt-green-dim)35%,var(--crt-darker))}}.section-header{color:var(--crt-green);letter-spacing:.08em;border-bottom:1px solid var(--crt-green-dim);padding:8px 20px;font-size:1.05rem}.section-body{padding:24px;line-height:1.65}.section-lead{color:var(--crt-green-dim);margin-bottom:20px;font-size:1rem}.field-grid{gap:10px;display:grid}.field-row{grid-template-columns:minmax(120px,160px) 1fr;align-items:baseline;gap:8px 20px;display:grid}.field-label{color:var(--crt-green-dim);letter-spacing:.04em}.field-value{color:var(--crt-green)}.prose-block{color:var(--crt-green-dim);max-width:68ch}.prose-block+.prose-block{margin-top:12px}.item-card{border:1px solid var(--crt-green-dim);border-left:3px solid var(--crt-green);background:var(--crt-dark);margin-bottom:16px;padding:16px 20px}.item-card:last-child{margin-bottom:0}.item-card-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.item-card-meta{color:var(--crt-green-dim);font-size:.95rem}.project-more-btn{font-family:inherit;font-size:inherit;color:var(--crt-green);border:1px solid var(--crt-green-dim);cursor:pointer;letter-spacing:.04em;background:0 0}.project-more-btn:hover{background:var(--crt-green);color:var(--crt-darker)}.project-modal-backdrop{z-index:100;background:var(--crt-darker);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab,red,red)){.project-modal-backdrop{background:color-mix(in srgb,var(--crt-darker)75%,transparent)}}.project-modal{border:1px solid var(--crt-green-dim);background:var(--crt-darker);width:min(100%,40rem);max-height:min(90vh,720px);box-shadow:0 0 24px var(--crt-green);flex-direction:column;display:flex}@supports (color:color-mix(in lab,red,red)){.project-modal{box-shadow:0 0 24px color-mix(in srgb,var(--crt-green)15%,transparent)}}.project-modal-header{border-bottom:1px solid var(--crt-green-dim);background:var(--crt-green-dim);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.75rem 1.25rem;display:flex}@supports (color:color-mix(in lab,red,red)){.project-modal-header{background:color-mix(in srgb,var(--crt-green-dim)35%,var(--crt-darker))}}.project-modal-filename{color:var(--crt-green-dim);letter-spacing:.06em;font-size:.8rem}.project-modal-title{letter-spacing:.04em;font-size:1.15rem}.project-modal-close{color:var(--crt-green);border:1px solid var(--crt-green-dim);cursor:pointer;background:0 0;flex-shrink:0;padding:.2rem .5rem;font-family:inherit;font-size:.9rem}.project-modal-close:hover{background:var(--crt-green);color:var(--crt-darker)}.project-modal-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.project-modal-meta{border:1px dashed var(--crt-green-dim);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem 1rem;margin:0;padding:.75rem;display:grid}@supports (color:color-mix(in lab,red,red)){.project-modal-meta{border:1px dashed color-mix(in srgb,var(--crt-green-dim)50%,transparent)}}.project-modal-meta-row{flex-direction:column;gap:.15rem;display:flex}.project-modal-meta dt{color:var(--crt-green-dim);letter-spacing:.06em;font-size:.75rem}.project-modal-meta dd{color:var(--crt-green);margin:0;font-size:.9rem}.project-modal-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.project-modal-list li{color:var(--crt-green-dim);padding-left:1rem;font-size:.95rem;line-height:1.5;position:relative}.project-modal-list li:before{content:"▸";color:var(--crt-green);position:absolute;left:0}.project-modal-features{flex-direction:column;gap:1rem;display:flex}.project-modal-feature-group{margin:0}.project-modal-feature-heading{font-size:.85rem;font-weight:inherit;color:var(--crt-green);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .5rem}.project-modal-footer{border-top:1px solid var(--crt-green-dim);background:var(--crt-green-dim);padding:.75rem 1.25rem}@supports (color:color-mix(in lab,red,red)){.project-modal-footer{background:color-mix(in srgb,var(--crt-green-dim)20%,var(--crt-darker))}}.project-modal-cta{letter-spacing:.04em;border:1px solid var(--crt-green-dim);padding:.35rem .75rem;font-size:.9rem;display:inline-block}.project-modal-cta:hover{background:var(--crt-green);color:var(--crt-darker)}.subsection-label{color:var(--crt-green-dim);letter-spacing:.06em;border-bottom:1px dashed var(--crt-green-dim);margin-bottom:12px;padding-bottom:6px}@supports (color:color-mix(in lab,red,red)){.subsection-label{border-bottom:1px dashed color-mix(in srgb,var(--crt-green-dim)50%,transparent)}}.skills-table{gap:10px;display:grid}.skills-table-header{display:none}@media(min-width:640px){.skills-table{gap:8px}.skills-table-header{border-bottom:1px solid var(--crt-green-dim);color:var(--crt-green-dim);letter-spacing:.06em;grid-template-columns:minmax(180px,1fr) minmax(140px,220px) 48px;gap:16px;margin-bottom:4px;padding-bottom:8px;font-size:.95rem;display:grid}.skills-section{gap:8px}.skill-row{grid-template-columns:minmax(180px,1fr) minmax(140px,220px) 48px;align-items:center;gap:8px 16px;display:grid}}.skills-section{flex-direction:column;gap:10px;display:flex}.skill-row{cursor:help;border-radius:2px;margin-inline:-10px;padding:4px 10px;transition:background-color .15s}.skill-row:hover{background:var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.skill-row:hover{background:color-mix(in srgb,var(--crt-green)7%,var(--crt-darker))}}.skill-row-bar{align-items:center;gap:68px;display:flex}@media(max-width:640px){.skill-row-bar{gap:8px}}.skill-row-pct--tease{color:var(--crt-green);text-shadow:0 0 6px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.skill-row-pct--tease{text-shadow:0 0 6px color-mix(in srgb,var(--crt-green)45%,transparent)}}.dos-progress{gap:3px;display:flex}.dos-progress-block{background:var(--crt-green-dim);width:14px;height:18px}@supports (color:color-mix(in lab,red,red)){.dos-progress-block{background:color-mix(in srgb,var(--crt-green-dim)40%,var(--crt-darker))}}.dos-progress-block{border:1px solid var(--crt-green-dim)}.dos-progress-block.filled{background:var(--crt-green);box-shadow:0 0 6px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.dos-progress-block.filled{box-shadow:0 0 6px color-mix(in srgb,var(--crt-green)50%,transparent)}}.dos-progress-block--flicker.filled{box-shadow:0 0 8px var(--crt-green),0 0 14px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.dos-progress-block--flicker.filled{box-shadow:0 0 8px color-mix(in srgb,var(--crt-green)70%,transparent),0 0 14px color-mix(in srgb,var(--crt-green)35%,transparent)}}.dos-progress-block--flicker:not(.filled){border-color:var(--crt-green);box-shadow:0 0 4px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.dos-progress-block--flicker:not(.filled){box-shadow:0 0 4px color-mix(in srgb,var(--crt-green)25%,transparent)}}@media(max-width:639px){.skill-row .dos-progress{flex:1;min-width:0}.skill-row .dos-progress-block{flex:1;width:auto;min-width:0}.field-row{grid-template-columns:1fr;gap:2px}}.divider{color:var(--crt-green-dim);text-align:center;white-space:nowrap;opacity:.7;overflow:hidden}.menu-item{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;padding:4px 12px;transition:none}.menu-item:hover,.menu-item.active{background:var(--crt-green);color:var(--crt-darker)}.nav-link{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;color:var(--crt-green-dim);letter-spacing:.04em;padding:4px 10px;font-size:.95rem}.nav-link:hover{color:var(--crt-green);background:var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.nav-link:hover{background:color-mix(in srgb,var(--crt-green)12%,transparent)}}.dropdown-menu{background:var(--crt-darker);border:1px solid var(--crt-green-dim);z-index:100;min-width:200px;position:absolute;top:100%;left:0;box-shadow:4px 4px #00000080}.dropdown-item{cursor:pointer;white-space:nowrap;padding:6px 20px}.dropdown-item:hover{background:var(--crt-green);color:var(--crt-darker)}.dropdown-divider{background:var(--crt-green-dim);height:1px;margin:4px 8px}a{color:var(--crt-green);text-decoration:none}a:hover{background:var(--crt-green);color:var(--crt-darker)}@keyframes typing{0%{width:0}to{width:100%}}.typing{white-space:nowrap;animation:2s steps(40,end) forwards typing;overflow:hidden}@keyframes screen-on{0%{filter:brightness(10);transform:scaleY(.01)scaleX(.5)}20%{filter:brightness(10);transform:scaleY(.01)scaleX(1)}50%{filter:brightness();transform:scaleY(1)scaleX(1)}to{filter:brightness();transform:scaleY(1)scaleX(1)}}.screen-on{animation:.8s ease-out forwards screen-on}.dos-table{border-collapse:collapse;width:100%}.dos-table th,.dos-table td{border:1px solid var(--crt-green-dim);text-align:left;padding:8px 16px}.dos-table th{background:var(--crt-green-dim);color:var(--crt-darker)}.dos-table tr:hover td{background:var(--crt-dark)}.dos-btn{background:var(--crt-darker);border:1px solid var(--crt-green);color:var(--crt-green);font-family:inherit;font-size:inherit;cursor:pointer;padding:10px 24px;position:relative}.dos-btn:before{content:"[ "}.dos-btn:after{content:" ]"}.dos-btn:hover{background:var(--crt-green);color:var(--crt-darker)}.dos-btn:active{transform:translate(2px,2px)}.card-hover:hover{background:var(--crt-dark);box-shadow:0 0 16px var(--crt-green)}@supports (color:color-mix(in lab,red,red)){.card-hover:hover{box-shadow:0 0 16px color-mix(in srgb,var(--crt-green)20%,transparent)}}.header-bar{background:var(--crt-darker);color:var(--crt-green);border-bottom:1px solid var(--crt-green-dim);padding:6px 0}.status-bar{background:var(--crt-dark);border-top:1px solid var(--crt-green-dim);justify-content:space-between;padding:12px 16px;display:flex}@keyframes loading{0%{content:"|"}25%{content:"/"}50%{content:"-"}75%{content:"\\"}}.loading:after{content:"|";animation:.5s linear infinite loading}html[data-crt-scheme=amber]{--crt-green:#ffb830;--crt-green-dim:#997020;--crt-green-glow:#fc6;--crt-dark:#1a1208;--crt-darker:#0c0804;--crt-border:#4d3010}html[data-crt-scheme=green]{--crt-green:#3f3;--crt-green-dim:#1a991a;--crt-green-glow:#6f6;--crt-dark:#0a140a;--crt-darker:#040804;--crt-border:#1a4d1a}html[data-crt-scheme=red]{--crt-green:#f44;--crt-green-dim:#992020;--crt-green-glow:#f66;--crt-dark:#1a0808;--crt-darker:#0c0404;--crt-border:#4d1010}html[data-crt-scheme=blue]{--crt-green:#48f;--crt-green-dim:#204080;--crt-green-glow:#6af;--crt-dark:#080a14;--crt-darker:#040408;--crt-border:#10204d}.matrix-rain{z-index:0;pointer-events:none;opacity:.85;position:fixed;inset:0}.dos-terminal{box-shadow:0 0 0 1px var(--crt-green-dim),0 4px 24px #0009,0 0 48px var(--crt-green);font-family:VT323,Courier New,monospace;position:relative}@supports (color:color-mix(in lab,red,red)){.dos-terminal{box-shadow:0 0 0 1px var(--crt-green-dim),0 4px 24px #0009,0 0 48px color-mix(in srgb,var(--crt-green)8%,transparent)}}.dos-terminal>div::-webkit-scrollbar{width:10px}.dos-terminal>div::-webkit-scrollbar-track{background:var(--crt-darker);border-left:1px solid var(--crt-green-dim)}.dos-terminal>div::-webkit-scrollbar-thumb{background:var(--crt-green-dim)}.dos-terminal>div::-webkit-scrollbar-thumb:hover{background:var(--crt-green)}.dos-terminal input{font-family:inherit;font-size:inherit}.stats-bar{border:1px solid var(--crt-green-dim);background:var(--crt-green-dim);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}@media(min-width:768px){.stats-bar{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-item{background:var(--crt-dark);flex-direction:column;gap:.35rem;padding:1.125rem 1.25rem;display:flex}.stat-item__label{color:var(--crt-green-dim);letter-spacing:.08em;font-size:.7rem;line-height:1.3}.stat-item__label:before{content:">";color:var(--crt-green-dim);margin-right:.35em}@supports (color:color-mix(in lab,red,red)){.stat-item__label:before{color:color-mix(in srgb,var(--crt-green-dim)70%,transparent)}}.stat-item__value{color:var(--crt-green);font-size:1.625rem;line-height:1.1}@media(min-width:640px){.stat-item{padding:1.25rem 1.5rem}.stat-item__value{font-size:2rem}}@media print{:root{--crt-green:#000;--crt-green-dim:#000;--crt-green-glow:#000;--crt-dark:#fff;--crt-darker:#fff}body{color:#000!important;background:#fff!important}.crt:before,.crt:after{display:none!important}*{text-shadow:none!important;box-shadow:none!important}.header-bar{display:none!important}*{transition:none!important;animation:none!important}[data-framer-name],[data-framer-component],section,div,p,span,a,main{opacity:1!important;visibility:visible!important;transform:none!important}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
