@import"https://fonts.googleapis.com/css2?family=Geist+Pixel:wght@400;700&display=swap";:root{--fui-border: #FF5500;--fui-border-glow: #FF2200;--fui-border-dim: rgba(255, 85, 0, .4);--fui-border-faint: rgba(255, 85, 0, .12);--fui-bg: rgba(2, 8, 5, .85);--fui-bg-solid: #020805;--fui-accent: #00FF88;--fui-accent-dim: rgba(0, 255, 136, .25);--fui-chamfer: 8px;--fui-corner-arm: 12px;--fui-corner-stroke: 1.5px;--fui-tick-spacing: 28px;--fui-tick-length: 6px;--fui-gap: 12px;--fui-panel-padding: 16px;--fui-entry-duration: .4s;--fui-entry-ease: cubic-bezier(.22, 1, .36, 1);--fui-glow-speed: 3s}.fui-grid{display:grid;gap:var(--fui-gap);padding:var(--fui-gap);width:100%;height:100%;box-sizing:border-box}.fui-grid--1col{grid-template-columns:1fr}.fui-grid--2col{grid-template-columns:repeat(2,1fr)}.fui-grid--3col{grid-template-columns:repeat(3,1fr)}.fui-grid--4col{grid-template-columns:repeat(4,1fr)}.fui-span-2{grid-column:span 2}.fui-span-3{grid-column:span 3}.fui-span-4{grid-column:span 4}.fui-span-row-2{grid-row:span 2}.fui-span-row-3{grid-row:span 3}@media(max-width:1024px){.fui-grid--4col{grid-template-columns:repeat(2,1fr)}.fui-span-3,.fui-span-4{grid-column:span 2}}@media(max-width:768px){.fui-grid--2col,.fui-grid--3col,.fui-grid--4col{grid-template-columns:1fr}.fui-span-2,.fui-span-3,.fui-span-4{grid-column:span 1}.fui-span-row-2,.fui-span-row-3{grid-row:span 1}}@font-face{font-family:London20;src:url(./assets/london-20.otf/london-20.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;height:100dvh;overflow:hidden}body{background:#0b0b0b;color:#ffd747;font-family:Geist Pixel,Turret Road,monospace;-webkit-font-smoothing:antialiased}body:not(.is-touch){cursor:none}body:not(.is-touch) *,body:not(.is-touch) button,body:not(.is-touch) a,body:not(.is-touch) input,body:not(.is-touch) textarea,body:not(.is-touch) [role=button]{cursor:none!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0b0b0b;border-left:1px solid rgba(255,215,71,.15)}::-webkit-scrollbar-thumb{background:#ffd74759;border-radius:0}::-webkit-scrollbar-thumb:hover{background:#ffd747;box-shadow:0 0 10px #ffd747}:root{--font-display-size: 48px;--font-lg-size: 32px;--font-md-size: 24px;--font-sm-size: 16px;--font-xs-size: 12px}@media(max-width:1024px){:root{--font-display-size: 40px;--font-lg-size: 26px;--font-md-size: 20px}}@media(max-width:768px){:root{--font-display-size: 32px;--font-lg-size: 20px;--font-md-size: 16px}}@media(max-width:480px){:root{--font-display-size: 28px;--font-lg-size: 16px}}@keyframes crt-flicker{0%{opacity:1}3%{opacity:.92}5%{opacity:1}14%{opacity:1}15%{opacity:.76}15.5%{opacity:1}27%{opacity:1}27.2%{opacity:.88}27.4%{opacity:1}41%{opacity:1}41.2%{opacity:.65}41.4%{opacity:.9}41.6%{opacity:1}57%{opacity:1}57.1%{opacity:.82}57.2%{opacity:1}73%{opacity:1}73.2%{opacity:.7}73.4%{opacity:.94}73.6%{opacity:1}89%{opacity:1}89.1%{opacity:.55}89.3%{opacity:.9}89.5%{opacity:1}to{opacity:1}}@keyframes vhs-glitch{0%,87%,to{filter:none;transform:none}88%{filter:drop-shadow(3px 0 0 rgba(255,0,60,.55)) drop-shadow(-3px 0 0 rgba(0,220,255,.55));transform:translate(-3px)}88.5%{filter:drop-shadow(-4px 0 0 rgba(255,0,60,.7)) drop-shadow(4px 0 0 rgba(0,220,255,.7));transform:translate(4px)}89%{filter:none;transform:translate(-1px)}89.4%{filter:drop-shadow(2px 0 0 rgba(255,0,60,.4)) drop-shadow(-2px 0 0 rgba(0,220,255,.4));transform:translate(1px)}89.8%{filter:none;transform:none}94%{filter:drop-shadow(5px 0 0 rgba(255,0,60,.45)) drop-shadow(-5px 0 0 rgba(0,220,255,.45)) brightness(1.15);transform:translate(-2px)}94.3%{filter:drop-shadow(-3px 0 0 rgba(255,0,60,.6)) drop-shadow(3px 0 0 rgba(0,220,255,.6));transform:translate(2px)}94.6%{filter:none;transform:none}}@keyframes scan-sweep{0%{transform:translateY(-80px);opacity:0}5%{opacity:1}95%{opacity:1}to{transform:translateY(100vh);opacity:0}}.crt-scanlines{pointer-events:none;position:fixed;inset:0;z-index:9999;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.22) 2px,rgba(0,0,0,.22) 4px);animation:crt-flicker 7s infinite}.crt-vignette{pointer-events:none;position:fixed;inset:0;z-index:9998;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.75) 100%)}.crt-scanband{pointer-events:none;position:fixed;left:0;right:0;height:80px;z-index:9997;background:linear-gradient(to bottom,transparent,rgba(255,215,71,.025) 40%,rgba(255,215,71,.025) 60%,transparent);animation:scan-sweep 5s linear infinite}.crt-chroma{pointer-events:none;position:fixed;inset:0;z-index:9996;background:linear-gradient(to right,rgba(255,0,60,.04) 0%,transparent 8%),linear-gradient(to left,rgba(0,200,255,.04) 0%,transparent 8%),linear-gradient(to bottom,rgba(255,0,60,.02) 0%,transparent 5%),linear-gradient(to top,rgba(0,200,255,.02) 0%,transparent 5%)}.crt-sprite-overlay{position:relative}.crt-sprite-overlay:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.16) 2px,rgba(0,0,0,.16) 4px);border-radius:4px;z-index:5}.app-glitch{width:100%;height:100%;animation:vhs-glitch 9s infinite}.dot-grid{background-color:#0b0b0b;background-image:radial-gradient(circle,rgba(255,215,71,.18) 1px,transparent 1px);background-size:24px 24px}.scene{position:relative;width:100%;height:100%}.logo{font-size:var(--font-display-size);letter-spacing:.12em;line-height:1;-webkit-user-select:none;user-select:none}.loading-bar-wrap{width:min(420px,85vw)}.home-desktop{margin:clamp(16px,2.5vw,36px);border:none;display:flex;flex-direction:column;height:calc(100vh - clamp(32px,5vw,72px));height:calc(100dvh - clamp(32px,5vw,72px));overflow:hidden;position:relative;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.home-desktop-bar{border-bottom:1px solid rgba(255,215,71,.25);background:#ffd7470a;padding:10px 24px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.home-desktop-body{flex:1;padding:clamp(24px,4vh,48px) clamp(24px,4vw,56px);display:flex;flex-direction:column;justify-content:flex-start;gap:clamp(24px,3.5vh,44px);position:relative;min-height:0;overflow:hidden;-webkit-user-select:none;user-select:none}.home-desktop-identity{display:flex;flex-direction:column;gap:clamp(14px,2vh,24px);z-index:10}.home-desktop-folders{position:relative;flex:1;width:100%;min-height:200px;display:flex;flex-direction:row;align-items:flex-start}.home-desktop-ticker{border-top:1px solid rgba(255,215,71,.12);padding:8px 24px;flex-shrink:0;overflow:hidden}@media(max-width:860px){.home-desktop-bar{display:none}.home-desktop{margin:12px;height:calc(100vh - 24px);height:calc(100dvh - 24px)}.home-desktop-body{display:flex;flex-direction:column;flex:1;overflow:hidden;gap:16px;padding:16px}.home-desktop-folders{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:12px;width:100%;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;align-content:start;padding:4px;box-sizing:border-box}.home-desktop-ticker{display:none}}@media(max-width:480px){.home-identity{margin:12px 12px 6px}.crt-scanlines{background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.14) 2px,rgba(0,0,0,.14) 4px)}}.project-btn{width:min(388px,85vw)}@media(max-height:680px){.home-desktop-bar{display:none}}.fui-panel{position:relative;container-type:inline-size;background:var(--fui-bg);overflow:hidden;min-height:0;min-width:0}.fui-panel:before{content:"";position:absolute;inset:0;z-index:0;background:var(--fui-border-dim);clip-path:polygon(var(--fui-chamfer) 0%,calc(100% - var(--fui-chamfer)) 0%,100% var(--fui-chamfer),100% calc(100% - var(--fui-chamfer)),calc(100% - var(--fui-chamfer)) 100%,var(--fui-chamfer) 100%,0% calc(100% - var(--fui-chamfer)),0% var(--fui-chamfer))}.fui-panel:after{content:"";position:absolute;inset:1px;z-index:1;background:var(--fui-bg);clip-path:polygon(var(--fui-chamfer) 0%,calc(100% - var(--fui-chamfer)) 0%,100% var(--fui-chamfer),100% calc(100% - var(--fui-chamfer)),calc(100% - var(--fui-chamfer)) 100%,var(--fui-chamfer) 100%,0% calc(100% - var(--fui-chamfer)),0% var(--fui-chamfer))}.fui-panel__content{position:relative;z-index:2;width:100%;height:100%;padding:var(--fui-panel-padding);box-sizing:border-box}.fui-panel__corner{position:absolute;z-index:3;pointer-events:none;width:calc(var(--fui-corner-arm) + 4px);height:calc(var(--fui-corner-arm) + 4px)}.fui-panel__corner--tl{top:-1px;left:-1px}.fui-panel__corner--tr{top:-1px;right:-1px}.fui-panel__corner--bl{bottom:-1px;left:-1px}.fui-panel__corner--br{bottom:-1px;right:-1px}.fui-panel__ticks{position:absolute;z-index:3;pointer-events:none}.fui-panel__ticks--top{top:-1px;left:calc(var(--fui-chamfer) + var(--fui-corner-arm));right:calc(var(--fui-chamfer) + var(--fui-corner-arm));height:var(--fui-tick-length);background:repeating-linear-gradient(to right,var(--fui-border-dim) 0px,var(--fui-border-dim) 1px,transparent 1px,transparent var(--fui-tick-spacing));mask-image:linear-gradient(to bottom,#000,#0000);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%)}.fui-panel__ticks--bottom{bottom:-1px;left:calc(var(--fui-chamfer) + var(--fui-corner-arm));right:calc(var(--fui-chamfer) + var(--fui-corner-arm));height:var(--fui-tick-length);background:repeating-linear-gradient(to right,var(--fui-border-dim) 0px,var(--fui-border-dim) 1px,transparent 1px,transparent var(--fui-tick-spacing));mask-image:linear-gradient(to top,#000,#0000);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%)}.fui-panel__ticks--left{left:-1px;top:calc(var(--fui-chamfer) + var(--fui-corner-arm));bottom:calc(var(--fui-chamfer) + var(--fui-corner-arm));width:var(--fui-tick-length);background:repeating-linear-gradient(to bottom,var(--fui-border-dim) 0px,var(--fui-border-dim) 1px,transparent 1px,transparent var(--fui-tick-spacing));mask-image:linear-gradient(to right,#000,#0000);-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%)}.fui-panel__ticks--right{right:-1px;top:calc(var(--fui-chamfer) + var(--fui-corner-arm));bottom:calc(var(--fui-chamfer) + var(--fui-corner-arm));width:var(--fui-tick-length);background:repeating-linear-gradient(to bottom,var(--fui-border-dim) 0px,var(--fui-border-dim) 1px,transparent 1px,transparent var(--fui-tick-spacing));mask-image:linear-gradient(to left,#000,#0000);-webkit-mask-image:linear-gradient(to left,rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%)}@keyframes fui-glow-pulse{0%,to{box-shadow:inset 0 0 6px var(--fui-border-faint),0 0 8px var(--fui-border-faint)}50%{box-shadow:inset 0 0 10px #ff220014,0 0 16px #ff22000f}}.fui-panel--glow{animation:fui-glow-pulse var(--fui-glow-speed) ease-in-out infinite}.fui-panel--highlight:before{background:var(--fui-border)}.fui-panel--highlight .fui-panel__corner path{stroke:var(--fui-border)}.fui-panel--ghost:after{background:transparent}.fui-panel--no-chamfer{--fui-chamfer: 0px}.fui-panel--no-ticks .fui-panel__ticks{display:none}.fui-panel--no-padding .fui-panel__content{padding:0}@container (max-width: 200px){.fui-panel__content{padding:8px}}
