@import url(https://fonts.googleapis.com/css2?family=Abhaya+Libre:wght@400;500;600;700;800&family=Bodoni+Moda:ital,opsz@1,6..96&family=Press+Start+2P&family=VT323&display=swap);@font-face{font-family:Redaction;src:url('/assets/Redaction100-Regular.otf') format('opentype')}@font-face{font-family:Redaction-Bold;src:url('/assets/Redaction100-Bold.otf') format('opentype')}@font-face{font-family:Redaction-50;src:url('/assets/Redaction50-Regular.otf') format('opentype')}:root{--bg:#0d0d0d;--ink:#ffffff;--dot-near:#333;--dot-far:#aaa;--monitor-bg:#000000}[data-theme=light]{--bg:#fcfcfc;--ink:#0d0d0d;--dot-near:#ccc;--dot-far:#555;--monitor-bg:#0a0a0a}[data-theme=light] .link-item,[data-theme=light] .title-link{font-weight:800}*,::after,::before{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;image-rendering:pixelated;transition:background-color 250ms cubic-bezier(.77, 0, .175, 1),color 250ms cubic-bezier(.77, 0, .175, 1);perspective:1500px}#bg-plane{position:fixed;inset:0;z-index:0;pointer-events:none;will-change:transform;overflow:hidden}#grid-canvas{display:block;width:100%;height:100%;image-rendering:pixelated;transition:opacity 1s ease;filter:url(#pixel-threshold)}[data-low-perf=true] #grid-canvas{filter:none!important}.links-page #grid-canvas{opacity:1}#fg-plane{position:fixed;inset:0;z-index:10;display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:0 6vw;pointer-events:none}#fg-plane.fg-plane-centered{flex-direction:column!important;justify-content:center!important;align-items:center!important;padding:0!important;text-align:center}#fg-plane.fg-plane-centered *{--ink:var(--ink-dynamic, inherit)}.fg-plane-centered .link-item,.fg-plane-centered .title-link{color:var(--ink)!important}#ui-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;image-rendering:pixelated;image-rendering:crisp-edges;filter:url(#pixel-threshold)}[data-low-perf=true] #ui-canvas{display:none}[data-low-perf=true] #fg-plane{filter:url(#pixel-threshold);pointer-events:auto}[data-low-perf=true] #title-source,[data-low-perf=true] .link-item,[data-low-perf=true] .title-link{color:var(--ink)!important}[data-low-perf=true] #title-source span{opacity:1!important}[data-low-perf=true] .icon{color:var(--ink)!important;fill:var(--ink)!important;opacity:1!important}[data-low-perf=true] .canvas-text{opacity:1!important;pointer-events:auto}[data-mobile=true] #ui-canvas{display:none!important}[data-mobile=true] #fg-plane{image-rendering:auto!important;pointer-events:auto}[data-mobile=true] #title-source,[data-mobile=true] .link-item,[data-mobile=true] .title-link{color:var(--ink)!important}[data-mobile=true] #title-source span{opacity:1!important}[data-mobile=true] .icon{color:var(--ink)!important;fill:var(--ink)!important;opacity:1!important}[data-mobile=true] .canvas-text{opacity:1!important;pointer-events:auto}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(4px)}.modal-overlay.active{display:flex}.modal-window{background:var(--bg);border:4px solid var(--ink);width:400px;max-width:90%;position:relative;padding:0;image-rendering:pixelated;box-shadow:12px 12px 0 rgba(0,0,0,.2);filter:url(#modal-mosaic)}.modal-header{background:var(--ink);color:var(--bg);padding:3px 8px;display:flex;align-items:center;justify-content:center;position:relative;font-family:'Abhaya Libre',serif;font-style:italic;font-weight:900;font-size:14px;letter-spacing:.05em}.modal-title{flex:1;text-align:center}.modal-close-x{background:var(--bg);color:var(--ink);border:1px solid var(--ink);width:14px;height:14px;cursor:pointer;font-family:'Bodoni Moda',serif;font-weight:700;font-size:10px;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;position:absolute;right:8px}.modal-close-x:hover{background:#f55;color:#fff}.modal-body{padding:40px 20px;position:relative;text-align:center;overflow:hidden}.modal-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:70%;height:70%;opacity:.08;pointer-events:none;z-index:0}.modal-watermark svg{width:100%;height:100%;fill:var(--ink)}.modal-text{font-family:'Abhaya Libre',serif;font-weight:600;font-style:normal;font-size:1.8rem;color:var(--ink);margin-bottom:30px;position:relative;z-index:1;line-height:1.4}.modal-footer{display:flex;justify-content:center;position:relative;z-index:1}.modal-btn{background:var(--bg);color:var(--ink);border:2px solid var(--ink);padding:6px 20px;font-family:'Abhaya Libre',serif;font-style:normal;font-size:1.1rem;cursor:pointer;box-shadow:4px 4px 0 rgba(0,0,0,.1)}.modal-btn:hover{background:var(--ink);color:var(--bg);transform:translate(-2px,-2px);box-shadow:6px 6px 0 rgba(0,0,0,.1)}.modal-btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 rgba(0,0,0,.1)}.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}.canvas-text{color:var(--ink);opacity:.001;user-select:none;pointer-events:none;display:block;white-space:pre-wrap}.title-link{font-family:'Abhaya Libre',serif;font-style:italic;font-size:5rem;color:var(--ink);margin:0;letter-spacing:-2px}.links-page .title-link{font-family:VT323,monospace!important;font-style:normal;font-size:6rem;letter-spacing:0}#title-source,.title-link{font-family:'Abhaya Libre',serif;font-weight:400;font-style:italic;font-size:10.5rem;color:transparent;margin:0;letter-spacing:-2px;pointer-events:all;user-select:none}.links-page #title-source,.links-page .title-link{font-family:VT323,monospace!important;font-style:normal;font-size:6rem;letter-spacing:0}#title-source span{display:inline-block}#title-source span:first-child{margin-right:-.06em}.p-dot{display:inline-block;width:0;opacity:0;transform:scale(0);transform-origin:bottom center;transition:opacity .3s ease,width .3s ease,transform .3s ease;vertical-align:baseline;margin:0 .04em 0 .12em}#title-source:hover .p-dot{width:.12em;opacity:1;transform:scale(1)}.links{display:flex;flex-direction:column;gap:.55rem;pointer-events:all}.link-item{display:flex;align-items:center;gap:1.1rem;text-decoration:none;color:var(--ink);font-family:'Abhaya Libre',Georgia,serif;font-style:italic;font-size:clamp(1.4rem, 2.8vw, 2.1rem);font-weight:400;line-height:1;letter-spacing:.04em}.link-item[data-secret=true]{display:none}body.unlocked .link-item[data-secret=true]{display:flex}body.canvas-ready .link-item,body.canvas-ready .title-link{cursor:pointer;opacity:0!important;color:transparent!important;-webkit-text-fill-color:transparent!important;pointer-events:all}body.canvas-ready .link-item *,body.canvas-ready .title-link *{opacity:0!important;color:transparent!important}body.canvas-ready .link-item{cursor:pointer}.link-item{opacity:0;animation:slide-in .5s steps(10,end) forwards;animation-delay:calc(var(--i) * 85ms + 200ms);transition:gap .18s steps(4, end);pointer-events:all}.link-item:hover{gap:1.9rem}.link-item:hover .icon{opacity:.55}.icon{width:1.35em;height:1.35em;flex-shrink:0;image-rendering:pixelated;transition:opacity .15s steps(3, end);color:transparent;fill:transparent}.link-item span{display:block;image-rendering:pixelated}@keyframes slide-in{from{opacity:0;translate:-20px 0}to{opacity:1;translate:0 0}}.header-bar{position:fixed;top:0;left:0;width:100%;height:46px;background:var(--bg);border-bottom:2px solid var(--ink);z-index:1100;display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:0 1rem;box-sizing:border-box;image-rendering:pixelated;box-shadow:0 4px 0 rgba(0,0,0,.1)}.header-item{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-family:'Press Start 2P',cursive;font-size:8px;text-transform:lowercase;padding:8px 14px;background:var(--bg);border:2px solid var(--ink);box-shadow:4px 4px 0 rgba(0,0,0,.1);transition:transform .1s steps(2, end),box-shadow .1s steps(2, end);pointer-events:auto}.header-item:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 rgba(0,0,0,.15)}.header-item:active{transform:translate(1px,1px);box-shadow:2px 2px 0 rgba(0,0,0,.1)}.header-item svg{width:12px;height:12px;fill:var(--ink);flex-shrink:0}.header-logo-container{display:flex;align-items:center;justify-content:center;pointer-events:auto}.header-logo{width:38px;height:auto;display:block;image-rendering:pixelated}[data-theme=light] .header-logo{filter:invert(1)}.fof-page #bg-plane,.fof-page #fg-plane{filter:brightness(.7) sepia(1) hue-rotate(-55deg) saturate(6) contrast(1.2) url(#pixel-threshold)}.fof-title{font-family:Redaction-Bold,serif;font-size:60vw;line-height:1.1;margin:0;color:#ffa9a9;pointer-events:none;display:flex;justify-content:center;align-items:center;overflow:hidden}.fof-char{opacity:0;animation:fof-appear .2s steps(1) forwards}@keyframes fof-appear{to{opacity:1}}.fof-subtitle{font-family:Redaction-50,serif;font-size:20px;color:var(--ink);margin-top:-2vh;text-align:center;opacity:0;animation:fof-subtitle-fade 2s ease forwards 1.2s}@keyframes fof-subtitle-fade{to{opacity:.8}}@media (max-width:768px){#fg-plane{flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:0 5vw 10vh;gap:5vh}#title-canvas{position:relative;right:auto;top:auto;transform:none;width:min(90vw,380px)!important;height:auto!important}.link-item{font-size:clamp(.75rem, 3.5vw, 1.1rem)}}.controls-overlay{position:fixed!important;bottom:2rem!important;right:2rem!important;top:auto!important;left:auto!important;display:flex;flex-direction:column;align-items:flex-end;gap:1rem;z-index:10000;pointer-events:none}.controls-overlay>*{pointer-events:auto}[data-mobile=true] .controls-overlay{bottom:1.5rem!important;right:1.5rem!important}.discord-rpc{position:fixed;bottom:2rem;left:2rem;display:none;flex-direction:column;align-items:flex-start;gap:.8rem;z-index:1000;pointer-events:auto}.rpc-header{display:flex;align-items:center;gap:8px;margin-bottom:2px}.rpc-status-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 4px rgba(0,0,0,.2)}.rpc-status-dot.online{background:#43b581;box-shadow:0 0 8px #43b58166}.rpc-status-dot.idle{background:#faa61a}.rpc-status-dot.dnd{background:#f04747}.rpc-status-dot.offline{background:#fff}.rpc-activities-list{display:flex;flex-direction:column-reverse;gap:12px}.rpc-title{font-family:Redaction,serif;font-size:1.15rem;font-weight:400;text-transform:lowercase;color:var(--ink);opacity:.9}.rpc-content{display:flex;align-items:center;gap:1rem;padding:10px 16px 18px 16px;background:var(--bg);border:2px solid var(--ink);box-shadow:8px 8px 0 rgba(0,0,0,.15);image-rendering:auto;transition:transform .25s cubic-bezier(.215, .61, .355, 1),box-shadow .2s;width:320px;position:relative;overflow:hidden}.rpc-content:hover{transform:translateY(-4px) translateX(2px);box-shadow:10px 10px 0 rgba(0,0,0,.2)}.rpc-image-container{width:48px;height:48px;flex-shrink:0;border:1px solid var(--ink);background:var(--monitor-bg);overflow:hidden;display:none}#rpc-image{width:100%;height:100%;object-fit:cover}.rpc-details{display:flex;flex-direction:column;gap:2px;line-height:1.1;overflow:hidden}.rpc-activity{font-family:VT323,monospace;font-size:1rem;color:var(--ink);text-transform:lowercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rpc-details-text{font-family:Redaction,serif;font-size:.85rem;color:var(--ink);opacity:.7;text-transform:lowercase;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rpc-progress{position:absolute;bottom:0;left:0;width:100%;height:4px;background:rgba(128,128,128,.1);display:none;overflow:visible}.rpc-progress-bar{width:0%;height:100%;background:var(--ink);transition:width 1s linear;position:relative}.rpc-progress-bar::after{content:'';position:absolute;right:-1px;top:-6px;width:2px;height:14px;background:var(--ink);box-shadow:2px 2px 0 rgba(0,0,0,.1)}.rpc-time{font-family:Redaction,serif;font-size:.7rem;margin-top:4px;opacity:.6;text-transform:lowercase}.rpc-play-state{position:absolute;top:6px;right:8px;width:14px;height:14px;opacity:.6}.rpc-play-state svg{fill:var(--ink);width:100%;height:100%}.lang-switcher{display:flex;gap:4px;background:var(--bg);border:2px solid var(--ink);padding:2px;image-rendering:pixelated;box-shadow:4px 4px 0 rgba(0,0,0,.1)}.lang-btn{background:0 0;border:none;color:var(--ink);padding:4px 8px;font-family:'Press Start 2P',cursive;font-size:8px;cursor:pointer;transition:background .1s,color .1s;opacity:.5}.lang-btn.active{background:var(--ink);color:var(--bg);opacity:1}.lang-btn:hover:not(.active){opacity:.8;background:rgba(0,0,0,.05)}.theme-toggle{width:48px;height:48px;background:var(--bg);border:2px solid var(--ink);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;image-rendering:pixelated;box-shadow:6px 6px 0 rgba(0,0,0,.1);transition:transform .25s cubic-bezier(.215, .61, .355, 1),box-shadow .2s;overflow:hidden}.theme-toggle:hover{transform:scale(1.1);box-shadow:8px 8px 0 rgba(0,0,0,.15)}#theme-icon-container{position:relative;width:100%;height:100%;transition:transform 250ms cubic-bezier(.77, 0, .175, 1)}#moon-icon{position:absolute;top:50%;left:50%;width:18px;height:18px;background:0 0;border-radius:50%;box-shadow:-6px -2px 0 0 var(--ink);transform:translate(0,-35%);transition:opacity .2s cubic-bezier(.615, .61, .255, 1);transition-delay:80ms}#sun-icon{position:absolute;top:50%;left:50%;width:14px;height:14px;background:var(--ink);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:opacity .2s cubic-bezier(.215, .61, .355, 1)}#particles span{position:absolute;color:var(--ink);font-family:'Press Start 2P',monospace;font-size:8px;opacity:0}[data-theme=dark] #particles span::after{content:'z'}[data-theme=dark] .p1{animation:float-zzz 2s steps(8) infinite;left:10%;top:20%}[data-theme=dark] .p2{animation:float-zzz 2s steps(8) infinite .6s;left:20%;top:10%}[data-theme=dark] .p3{animation:float-zzz 2s steps(8) infinite 1.2s;left:15%;top:30%}@keyframes float-zzz{0%{transform:translate(0,0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translate(10px,-20px);opacity:0}}#sun-icon::before{content:'';position:absolute;top:6px;left:6px;width:2px;height:2px;background:0 0;opacity:0;box-shadow:0 -9px 0 var(--ink),0 -11px 0 var(--ink),0 -13px 0 var(--ink),0 9px 0 var(--ink),0 11px 0 var(--ink),0 13px 0 var(--ink),-9px 0 0 var(--ink),-11px 0 0 var(--ink),-13px 0 0 var(--ink),9px 0 0 var(--ink),11px 0 0 var(--ink),13px 0 0 var(--ink),-7px -7px 0 var(--ink),-9px -9px 0 var(--ink),7px -7px 0 var(--ink),9px -9px 0 var(--ink),-7px 7px 0 var(--ink),-9px 9px 0 var(--ink),7px 7px 0 var(--ink),9px 9px 0 var(--ink);border:none;border-radius:0}[data-theme=light] #theme-icon-container{transform:rotate(180deg)}[data-theme=light] #moon-icon{opacity:0}[data-theme=light] #sun-icon{opacity:1}[data-theme=light] #sun-icon::before{opacity:1;animation:rotate-rayz 3s linear infinite}@keyframes rotate-rayz{from{transform:rotate(0)}to{transform:rotate(360deg)}}.secret-link{display:none}.secret-link.summoned{display:flex;margin-left:-200px;opacity:0;animation:slide-in-brabos .8s cubic-bezier(.22,1,.36,1) forwards}@keyframes slide-in-brabos{to{margin-left:0;opacity:1}}#theme-toggle:hover{transform:scale(1.1)}#theme-toggle:active{transform:scale(.9)}@media (max-width:768px){#theme-toggle{bottom:1.5rem;right:1.5rem}}.monitor-frame{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);height:90vh;width:calc(90vh * 1.33333333333);max-width:95vw;background:var(--monitor-bg);box-shadow:0 0 60px rgba(0,0,0,.6),inset 0 0 100px #000;z-index:10;overflow:hidden;border:2px solid #1a1a1a}.links-page #fg-plane{position:absolute;inset:0;flex-direction:column;justify-content:flex-start;align-items:center;padding:2.5rem;overflow-y:auto;overflow-x:hidden;pointer-events:all;scrollbar-width:thin;scrollbar-color:#ffffff transparent}.boot-hide{display:none!important}.ready .boot-hide{display:flex!important;animation:monitor-flicker-in .4s steps(4) forwards}[data-boot]{display:none}.booting [data-boot].active{display:block}@keyframes monitor-flicker-in{100%{opacity:1;transform:scale(1)}}.monitor-frame::after{content:"";position:absolute;inset:0;z-index:1000;background:linear-gradient(transparent 50%,rgba(0,0,0,.05) 50%);background-size:100% 4px;pointer-events:none;animation:scanline-flicker .1s infinite}.terminal-header{width:100%;margin-bottom:2rem;border-bottom:1px solid var(--ink);padding-bottom:10px}.bios-info{font-family:VT323,monospace;font-size:1.1rem;text-transform:uppercase;line-height:1.4;color:var(--ink);opacity:.15}.links-container{width:100%;max-width:1000px;display:flex;flex-direction:column;align-items:center;gap:2rem;padding-bottom:2rem}.category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;width:100%}.link-category{padding:1.8rem 1.4rem;border:3px double var(--ink);position:relative;background:rgba(255,255,255,.05);min-height:360px;box-sizing:border-box;display:flex;flex-direction:column}.link-category h2{font-family:VT323,monospace;font-size:1.6rem;position:absolute;top:-1.1rem;left:1rem;background:var(--monitor-bg);padding:0 10px;opacity:.01}.links-page .link-item{font-family:VT323,monospace;font-size:1.25rem;font-style:normal;gap:.5rem;animation:none;opacity:1}.link-item.highlight span{background:var(--ink);color:var(--bg);padding:2px 4px}.terminal-footer{width:100%;margin-top:3rem;padding:20px 0;border-top:1px dashed var(--ink);display:flex;flex-direction:column;align-items:center;gap:1rem}.sys-btn{background:0 0;border:1px solid var(--ink);color:var(--ink);font-family:VT323,monospace;font-size:1.2rem;padding:5px 15px;cursor:pointer;transition:all .2s steps(4)}.sys-btn:hover{background:#fff;color:#000}.back-btn{position:fixed;bottom:2rem;left:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--ink);background:var(--bg);border:2px solid var(--ink);border-radius:0;z-index:1000;text-decoration:none;image-rendering:pixelated;box-shadow:6px 6px 0 rgba(0,0,0,.1);transition:transform .25s cubic-bezier(.215, .61, .355, 1),box-shadow .2s,background .3s ease;filter:url(#pixel-threshold)}[data-low-perf=true] .back-btn{filter:none!important}.back-btn svg{width:1.2rem;height:1.2rem;fill:currentColor}.back-btn:hover{transform:scale(1.15);background:rgba(128,128,128,.15);color:var(--ink)}.links-page .monitor-frame,.links-page .monitor-frame *{--ink:#ffffff!important}.links-page .monitor-frame{border-color:#fff!important}.links-page .terminal-header{border-bottom-color:#fff!important}.links-page .link-category{border-color:#fff!important}.links-page .terminal-footer{border-top-color:#fff!important}.links-page .sys-btn{border-color:#fff!important;color:#fff!important}