:root{--color-bg:#0a0a0a;--color-bg-dark:#050505;--color-phosphor:#7cff8c;--color-phosphor-dim:#4a9954;--color-phosphor-glow:#7cff8c26;--color-accent-purple:#9b7aff;--color-accent-purple-glow:#9b7aff33;--color-white:#f0f0f0;--color-gray-100:#e0e0e0;--color-gray-300:#999;--color-gray-500:#666;--color-gray-700:#333;--color-gray-800:#1a1a1a;--color-gray-900:#111;--font-mono:"JetBrains Mono", "Courier New", monospace;--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-white);scrollbar-width:none;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{display:none}#root{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}.terminal-boot{background:var(--color-bg-dark);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.terminal-exit{z-index:1100;font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.1em;border:1px solid var(--color-gray-700);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all var(--transition-normal);cursor:pointer;background:#0a0a0acc;border-radius:4px;padding:.5rem 1rem;font-size:.75rem;position:fixed;bottom:2rem;left:2rem}.terminal-exit:hover{color:var(--color-phosphor);border-color:var(--color-phosphor-dim);background:#7cff8c0d;box-shadow:0 0 15px #7cff8c1a}.terminal-exit kbd{background:var(--color-gray-800);border:1px solid var(--color-gray-700);font-family:var(--font-mono);border-radius:3px;margin-right:.4em;padding:.1em .4em;font-size:.7rem;display:inline-block}.screen-a{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.boot-log{font-family:var(--font-mono);color:var(--color-phosphor);width:90%;max-width:600px;font-size:clamp(.85rem,1.5vw,1.1rem);line-height:2}.boot-line{opacity:0;white-space:nowrap;text-shadow:0 0 8px #7cff8c99,0 0 20px #7cff8c4d;overflow:hidden}.boot-line.visible,.boot-line.typing{opacity:1}.boot-line.access-granted{color:#fff;text-shadow:0 0 12px #7cff8ccc,0 0 30px #7cff8c66;margin-top:.5em;font-size:1.2em;font-weight:700}.boot-cursor{background:var(--color-phosphor);vertical-align:text-bottom;width:.6em;height:1.1em;margin-left:2px;animation:.7s step-end infinite blink-cursor;display:inline-block}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.screen-b{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.crt-monitor{background:radial-gradient(#0d1a0e 0%,#050a06 70%,#020503 100%);border:2px solid #7cff8c1f;border-radius:18px;width:min(700px,90vw);padding:2.5rem 3rem;position:relative;overflow:hidden;box-shadow:0 0 40px #7cff8c0f,0 0 80px #7cff8c08,inset 0 0 60px #00000080}.crt-monitor:before{content:"";pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000026 2px 4px);border-radius:18px;position:absolute;inset:0}.crt-monitor:after{content:"";pointer-events:none;z-index:3;background:radial-gradient(#0000 50%,#0009 100%);border-radius:18px;position:absolute;inset:0}.crt-header{z-index:4;border-bottom:1px solid #7cff8c26;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex;position:relative}.crt-header-title{font-family:var(--font-mono);color:var(--color-phosphor-dim);letter-spacing:.2em;text-transform:uppercase;font-size:.7rem}.crt-file-id{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.1em;font-size:.6rem}.dossier-fields{z-index:4;flex-direction:column;gap:.6rem;display:flex;position:relative}.dossier-row{border-left:2px solid var(--color-phosphor-dim);opacity:0;align-items:baseline;gap:1rem;padding:.4rem 0 .4rem .75rem;transition:all .4s;display:flex;transform:translate(-8px)}.dossier-row.revealed{opacity:1;transform:translate(0)}.dossier-label{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.15em;text-transform:uppercase;flex-shrink:0;min-width:160px;font-size:.7rem}.dossier-value{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.05em;text-shadow:0 0 6px #7cff8c66;font-size:.85rem;font-weight:600}.dossier-footer{z-index:4;border-top:1px solid #7cff8c26;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:.75rem;display:flex;position:relative}.clearance-badge{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.15em;border:1px solid var(--color-phosphor-dim);background:#7cff8c0d;border-radius:3px;align-items:center;gap:.5rem;padding:.3rem .8rem;font-size:.65rem;display:inline-flex}.clearance-badge .dot{background:var(--color-phosphor);width:6px;height:6px;box-shadow:0 0 6px var(--color-phosphor);border-radius:50%;animation:2s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.timestamp-stamp{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.1em;font-size:.6rem}.screen-c{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;width:100%;height:100%;padding:2rem;display:flex}.glitch-box{border:1px solid var(--color-gray-700);width:min(650px,90vw);font-family:var(--font-mono);opacity:0;background:#0f0f0fe6;border-radius:6px;padding:1.5rem 2rem;transition:all .5s;position:relative;transform:translateY(10px)}.glitch-box.revealed{opacity:1;transform:translateY(0)}.glitch-box.glitch-in{animation:.6s forwards glitch-reveal}@keyframes glitch-reveal{0%{opacity:0;filter:hue-rotate(90deg);transform:translateY(10px)skew(2deg)}30%{opacity:.7;filter:hue-rotate();transform:translateY(-2px)skew(-1deg)}60%{opacity:.9;transform:translateY(1px)skew(.5deg)}to{opacity:1;filter:none;transform:translateY(0)skew(0)}}.mission-label{color:var(--color-phosphor-dim);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.75rem;font-size:.65rem}.mission-text{color:var(--color-gray-100);letter-spacing:.03em;font-size:.85rem;line-height:1.7}.dir-header{color:var(--color-phosphor);text-shadow:0 0 6px #7cff8c66;margin-bottom:1rem;font-size:.8rem}.dir-line{opacity:0;align-items:center;gap:.75rem;padding:.35rem 0;font-size:.8rem;transition:all .4s;display:flex;transform:translate(-5px)}.dir-line.revealed{opacity:1;transform:translate(0)}.dir-line .dir-arrow{color:var(--color-phosphor);font-weight:700}.dir-line .dir-name{color:var(--color-gray-100)}.dir-line .dir-meta{color:var(--color-gray-500);font-size:.7rem}.glitch-text{position:relative}.glitch-text:before,.glitch-text:after{content:attr(data-text);opacity:0;width:100%;height:100%;position:absolute;top:0;left:0}.glitch-text.active:before{color:#ff006e;z-index:-1;opacity:.7;animation:.3s ease-in-out glitch-chromatic-1}.glitch-text.active:after{color:#00f0ff;z-index:-1;opacity:.7;animation:.3s ease-in-out glitch-chromatic-2}@keyframes glitch-chromatic-1{0%,to{clip-path:inset(0);transform:translate(0)}20%{clip-path:inset(20% 0 60%);transform:translate(-3px,1px)}40%{clip-path:inset(50% 0 10%);transform:translate(3px,-1px)}60%{clip-path:inset(10% 0 70%);transform:translate(-2px,2px)}80%{clip-path:inset(70% 0 5%);transform:translate(2px,-2px)}}@keyframes glitch-chromatic-2{0%,to{clip-path:inset(0);transform:translate(0)}20%{clip-path:inset(60% 0 10%);transform:translate(3px,-1px)}40%{clip-path:inset(10% 0 60%);transform:translate(-3px,1px)}60%{clip-path:inset(70% 0 5%);transform:translate(2px,-2px)}80%{clip-path:inset(5% 0 70%);transform:translate(-2px,2px)}}.hack-out-overlay{z-index:1200;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.screen-c.glitching-out{animation:.5s ease-in forwards screen-glitch-out}@keyframes screen-glitch-out{0%{opacity:1;filter:none;transform:none}30%{opacity:.8;filter:hue-rotate(90deg)brightness(2);transform:skew(5deg)translate(10px)}60%{opacity:.4;filter:hue-rotate(180deg)saturate(3);transform:skew(-8deg)translate(-20px)scaleY(1.1)}to{opacity:0;filter:brightness(5)blur(4px);transform:skew(15deg)translate(50px)scaleY(.1)}}.name-reveal{font-family:var(--font-display);color:#fff;text-align:center;letter-spacing:.1em;font-size:clamp(2rem,6vw,4.5rem);font-weight:700;position:relative}.name-char{opacity:0;animation:80ms forwards char-glitch-in;display:inline-block;position:relative}.name-char.space{width:.3em}@keyframes char-glitch-in{0%{opacity:0;transform:translateY(var(--offset-y,20px)) translateX(var(--offset-x,10px));filter:blur(4px);color:var(--color-phosphor)}50%{opacity:.8;transform:translateY(calc(var(--offset-y,20px) * -.3)) translateX(calc(var(--offset-x,10px) * -.5));filter:blur(1px);color:#ff006e}to{opacity:1;filter:blur();color:#fff;transform:translateY(0)translate(0)}}.name-reveal.final-glitch{animation:.4s ease-in-out name-final-glitch}@keyframes name-final-glitch{0%{filter:none;transform:none}15%{filter:hue-rotate(90deg)brightness(3);text-shadow:3px 0 #ff006e,-3px 0 #00f0ff;transform:skew(10deg)}30%{filter:hue-rotate(180deg);text-shadow:-5px 0 #ff006e,5px 0 #00f0ff;transform:skew(-5deg)translate(5px)}50%{filter:hue-rotate(270deg)brightness(2);text-shadow:2px 0 #ff006e,-2px 0 #00f0ff;transform:skew(3deg)translate(-3px)}70%{filter:brightness(5);text-shadow:none;transform:none}to{filter:none;opacity:0;transform:none}}.fade-to-black{z-index:1150;opacity:0;background:#000;animation:.3s ease-in forwards fade-black;position:fixed;inset:0}@keyframes fade-black{to{opacity:1}}@media (width<=600px){.crt-monitor{padding:1.5rem}.dossier-row{flex-direction:column;gap:.2rem}.dossier-label{min-width:unset}.glitch-box{padding:1rem 1.25rem}.terminal-exit{bottom:1rem;left:1rem}}.intro-page{background:var(--color-bg);min-height:100vh;animation:.8s forwards intro-fade-in;position:relative}@keyframes intro-fade-in{0%{opacity:0}to{opacity:1}}@media (hover:hover) and (pointer:fine){.custom-cursor-root,.custom-cursor-root *{cursor:none!important}.custom-cursor{mix-blend-mode:difference;pointer-events:none;z-index:9999;will-change:transform;background:#fff;border-radius:50%;width:28px;height:28px;margin-top:-14px;margin-left:-14px;transition:width .15s,height .15s,margin .15s;position:fixed;top:0;left:0;transform:translate(-200px,-200px)}}.intro-header{z-index:100;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.5rem 3rem;display:grid;position:fixed;top:0;left:0;right:0}.header-fade-mask{-webkit-backdrop-filter:blur(6px)saturate(.9);pointer-events:none;z-index:99;background:linear-gradient(#0a0a0af2 0%,#0a0a0aa6 52%,#0a0a0a00 100%);height:100px;position:fixed;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 0% 55%,#0000 100%);mask-image:linear-gradient(#000 0% 55%,#0000 100%)}.intro-logo{font-family:var(--font-display);color:var(--color-white);letter-spacing:.02em;font-size:1.1rem;font-weight:700}.intro-logo .logo-dot{color:var(--color-phosphor)}.intro-email{font-family:var(--font-mono);color:var(--color-gray-300);letter-spacing:.05em;transition:color var(--transition-normal);white-space:nowrap;grid-column:2;justify-self:center;font-size:.8rem}.intro-email:hover{color:var(--color-phosphor)}.intro-nav{grid-column:3;justify-self:end;gap:2.5rem;display:flex}.intro-nav a{font-family:var(--font-body);color:var(--color-gray-300);letter-spacing:.15em;text-transform:uppercase;transition:color var(--transition-normal);padding-bottom:4px;font-size:.8rem;font-weight:500;position:relative}.intro-nav a:after{content:"";background:var(--color-phosphor);width:0;height:1px;transition:width var(--transition-normal);position:absolute;bottom:0;left:0}.intro-nav a:hover{color:var(--color-white)}.intro-nav a:hover:after{width:100%}.intro-main{justify-content:space-between;align-items:center;min-height:100vh;padding:0 5vw;display:flex;position:relative}.intro-left{z-index:10;flex-direction:column;flex:1;justify-content:center;padding-left:2vw;display:flex}.intro-greeting{font-family:var(--font-body);color:var(--color-phosphor);letter-spacing:.03em;opacity:0;margin-bottom:.5rem;font-size:clamp(.9rem,1.5vw,1.15rem);font-weight:400;animation:.6s .2s forwards slide-up}.intro-name{font-family:var(--font-display);color:var(--color-white);letter-spacing:-.01em;opacity:0;font-size:clamp(2.2rem,5vw,4rem);font-weight:700;line-height:1.1;animation:.6s .4s forwards slide-up}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.intro-center{z-index:5;flex:1.2;justify-content:center;align-items:center;display:flex;position:relative}.character-placeholder{justify-content:center;align-items:center;width:clamp(280px,30vw,420px);height:clamp(350px,40vw,520px);display:flex;position:relative}.placeholder-orb{filter:blur(1px);background:radial-gradient(at 50% 40%,#7cff8c26 0%,#9b7aff1a 30%,#7cff8c0d 50%,#0000 70%);border-radius:50% 50% 45% 45%;width:100%;height:100%;animation:4s ease-in-out infinite orb-pulse;position:relative}.placeholder-orb:before{content:"";background:radial-gradient(circle at 50% 45%,#7cff8c33 0%,#9b7aff26 25%,#0000 60%);border-radius:50%;animation:3s ease-in-out infinite reverse orb-inner-pulse;position:absolute;inset:10%}.placeholder-orb:after{content:"";filter:blur(20px);background:radial-gradient(#7cff8c1a 0%,#9b7aff14 40%,#0000 70%);border-radius:50%;height:40%;position:absolute;bottom:-10%;left:10%;right:10%}@keyframes orb-pulse{0%,to{opacity:.8;transform:scale(1)translateY(0)}50%{opacity:1;transform:scale(1.05)translateY(-8px)}}@keyframes orb-inner-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.placeholder-particle{background:var(--color-phosphor);opacity:0;border-radius:50%;width:3px;height:3px;animation:6s ease-in-out infinite float-particle;position:absolute}.placeholder-particle:first-child{animation-delay:0s;top:20%;left:10%}.placeholder-particle:nth-child(2){animation-delay:1.5s;top:40%;right:5%}.placeholder-particle:nth-child(3){animation-delay:3s;bottom:30%;left:15%}.placeholder-particle:nth-child(4){animation-delay:.8s;top:15%;right:15%}.placeholder-particle:nth-child(5){animation-delay:2.2s;bottom:20%;right:10%}.placeholder-particle:nth-child(6){animation-delay:4s;top:60%;left:5%}@keyframes float-particle{0%,to{opacity:0;transform:translateY(0)scale(.5)}25%{opacity:.6;transform:translateY(-15px)scale(1)}50%{opacity:.9;transform:translateY(-25px)scale(1.2)}75%{opacity:.4;transform:translateY(-35px)scale(.8)}}.intro-right{text-align:right;z-index:10;flex-direction:column;flex:1;justify-content:center;align-items:flex-end;padding-right:2vw;display:flex}.creative-label{font-family:var(--font-display);color:var(--color-gray-300);letter-spacing:.1em;opacity:0;margin-bottom:.3rem;font-size:clamp(.85rem,1.2vw,1rem);font-weight:400;animation:.6s .6s forwards slide-up}.cycling-words{opacity:0;padding-bottom:.1em;animation:.6s .8s forwards slide-up;position:relative;overflow:hidden}.cycling-pair{will-change:transform, opacity;flex-direction:column;align-items:flex-end;display:flex}.cycling-pair--current{opacity:1;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .6s;position:relative;transform:translateY(0)}.cycling-pair--current.cycling-pair--exit{opacity:0;transform:translateY(-110%)}.cycling-pair--next{opacity:0;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .6s;position:absolute;top:0;left:0;right:0;transform:translateY(110%)}.cycling-pair--next.cycling-pair--enter{opacity:1;transform:translateY(0)}.cycle-word{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;font-weight:700;line-height:1.1}.cycle-word-1{color:var(--color-white);font-size:clamp(1.8rem,4vw,3.2rem)}.cycle-word-2{color:var(--color-white);-webkit-text-stroke:1.5px var(--color-gray-300);-webkit-text-fill-color:transparent;font-size:clamp(2.2rem,5vw,4rem)}.intro-socials{z-index:50;border-radius:50px;flex-direction:column;gap:.5rem;padding:.6rem .5rem;display:flex;position:fixed;bottom:2rem;left:3rem}.social-icon{width:40px;height:40px;color:var(--color-gray-500);border-radius:50%;justify-content:center;align-items:center;transition:color .25s,background .25s,box-shadow .25s,transform .2s;display:flex}.social-icon:hover{color:var(--color-phosphor);background:#7cff8c1a;transform:scale(1.08);box-shadow:0 0 0 1px #7cff8c33,0 0 18px #7cff8c1f}.social-icon svg{flex-shrink:0;width:20px;height:20px}.intro-bg-glow{pointer-events:none;z-index:0;background:radial-gradient(circle,#7cff8c08 0%,#9b7aff05 30%,#0000 60%);border-radius:50%;width:120vmax;height:120vmax;animation:8s ease-in-out infinite bg-breathe;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes bg-breathe{0%,to{opacity:.5;transform:translate(-50%,-50%)scale(1)}50%{opacity:.8;transform:translate(-50%,-50%)scale(1.05)}}.bio-scroll-wrapper{z-index:20;width:100%;height:150vh;position:relative}.bio-sticky-content{will-change:opacity;justify-content:center;align-items:center;height:100vh;padding:0 12vw;display:flex;position:sticky;top:0}.bio-text{font-family:var(--font-body);color:var(--color-white);text-align:center;max-width:1100px;font-size:clamp(1.3rem,2.6vw,2.3rem);line-height:1.65}.bio-text span{opacity:.15;will-change:opacity;transition:opacity 80ms linear}.hub-scroll-wrapper{z-index:10;width:100%;height:420vh;margin-top:-150vh;position:relative}.hub-sticky-content{will-change:opacity;justify-content:center;align-items:center;height:100vh;display:flex;position:sticky;top:0}.hub-container{--explode-progress:0;justify-content:center;align-items:center;width:100%;max-width:1300px;padding:0 2rem;display:flex;position:relative}.hub-cover-card{border:1px solid var(--color-phosphor);z-index:20;will-change:opacity;background:#0a0a0a;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;width:360px;height:500px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 40px #7cff8c14,inset 0 0 60px #7cff8c05}.hub-cover-label{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.25em;font-size:1rem;font-weight:600}.hub-cover-sub{font-family:var(--font-body);color:var(--color-gray-500);letter-spacing:.08em;font-size:.72rem}.hub-cards{z-index:30;will-change:opacity, transform;transform-origin:50%;align-items:center;gap:1.8rem;display:flex}.hub-card-wrapper{will-change:transform;flex-shrink:0}.hub-card-wrapper--01{transform:translateX(calc((1 - var(--explode-progress)) * 450px))}.hub-card-wrapper--02{transform:translateX(calc((1 - var(--explode-progress)) * 150px))}.hub-card-wrapper--03{transform:translateX(calc((1 - var(--explode-progress)) * -150px))}.hub-card-wrapper--04{transform:translateX(calc((1 - var(--explode-progress)) * -450px))}.hub-card-inner{border:1px solid var(--color-gray-700);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0a0ae6;border-radius:16px;width:360px;height:500px;text-decoration:none;transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s,border-color .4s;display:block;position:relative;overflow:hidden}.hub-card-inner:hover{border-color:var(--color-phosphor);transform:translateY(-12px)scale(1.02);box-shadow:0 20px 50px #7cff8c1f,0 0 0 1px #7cff8c26,inset 0 0 40px #7cff8c08}.hub-card-inner.glow-pulse{animation:1.5s cubic-bezier(.25,.46,.45,.94) forwards hubGlowPulse}@keyframes hubGlowPulse{0%{border-color:var(--color-phosphor);transform:translateY(-8px)scale(1.02);box-shadow:0 0 40px #7cff8c66,0 0 0 1px #7cff8ccc,inset 0 0 40px #7cff8c1a}to{border-color:var(--color-gray-700);box-shadow:none;transform:translateY(0)scale(1)}}.hub-card-visual{pointer-events:none;opacity:.35;justify-content:center;align-items:center;padding:2rem 1.75rem;transition:opacity .4s,transform .4s;display:flex;position:absolute;inset:0 0 40%}.hub-card-inner:hover .hub-card-visual{opacity:.8;transform:translateY(-4px)}.preview-experience{flex-direction:column;gap:.75rem;width:100%;display:flex}.preview-experience span{font-family:var(--font-mono);color:var(--color-gray-300);text-transform:uppercase;letter-spacing:.1em;opacity:.5;font-size:.75rem;transition:opacity .3s}.hub-card-inner:hover .preview-experience span{opacity:1}.hub-card-inner:hover .preview-experience span:first-child{transition-delay:0s}.hub-card-inner:hover .preview-experience span:nth-child(2){transition-delay:.1s}.hub-card-inner:hover .preview-experience span:nth-child(3){transition-delay:.2s}.preview-projects{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%;display:flex}.proj-chip{font-family:var(--font-mono);color:var(--color-gray-100);border:1px solid var(--color-gray-700);letter-spacing:.1em;text-transform:uppercase;background:#ffffff05;border-radius:4px;padding:.3rem .6rem;font-size:.65rem}.hub-card-inner:hover .proj-chip{border-color:var(--color-gray-500);background:#ffffff0d}.preview-repos{grid-template-columns:repeat(7,1fr);gap:3px;width:100%;max-width:180px;display:grid}.mini-heat-cell{aspect-ratio:1;background:var(--color-gray-800);border-radius:2px}.mini-heat-cell.heat-1{background:#7cff8c33}.mini-heat-cell.heat-2{background:#7cff8c80}.mini-heat-cell.heat-3{background:#7cff8ce6}.preview-skills{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.hub-card-default{flex-direction:column;gap:.4rem;padding:1.75rem;transition:transform .4s,opacity .4s;display:flex;position:absolute;bottom:0;left:0;right:0}.hub-card-inner:hover .hub-card-default{opacity:.3;transform:translateY(6px)}.hub-card-index{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.08em;font-size:.75rem;transition:color .3s}.hub-card-inner:hover .hub-card-index{color:var(--color-phosphor)}.hub-card-title{font-family:var(--font-display);color:var(--color-white);letter-spacing:.04em;text-transform:uppercase;font-size:1.35rem;font-weight:700}.hub-card-preview{opacity:0;pointer-events:none;background:linear-gradient(135deg,#7cff8c0f 0%,#9b7aff0a 100%);flex-direction:column;justify-content:center;gap:1rem;padding:2rem 1.75rem;transition:opacity .4s,transform .4s;display:flex;position:absolute;inset:0;transform:translateY(12px)}.hub-card-inner:hover .hub-card-preview{opacity:1;transform:translateY(0)}.hub-preview-tag{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.2em;text-transform:uppercase;background:#7cff8c1a;border:1px solid #7cff8c33;border-radius:4px;width:fit-content;padding:.25rem .6rem;font-size:.68rem}.hub-preview-text{font-family:var(--font-body);color:var(--color-gray-100);font-size:.9rem;font-weight:400;line-height:1.6}.hub-card-wrapper--01 .hub-card-inner{background:#7cff8c05}.hub-card-wrapper--02 .hub-card-inner{background:#9b7aff05}.hub-card-wrapper--03 .hub-card-inner{background:#7cff8c04}.hub-card-wrapper--04 .hub-card-inner{background:#9b7aff04}.hub-card-inner:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#7cff8c66,#0000);height:1px;transition:opacity .4s;position:absolute;top:0;left:10%;right:10%}.hub-card-inner:hover:before{opacity:1}.hub-settle-overlay{opacity:0;pointer-events:none;z-index:25;will-change:opacity, transform;flex-direction:column;justify-content:flex-start;align-items:center;gap:2rem;height:auto;margin-top:220px;padding:0 8vw;display:flex;position:absolute;top:50%;left:0;right:0}.hub-settle-divider{opacity:0;transform-origin:50%;will-change:opacity, transform;background:linear-gradient(90deg,#0000 0%,#7cff8c40 20%,#7cff8c80 50%,#7cff8c40 80%,#0000 100%);width:100%;max-width:900px;height:1px;transform:scaleX(.3)}.hub-settle-text{text-align:center;width:100%;max-width:860px}.hub-settle-para{font-family:var(--font-body);color:var(--color-white);font-size:clamp(1.05rem,2.1vw,1.65rem);line-height:1.7}.hub-settle-span{opacity:.1;will-change:opacity, transform;transition:opacity .12s cubic-bezier(.215,.61,.355,1),transform .18s cubic-bezier(.215,.61,.355,1);display:inline-block}@media (width<=1024px){.intro-main{text-align:center;flex-direction:column;justify-content:center;gap:2rem;padding:6rem 2rem 4rem}.intro-left{align-items:center;padding-top:4rem;padding-left:0}.intro-right{text-align:right;align-items:center;padding-right:0}.cycling-pair,.cycling-pair--current,.cycling-pair--next{align-items:center}.intro-center{order:-1}.character-placeholder{width:200px;height:250px}.intro-header{grid-template-columns:1fr auto 1fr;padding:1rem 1.5rem}.intro-nav{gap:1.5rem}.intro-socials{border-radius:50px;flex-direction:row;gap:.5rem;padding:.5rem .6rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.hub-cards{flex-wrap:wrap;justify-content:center;gap:1rem}.hub-card-inner{width:200px;height:280px}.hub-card-wrapper--01,.hub-card-wrapper--02,.hub-card-wrapper--03,.hub-card-wrapper--04{transform:none}}@media (width<=600px){.intro-email{display:none}.intro-nav{gap:1rem}.intro-nav a{font-size:.7rem}.hub-card-inner{width:160px;height:240px}.hub-card-title{font-size:1rem}}.radar-transition{z-index:10;background:#0a0a0a;justify-content:center;align-items:center;width:100%;padding:6rem 0 2rem;display:flex;position:relative}.rt-line{background:linear-gradient(90deg,#0000,#7cff8c80,#0000);flex:1;height:1px;animation:3s infinite pulse-line}.rt-text{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.3em;text-transform:uppercase;text-shadow:0 0 10px #7cff8c66;padding:0 2rem;font-size:.75rem;animation:4s infinite glitch-text}@keyframes pulse-line{0%{opacity:.2}50%{opacity:1;box-shadow:0 0 15px var(--color-phosphor)}to{opacity:.2}}@keyframes glitch-text{0%,to{opacity:1;transform:translate(0)}92%{opacity:1;transform:translate(0)}94%{opacity:.4;transform:translate(-3px)}96%{opacity:1;filter:drop-shadow(0 0 8px var(--color-phosphor));transform:translate(3px)}98%{opacity:.8;transform:translate(0)}}.intro-radar-section{z-index:10;background:linear-gradient(#0a0a0a 0%,#050505 100%);flex-direction:column;align-items:center;padding:2rem 0 8rem;display:flex;position:relative}.radar-header{text-align:center;margin-bottom:2rem}.radar-header h2{font-family:var(--font-display);color:var(--color-white);letter-spacing:.05em;margin-bottom:.8rem;font-size:2.5rem}.radar-header p{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.15em;text-transform:uppercase;font-size:.85rem}.pop-text{opacity:0;filter:blur(4px);will-change:opacity, transform, filter;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s cubic-bezier(.16,1,.3,1);transform:scale(.95)translateY(20px)}.pop-text.is-visible{opacity:1;filter:blur();transform:scale(1)translateY(0)}.ml-wrapper{z-index:15;width:100%;height:580vh;margin-top:-100vh;position:relative}.ml-sticky{box-sizing:border-box;background:var(--color-bg);will-change:opacity;flex-direction:column;height:100vh;padding-top:88px;display:flex;position:sticky;top:0;overflow:hidden}.ml-header{border-bottom:1px solid #7cff8c0f;flex-shrink:0;align-items:center;gap:1.2rem;height:64px;padding:0 6vw;display:flex}.ml-header-label{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.3em;text-transform:uppercase;opacity:.75;white-space:nowrap;font-size:.7rem}.ml-header-rule{background:linear-gradient(90deg,#7cff8c2e 0%,#0000 100%);flex:1;max-width:320px;height:1px}.ml-header-count{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.22em;white-space:nowrap;opacity:.55;font-size:.58rem}.ml-columns{flex:1;gap:0;min-height:0;display:flex;overflow:hidden}.ml-spine{border-right:1px solid #7cff8c0d;flex-direction:column;flex-shrink:0;justify-content:space-around;width:280px;padding:2.5rem 0 2.5rem 6vw;display:flex;position:relative}.ml-rail{z-index:0;background:#7cff8c14;width:1px;position:absolute;top:2.5rem;bottom:2.5rem;left:calc(6vw + 17px);overflow:hidden}.ml-rail-fill{will-change:height;background:linear-gradient(#7cff8cb3 0%,#7cff8c4d 100%);width:100%;height:0%;transition:height 80ms linear;position:absolute;top:0;left:0;box-shadow:0 0 8px #7cff8c40}.ml-checkpoint{z-index:2;cursor:pointer;pointer-events:auto;will-change:opacity, transform;align-items:center;gap:1rem;transition:opacity .12s linear,transform .2s;display:flex;position:relative}.ml-checkpoint:hover{transform:translate(4px)}.ml-checkpoint:hover .ml-node{box-shadow:0 0 10px #7cff8c40}.ml-checkpoint--failed:hover .ml-node{box-shadow:0 0 10px #ff7c7c40}.ml-node-wrap{background:var(--color-bg);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.ml-node{will-change:width, height, box-shadow;border-radius:50%;justify-content:center;align-items:center;transition:width .22s,height .22s,background .22s,border-color .22s,box-shadow .22s;display:flex}.ml-checkpoint[data-state=future] .ml-node{background:0 0;border:1.5px solid #7cff8c2e;width:14px;height:14px}.ml-checkpoint[data-state=past] .ml-node{background:#7cff8c73;border:none;width:10px;height:10px;box-shadow:0 0 4px #7cff8c33}.ml-checkpoint[data-state=active] .ml-node{border:1.5px solid var(--color-phosphor);background:0 0;width:36px;height:36px;box-shadow:0 0 0 6px #7cff8c14,0 0 0 3px #7cff8c26,0 0 22px #7cff8c66}.ml-node-num{font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-phosphor);opacity:0;-webkit-user-select:none;user-select:none;font-size:.62rem;font-weight:600;transition:opacity .22s}.ml-checkpoint[data-state=active] .ml-node-num{opacity:1}.ml-cp-info{overflow:hidden}.ml-cp-code{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-gray-500);white-space:nowrap;font-size:.58rem;transition:color .22s}.ml-checkpoint[data-state=active] .ml-cp-code{color:var(--color-phosphor)}.ml-checkpoint[data-state=past] .ml-cp-code{color:#7cff8c59}.ml-checkpoint--failed[data-state=past] .ml-node{background:#ff7c7c59}.ml-checkpoint--failed[data-state=active] .ml-node{border-color:#ff7c7c;box-shadow:0 0 0 6px #ff7c7c12,0 0 0 3px #ff7c7c1f,0 0 18px #ff7c7c59}.ml-checkpoint--failed[data-state=active] .ml-node-num,.ml-checkpoint--failed[data-state=active] .ml-cp-code{color:#ff7c7c}.ml-checkpoint--ongoing[data-state=active] .ml-node-num{color:var(--color-phosphor)}.ml-cards-area{flex:1;align-items:center;min-height:0;padding:0 5vw;display:flex;position:relative;overflow:hidden}.ml-card{opacity:0;will-change:opacity, transform;pointer-events:none;flex-direction:column;justify-content:center;padding:0 5vw 0 2vw;transition:opacity .2s,transform .2s;display:flex;position:absolute;inset:0}.ml-card-inner{background:#0e0e0eeb;border:1px solid #7cff8c17;border-radius:20px;max-width:700px;padding:2.8rem 3.2rem;position:relative;overflow:hidden}.ml-card-inner:before{content:"";background:linear-gradient(90deg,#0000 0%,#7cff8c59 50%,#0000 100%);height:1px;position:absolute;top:0;left:10%;right:10%}.ml-card-inner:after{content:"";background:linear-gradient(#0000 0%,#7cff8c66 50%,#0000 100%);border-radius:2px;width:2px;position:absolute;top:20%;bottom:20%;left:0}.ml-card--failed .ml-card-inner{border-color:#ff7c7c1f}.ml-card--failed .ml-card-inner:before{background:linear-gradient(90deg,#0000 0%,#ff7c7c4d 50%,#0000 100%)}.ml-card--failed .ml-card-inner:after{background:linear-gradient(#0000 0%,#ff7c7c59 50%,#0000 100%)}.ml-card--ongoing .ml-card-inner{border-color:#7cff8c2e;box-shadow:0 0 40px #7cff8c0a}.ml-card-eyebrow{align-items:center;gap:.75rem;margin-bottom:1.4rem;display:flex}.ml-card-log-id{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.18em;opacity:.65;font-size:.62rem}.ml-card-eyebrow-sep{color:#7cff8c40;font-family:var(--font-mono);font-size:.62rem}.ml-card-eyebrow-code{font-family:var(--font-mono);color:var(--color-gray-400);letter-spacing:.2em;text-transform:uppercase;font-size:.62rem}.ml-card--failed .ml-card-eyebrow-code{color:#ff7c7cbf}.ml-card-title{font-family:var(--font-display);color:var(--color-white);letter-spacing:-.01em;text-transform:uppercase;margin-bottom:1.2rem;font-size:clamp(1.9rem,3.2vw,2.6rem);font-weight:700;line-height:1.15}.ml-card--failed .ml-card-title{color:#f0ebebeb}.ml-card-body{font-family:var(--font-body);color:var(--color-gray-300);max-width:600px;margin-bottom:1.6rem;font-size:clamp(.9rem,1.35vw,1.05rem);line-height:1.72}.ml-card-tags{flex-wrap:wrap;gap:.45rem;margin-bottom:1.4rem;display:flex}.ml-card-tag{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.1em;background:#7cff8c12;border:1px solid #7cff8c2e;border-radius:4px;padding:.2rem .6rem;font-size:.6rem;transition:background .1s linear}.ml-card--failed .ml-card-tag{color:#ff9898;background:#ff7c7c0f;border-color:#ff7c7c2e}.ml-card-status{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--color-gray-500);border-top:1px solid #7cff8c12;align-items:center;gap:.55rem;padding-top:.8rem;font-size:.6rem;display:flex}.ml-card-status--failed{color:#ff7c7c99;border-top-color:#ff7c7c14}.ml-card-status--ongoing{color:var(--color-phosphor);opacity:.85;border-top-color:#7cff8c1f}.ml-status-pip{opacity:.6;background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.ml-card-status--ongoing .ml-status-pip{animation:1.4s ease-in-out infinite pip-blink}@keyframes pip-blink{0%,to{opacity:.6}50%{opacity:1}}@media (width<=1024px){.ml-spine{width:220px}.ml-card-title{font-size:1.7rem}.ml-card-body{font-size:.92rem}}@media (width<=768px){.ml-columns{flex-direction:column}.ml-spine{border-bottom:1px solid #7cff8c0f;border-right:none;flex-flow:row;justify-content:flex-start;align-items:center;gap:1rem;width:100%;height:auto;padding:1rem 4vw;overflow-x:auto}.ml-rail{display:none}.ml-checkpoint{flex-direction:column;align-items:center;gap:.4rem;min-width:60px}.ml-cp-info{text-align:center}.ml-card-inner{padding:1.8rem 1.6rem}.ml-card-title{font-size:1.4rem}}.sw-section{color:#fff;width:100%;font-family:var(--font-body);background-color:#0a0a0a;position:relative}.sw-sticky{justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.sw-inner{gap:4rem;width:100%;max-width:1600px;height:80vh;margin:0 auto;padding:0 5vw;display:flex}.sw-left{flex-direction:column;flex:1;justify-content:center;display:flex}.sw-right{flex:1.2;justify-content:center;align-items:center;display:flex;position:relative}.sw-eyebrow{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.15em;margin-bottom:1rem;font-size:.8rem}.sw-eyebrow-slash{color:var(--color-phosphor)}.sw-heading{letter-spacing:-.02em;margin-bottom:3rem;font-size:clamp(3rem,5vw,4.5rem);font-weight:800;line-height:1}.sw-list{flex-direction:column;gap:1rem;margin-bottom:3rem;display:flex}.sw-item{color:var(--color-gray-500);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:1rem;padding:0;transition:color .3s;display:flex}.sw-item--active{color:#fff}.sw-item-index{font-family:var(--font-mono);font-size:.8rem}.sw-item-name{font-size:1.5rem;font-weight:700}.sw-item-line{background:#ffffff1a;flex:1;height:1px;margin-left:1rem;transition:background .3s}.sw-item--active .sw-item-line{background:var(--color-phosphor)}.sw-meta{flex-direction:column;gap:1.5rem;animation:.5s fadeIn;display:flex}@keyframes fadeIn{to{opacity:1}}.sw-meta-tag{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.1em;font-size:.8rem}.sw-meta-desc{color:var(--color-gray-300);max-width:90%;font-size:1.1rem;line-height:1.6}.sw-meta-stack{flex-wrap:wrap;gap:.5rem;display:flex}.sw-chip{font-family:var(--font-mono);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;padding:.4rem .8rem;font-size:.75rem}.sw-launch{font-family:var(--font-mono);color:#000;background:var(--color-phosphor);border-radius:4px;align-items:center;gap:.5rem;width:max-content;margin-top:1rem;padding:.8rem 1.5rem;font-size:.85rem;font-weight:700;text-decoration:none;transition:transform .3s;display:inline-flex}.sw-launch:hover{transform:translateY(-2px)}.sw-launch-arrow{width:14px;height:14px}.sw-controls{align-items:center;gap:2rem;margin-top:4rem;display:flex}.sw-progress-rail{background:#ffffff1a;width:150px;height:2px;position:relative}.sw-progress-fill{background:var(--color-phosphor);height:100%;transition:width .3s}.sw-dots{gap:.5rem;display:flex}.sw-dot{cursor:pointer;background:#fff3;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .3s}.sw-dot--active{background:var(--color-phosphor)}.sw-counter{font-family:var(--font-mono);color:var(--color-gray-500);font-size:.8rem}.sw-card{opacity:0;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .5s,transform .5s;display:flex;position:absolute;transform:translateY(40px)}.sw-card--active{opacity:1;pointer-events:auto;transform:translateY(0)}.sw-card--past{transform:translateY(-40px)}.sw-card--upcoming{transform:translateY(40px)}.sw-frame{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 20px 40px #00000080}.sw-frame--browser{aspect-ratio:16/10;width:100%}.sw-browser-chrome{background:#2a2a2a;align-items:center;gap:.5rem;height:32px;padding:0 1rem;display:flex}.sw-browser-dot{background:#ff5f56;border-radius:50%;width:10px;height:10px}.sw-browser-dot:nth-child(2){background:#ffbd2e}.sw-browser-dot:nth-child(3){background:#27c93f}.sw-browser-bar{height:20px;font-family:var(--font-mono);color:var(--color-gray-500);background:#0000004d;border-radius:4px;flex:1;align-items:center;margin-left:1rem;padding:0 .5rem;font-size:.6rem;display:flex}.sw-frame--phone{aspect-ratio:9/19.5;border:8px solid #2a2a2a;border-radius:36px;height:90%}.sw-phone-chrome{z-index:10;justify-content:center;width:100%;height:30px;display:flex;position:absolute;top:0;left:0}.sw-phone-notch{background:#2a2a2a;border-bottom-right-radius:12px;border-bottom-left-radius:12px;width:40%;height:20px}.sw-frame-screen{width:100%;height:calc(100% - 32px);position:relative}.sw-frame-screen--phone{height:100%}.sw-frame-img{object-fit:contain;width:100%;height:100%}.sw-card-scrim{background:linear-gradient(#0000,#000c);flex-direction:column;gap:.5rem;width:100%;padding:2rem;display:flex;position:absolute;bottom:0;left:0}.sw-card-name{font-size:1.5rem;font-weight:700}.sw-card-tag{font-family:var(--font-mono);color:var(--color-phosphor);font-size:.8rem}.sw-cta-container{z-index:50;margin-top:4rem}.sw-archive-btn{color:var(--color-phosphor);font-family:var(--font-mono);letter-spacing:.15em;cursor:pointer;text-transform:uppercase;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-size:.85rem;display:flex}.sw-archive-arrow{transition:transform .3s}.sw-archive-btn:hover .sw-archive-arrow{transform:translate(5px)}.sw-glitch-layer{background:0 0;animation:.4s steps(2,end) infinite swGlitchFlash;position:absolute;inset:0}.sw-black-layer{opacity:0;background:#000;animation:.3s forwards swFadeToBlack;position:absolute;inset:0}@keyframes swGlitchFlash{0%{-webkit-backdrop-filter:invert()hue-rotate(180deg);backdrop-filter:invert()hue-rotate(180deg)}50%{-webkit-backdrop-filter:blur(10px)contrast(200%);backdrop-filter:blur(10px)contrast(200%)}to{-webkit-backdrop-filter:none;backdrop-filter:none}}@keyframes swFadeToBlack{0%{opacity:0}to{opacity:1}}.sw-transition-wrapper{z-index:9999;pointer-events:none;position:fixed;inset:0}.sw-glitch-layer{-webkit-backdrop-filter:invert(.8)contrast(200%);backdrop-filter:invert(.8)contrast(200%);background:#7cff8c0d;animation:.3s steps(2,end) infinite swRepoGlitch;position:absolute;inset:0}.sw-black-layer{background:#0a0a0a;position:absolute;inset:0}@keyframes swRepoGlitch{0%{filter:drop-shadow(-4px 0 #f00c)drop-shadow(4px 0 #7cff8ccc);clip-path:polygon(0 0,100% 0,100% 45%,0 45%,0 55%,100% 55%,100% 100%,0 100%);transform:translate(0)}25%{filter:drop-shadow(4px 0 #f00c)drop-shadow(-4px 0 #7cff8ccc);clip-path:polygon(0 0,100% 0,100% 20%,0 20%,0 80%,100% 80%,100% 100%,0 100%);transform:translate(-10px,5px)}50%{filter:drop-shadow(-6px 0 red)drop-shadow(6px 0 #7cff8c);clip-path:inset(10% 0 30%);transform:translate(10px,-5px)}75%{filter:drop-shadow(5px 0 #ff0000e6)drop-shadow(-5px 0 #0000ffe6);clip-path:inset(50% 0 10%);transform:translate(-5px,2px)}to{filter:none;clip-path:none;transform:translate(0)}}.pa-overlay{z-index:1000;font-family:var(--font-body);cursor:none;background:#0a0a0a;position:fixed;inset:0;overflow:hidden auto}.pa-overlay::-webkit-scrollbar{width:8px}.pa-overlay::-webkit-scrollbar-track{background:#ffffff05}.pa-overlay::-webkit-scrollbar-thumb{background:#7cff8c26;border-radius:4px}.pa-custom-cursor{pointer-events:none;z-index:9999;mix-blend-mode:difference;border:1px solid #ffffff4d;border-radius:50%;width:20px;height:20px;transition:width .3s,height .3s,border-color .3s,background .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.pa-cursor-radar .pa-custom-cursor{border-color:var(--color-phosphor);background:#7cff8c1a;border-style:dashed;width:40px;height:40px;animation:4s linear infinite rotateSlow}@keyframes rotateSlow{to{transform:translate(-50%,-50%)rotate(360deg)}}.pa-scroll-track{width:100%;position:relative}.pa-sticky-stage{justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.pa-project-layer{will-change:opacity, transform;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pa-bg-gradient{z-index:0;position:absolute;inset:0}.pa-hero-container{z-index:5;will-change:transform;width:100vw;height:100vh;position:absolute}.pa-hero-img{object-fit:cover;will-change:filter;width:100%;height:100%}.pa-hero-scrim{pointer-events:none;background:#000;transition:opacity .3s;position:absolute;inset:0}.pa-text-container{z-index:10;pointer-events:none;will-change:transform, opacity;position:absolute;bottom:8vh;left:10vw}.pa-project-title{font-family:var(--font-body);color:#fff;letter-spacing:-.02em;margin-bottom:1.5rem;font-size:4rem;font-weight:800;line-height:1}.pa-project-lines{flex-direction:column;gap:.5rem;display:flex}.pa-project-line{font-family:var(--font-mono);color:var(--color-gray-300);letter-spacing:.05em;will-change:transform, opacity;font-size:1.1rem}.pa-hotspot-ring{cursor:pointer;z-index:15;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;transform:translate(-50%,-50%)}.pa-hotspot-core{background:var(--color-phosphor);width:8px;height:8px;box-shadow:0 0 10px var(--color-phosphor);border-radius:50%}.pa-hotspot-pulse{border:1px solid var(--color-phosphor);border-radius:50%;width:100%;height:100%;animation:2s cubic-bezier(.25,1,.5,1) infinite pulseRing;position:absolute}@keyframes pulseRing{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(2.5)}}.pa-hotspot-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;pointer-events:none;z-index:20;background:#0a0a0acc;border:1px solid #7cff8c33;border-radius:12px;width:320px;padding:2rem;transition:opacity .3s,transform .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.95);box-shadow:0 20px 40px #00000080}.pa-hotspot-card.visible{opacity:1;transform:translate(-50%,-50%)scale(1)}.pa-hc-title{font-family:var(--font-body);color:var(--color-phosphor);margin-bottom:.8rem;font-size:1.2rem;font-weight:700}.pa-hc-desc{font-family:var(--font-body);color:var(--color-gray-400);white-space:pre-line;font-size:.9rem;line-height:1.6}.pa-exit-layer{background:#0a0a0a;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pa-exit-content{flex-direction:column;align-items:center;gap:3rem;display:flex}.pa-exit-heading{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.3em;text-transform:uppercase;font-size:1.2rem}.pa-exit-btn{color:var(--color-phosphor);font-family:var(--font-mono);letter-spacing:.15em;cursor:pointer;background:0 0;border:1px solid #7cff8c33;border-radius:4px;padding:1rem 2rem;font-size:1rem;transition:all .3s;position:relative}.pa-exit-btn:hover{background:#7cff8c1a;box-shadow:0 0 20px #7cff8c33}.pa-black-overlay{z-index:9999;opacity:0;pointer-events:none;background:#000;transition:opacity;position:fixed;inset:0}.pa-overlay--collapse .pa-sticky-stage{opacity:.5;transition:transform .4s cubic-bezier(.5,0,0,1),opacity .4s;transform:scale(.95)}.pa-overlay--glitch .pa-sticky-stage{animation:.3s steps(2,end) infinite heavyGlitch}.pa-overlay--black .pa-black-overlay{opacity:1}@keyframes heavyGlitch{0%{filter:drop-shadow(-4px 0 #f00c)drop-shadow(4px 0 #7cff8ccc);clip-path:polygon(0 0,100% 0,100% 45%,0 45%,0 55%,100% 55%,100% 100%,0 100%);transform:translate(0)}25%{filter:drop-shadow(4px 0 #f00c)drop-shadow(-4px 0 #7cff8ccc);clip-path:polygon(0 0,100% 0,100% 20%,0 20%,0 80%,100% 80%,100% 100%,0 100%);transform:translate(-10px,5px)}50%{filter:drop-shadow(-6px 0 red)drop-shadow(6px 0 #7cff8c);clip-path:inset(10% 0 30%);transform:translate(10px,-5px)}75%{filter:drop-shadow(5px 0 #ff0000e6)drop-shadow(-5px 0 #0000ffe6);clip-path:inset(50% 0 10%);transform:translate(-5px,2px)}to{filter:none;clip-path:none;transform:translate(0)}}.pa-project-link{font-family:var(--font-mono);color:#000;background:var(--color-phosphor);will-change:transform, opacity;pointer-events:auto;border-radius:4px;align-items:center;gap:.5rem;width:max-content;margin-top:1.5rem;padding:.8rem 1.5rem;font-size:.85rem;font-weight:700;text-decoration:none;transition:transform .3s,background .3s;display:inline-flex}.pa-project-link:hover{background:#fff;transform:translateY(-2px)}.pa-link-arrow{width:14px;height:14px}.pa-overlay{animation:1.2s cubic-bezier(.2,1,.3,1) forwards paEntryFade}@keyframes paEntryFade{0%{opacity:0;filter:blur(20px);transform:scale(1.05)}to{opacity:1;filter:blur();transform:scale(1)}}.radar-layout-wrapper{justify-content:center;align-items:center;width:100%;margin-top:2rem;display:flex;position:relative}.radar-container{perspective:1200px;z-index:10;border-radius:50%;justify-content:center;align-items:center;width:500px;height:500px;display:flex;position:relative}.radar-grid{background:radial-gradient(circle,#7cff8c0a 0%,#0000 60%);border:1px solid #7cff8c26;border-radius:50%;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 80px #7cff8c08}.radar-ring{border:1px solid #7cff8c14;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring-1{width:25%;height:25%}.ring-2{width:50%;height:50%}.ring-3{width:75%;height:75%}.ring-4{width:100%;height:100%}.radar-crosshair{background:#7cff8c14;position:absolute}.cross-x{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.cross-y{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.radar-sweep{background:linear-gradient(90deg, var(--color-phosphor) 0%, transparent 100%);transform-origin:0%;opacity:.6;pointer-events:none;border-radius:50%;width:50%;height:2px;animation:6s linear infinite radar-scan;position:absolute;top:50%;left:50%;box-shadow:0 -10px 40px 10px #7cff8c26}@keyframes radar-scan{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar-blips{width:100%;height:100%;transform-style:preserve-3d;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.radar-blip-wrapper{will-change:transform, opacity;cursor:crosshair;transition:opacity .1s linear;position:absolute;top:50%;left:50%}.blip-inner{align-items:center;gap:10px;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.blip-dot{background:var(--color-phosphor);width:6px;height:6px;box-shadow:0 0 12px var(--color-phosphor);border-radius:50%;transition:transform .4s,box-shadow .4s}.blip-label{font-family:var(--font-mono);color:var(--color-phosphor);text-shadow:0 0 8px #7cff8c66;opacity:.7;white-space:nowrap;letter-spacing:.05em;font-size:.75rem;transition:opacity .3s}.radar-blip-wrapper[data-hovered=true]{z-index:1000!important;opacity:1!important}.radar-blip-wrapper[data-hovered=true] .blip-inner{transform:scale(1.3)translate(15px,-15px)}.radar-blip-wrapper[data-hovered=true] .blip-dot{box-shadow:0 0 20px var(--color-phosphor), 0 0 40px var(--color-phosphor);transform:scale(1.6)}.radar-blip-wrapper[data-hovered=true] .blip-label{opacity:1;font-weight:700}.radar-converge-point{opacity:0;background:#fff;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 20px 10px #7cff8c00}.target-lock-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;pointer-events:none;background:#050505b3;border:1px solid #7cff8c33;border-radius:16px;width:320px;padding:2.5rem 2rem;transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1);position:absolute;left:calc(50% + 280px);transform:translate(-20px);box-shadow:0 20px 50px #00000080,inset 0 0 40px #7cff8c08}.target-lock-panel.is-active{opacity:1;transform:translate(0)}.tl-header{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.2em;margin-bottom:.5rem;font-size:.7rem}.tl-tech{font-family:var(--font-display);color:var(--color-white);margin-bottom:2rem;font-size:1.8rem}.tl-section{margin-bottom:1.5rem}.tl-label{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;font-size:.65rem;display:block}.tl-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.tl-list li,.tl-desc,.tl-confidence{font-family:var(--font-body);color:var(--color-gray-100);font-size:.9rem;line-height:1.5}.tl-confidence{color:var(--color-phosphor);font-family:var(--font-mono);letter-spacing:.05em}@media (width<=1100px){.target-lock-panel{display:none}}@media (width<=768px){.radar-container{width:320px;height:320px}}.mini-radar-container{border-radius:inherit;background:radial-gradient(circle,#0a0a0a 0%,#050505 100%);justify-content:center;align-items:center;width:100%;height:100%;min-height:150px;display:flex;position:relative;overflow:hidden}.mr-bloom{pointer-events:none;z-index:0;background:radial-gradient(circle,#7cff8c1a 0%,#0000 60%);width:120%;height:120%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mr-corner{z-index:2;border:1px solid #7cff8c66;width:15px;height:15px;margin:10px;position:absolute}.mr-corner.top-left{border-bottom:none;border-right:none;top:0;left:0}.mr-corner.top-right{border-bottom:none;border-left:none;top:0;right:0}.mr-corner.bottom-left{border-top:none;border-right:none;bottom:0;left:0}.mr-corner.bottom-right{border-top:none;border-left:none;bottom:0;right:0}.mr-core{z-index:5;border-radius:50%;width:110px;height:110px;position:relative}.mr-grid{background:radial-gradient(circle,#7cff8c0d 0%,#0000 70%);border:1px solid #7cff8c33;border-radius:50%;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 20px #7cff8c1a}.mr-ring{border:1px solid #7cff8c26;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mr-ring-1{opacity:.5;border-style:dashed;width:33%;height:33%}.mr-ring-2{width:66%;height:66%}.mr-ring-3{width:100%;height:100%}.mr-crosshair{background:#7cff8c26;position:absolute}.mr-cross-x{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.mr-cross-y{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.mr-sweep{transform-origin:0 0;pointer-events:none;z-index:6;background:conic-gradient(from 180deg at 0 0,#7cff8c80 0deg,#7cff8c0d 45deg,#0000 90deg);border-radius:0 100% 0 0;width:50%;height:50%;animation:3s linear infinite mr-scan;position:absolute;top:50%;left:50%}@keyframes mr-scan{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mr-nodes{z-index:7;position:absolute;inset:0}.mr-node{background:var(--color-phosphor);width:3px;height:3px;box-shadow:0 0 5px var(--color-phosphor);border-radius:50%;animation:2s infinite alternate mr-blink;position:absolute;transform:translate(-50%,-50%)}.mr-node.active{width:4px;height:4px;box-shadow:0 0 10px 2px var(--color-phosphor);background:#fff}@keyframes mr-blink{0%{opacity:.4}to{opacity:1}}.mr-center-pulse{background:#fff;border-radius:50%;width:4px;height:4px;animation:1.5s infinite mr-core-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px 4px #7cff8c66}@keyframes mr-core-pulse{0%,to{box-shadow:0 0 5px 2px #7cff8c4d}50%{box-shadow:0 0 15px 5px #7cff8c99}}.skills-radar-composition{--r:16px;grid-template-columns:calc(18.75 * var(--r)) 1fr calc(21.875 * var(--r));gap:calc(2 * var(--r));width:100%;max-width:calc(87.5 * var(--r));z-index:10;align-items:center;min-height:80vh;margin:0 auto;padding-top:10vh;display:grid;position:relative}.skills-radar-composition.is-preview{--r:13px;min-height:auto;padding-top:0}.skills-radar-composition.is-miniature{--r:3.5px;width:calc(87.5 * var(--r));height:calc(50 * var(--r));pointer-events:none;min-height:auto;padding-top:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.skills-radar-composition.is-miniature *{pointer-events:none!important}.skills-radar-composition.is-miniature:not(.target-acquired){opacity:.8;filter:grayscale(20%);transition:all .5s}.skills-radar-composition.is-miniature.target-acquired{opacity:1;filter:grayscale(0%);transition:all .5s}.skills-radar-composition.is-miniature.target-acquired .sr-radar-sweep{filter:brightness(1.5)}@media (width<=1200px){.skills-radar-composition:not(.is-miniature){text-align:center;justify-items:center;gap:calc(4 * var(--r));grid-template-rows:auto auto auto;grid-template-columns:1fr}}.sr-left-hud{gap:calc(1.5 * var(--r));opacity:0;transform:translateX(-calc(1.25 * var(--r)));flex-direction:column;transition:opacity .8s,transform .8s;display:flex}.boot-5-up .sr-left-hud{opacity:1;transform:translate(0)}.sr-mono-label{font-family:var(--font-mono);font-size:calc(.8 * var(--r));color:var(--color-phosphor);letter-spacing:.2em;opacity:.8}.sr-title{font-family:var(--font-display);font-size:clamp(calc(2 * var(--r)), 4vw, calc(3 * var(--r)));color:var(--color-white);text-shadow:0 0 calc(1.25 * var(--r)) #7cff8c33;font-weight:700;line-height:1.1}.sr-subtitle{font-family:var(--font-mono);font-size:calc(.75 * var(--r));color:var(--color-gray-500);letter-spacing:.15em;text-transform:uppercase;max-width:calc(15.625 * var(--r));line-height:1.5}@media (width<=1200px){.sr-subtitle{margin:0 auto}}.sr-status-grid{gap:calc(3 * var(--r));margin-top:calc(2 * var(--r));padding-top:calc(1.5 * var(--r));border-top:1px solid #7cff8c1a;display:flex}@media (width<=1200px){.sr-status-grid{justify-content:center}}.sr-status-block{gap:calc(.4 * var(--r));flex-direction:column;display:flex}.sr-status-label{font-family:var(--font-mono);font-size:calc(.65 * var(--r));color:var(--color-gray-500);letter-spacing:.1em}.sr-status-value{font-family:var(--font-mono);font-size:calc(.85 * var(--r));font-weight:700}.sr-status-value.online{color:var(--color-phosphor);align-items:center;gap:calc(.4 * var(--r));display:flex}.sr-dot{width:calc(.375 * var(--r));height:calc(.375 * var(--r));background:var(--color-phosphor);box-shadow:0 0 calc(.5 * var(--r)) var(--color-phosphor);border-radius:50%;animation:2s infinite pulse-dot}.sr-status-value.active-scan{color:var(--color-phosphor)}.sr-center-radar{width:100%;max-width:calc(37.5 * var(--r));aspect-ratio:1;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.sr-radar-bloom{pointer-events:none;z-index:0;opacity:0;background:radial-gradient(circle,#7cff8c1f 0%,#7cff8c05 40%,#0000 70%);width:120%;height:120%;transition:opacity 2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.boot-2-up .sr-radar-bloom{opacity:1}.sr-corner{width:calc(1.875 * var(--r));height:calc(1.875 * var(--r));z-index:2;opacity:0;border:1px solid #7cff8c4d;transition:opacity 1s;position:absolute}.boot-1-up .sr-corner{opacity:1}.top-left{border-bottom:none;border-right:none;top:0;left:0}.top-right{border-bottom:none;border-left:none;top:0;right:0}.bottom-left{border-top:none;border-right:none;bottom:0;left:0}.bottom-right{border-top:none;border-left:none;bottom:0;right:0}.sr-radar-core{inset:calc(2 * var(--r));perspective:calc(75 * var(--r));z-index:10;opacity:0;border-radius:50%;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);position:absolute;transform:scale(.9)}.boot-2-up .sr-radar-core{opacity:1;transform:scale(1)}.sr-radar-grid{box-shadow:0 0 calc(6.25 * var(--r)) #7cff8c14 inset, 0 0 calc(2.5 * var(--r)) #7cff8c0d;background:radial-gradient(circle,#7cff8c0d 0%,#0000 60%);border:2px solid #7cff8c33;border-radius:50%;position:absolute;inset:0;overflow:hidden}.sr-radar-ring{border:1px solid #7cff8c26;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sr-ring-1{opacity:.5;border-style:dashed;width:20%;height:20%}.sr-ring-2{width:40%;height:40%}.sr-ring-3{opacity:.5;border-style:dashed;width:60%;height:60%}.sr-ring-4{width:80%;height:80%}.sr-ring-5{width:100%;height:100%}.sr-radar-crosshair{background:#7cff8c26;position:absolute}.sr-cross-x{height:1px;top:50%;left:0;right:0;transform:translateY(-50%)}.sr-cross-y{width:1px;top:0;bottom:0;left:50%;transform:translate(-50%)}.sr-hash-marks{pointer-events:none;background:conic-gradient(#0000 0deg,#7cff8c33 1deg,#0000 2deg) 0 0/100% 100%;border-radius:50%;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#0000 68%,#000 70%);mask-image:radial-gradient(#0000 68%,#000 70%)}.sr-radar-sweep{transform-origin:50%;opacity:0;pointer-events:none;z-index:5;mix-blend-mode:plus-lighter;width:100%;height:100%;filter:drop-shadow(0 0 calc(5px * var(--r,1)) #7cff8c80);background:conic-gradient(#7cff8c00 0deg 270deg,#7cff8c1a 330deg,#7cff8ccc 359deg,#7cff8c 360deg);border-radius:50%;transition:opacity 1s;position:absolute;top:0;left:0}.boot-1-up .sr-radar-sweep{opacity:.9}.sr-radar-blips{width:100%;height:100%;transform-style:preserve-3d;opacity:0;transition:opacity 1s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.boot-3-up .sr-radar-blips{opacity:1}.sr-blip-wrapper{will-change:transform, opacity;cursor:crosshair;transition:opacity .1s linear;position:absolute;top:50%;left:50%}.sr-blip-inner{align-items:center;gap:calc(.625 * var(--r));filter:drop-shadow(0 0 calc(var(--illum,0) * calc(2.5 * var(--r))) #7cff8ce6) brightness(calc(1 + var(--illum,0) * 1.5));transition:transform .4s cubic-bezier(.16,1,.3,1),filter .1s;display:flex;position:relative}.sr-blip-dot{width:calc(.375 * var(--r));height:calc(.375 * var(--r));background:color-mix(in srgb, #fff calc(var(--illum,0) * 80%), var(--color-phosphor));box-shadow:0 0 calc(calc(.9375 * var(--r)) + var(--illum,0) * calc(1.5 * var(--r))) calc(2px + var(--illum,0) * 3px) var(--color-phosphor);transform:scale(calc(1 + var(--illum,0) * .8));border-radius:50%;transition:transform .1s,box-shadow .1s,background .1s;position:relative}.sr-blip-dot:after{content:"";border:1px solid rgba(124, 255, 140, calc(var(--illum,0) * .8));transform:scale(calc(.5 + var(--illum,0) * 1.5));opacity:calc(var(--illum,0));border-radius:50%;transition:transform .1s,opacity .1s;position:absolute;inset:-200%}.sr-blip-label{font-family:var(--font-mono);font-size:calc(.75 * var(--r));color:color-mix(in srgb, #fff calc(var(--illum,0) * 80%), var(--color-phosphor));text-shadow:0 0 calc(calc(.625 * var(--r)) + var(--illum,0) * calc(1.25 * var(--r))) rgba(124, 255, 140, calc(.6 + var(--illum,0) * .4));opacity:calc(.7 + var(--illum,0) * .3);white-space:nowrap;letter-spacing:.05em;transition:opacity .1s,color .1s,text-shadow .1s}.sr-blip-wrapper[data-hovered=true]{z-index:1000!important;opacity:1!important}.sr-blip-wrapper[data-hovered=true] .sr-blip-inner{transform:scale(1.4) translate(calc(.9375 * var(--r)), -calc(.9375 * var(--r)))}.sr-blip-wrapper[data-hovered=true] .sr-blip-dot{box-shadow:0 0 calc(1.5625 * var(--r)) calc(.3125 * var(--r)) var(--color-phosphor), 0 0 calc(3.125 * var(--r)) #7cff8c80;background:#fff;transform:scale(1.8)}.sr-blip-wrapper[data-hovered=true] .sr-blip-label{opacity:1;color:#fff;font-weight:700}.sr-converge-point{width:calc(.375 * var(--r));height:calc(.375 * var(--r));box-shadow:0 0 calc(1.875 * var(--r)) calc(.625 * var(--r)) #7cff8c66;background:#fff;border-radius:50%;animation:2s infinite core-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes core-pulse{0%,to{box-shadow:0 0 calc(1.25 * var(--r)) calc(.3125 * var(--r)) #7cff8c4d;transform:translate(-50%,-50%)scale(1)}50%{box-shadow:0 0 calc(2.5 * var(--r)) calc(.9375 * var(--r)) #7cff8c80;transform:translate(-50%,-50%)scale(1.2)}}.sr-radar-footer-text{bottom:-calc(3 * var(--r));font-family:var(--font-mono);font-size:calc(.7 * var(--r));color:var(--color-gray-500);letter-spacing:.15em;align-items:center;gap:calc(1 * var(--r));opacity:0;transition:opacity 1s;display:flex;position:absolute}.boot-5-up .sr-radar-footer-text{opacity:.6}.sr-pulse-icon{font-size:calc(1 * var(--r));animation:4s linear infinite spin-icon;display:inline-block}@keyframes spin-icon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sr-right-hud{justify-content:flex-end;width:100%;display:flex}@media (width<=1200px){.sr-right-hud{justify-content:center}}.sr-target-lock{width:100%;max-width:calc(21.875 * var(--r));border-radius:calc(.75 * var(--r));padding:calc(2 * var(--r));-webkit-backdrop-filter:blur(calc(1.25 * var(--r)));backdrop-filter:blur(calc(1.25 * var(--r)));opacity:0;transform:translateX(calc(1.25 * var(--r)));pointer-events:none;box-shadow:0 calc(1.25 * var(--r)) calc(3.125 * var(--r)) #00000080, inset 0 0 calc(1.875 * var(--r)) #7cff8c0d;min-height:calc(25 * var(--r));background:#050505d9;border:1px solid #7cff8c33;flex-direction:column;transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1);display:flex}.sr-target-lock.is-active{opacity:1;transform:translate(0)}.boot-4-up .sr-target-lock{opacity:.5;transform:translate(0)}.boot-4-up .sr-target-lock.is-active{opacity:1}.sr-tl-header{font-family:var(--font-mono);font-size:calc(.75 * var(--r));color:var(--color-phosphor);letter-spacing:.15em;margin-bottom:calc(1.5 * var(--r));align-items:center;gap:calc(.6 * var(--r));display:flex}.sr-tl-status-dot{width:calc(.375 * var(--r));height:calc(.375 * var(--r));background:var(--color-phosphor);box-shadow:0 0 calc(.5 * var(--r)) var(--color-phosphor);border-radius:50%}.sr-tl-icon-right{opacity:.5;font-size:calc(1 * var(--r));margin-left:auto}.sr-tl-tech{font-family:var(--font-display);font-size:calc(2.2 * var(--r));color:var(--color-white);margin-bottom:calc(2 * var(--r));text-transform:uppercase}.sr-tl-section{margin-bottom:calc(1.5 * var(--r))}.sr-tl-label{font-family:var(--font-mono);font-size:calc(.65 * var(--r));color:var(--color-gray-500);letter-spacing:.1em;text-transform:uppercase;margin-bottom:calc(.6 * var(--r));display:block}.sr-tl-bullets{gap:calc(.4 * var(--r));flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sr-tl-bullets li{font-family:var(--font-body);font-size:calc(.85 * var(--r));color:var(--color-gray-100);align-items:center;gap:calc(.5 * var(--r));display:flex}.sr-tl-bullets li:before{content:"•";color:var(--color-gray-500)}.sr-tl-desc{font-family:var(--font-body);font-size:calc(.85 * var(--r));color:var(--color-gray-100);line-height:1.5}.sr-tl-confidence-text{font-family:var(--font-mono);font-size:calc(.8 * var(--r));color:var(--color-phosphor);margin-bottom:calc(.4 * var(--r))}.sr-tl-confidence-bar{align-items:center;gap:calc(1 * var(--r));display:flex}.sr-tl-bar-segments{flex:1;gap:2px;display:flex}.sr-tl-segment{height:calc(.375 * var(--r));background:#ffffff1a;border-radius:1px;flex:1}.sr-tl-segment.filled{background:var(--color-phosphor);box-shadow:0 0 calc(.3125 * var(--r)) #7cff8c80}.sr-tl-pct{font-family:var(--font-mono);font-size:calc(.75 * var(--r));color:var(--color-gray-300)}.sr-tl-related-chips{gap:calc(.5 * var(--r));flex-wrap:wrap;display:flex}.sr-tl-chip{font-family:var(--font-mono);font-size:calc(.65 * var(--r));padding:calc(.3 * var(--r)) calc(.6 * var(--r));border-radius:calc(.25 * var(--r));color:var(--color-gray-300);background:#7cff8c0d;border:1px solid #7cff8c4d}.sr-tl-idle{justify-content:center;align-items:center;gap:calc(1 * var(--r));height:100%;font-family:var(--font-mono);font-size:calc(.75 * var(--r));color:var(--color-gray-500);letter-spacing:.1em;flex-direction:column;display:flex}.sr-tl-idle-ring{width:calc(2.5 * var(--r));height:calc(2.5 * var(--r));border:1px dashed #7cff8c4d;border-radius:50%;animation:8s linear infinite spin-icon}.mission-complete-final{background-color:var(--color-bg-dark,#05070a);color:var(--color-white,#fff);flex-direction:column;display:flex;position:relative;overflow:hidden}.mc-ticker-zone{background-color:var(--color-phosphor,#7cff8c);white-space:nowrap;border-top:1px solid #0000001a;border-bottom:1px solid #0000001a;align-items:center;width:100%;height:40px;display:flex;position:relative;overflow:hidden}.mc-ticker-content{align-items:center;padding-left:2rem;animation:20s linear infinite marquee;display:flex}.mc-ticker-item{color:var(--color-bg-dark,#05070a);font-family:var(--font-mono,"JetBrains Mono", monospace);text-transform:uppercase;align-items:center;margin-right:2rem;font-size:15px;font-weight:600;display:flex}.mc-ticker-star{margin-left:2rem;font-size:12px}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.mc-final-container{flex-direction:column;flex:1;width:100%;max-width:1400px;margin:0 auto;padding:5rem 4rem 4rem;display:flex}.mc-headline-zone{margin-bottom:3rem}.mc-eyebrow{font-family:var(--font-mono,monospace);color:#7cff8c99;letter-spacing:.15em;margin-bottom:1.5rem;font-size:.8rem}.mc-display-text{font-family:var(--font-display,sans-serif);max-width:800px;margin:0;font-size:clamp(2.5rem,4vw,4rem);font-weight:500;line-height:1.1}.mc-board-zone{width:100%;height:65vh;min-height:500px;margin-bottom:4rem;position:relative}.mc-board-container,.mc-desktop-board{width:100%;height:100%;position:relative}.mc-constellation-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.constellation-line{stroke:#7cff8c26;stroke-width:1.5px;transition:stroke .3s,opacity .3s}.constellation-line.highlight{stroke:#7cff8ccc}.constellation-line.faded{opacity:.1}.constellation-node-circle{fill:var(--color-bg-dark,#05070a);stroke:#7cff8c66;stroke-width:2px;transition:stroke .3s}.constellation-node.highlight .constellation-node-circle{stroke:#7cff8c;fill:#7cff8c33}.constellation-node-text{fill:#fff6;font-family:var(--font-mono,monospace);pointer-events:none;font-size:10px;transition:fill .3s}.constellation-node.highlight .constellation-node-text{fill:#fff}.mc-pinned-card{width:200px;transform:translate(-50%, -50%) rotate(var(--rot,0deg));z-index:10;cursor:crosshair;background-color:#12151c;border:1px solid #ffffff0d;border-radius:4px;padding:1rem;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;position:absolute;box-shadow:0 10px 30px #00000080}.mc-pinned-card:before{content:"";opacity:.04;pointer-events:none;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.mc-pinned-card:hover{z-index:50;border-color:#7cff8c4d;transform:translate(-50%,-50%)rotate(0)scale(1.04);box-shadow:0 20px 40px #000c,0 0 20px #7cff8c1a}.mc-pin-dot{z-index:2;background-color:#ff4d4d;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:50%;transform:translate(-50%);box-shadow:inset -1px -1px 2px #00000080,0 2px 4px #0006}.mc-classified-tape{color:#fff;font-family:var(--font-mono,monospace);letter-spacing:.2em;opacity:0;z-index:3;pointer-events:none;background:#c81e1ee6;padding:2px 10px;font-size:8px;transition:opacity .3s,top .3s;position:absolute;top:-8px;left:50%;transform:translate(-50%)rotate(-2deg)}.mc-pinned-card:hover .mc-classified-tape{opacity:1;top:-12px}.mc-card-image-placeholder{width:100%;height:80px;font-family:var(--font-mono,monospace);color:#fff3;background-color:#0a0c10;border:1px solid #ffffff0d;justify-content:center;align-items:center;margin-top:8px;margin-bottom:12px;font-size:10px;display:flex}.mc-card-title{font-family:var(--font-mono,monospace);margin-bottom:4px;font-size:14px;font-weight:600}.mc-card-status{font-family:var(--font-mono,monospace);color:var(--color-phosphor,#7cff8c);letter-spacing:.05em;margin-bottom:12px;font-size:9px}.mc-card-link{font-family:var(--font-mono,monospace);color:#ffffff80;font-size:10px;text-decoration:none;transition:color .2s}.mc-card-link:hover{color:var(--color-phosphor,#7cff8c)}.mc-pinned-card.is-redacted{border-color:#ff323233}.mc-pinned-card.is-redacted .mc-card-status{color:#ff4d4d}.mc-pinned-card.is-redacted .mc-card-image-placeholder{color:#ff323266;background:repeating-linear-gradient(45deg,#0a0c10,#0a0c10 10px,#150505 10px 20px)}.mc-pinned-card.is-redacted .mc-card-link{color:#ff323280;pointer-events:none}.mc-mobile-list{flex-direction:column;gap:1rem;display:none}.mc-mobile-item{border-bottom:1px dotted #ffffff1a;justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.mc-mobile-name{font-family:var(--font-mono,monospace);color:var(--color-white);font-size:.9rem}.mc-mobile-status{font-family:var(--font-mono,monospace);color:#7cff8c99;font-size:.75rem}.mc-mobile-status.redacted{color:#ff323299}.mc-bottom-bar{justify-content:space-between;align-items:flex-end;gap:4rem;display:flex}.mc-bottom-left,.mc-bottom-right{flex-direction:column;display:flex}.mc-bottom-left{flex:1;gap:3rem}.mc-bottom-right{text-align:right;align-items:flex-end;max-width:350px}.mc-signature-wrapper{width:395px;height:150px;color:var(--color-white);opacity:1;margin-left:-4rem}.mc-mission-files{flex-direction:column;gap:1rem;display:flex}.mc-files-label{font-family:var(--font-mono,monospace);color:#fff6;letter-spacing:.1em;margin-bottom:.5rem;font-size:.75rem}.mc-files-grid{gap:4rem;display:flex}.mc-files-col{flex-direction:column;gap:.8rem;display:flex}.mc-file-link{font-family:var(--font-mono,monospace);color:var(--color-white);font-size:.9rem;text-decoration:none;transition:color .2s}.mc-file-link:hover{color:var(--color-phosphor,#7cff8c)}.mc-resume-link{margin-top:.5rem}.mc-stats-container{gap:3rem;margin-top:2rem;display:flex}.mc-stat-item{flex-direction:column;gap:.4rem;display:flex}.mc-stat-label{font-family:var(--font-mono,monospace);color:#ffffff4d;letter-spacing:.1em;font-size:.6rem}.mc-stat-num{font-family:var(--font-mono,monospace);color:var(--color-white);text-shadow:0 0 10px #fff3;font-size:1.2rem}.mc-stat-num.is-infinity{font-size:1.6rem;line-height:.8}.mc-outcome-label{font-family:var(--font-mono,monospace);color:#fff6;letter-spacing:.1em;margin-bottom:1.5rem;font-size:.75rem}.mc-sketch-card{cursor:pointer;background:#111;border:1px solid #ffffff1a;border-radius:2px;width:200px;height:260px;margin-bottom:2rem;position:relative;overflow:hidden}.mc-sketch-layer{width:100%;height:100%;position:absolute;inset:0}.mc-placeholder-box{width:100%;height:100%;font-family:var(--font-mono,monospace);color:#ffffff4d;text-align:center;background-color:#1a1a1a;justify-content:center;align-items:center;padding:1rem;font-size:10px;display:flex}.mc-placeholder-box.digital{color:var(--color-phosphor,#7cff8c);border:1px solid var(--color-phosphor,#7cff8c);background-color:#7cff8c1a}.mc-sketch-digital{clip-path:inset(0 100% 0 0);transition:clip-path .6s cubic-bezier(.4,0,.2,1)}.mc-radar-sweep{background-color:var(--color-phosphor,#7cff8c);width:2px;height:100%;box-shadow:0 0 10px var(--color-phosphor,#7cff8c);opacity:0;pointer-events:none;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .2s;position:absolute;top:0;left:0;transform:translate(-10px)}.mc-sketch-card.is-hovered .mc-sketch-digital,.mc-sketch-card.is-toggled .mc-sketch-digital{clip-path:inset(0)}.mc-sketch-card.is-hovered .mc-radar-sweep{opacity:1;transform:translate(200px)}.mc-sketch-card.is-toggled .mc-radar-sweep{opacity:0;transition:opacity .2s}.mc-commander-name{font-family:var(--font-display,sans-serif);letter-spacing:.05em;margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.mc-commander-status{font-family:var(--font-mono,monospace);color:#fffc;justify-content:flex-end;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.8rem;display:flex}.mc-status-dot{background-color:var(--color-phosphor,#7cff8c);width:6px;height:6px;box-shadow:0 0 8px var(--color-phosphor,#7cff8c);border-radius:50%;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}to{opacity:.8;transform:scale(1)}}.mc-memory-fragment{font-family:var(--font-mono,monospace);color:#ffffff4d;max-width:250px;margin-bottom:2rem;font-size:.7rem;line-height:1.4}.mc-action-buttons{align-items:center;gap:1.5rem;display:flex}.mc-resume-btn{font-family:var(--font-mono,monospace);color:var(--color-bg-dark,#05070a);background-color:var(--color-phosphor,#7cff8c);border-radius:50px;padding:.6rem 1.5rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s}.mc-resume-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #7cff8c33}.mc-up-arrow-btn{width:40px;height:40px;color:var(--color-white);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.mc-up-arrow-btn:hover{border-color:var(--color-phosphor,#7cff8c);color:var(--color-phosphor,#7cff8c);transform:translateY(-3px)}@media (width<=992px){.mc-final-container{padding:3rem 2rem}.mc-display-text{font-size:2rem}.mc-desktop-board{display:none}.mc-mobile-list{display:flex}.mc-board-zone{height:auto;min-height:auto}.mc-bottom-bar{flex-direction:column;align-items:flex-start;gap:4rem}.mc-bottom-right{text-align:left;align-items:flex-start;max-width:100%}.mc-commander-status{justify-content:flex-start}}.repo-page{z-index:100;font-family:var(--font-body);background:#0a0a0a;position:fixed;inset:0;overflow:hidden auto}.repo-page::-webkit-scrollbar{width:8px}.repo-page::-webkit-scrollbar-track{background:#ffffff05}.repo-page::-webkit-scrollbar-thumb{background:#7cff8c26;border-radius:4px}.repo-page-inner{flex-direction:column;display:flex}.repo-eyebrow{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.25em;margin-bottom:2rem;font-size:1rem;font-weight:600;display:block}.repo-commits-section{flex-direction:column;justify-content:flex-start;width:100%;max-width:1200px;min-height:85vh;margin:0 auto;padding:8rem 2rem 2rem;display:flex}.repo-stats-row{flex-wrap:wrap;gap:5rem;margin-bottom:5rem;display:flex}.repo-stat-card{opacity:0;flex-direction:column;transition:opacity .8s,transform .8s;display:flex;transform:translateY(20px)}.repo-stat-card.active{opacity:1;transform:translateY(0)}.repo-stat-value{font-family:var(--font-body);color:#fff;letter-spacing:-.03em;margin-bottom:.8rem;font-size:3.5rem;font-weight:800;line-height:1}.repo-stat-label{font-family:var(--font-mono);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.15em;font-size:.85rem}.repo-heatmap-wrapper{background-color:#0003;background-image:radial-gradient(#7cff8c14 1px,#0000 1px);background-size:24px 24px;border:1px solid #ffffff0a;border-radius:12px;gap:1rem;margin-bottom:5rem;padding:2.5rem;display:flex;overflow-x:auto}.repo-heatmap-wrapper::-webkit-scrollbar{height:6px}.repo-heatmap-wrapper::-webkit-scrollbar-thumb{background:#7cff8c26;border-radius:3px}.repo-heatmap-labels-y{font-family:var(--font-mono);color:var(--color-gray-600);flex-direction:column;justify-content:space-between;padding:.5rem 0;font-size:.65rem;display:flex}.repo-heatmap-grid{gap:3px;display:flex}.repo-heatmap-col{opacity:0;flex-direction:column;gap:3px;animation:.4s forwards sweepFade;display:flex}@keyframes sweepFade{to{opacity:1}}.repo-heatmap-cell{background:#0d1117;border:1px solid #ffffff05;border-radius:2px;width:14px;height:14px;transition:transform .2s}.repo-heatmap-cell.active{background:rgba(124, 255, 140, var(--cell-opacity));border-color:rgba(124, 255, 140, calc(var(--cell-opacity) + .2));box-shadow:0 0 8px rgba(124, 255, 140, calc(var(--cell-opacity) * .5))}.repo-heatmap-cell:hover{z-index:10;border-color:#fff;transform:scale(1.5)}.repo-split-layout{flex-wrap:wrap;gap:6rem;display:flex}.repo-skills-list{flex-direction:column;gap:1.5rem;display:flex}.repo-skill-item{font-family:var(--font-mono);align-items:center;font-size:.95rem;display:flex}.skill-name{color:#fff;min-width:140px}.skill-bar{gap:2px;display:flex}.skill-block{color:#ffffff1a;transition:color .4s}.skill-block.filled{color:var(--color-phosphor);text-shadow:0 0 8px #7cff8c66}.repo-exploring-list{flex-direction:column;gap:1.2rem;margin:0;padding:0;list-style:none;display:flex}.repo-exploring-list li{font-family:var(--font-body);color:var(--color-gray-300);align-items:center;font-size:1.1rem;display:flex}.repo-exploring-list li:before{content:"→";color:var(--color-phosphor);font-family:var(--font-mono);margin-right:1rem}.repo-scroll-cue{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.2em;text-align:center;opacity:0;margin-top:6rem;margin-bottom:2rem;font-size:.75rem;animation:2s infinite pulseAlpha,1s 1.5s forwards fadeIn}@keyframes pulseAlpha{0%,to{opacity:.3}50%{opacity:.8}}.repo-fan-section{width:100%;height:120vh;position:relative}.repo-floating-preview{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:50;pointer-events:none;opacity:0;background:#0a0a0acc;border:1px solid #7cff8c26;border-radius:16px;justify-content:center;align-items:center;width:100%;max-width:800px;height:450px;transition:opacity .4s,transform .4s cubic-bezier(.25,.46,.45,.94);display:flex;position:absolute;top:-20vh;left:50%;overflow:hidden;transform:translate(-50%)translateY(20px);box-shadow:0 30px 60px #0009,0 0 0 1px #7cff8c0d}.repo-floating-preview.visible{opacity:1;transform:translate(-50%)translateY(0)}.repo-preview-img{object-fit:cover;opacity:0;width:100%;height:100%;animation:.4s .1s forwards fadeIn}.repo-fan-container{width:100%;max-width:1200px;height:70vh;transform-style:preserve-3d;justify-content:center;align-items:center;margin:0 auto;display:flex;position:sticky;top:15vh}.repo-card{transform-origin:bottom;will-change:transform;width:360px;height:480px;text-decoration:none;transition:z-index;position:absolute}.repo-card-inner{background:#11151b;border:1px solid #7cff8c26;border-radius:16px;flex-direction:column;width:100%;height:100%;padding:2rem 1.8rem;transition:transform .3s cubic-bezier(.25,.46,.45,.94),box-shadow .3s,opacity .3s;display:flex;position:relative;overflow:hidden}.repo-card--flagship .repo-card-inner{background:#151a22;border-color:#7cff8c66;box-shadow:0 0 40px #7cff8c26}.repo-fan-container:hover .repo-card-inner{opacity:.3}.repo-card:hover{z-index:100!important}.repo-card:hover .repo-card-inner{opacity:1;border-color:var(--color-phosphor);transform:translateY(-20px)scale(1.05);box-shadow:0 30px 60px #00000080,0 0 0 1px #7cff8c80,inset 0 0 40px #7cff8c1a}.repo-card-header{margin-bottom:1rem}.repo-name{font-family:var(--font-body);color:#fff;letter-spacing:-.02em;margin-bottom:.8rem;font-size:1.5rem;font-weight:800;line-height:1.2}.repo-categories{flex-wrap:wrap;gap:.5rem;display:flex}.repo-cat-badge{font-family:var(--font-mono);letter-spacing:.15em;color:var(--color-phosphor);font-size:.65rem;font-weight:700}.repo-impact{font-family:var(--font-body);color:#fff;border-bottom:1px solid #ffffff0d;margin-bottom:1rem;padding-bottom:1rem;font-size:1rem;font-weight:700}.repo-desc{font-family:var(--font-body);color:var(--color-gray-400);flex:1;font-size:.9rem;line-height:1.6}.repo-why{font-family:var(--font-body);color:var(--color-gray-500);margin-bottom:1.5rem;font-size:.85rem;font-style:italic;line-height:1.5}.repo-why strong{color:var(--color-gray-400);font-style:normal;font-weight:600}.repo-card-bottom{font-family:var(--font-mono);color:var(--color-gray-500);border-top:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding-top:1.5rem;font-size:.75rem;display:flex}.repo-stars{color:#fff;font-weight:600}.repo-fan-loading,.repo-fan-error{font-family:var(--font-mono);color:var(--color-phosphor);text-align:center;margin-top:20vh}.repo-fan-error{color:#f55}.repo-footer{text-align:center;flex-direction:column;align-items:center;margin-top:auto;padding:8rem 0;display:flex}.repo-footer-eyebrow{font-family:var(--font-mono);color:var(--color-gray-600);letter-spacing:.25em;margin-bottom:1rem;font-size:.85rem}.repo-footer-title{font-family:var(--font-body);color:#fff;letter-spacing:-.04em;margin-bottom:3rem;font-size:clamp(3rem,6vw,5rem);font-weight:800}.repo-return-btn{font-family:var(--font-mono);border:1px solid var(--color-phosphor);color:var(--color-phosphor);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:4px;padding:1rem 2rem;font-size:.9rem;transition:all .3s}.repo-return-btn:hover{background:var(--color-phosphor);color:#000;box-shadow:0 0 20px #7cff8c4d}.repo-page--collapse .repo-card{transition:transform .4s cubic-bezier(.5,0,0,1)!important}.repo-page--collapse .repo-return-btn,.repo-page--glitch .repo-return-btn,.repo-page--black .repo-return-btn{opacity:0;pointer-events:none}.repo-page--glitch .repo-card-inner{animation:.3s steps(2,end) infinite heavyGlitch}.repo-black-overlay{z-index:999;opacity:0;pointer-events:none;background:#000;transition:opacity;position:fixed;inset:0}.repo-page--black .repo-black-overlay{opacity:1}@media (width<=768px){.repo-commits-section{min-height:auto;padding:2rem 1rem}.repo-stats-row{flex-direction:column;gap:1.5rem}.repo-stat-value{font-size:2rem}.repo-heatmap-wrapper{padding:1rem}.repo-split-layout{flex-direction:column;gap:3rem}.repo-fan-section{height:auto}.repo-floating-preview{display:none}.repo-fan-container{flex-direction:column;gap:1.5rem;height:auto;position:relative;top:0}.repo-card{width:100%;max-width:380px;height:auto;position:relative;transform:none!important}.repo-card-inner{padding:1.5rem}.repo-fan-container:hover .repo-card-inner{opacity:1}.repo-card:hover .repo-card-inner{box-shadow:none;border-color:#7cff8c26;transform:none}.repo-footer{padding:4rem 0}}.skills-page{z-index:1000;color:var(--color-gray-100);background:#0a0a0a;animation:.8s cubic-bezier(.16,1,.3,1) forwards skillsFadeIn;position:fixed;inset:0;overflow:hidden auto}@keyframes skillsFadeIn{0%{opacity:0}to{opacity:1}}.sp-atmospheric-glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#7cff8c08 0%,#0000 60%);width:150vw;height:150vw;position:fixed;top:30%;left:50%;transform:translate(-50%,-50%)}.skills-page::-webkit-scrollbar{width:6px}.skills-page::-webkit-scrollbar-track{background:0 0}.skills-page::-webkit-scrollbar-thumb{background:#7cff8c33;border-radius:4px}.skills-page::-webkit-scrollbar-thumb:hover{background:#7cff8c66}.skills-page-inner{z-index:1;max-width:1400px;margin:0 auto;padding:0 5vw;position:relative}.sp-section{margin-bottom:25vh;position:relative}.sp-radar-hero{margin-bottom:30vh}.sp-cinematic-fade{opacity:0;filter:blur(8px);will-change:opacity, transform, filter;transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1),filter 1.2s cubic-bezier(.16,1,.3,1);transform:translateY(40px)scale(.98)}.sp-cinematic-fade.sp-visible{opacity:1;filter:blur();transform:translateY(0)scale(1)}.sp-section-heading{font-family:var(--font-display);color:var(--color-phosphor);letter-spacing:.2em;text-align:center;opacity:.5;margin-bottom:4rem;font-size:1rem}.ecosystem-flows{flex-direction:column;align-items:center;gap:3rem;display:flex}.eco-flow-row{font-family:var(--font-mono);color:var(--color-gray-100);flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;font-size:1.1rem;display:flex}.eco-flow-node{background:#7cff8c08;border:1px solid #7cff8c26;border-radius:8px;padding:.8rem 1.5rem;transition:all .3s}.eco-flow-node:hover{background:#7cff8c14;border-color:#7cff8c66;transform:translateY(-2px);box-shadow:0 0 20px #7cff8c1a}.eco-flow-arrow{color:var(--color-phosphor);opacity:.6;font-size:1.2rem}.eco-flow-desc{color:var(--color-gray-500);font-size:.9rem;font-style:italic;font-family:var(--font-body);margin-left:2rem}.impact-story-grid{text-align:center;flex-wrap:wrap;justify-content:center;gap:5rem;display:flex}.impact-story-item{flex-direction:column;align-items:center;gap:1rem;display:flex}.impact-story-num{font-family:var(--font-display);color:var(--color-white);text-shadow:0 0 30px #7cff8c1a;font-size:5rem;font-weight:800;line-height:1}.impact-story-label{font-family:var(--font-mono);color:var(--color-gray-500);letter-spacing:.15em;text-transform:uppercase;font-size:.9rem;line-height:1.6}.evolution-flow{flex-direction:column;align-items:center;gap:2rem;display:flex}.evo-step{text-align:center;background:#0a0a0a80;border:1px solid #ffffff0d;border-radius:12px;width:100%;max-width:450px;padding:2.5rem;transition:border-color .4s}.evo-step:hover{border-color:#7cff8c33}.evo-year{font-family:var(--font-mono);color:var(--color-phosphor);letter-spacing:.1em;margin-bottom:.8rem;font-size:.9rem}.evo-phase{font-family:var(--font-display);color:var(--color-white);letter-spacing:.02em;margin-bottom:1rem;font-size:1.8rem;font-weight:700}.evo-techs{font-family:var(--font-body);color:var(--color-gray-400);font-size:1rem}.evo-arrow{color:var(--color-gray-500);opacity:.5;font-size:1.8rem}.exploring-flows{flex-direction:column;align-items:center;gap:1.8rem;display:flex}.explore-line{border-bottom:1px solid #ffffff0d;align-items:center;gap:2rem;width:100%;max-width:550px;padding:1rem 0;display:flex}.explore-line:last-child{border-bottom:none}.explore-tag{font-family:var(--font-mono);letter-spacing:.15em;text-align:right;width:160px;font-size:.85rem}.explore-tag.active{color:var(--color-phosphor)}.explore-tag.building{color:#a18ce5}.explore-tag.experimenting{color:#ffb86c}.explore-tag.research{color:var(--color-gray-500)}.explore-text{font-family:var(--font-body);color:var(--color-white);font-size:1.2rem}.signature-content{text-align:center;flex-direction:column;align-items:center;gap:5rem;padding-bottom:15vh;display:flex}.signature-emotional{font-family:var(--font-display);color:var(--color-gray-300);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.6}.skills-return-btn{font-family:var(--font-mono);color:var(--color-gray-500);border:1px solid var(--color-gray-700);cursor:pointer;letter-spacing:.15em;background:0 0;border-radius:50px;padding:1.2rem 2.5rem;font-size:.85rem;transition:all .3s}.skills-return-btn:hover{color:var(--color-white);border-color:var(--color-phosphor);background:#7cff8c0d}.skills-page.is-exiting.skills-page--converge .sp-cinematic-fade,.skills-page.is-exiting.skills-page--converge .skills-radar-composition{filter:blur(10px);opacity:0;transition:all .4s;transform:scale(.95)}.skills-page.is-exiting.skills-page--crt-collapse{animation:.3s cubic-bezier(.8,0,.2,1) forwards crtCollapse}@keyframes crtCollapse{0%{opacity:1;transform:scale(1)}50%{opacity:1;transform:scaleY(.005)scaleX(1)}to{opacity:0;transform:scaleY(.005)scaleX(0)}}.skills-black-overlay{z-index:9999;opacity:0;pointer-events:none;background:#000;transition:opacity .2s;position:fixed;inset:0}.skills-page.is-exiting.skills-page--black .skills-black-overlay{opacity:1}.app{background-color:var(--color-bg);min-height:100vh;position:relative}
