@import"https://fonts.cdnfonts.com/css/monument-extended";:root{--bg-color: #000000;--text-primary: #E6F1FF;--text-secondary: #9CA3AF;--accent-primary: #38BDF8;--accent-strong: #0EA5E9;--accent-optional: #A78BFA;--accent-orange: var(--accent-primary);--accent-blue: var(--accent-strong);--font-body: "Monument Extended", sans-serif;--glow-hover: 0 0 8px var(--accent-primary), 0 0 20px var(--accent-strong);--glow-orange: var(--glow-hover);--glow-orange-strong: 0 0 10px var(--accent-primary), 0 0 30px var(--accent-strong);--glass-bg: rgba(20, 20, 20, .5);--glass-border: rgba(255, 255, 255, .1);--frame-inset-shadow: inset 0 0 20px rgba(56, 189, 248, .2), inset 0 0 5px rgba(14, 165, 233, .5)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);overflow-x:hidden}body,#root{overflow-x:hidden;width:100%;max-width:100vw;position:relative;overflow-wrap:break-word}.viewport-frame{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;box-shadow:var(--frame-inset-shadow);z-index:9999}h1,h2,h3,h4{font-weight:900;text-transform:uppercase;letter-spacing:1px}a{color:inherit;text-decoration:none;transition:all .3s ease}.app-container{display:flex;min-height:100vh}.main-content{flex:1;display:flex;flex-direction:column;padding:4rem 10%;max-width:1200px;margin:0 auto}section{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:6rem 0;position:relative}.fade-in-section{opacity:0;transform:translateY(40px);transition:opacity 1s ease-out,transform 1s ease-out;will-change:opacity,visibility}.fade-in-section.is-visible{opacity:1;transform:translateY(0)}.text-orange{color:var(--accent-orange)}.glow-text{text-shadow:0 0 8px rgba(56,189,248,.4)}.glow-text:hover{text-shadow:0 0 15px rgba(56,189,248,.6)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:12px;padding:2rem;transition:transform .3s ease,border-color .3s ease}.glass-card:hover{transform:translateY(-5px);border-color:#0080fe4d}.btn-outline{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;background:transparent;color:var(--accent-orange);border:1px solid var(--accent-orange);border-radius:4px;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;box-shadow:0 0 10px #0080fe1a}.btn-outline:hover{background:#0080fe1a;box-shadow:var(--glow-orange-strong)}@media(max-width:768px){html,body,#root,.app-container{max-width:100vw;overflow-x:hidden!important}.main-content{width:100%!important;max-width:100vw!important;padding:2rem 1.5rem!important;overflow-x:hidden!important;min-width:0}section{width:100%!important;max-width:100vw!important;padding:4rem 0!important;overflow-x:hidden}.glass-card{padding:1.5rem}*{cursor:auto!important}#custom-cursor{display:none!important}}@media(pointer:fine){body{cursor:none}a,button,input,textarea,.interactive-card,.skill-card{cursor:none!important}.custom-cursor{position:fixed;top:0;left:0;pointer-events:none;z-index:10000;mix-blend-mode:normal;will-change:transform;display:flex;align-items:flex-start;justify-content:flex-start}.asteroid-cursor{color:var(--accent-orange);font-size:24px;transform:translate(-15%,-85%) rotate(var(--dynamic-angle, 90deg));transform-origin:15% 85%;filter:drop-shadow(0px 0px 10px rgba(0,128,254,.8)) drop-shadow(0px 0px 25px rgba(0,128,254,.6)) drop-shadow(0px 0px 45px rgba(0,128,254,.4));transition:transform .15s cubic-bezier(.25,1,.5,1),color .3s ease,filter .3s ease}.cursor-hovered .asteroid-cursor{transform:translate(-15%,-85%) rotate(var(--dynamic-angle, 90deg)) scale(1.4);color:var(--accent-blue);filter:drop-shadow(0px 0px 15px rgba(0,255,255,.9)) drop-shadow(0px 0px 35px rgba(0,255,255,.7)) drop-shadow(0px 0px 60px rgba(0,255,255,.5))}}.side-nav{position:fixed;right:2rem;top:50%;transform:translateY(-50%);z-index:100}.side-nav ul{list-style:none;display:flex;flex-direction:column;gap:1.5rem}.side-nav a{display:flex;align-items:center;justify-content:flex-end;gap:1rem}.nav-label{font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary);opacity:0;transform:translate(10px);transition:all .3s ease;pointer-events:none}.side-nav a:hover .nav-label{opacity:1;transform:translate(0);color:var(--text-primary)}.nav-dot{width:8px;height:8px;border-radius:50%;background-color:var(--text-secondary);transition:all .3s ease;box-shadow:0 0 #f600}.side-nav a:hover .nav-dot{background-color:var(--text-primary);transform:scale(1.5)}.side-nav a.active .nav-label{opacity:1;transform:translate(0);color:var(--accent-orange)}.side-nav a.active .nav-dot{background-color:var(--accent-orange);transform:scale(1.5);box-shadow:var(--glow-orange)}@media(max-width:768px){.side-nav{display:none}}.hero-section{display:flex;align-items:center;justify-content:center;text-align:center;min-height:100vh;position:relative;overflow:hidden}.hero-content{max-width:800px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;position:relative;z-index:10}.hero-subtitle{color:var(--text-secondary);font-size:1rem;font-weight:500;letter-spacing:4px}.typewriter{overflow:hidden;border-right:.15em solid var(--accent-primary);white-space:nowrap;margin:0 auto;letter-spacing:.15em;width:145px;animation:typing 1.2s steps(8,end) forwards,blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:var(--accent-primary)}}.hero-title{font-size:clamp(3rem,10vw,7rem);line-height:1.1;margin:0;position:relative}.cosmic-glow{background:linear-gradient(to right,var(--accent-orange),#9d00ff,var(--accent-blue),#9d00ff,var(--accent-orange));background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:cosmic-sweep 8s linear infinite,cosmic-pulse 4s ease-in-out infinite alternate}@keyframes cosmic-sweep{to{background-position:200% center}}@keyframes cosmic-pulse{0%{filter:drop-shadow(0 0 10px rgba(0,128,254,.4))}to{filter:drop-shadow(0 0 30px rgba(0,255,255,.8))}}.hero-description{font-size:1.125rem;color:var(--text-secondary);max-width:600px;line-height:1.6;margin-top:1rem}.hero-socials{display:flex;gap:2rem;margin-top:2rem}.social-link{color:var(--accent-blue);filter:drop-shadow(0 0 5px rgba(0,255,255,.2));display:inline-block;padding:10px;border-radius:50%;border:1px solid transparent}@media(max-width:768px){.hero-subtitle{letter-spacing:2px}.typewriter{white-space:normal;animation:none;border-right:none;width:100%;padding:0 1rem}.hero-description{font-size:1rem;padding:0 1rem}.magnetic{transform:none!important}}.about-section{max-width:800px}.section-header{margin-bottom:3rem}.section-header.center-header{text-align:center;display:flex;flex-direction:column;align-items:center}.section-subtitle{color:var(--text-secondary);font-size:.875rem;font-weight:500;letter-spacing:4px;margin-bottom:.5rem}.section-title{font-size:clamp(2rem,5vw,3rem);line-height:1.1;margin:0}.about-content{display:flex;flex-direction:column;gap:2rem}.about-text{font-size:1.125rem;line-height:1.7;color:var(--text-primary)}.about-actions{margin-top:1rem}@media(max-width:768px){.section-title{font-size:2rem}}.skills-section{width:100%}.skills-container{display:flex;flex-direction:column;gap:4rem;margin-top:3rem}.category-title{font-size:1.5rem;color:var(--text-primary);margin-bottom:1.5rem;letter-spacing:2px}.skills-marquee-container{overflow-x:scroll;width:100%;padding:1rem 0;position:relative;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent)}.skills-marquee-container::-webkit-scrollbar{display:none}.skills-marquee-container.grabbing{cursor:grabbing}.skills-marquee-track{display:flex;width:max-content;gap:1.5rem;padding-right:1.5rem}.skills-marquee-content{display:flex;gap:1.5rem}.skill-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;min-width:160px;user-select:none;-webkit-user-select:none}.skill-icon{display:flex;filter:drop-shadow(0 0 5px rgba(56,189,248,.5))}.skill-name{font-weight:500;font-size:1rem;color:var(--text-primary);white-space:nowrap}@media(max-width:768px){.skill-card{min-width:120px;padding:1.5rem}}.projects-section{width:100%}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;perspective:1000px}.interactive-card{position:relative;overflow:hidden;transition:transform .1s ease-out,border-color .3s ease;transform-style:preserve-3d;background:var(--glass-bg);height:100%;display:flex!important;flex-direction:column;justify-content:space-between;align-items:flex-start}.interactive-card:hover{z-index:10}.card-spotlight{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(800px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.06),transparent 40%);z-index:1;opacity:0;transition:opacity .3s ease}.interactive-card:hover .card-spotlight{opacity:1}.card-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:space-between;height:100%;width:100%;align-items:flex-start;transform:translateZ(20px)}.glitch-hover{position:relative;font-size:1.25rem;color:var(--text-primary);margin-bottom:1rem;font-weight:700}.glitch-hover:before,.glitch-hover:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;opacity:0}.interactive-card:hover .glitch-hover:before{left:2px;text-shadow:-1px 0 rgba(0,255,255,.8);clip:rect(24px,550px,90px,0);animation:glitch-anim 2s infinite linear alternate-reverse;opacity:1}.interactive-card:hover .glitch-hover:after{left:-2px;text-shadow:-1px 0 rgba(0,128,254,.8);clip:rect(85px,550px,140px,0);animation:glitch-anim 2s infinite linear alternate-reverse;opacity:1}@keyframes glitch-anim{0%{clip:rect(10px,9999px,83px,0)}20%{clip:rect(61px,9999px,81px,0)}40%{clip:rect(11px,9999px,47px,0)}60%{clip:rect(15px,9999px,3px,0)}80%{clip:rect(50px,9999px,42px,0)}to{clip:rect(82px,9999px,20px,0)}}.project-desc{color:var(--text-secondary);line-height:1.6;margin-bottom:2rem;font-size:.95rem;flex-grow:1}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tag{background:#38bdf80d;color:var(--accent-primary);font-size:.75rem;padding:.25rem .75rem;border-radius:4px;font-weight:500;letter-spacing:1px;border:1px solid rgba(56,189,248,.2);transition:all .3s ease}.interactive-card:hover .tag{background:#38bdf826;box-shadow:0 0 10px #38bdf866}.project-links{display:flex;gap:1rem}.project-links a{color:var(--text-secondary);transition:color .3s ease,transform .3s ease}.project-links a:hover{color:var(--accent-strong);transform:scale(1.2);filter:drop-shadow(0 0 8px rgba(56,189,248,.8))}@media(max-width:768px){.projects-grid{grid-template-columns:1fr}.interactive-card{transform:none!important}.interactive-card:before,.interactive-card:after{display:none}}.experience-section{width:100%}.timeline{display:flex;flex-direction:column;gap:3rem;margin-top:3rem;position:relative;max-width:900px;margin-left:auto;margin-right:auto}.timeline-beam{position:absolute;top:0;bottom:0;left:50%;width:4px;background:linear-gradient(to bottom,transparent,var(--glass-border),transparent);transform:translate(-50%);z-index:0;border-radius:2px}.timeline-tracker-container{position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);z-index:3}.timeline-ship{position:absolute;left:50%;transform:translate(-50%,-50%);transition:top .1s ease-out;pointer-events:none}.ship-icon{font-size:2.5rem;color:var(--accent-orange);filter:drop-shadow(0 0 10px rgba(0,128,254,.8));display:block;width:1em;height:1em}.asteroid-falling{transform:rotate(-45deg)}.rocket-rising{transform:rotate(-45deg);font-size:3.5rem}.impact-bottom .asteroid-falling{transform:rotate(-45deg) scale(1.5);filter:drop-shadow(0 0 30px var(--accent-orange)) brightness(1.5);transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.impact-crater{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:10px;background:var(--accent-orange);border-radius:50%;filter:blur(8px);animation:impact-burst .5s ease-out forwards}@keyframes impact-burst{0%{transform:translate(-50%,-50%) scale(.5);opacity:1}to{transform:translate(-50%,-50%) scale(3);opacity:0}}.idle-top .rocket-rising{animation:idle-shake .5s infinite alternate ease-in-out}@keyframes idle-shake{0%{transform:rotate(-45deg) translateY(0)}to{transform:rotate(-45deg) translateY(3px)}}.rocket-exhaust{position:absolute;top:60%;left:50%;transform:translate(-50%);width:6px;height:25px;background:linear-gradient(to bottom,var(--accent-blue),transparent);filter:blur(2px);animation:exhaust-flicker .1s infinite alternate;z-index:-1}@keyframes exhaust-flicker{0%{height:15px;opacity:.8}to{height:35px;opacity:1}}.timeline-item{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative;z-index:1;opacity:0;transition:opacity .6s ease-out,transform .6s cubic-bezier(.2,.8,.2,1)}.timeline-item.left{transform:translate(-50px)}.timeline-item.right{flex-direction:row-reverse;transform:translate(50px)}.timeline-item.activated{opacity:1;transform:translate(0)}.timeline-node{position:absolute;left:50%;width:16px;height:16px;border-radius:50%;background:var(--bg-primary);border:3px solid var(--glass-border);transform:translate(-50%);transition:all .5s ease-out;z-index:2}.timeline-item.activated .timeline-node{border-color:var(--accent-orange);background:var(--accent-orange);box-shadow:0 0 15px var(--accent-orange),0 0 30px var(--accent-orange)}.timeline-content{width:45%;transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s ease,box-shadow .3s ease,background-color .3s ease}.timeline-item.activated .timeline-content{border-color:#38bdf84d}.timeline-date{margin-bottom:1rem}.date-tag{background:#38bdf81a;color:var(--accent-orange);font-size:.85rem;padding:.25rem .75rem;border-radius:4px;font-weight:700;letter-spacing:1px}.timeline-title{font-size:1.25rem;margin-bottom:1rem}.timeline-responsibilities{list-style:none;padding-left:0;color:var(--text-secondary);line-height:1.6}.timeline-responsibilities li{position:relative;padding-left:1.5rem;margin-bottom:.5rem}.timeline-responsibilities li:before{content:"▹";position:absolute;left:0;color:var(--accent-orange)}@media(max-width:768px){.timeline-beam,.timeline-tracker-container{left:1rem;transform:none}.timeline-item,.timeline-item.left,.timeline-item.right{flex-direction:column;align-items:flex-start;padding-left:3rem;transform:translateY(30px)}.timeline-item.activated{transform:translateY(0)}.timeline-node{left:1rem;top:2rem;transform:translate(-50%)}.timeline-content{width:100%}}.contact-section{width:100%;display:flex;flex-direction:column;justify-content:space-between}.contact-content{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:800px;margin:0 auto;gap:2rem;padding:4rem 0}.contact-title{font-size:clamp(3rem,8vw,6rem);line-height:1.1;margin:0}.contact-text{font-size:1.25rem;color:var(--text-secondary);line-height:1.6;max-width:600px}.contact-btn{margin-top:1rem;font-size:1.125rem;padding:1rem 3rem}.social-cards{display:flex;gap:1.5rem;margin-top:4rem;width:100%;justify-content:center;flex-wrap:wrap}.social-card{display:flex;align-items:center;gap:1rem;padding:1.5rem 2rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;color:var(--text-primary);font-weight:600;transition:all .3s ease;min-width:200px;justify-content:center}.social-card:hover{transform:translateY(-5px)}.social-card.github:hover{background:#333;border-color:#555;box-shadow:0 10px 20px #00000080}.social-card.linkedin:hover{background:#0077b5;border-color:#00a0dc;box-shadow:0 10px 20px #0077b54d}.social-card.twitter:hover{background:#1da1f2;border-color:#1da1f2;box-shadow:0 10px 20px #1da1f24d}.footer{text-align:center;padding-top:4rem;color:var(--text-secondary);font-size:.875rem;display:flex;flex-direction:column;gap:.5rem}.footer-credit{opacity:.5}
