:root{--bg: #1a1a1a;--bg-soft: #221f29;--bg-dark: #111111;--card: rgba(255, 255, 255, .055);--card-strong: rgba(255, 255, 255, .09);--purple: #8936f5;--purple-light: #c69dff;--purple-soft: rgba(137, 54, 245, .18);--text: #ffffff;--muted: #b7adc8;--line: rgba(255, 255, 255, .11);--shadow: 0 24px 90px rgba(0, 0, 0, .35);--purple-shadow: 0 24px 80px rgba(137, 54, 245, .18);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:radial-gradient(circle at top left,rgba(137,54,245,.32),transparent 32rem),radial-gradient(circle at 80% 10%,rgba(137,54,245,.18),transparent 24rem),var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.55rem,7vw,5.65rem);line-height:.95;letter-spacing:-.075em;margin-bottom:1.25rem}h2{letter-spacing:-.035em}.app-shell{min-height:100vh;display:flex;flex-direction:column}main{flex:1;perspective:1400px;overflow-x:hidden}.page{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(3.5rem,7vw,6rem) 0}.eyebrow{color:var(--purple-light);text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;margin-bottom:.85rem}.hero-summary,.page-heading p,.section-heading p{color:var(--muted);font-size:1.08rem;line-height:1.75;max-width:760px}.page-heading{margin-bottom:2rem}.page-heading h1{max-width:920px}.navbar{width:100%;height:76px;padding:0 7%;background:rgba(26,26,26,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(137,54,245,.25);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1000}.brand{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:800}.nav-logo{width:42px;height:42px;object-fit:contain;border-radius:10px}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{color:#d7d7d7;font-weight:500;transition:.25s ease}.nav-links a:hover,.nav-links a.active{color:var(--purple)}.menu-btn,.close-btn{background:none;border:none;color:var(--text)}.menu-btn{display:none;font-size:32px}.close-btn{align-self:flex-end;font-size:34px}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:.3s ease;z-index:1500}.sidebar-overlay.show{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;right:-290px;width:280px;height:100vh;background:var(--bg);border-left:1px solid rgba(137,54,245,.35);box-shadow:-20px 0 60px #00000073;padding:28px;display:flex;flex-direction:column;gap:22px;transition:.3s ease;z-index:2000}.sidebar.show{right:0}.sidebar-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}.sidebar-logo{width:46px;height:46px;object-fit:contain}.sidebar-brand h3{color:var(--text);font-size:18px}.sidebar a{color:var(--text);font-size:18px;padding:12px 14px;border-radius:12px;transition:.25s ease}.sidebar a:hover,.sidebar a.active{background:var(--purple-soft);color:var(--purple)}.btn,.primary-btn,.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3rem;padding:.82rem 1.15rem;border-radius:999px;font-weight:800;transition:.25s ease}.primary-btn{background:linear-gradient(135deg,var(--purple),#a96cff);color:var(--text);border:0;box-shadow:0 18px 42px #8936f559}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 24px 54px #8936f573}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.ghost-btn{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text)}.ghost-btn:hover{border-color:#8936f5bf;background:var(--purple-soft)}.profile-card,.glass-panel,.project-card,.contact-form,.contact-card,.research-banner,.resume-viewer-shell,.stat-card,.game-card,.leaderboard{border:1px solid var(--line);background:linear-gradient(145deg,var(--card-strong),rgba(255,255,255,.035));box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}.hero-actions,.resume-heading{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.profile-card{position:relative;overflow:hidden;border-radius:2.2rem;padding:1.35rem;min-height:420px;display:flex;flex-direction:column;justify-content:space-between}.profile-card:before{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:radial-gradient(circle,rgba(137,54,245,.42),transparent 35%),linear-gradient(135deg,rgba(137,54,245,.26),transparent);animation:floatGlow 8s ease-in-out infinite alternate;z-index:-1}.avatar-orb{width:9rem;height:9rem;display:grid;place-items:center;border-radius:2.4rem;background:var(--bg);border:1px solid rgba(255,255,255,.15);color:var(--text);font-size:3rem;font-weight:900;letter-spacing:-.12em}.profile-card h2{font-size:2rem;line-height:1;max-width:360px}.profile-card-lines{display:grid;gap:.65rem}.profile-card-lines span{display:block;height:.65rem;border-radius:999px;background:rgba(255,255,255,.13)}.profile-card-lines span:nth-child(1){width:85%}.profile-card-lines span:nth-child(2){width:68%}.profile-card-lines span:nth-child(3){width:46%;background:var(--purple)}.stats-grid,.section-grid{display:grid;gap:1rem;margin-top:1rem}.stats-grid{grid-template-columns:repeat(3,1fr);margin-top:2rem}.section-grid{grid-template-columns:repeat(3,1fr)}.stat-card,.glass-panel{border-radius:1.35rem;padding:1.2rem}.stat-card strong{display:block;font-size:1.35rem;color:var(--text);margin-bottom:.4rem}.stat-card span,.timeline-item p,.project-card p,.contact-card p,.footer,.project-highlights,.resume-toolbar{color:var(--muted)}.glass-panel{border-radius:1.6rem;padding:1.3rem}.glass-panel svg{color:var(--purple-light);margin-bottom:.85rem}.timeline-item{border-left:2px solid var(--purple);padding-left:.85rem;margin-top:1rem}.timeline-item span{color:var(--purple-light);font-size:.85rem;font-weight:800}.timeline-item h3{margin:.25rem 0}.skill-cloud,.tech-list{display:flex;flex-wrap:wrap;gap:.55rem}.skill-cloud span,.tech-list span{border:1px solid rgba(137,54,245,.34);background:var(--purple-soft);color:#efe5ff;border-radius:999px;padding:.5rem .72rem;font-weight:750;font-size:.9rem}.projects-grid{display:grid;gap:1.2rem}.project-card{position:relative;overflow:hidden;display:grid;grid-template-columns:340px 1fr;gap:1.5rem;border-radius:1.8rem;padding:1.4rem}.project-image-wrap{width:100%;min-height:260px;border-radius:1.4rem;overflow:hidden;background:radial-gradient(circle at top left,rgba(137,54,245,.35),transparent 40%),var(--bg-dark);border:1px solid rgba(137,54,245,.25)}.project-image{width:100%;height:100%;min-height:260px;object-fit:cover;display:block;transition:.35s ease}.project-card:hover .project-image{transform:scale(1.06)}.project-content{display:flex;flex-direction:column;gap:.8rem;min-width:0}.project-topline{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.project-topline .eyebrow{margin:0}.project-number{color:var(--purple);font-size:1.15rem;font-weight:900}.project-card h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-bottom:0}.project-card h3{color:#d9c4ff;margin-bottom:.2rem}.project-card p{color:var(--muted);line-height:1.7}.project-highlights{color:var(--muted);line-height:1.65;padding-left:1.1rem;margin:.4rem 0}.project-github{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:fit-content;margin-top:.4rem;border-radius:999px;padding:.8rem 1.1rem;background:var(--purple);color:var(--text);font-weight:800;box-shadow:0 16px 38px #8936f547;transition:.25s ease}.project-github:hover{transform:translateY(-2px);background:#a96cff;color:var(--text)}.project-card-accent{position:absolute;right:1rem;top:1rem;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:1rem;background:var(--purple-soft);color:var(--text);transition:.25s ease}.project-card-accent:hover{background:var(--purple);transform:translateY(-2px)}.research-banner{margin-top:1rem;border-radius:1.6rem;padding:1.35rem}.research-banner a,.contact-card a,.resume-toolbar a,.footer-links a{color:#d8c0ff;font-weight:850}.research-banner a:hover,.contact-card a:hover,.resume-toolbar a:hover,.footer-links a:hover{color:var(--text)}.resume-heading{justify-content:space-between}.resume-viewer-shell{overflow:hidden;border-radius:1.6rem}.resume-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid var(--line);background:rgba(255,255,255,.04)}.resume-toolbar span,.resume-toolbar a{display:inline-flex;align-items:center;gap:.45rem}.resume-viewer{width:100%;min-height:760px;border:0;background:#262626}.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);gap:1rem;align-items:start}.contact-layout{max-width:760px;margin:0 auto}.contact-form,.contact-card{border-radius:1.65rem;padding:1.3rem}.contact-form{display:grid;gap:1rem;background:rgba(255,255,255,.04);border-color:#8936f559;box-shadow:var(--purple-shadow)}.contact-form label,.form-group label{color:#efe5ff;font-weight:800}.form-group{display:flex;flex-direction:column;gap:8px}.contact-form input,.contact-form textarea,.form-group input,.form-group textarea{width:100%;border:1px solid var(--line);border-radius:1rem;padding:.95rem 1rem;background:rgba(26,26,26,.72);color:var(--text);outline:none}.contact-form input:focus,.contact-form textarea:focus,.form-group input:focus,.form-group textarea:focus{border-color:var(--purple);box-shadow:0 0 0 4px #8936f533}.contact-form button{width:fit-content}.contact-card{display:grid;gap:.85rem}.contact-card a,.contact-card p{display:flex;align-items:center;gap:.65rem;margin:0}.social-stack{display:grid;gap:.75rem;margin-top:.5rem}.form-status{margin:0;color:var(--text)}.game-page{min-height:calc(100vh - 76px)}.game-card{max-width:850px;margin:0 auto;padding:28px;border-radius:28px;border-color:#8936f559;box-shadow:var(--purple-shadow)}.player-box{margin-bottom:22px}.player-box label{display:block;color:var(--text);font-weight:700;margin-bottom:10px}.player-box input{width:100%;border:1px solid rgba(137,54,245,.35);background:var(--bg);color:var(--text);border-radius:14px;padding:14px 16px;font-size:16px;outline:none}.player-box input:focus{border-color:var(--purple);box-shadow:0 0 0 4px #8936f526}.game-stats{display:flex;justify-content:space-between;gap:20px;margin-bottom:22px}.game-stats div{flex:1;padding:18px;border-radius:18px;background:var(--bg);border:1px solid rgba(255,255,255,.08)}.game-stats span{display:block;color:#bdbdbd;font-size:14px;margin-bottom:6px}.game-stats strong{color:var(--text);font-size:28px}.game-area{position:relative;height:420px;overflow:hidden;border-radius:24px;background:radial-gradient(circle at top left,rgba(137,54,245,.3),transparent 35%),linear-gradient(135deg,var(--bg-dark),var(--bg));border:1px solid rgba(255,255,255,.08)}.game-area.game-active{cursor:url(/assets/gamecursor.svg) 24 24,crosshair}.game-area.game-active .orb{cursor:url(/assets/gamecursor.svg) 24 24,crosshair}.orb{position:absolute;width:54px;height:54px;border:none;border-radius:50%;background:var(--purple);transform:translate(-50%,-50%);box-shadow:0 0 20px #8936f5e6,0 0 50px #8936f58c;animation:pulseOrb .9s infinite alternate}.game-message{height:100%;display:grid;place-content:center;text-align:center;padding:24px}.game-message h2{color:var(--text);font-size:36px;margin-bottom:8px}.game-message p{color:#bdbdbd}.game-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.game-actions .game-btn,.game-actions .leaderboard-btn{width:fit-content}.leaderboard-btn{border-color:#8936f573}.game-error{color:#ffb4b4;margin-top:14px}.leaderboard{margin-top:30px;padding:24px;border-radius:22px;border-color:#8936f547}.leaderboard h2{color:var(--text);margin-bottom:18px}.leaderboard p{color:#bdbdbd}.leaderboard-list{display:flex;flex-direction:column;gap:12px}.leaderboard-row{display:grid;grid-template-columns:70px 1fr 80px;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:var(--bg);border:1px solid rgba(255,255,255,.08)}.leaderboard-row span{color:var(--purple);font-weight:800}.leaderboard-row strong,.leaderboard-row em{color:var(--text)}.leaderboard-row em{font-style:normal;font-weight:800;text-align:right}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:radial-gradient(circle at center,rgba(137,54,245,.22),transparent 35%),var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:loaderFadeOut .45s ease forwards;animation-delay:1.05s}.orbit-loader{position:relative;width:115px;height:115px;display:flex;align-items:center;justify-content:center}.orbit-ring{position:absolute;width:95px;height:95px;border:2px solid rgba(137,54,245,.18);border-top-color:var(--purple);border-radius:50%;animation:orbitSpin 1s linear infinite;box-shadow:0 0 35px #8936f547}.orbit-dot{position:absolute;width:14px;height:14px;background:var(--purple);border-radius:50%;animation:dotOrbit 1s linear infinite;box-shadow:0 0 18px #8936f5,0 0 40px #8936f5a6}.orbit-center{width:18px;height:18px;background:var(--purple);border-radius:50%;box-shadow:0 0 18px #8936f5e6,0 0 45px #8936f559}.loader-text{margin-top:26px;display:flex;align-items:center;gap:10px;color:var(--text);font-weight:700;letter-spacing:.5px}.loader-dots{display:flex;gap:5px}.loader-dots span{width:7px;height:7px;border-radius:50%;background:var(--purple);animation:dotBounce .7s ease-in-out infinite alternate}.loader-dots span:nth-child(2){animation-delay:.15s}.loader-dots span:nth-child(3){animation-delay:.3s}.page-loader-bar{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--purple);transform:scaleX(0);transform-origin:left;z-index:9998;box-shadow:0 0 18px #8936f5e6}.page-loader-bar.show{animation:pageBar .65s ease forwards}.route-transition{position:relative;transform-origin:left center;backface-visibility:hidden;animation:bookPageTurn .65s cubic-bezier(.22,1,.36,1) both}.route-transition:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(137,54,245,.24),rgba(0,0,0,.15),transparent);opacity:0;animation:pageShadow .65s ease both;z-index:1}.footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.2rem clamp(1rem,4vw,4rem);border-top:1px solid var(--line)}.footer p{margin:0}.footer-links{display:flex;gap:.85rem}@keyframes floatGlow{0%{transform:translate3d(-3%,-2%,0) rotate(0)}to{transform:translate3d(4%,3%,0) rotate(16deg)}}@keyframes pulseOrb{0%{transform:translate(-50%,-50%) scale(1)}to{transform:translate(-50%,-50%) scale(1.12)}}@keyframes dotOrbit{0%{transform:rotate(0) translate(48px) rotate(0)}to{transform:rotate(360deg) translate(48px) rotate(-360deg)}}@keyframes orbitSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dotBounce{0%{transform:translateY(0);opacity:.5}to{transform:translateY(-7px);opacity:1}}@keyframes loaderFadeOut{to{opacity:0;visibility:hidden;pointer-events:none}}@keyframes pageBar{0%{transform:scaleX(0)}70%{transform:scaleX(.85)}to{transform:scaleX(1)}}@keyframes bookPageTurn{0%{opacity:0;transform:rotateY(-75deg) translate(-35px) scale(.96);filter:blur(4px)}45%{opacity:.75;transform:rotateY(-22deg) translate(-10px) scale(.98);filter:blur(1px)}to{opacity:1;transform:rotateY(0) translate(0) scale(1);filter:blur(0)}}@keyframes pageShadow{0%{opacity:1}60%{opacity:.45}to{opacity:0}}@media (max-width: 900px){.hero-grid,.section-grid,.stats-grid,.contact-grid,.project-card{grid-template-columns:1fr}.profile-card{min-height:330px}.project-card{padding-right:4rem}.project-image-wrap,.project-image{min-height:260px}.resume-viewer{min-height:640px}}@media (max-width: 768px){main{perspective:900px}.navbar{padding:0 24px}.nav-links{display:none}.menu-btn{display:block}.brand span{font-size:16px}.route-transition{animation-duration:.5s}.route-transition:before{animation-duration:.5s}.game-card{padding:20px}.game-stats{flex-direction:column}.game-area{height:330px}.orb{width:48px;height:48px}.game-message h2{font-size:28px}.leaderboard-row{grid-template-columns:50px 1fr 60px;padding:12px}}@media (max-width: 680px){h1{letter-spacing:-.055em}.page{width:min(100% - 1rem,1180px);padding-top:2.3rem}.hero-actions,.resume-heading{align-items:stretch;flex-direction:column}.btn,.primary-btn,.ghost-btn,.contact-form button{width:100%}.resume-toolbar{align-items:flex-start;flex-direction:column}.project-card{padding:4rem 1rem 1rem}.project-image-wrap,.project-image{min-height:210px}.project-github,.game-actions .game-btn,.game-actions .leaderboard-btn{width:100%}.footer{align-items:flex-start;flex-direction:column}}.secret-page{min-height:calc(100vh - 90px);display:flex;align-items:center;justify-content:center;padding:4rem 1.5rem}.password-card,.countdown-card{width:min(100%,760px);padding:3rem;border-radius:32px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 80px #00000040;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center;position:relative;overflow:hidden}.password-card:before,.countdown-card:before{content:"";position:absolute;top:-120px;right:-120px;bottom:-120px;left:-120px;background:radial-gradient(circle,rgba(255,130,180,.24),transparent 55%);z-index:-1}.password-card h1,.countdown-card h1{font-size:clamp(2.2rem,6vw,5rem);margin:.8rem 0 1rem;letter-spacing:-.05em}.password-card p,.countdown-card p{color:var(--text-muted, #a8a8a8)}.password-form{display:flex;gap:.8rem;margin-top:2rem}.password-form input{flex:1;padding:1rem 1.2rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:inherit;outline:none}.password-form input::placeholder{color:var(--text-muted, #a8a8a8)}.password-form input:focus{border-color:#ffffff73}.password-form button{padding:1rem 1.5rem;border-radius:999px;border:none;cursor:pointer;font-weight:700;color:#111;background:#fff;transition:transform .2s ease,opacity .2s ease}.password-form button:hover{transform:translateY(-2px);opacity:.9}.password-error{margin-top:1rem;color:#ff7a7a!important;font-weight:600}.countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2.5rem}.countdown-box{padding:1.8rem 1rem;border-radius:24px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}.countdown-box span{display:block;font-size:clamp(2rem,5vw,4rem);font-weight:800;letter-spacing:-.06em}.countdown-box p{margin:.4rem 0 0;font-size:.9rem;text-transform:uppercase;letter-spacing:.16em}.countdown-finished{margin-top:2rem;font-size:1.3rem;font-weight:700}@media (max-width: 700px){.password-card,.countdown-card{padding:2rem;border-radius:24px}.password-form{flex-direction:column}.countdown-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 420px){.countdown-grid{grid-template-columns:1fr}}
