.work{position:relative;width:100%;height:100vh;overflow:hidden;background:var(--background);color:var(--foreground)}.work-filter{position:fixed;top:50%;right:1.5rem;transform:translateY(-50%);display:flex;flex-direction:column;gap:2rem;z-index:100}.work-filter .filter-btn{background:none;border:none;color:var(--foreground);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10px;font-weight:400;text-transform:capitalize;letter-spacing:.05em;cursor:pointer;padding:.5rem;opacity:.3;transition:opacity .3s ease;writing-mode:vertical-rl;-webkit-text-orientation:mixed;text-orientation:mixed;transform:rotate(180deg)}.work-filter .filter-btn.active,.work-filter .filter-btn:hover{opacity:1}@media (max-width:1000px){.work-filter{position:fixed;top:auto;bottom:1.5rem;right:auto;left:50%;transform:translateX(-50%);flex-direction:row;gap:1.5rem}.work-filter .filter-btn{writing-mode:horizontal-tb;transform:none;font-size:10px}}.webgl-gallery{position:relative;width:100vw;height:100vh;overflow:hidden}.webgl-gallery canvas{display:block;width:100%;height:100%;touch-action:none}.project-label{text-align:center;color:var(--foreground);white-space:nowrap;padding:.5rem 1rem;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:4px;animation:fadeInLabel .3s ease}.project-label-name{font-size:1rem;font-weight:500;margin-bottom:.25rem;letter-spacing:-.01rem;color:var(--foreground)}.project-label-tags{font-size:.75rem;opacity:.7;text-transform:uppercase;letter-spacing:.1em;color:var(--foreground);margin:0}@keyframes fadeInLabel{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.project-label-name{font-size:.875rem}.project-label-tags{font-size:.675rem}}