@import "https://fonts.googleapis.com/css2?family=Syne:wght@600;700;800&family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg:#08080f;--bg-2:#0d0d18;--bg-3:#13131f;--bg-card:#181826;--bg-card-2:#1e1e2e;--border:#ffffff0f;--border-2:#ffffff1a;--text:#f4f4f8;--text-2:#9494b0;--text-3:#48485e;--violet:#8b5cf6;--blue:#60a5fa;--green:#34d399;--orange:#fb923c;--pink:#f472b6;--grad:linear-gradient(135deg, #8b5cf6, #60a5fa);--grad-text:linear-gradient(135deg, #a78bfa, #93c5fd);--fn-d:"Syne", sans-serif;--fn-b:"Inter", system-ui, sans-serif;--fn-m:"JetBrains Mono", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--fn-b);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--violet);border-radius:2px}.reveal,.reveal-left,.reveal-right{opacity:0;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.reveal{transform:translateY(40px)}.reveal-left{transform:translate(-40px)}.reveal-right{transform:translate(40px)}.reveal.visible,.reveal-left.visible,.reveal-right.visible{opacity:1;transform:none}.d1{transition-delay:80ms}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}.d6{transition-delay:.48s}.d7{transition-delay:.56s}.d8{transition-delay:.64s}.grad-text{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.eyebrow{font-family:var(--fn-m);letter-spacing:.18em;text-transform:uppercase;color:var(--violet);align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.68rem;display:flex}.eyebrow:before{content:"";background:var(--violet);width:20px;height:1px}.navbar{z-index:100;justify-content:space-between;align-items:center;height:64px;padding:0 3.5rem;transition:background .35s,border-color .35s;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid var(--border);background:#08080fe0}.nav-logo{font-family:var(--fn-d);letter-spacing:.02em;color:var(--text);font-size:1.1rem;font-weight:700}.nav-logo span{background:var(--grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.nav-links{align-items:center;gap:0;list-style:none;display:flex}.nav-links li a{letter-spacing:.01em;color:var(--text-2);padding:.5rem 1.1rem;font-size:.78rem;font-weight:500;transition:color .2s;display:block}.nav-links li a:hover{color:var(--text)}.nav-cta{border-radius:6px;margin-left:.5rem;transition:background .2s,border-color .2s;color:var(--violet)!important;background:#8b5cf626!important;border:1px solid #8b5cf659!important}.nav-cta:hover{background:#8b5cf64d!important}.nav-burger{z-index:101;justify-content:center;align-items:center;width:36px;height:36px;display:none;position:relative}.nav-burger lord-icon{pointer-events:none}.nav-mobile{z-index:99;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;visibility:hidden;background:#08080ff7;flex-direction:column;justify-content:space-between;padding:2.5rem 2rem 3rem;transition:opacity .3s,transform .3s,visibility 0s linear .3s;display:none;position:fixed;inset:64px 0 0;transform:translateY(-12px)}.nav-mobile.is-open{opacity:1;visibility:visible;transition:opacity .3s,transform .3s;transform:none}.nav-mobile-links{flex-direction:column;list-style:none;display:flex}.nav-mobile-links li{border-bottom:1px solid var(--border);opacity:0;transition:opacity .4s,transform .4s;transform:translateY(14px)}.nav-mobile.is-open .nav-mobile-links li{opacity:1;transform:none}.nav-mobile-links li a{font-family:var(--fn-d);letter-spacing:-.01em;color:var(--text);align-items:baseline;gap:.9rem;padding:1.15rem 0;font-size:1.6rem;font-weight:700;display:flex}.nav-mobile-index{font-family:var(--fn-m);letter-spacing:.1em;color:var(--violet);font-size:.65rem}.nav-mobile-foot{font-family:var(--fn-m);letter-spacing:.05em;color:var(--text-3);align-items:center;gap:14px;font-size:.68rem;display:flex}.hero{background:var(--bg);border-bottom:1px solid var(--border);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-orb{pointer-events:none;filter:blur(100px);border-radius:50%;position:absolute}.hero-orb-1{background:radial-gradient(circle,#8b5cf62e 0%,#0000 70%);width:700px;height:700px;animation:12s ease-in-out infinite orb-drift;top:-200px;left:-150px}.hero-orb-2{background:radial-gradient(circle,#60a5fa1f 0%,#0000 70%);width:600px;height:600px;animation:15s ease-in-out 2s infinite reverse orb-drift;bottom:-150px;right:-100px}.hero-orb-3{background:radial-gradient(circle,#a78bfa14 0%,#0000 70%);width:400px;height:400px;animation:9s ease-in-out 1s infinite orb-drift;top:40%;left:45%}.hero-grid{pointer-events:none;background-image:radial-gradient(#ffffff0f 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 75%,#000 30%,#0000 100%);mask-image:radial-gradient(75% 75%,#000 30%,#0000 100%)}.hero-content{z-index:2;text-align:center;max-width:900px;padding:0 2rem;position:relative}.hero-badge{letter-spacing:.01em;color:var(--text-2);border:1px solid var(--border-2);background:#ffffff08;border-radius:100px;align-items:center;gap:.6rem;margin-bottom:2.5rem;padding:.4rem 1rem;font-size:.75rem;font-weight:500;animation:.7s both fadeUp;display:inline-flex}.hero-badge-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 8px var(--green);border-radius:50%;animation:2s ease-in-out infinite pulse-dot}.hero-title{font-family:var(--fn-d);letter-spacing:-.02em;text-transform:none;word-break:break-word;overflow-wrap:break-word;margin-bottom:2rem;font-size:clamp(2.8rem,7vw,7rem);font-weight:700;line-height:.95;animation:.8s 80ms both fadeUp}.hero-title .block{display:block}.hero-title .accent{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-title .hero-title-dev{justify-content:center;align-items:center;gap:.22em;display:inline-flex}.hero-title-word{display:inline-block}.hero-title-icon{flex-shrink:0;width:.62em;height:.62em;display:inline-block}.hero-desc{color:var(--text-2);max-width:520px;margin:0 auto 2.5rem;font-size:1.05rem;font-weight:400;line-height:1.75;animation:.9s .18s both fadeUp}.hero-actions{justify-content:center;align-items:center;gap:.8rem;animation:.9s .26s both fadeUp;display:flex}.btn-primary{background:var(--grad);color:#fff;border-radius:8px;align-items:center;gap:.5rem;padding:.8rem 1.75rem;font-size:.85rem;font-weight:600;transition:opacity .2s,box-shadow .25s,transform .15s;display:inline-flex;box-shadow:0 0 #8b5cf600}.btn-primary:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 0 28px #8b5cf666}.btn-outline{border:1px solid var(--border-2);color:var(--text);background:#ffffff08;border-radius:8px;align-items:center;gap:.5rem;padding:.8rem 1.75rem;font-size:.85rem;font-weight:500;transition:border-color .2s,background .2s,transform .15s;display:inline-flex}.btn-outline:hover{background:#8b5cf60f;border-color:#8b5cf680;transform:translateY(-2px)}.hero-scroll{z-index:2;flex-direction:column;align-items:center;gap:.5rem;animation:1s .8s both fadeUp;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.hero-scroll-text{letter-spacing:.2em;text-transform:uppercase;color:var(--text-3);font-size:.65rem}.hero-scroll-line{background:linear-gradient(to bottom,var(--violet),transparent);width:1px;height:44px;animation:2s ease-in-out infinite pulse-line}.ticker-wrapper{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:.9rem 0;overflow:hidden}.ticker-track{width:max-content;animation:38s linear infinite ticker;display:flex}.ticker-item{font-family:var(--fn-m);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;align-items:center;gap:1.5rem;padding:0 2.5rem;font-size:.65rem;display:flex}.ticker-dot{color:var(--violet);opacity:.5;font-size:.45rem}.about-section{border-bottom:1px solid var(--border);max-width:1260px;margin:0 auto;padding:8rem 4rem}.section-label{font-family:var(--fn-m);letter-spacing:.18em;text-transform:uppercase;color:var(--violet);align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.68rem;display:flex}.section-label:before{content:"";background:var(--violet);width:16px;height:1px}.about-statement{font-family:var(--fn-d);letter-spacing:-.01em;max-width:820px;margin:1rem 0 2.5rem;font-size:clamp(1.6rem,3vw,2.6rem);font-weight:700;line-height:1.15}.about-statement em{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.about-bento{grid-template-rows:auto auto auto auto;grid-template-columns:1fr 1fr 1fr;gap:1rem;display:grid}.ab-cell{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:.65rem;padding:1.75rem;transition:background .25s,border-color .3s,opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.ab-cell:hover{background:var(--bg-card-2);border-color:var(--border-2)}.ab-label{font-family:var(--fn-m);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);align-self:center;font-size:.6rem}.ab-avail{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--green);background:#34d39914;border:1px solid #34d39938;border-radius:100px;align-self:flex-start;align-items:center;gap:.45rem;margin-bottom:.2rem;padding:.28rem .75rem;font-size:.6rem;display:inline-flex}.ab-avail-dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 7px var(--green);border-radius:50%;flex-shrink:0;animation:2s ease-in-out infinite pulse-dot}.ab-bio{grid-area:1/1/auto/3}.ab-bio:before{content:"";pointer-events:none;background:radial-gradient(circle,#8b5cf614 0%,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-40px}.ab-bio-text{color:var(--text-2);font-size:.95rem;line-height:1.85}.ab-bio-text+.ab-bio-text{margin-top:.65rem}.ab-bio-cta{flex-wrap:wrap;gap:.65rem;margin-top:1.25rem;display:flex}.ab-viewer{background:var(--bg-3);grid-area:1/3/2/4;min-height:0;padding:0}.ab-viewer vloid-3d{width:100%;height:100%;min-height:200px;display:block}.ab-stat-num{font-family:var(--fn-d);letter-spacing:-.02em;background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.8rem;font-weight:700;line-height:1}.ab-stat-label{color:var(--text-3);font-size:.78rem;font-weight:500;line-height:1.5}.ab-exp:after{content:"";pointer-events:none;background:radial-gradient(circle,#8b5cf624 0%,#0000 70%);border-radius:50%;width:120px;height:120px;position:absolute;bottom:-20px;left:-20px}.ab-proj:after{content:"";pointer-events:none;background:radial-gradient(circle,#60a5fa1f 0%,#0000 70%);border-radius:50%;width:120px;height:120px;position:absolute;top:-20px;right:-20px}.ab-loc-flag{font-size:2rem}.ab-loc-val{font-family:var(--fn-d);letter-spacing:.01em;color:var(--text);font-size:1.25rem;font-weight:700;line-height:1.2}.ab-focus-item{align-items:center;gap:.55rem;display:flex}.ab-focus-dot{background:var(--grad);border-radius:50%;flex-shrink:0;width:5px;height:5px}.ab-tags{flex-flow:wrap;grid-area:3/2/auto/-1;align-content:flex-start;align-items:flex-start;gap:.45rem;padding:1.4rem 1.75rem}.ab-tag{font-family:var(--fn-m);letter-spacing:.05em;border:1px solid var(--border);color:var(--text-3);background:0 0;border-radius:100px;padding:.3rem .85rem;font-size:.65rem;transition:border-color .2s,color .2s,background .2s}.ab-tag:hover{color:var(--violet);background:#8b5cf60f;border-color:#8b5cf673}.ab-status-dot{background:var(--green);width:8px;height:8px;box-shadow:0 0 8px var(--green);border-radius:50%;flex-shrink:0;animation:2s ease-in-out infinite pulse-dot}.ab-exp,.ab-proj,.ab-loc,.ab-foc{grid-area:auto}@media (width<=960px){.about-bento{grid-template-rows:auto auto auto auto auto;grid-template-columns:1fr 1fr;gap:.75rem}.ab-viewer{grid-area:1/1/auto/-1;min-height:280px}.ab-bio{grid-area:2/1/auto/-1}.ab-exp{grid-area:3/1/auto/2}.ab-proj{grid-area:3/2/auto/3}.ab-loc{grid-area:4/1/auto/2}.ab-foc{grid-area:4/2/auto/3}.ab-tags{flex-flow:wrap;grid-area:5/1/auto/-1}}@media (width<=480px){.about-section{padding:4rem 1.25rem}.ab-viewer{min-height:240px}.ab-cell{padding:1.25rem}.ab-stat-num{font-size:2.4rem}.about-bento{gap:.65rem}}.skills{background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:8rem 0}.skills-inner{max-width:1260px;margin:0 auto;padding:0 4rem}.hobby-grid{background:var(--border);border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:3rem;display:grid;overflow:hidden}.hobby-card{background:var(--bg-card);aspect-ratio:1;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;transition:background .2s;display:flex;position:relative;overflow:hidden}.hobby-card:hover{background:var(--bg-card-2)}.hobby-card:active{background:var(--bg-3)}.hobby-label{background:linear-gradient(#0000 0%,#0d0d19e6 100%);justify-content:space-between;align-items:center;padding:.9rem 1.1rem;display:flex;position:absolute;bottom:0;left:0;right:0}.hobby-name{color:var(--text);font-size:.85rem;font-weight:600}.hobby-hint{font-family:var(--fn-m);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:.56rem}.card-tagline{text-align:center;font-family:var(--fn-b);color:var(--text-3);opacity:1;pointer-events:none;padding:0 1.25rem;font-size:.72rem;font-weight:500;line-height:1.5;transition:opacity .25s,transform .25s;position:absolute;bottom:3.2rem;left:0;right:0;transform:translateY(0)}.card-tagline--hidden{opacity:0;transform:translateY(6px)}.ch-icon-wrap{z-index:3;pointer-events:none;width:160px;height:160px;transition:width .6s cubic-bezier(.34,1.1,.64,1),height .6s cubic-bezier(.34,1.1,.64,1),top .6s cubic-bezier(.34,1.1,.64,1),left .6s cubic-bezier(.34,1.1,.64,1),transform .6s cubic-bezier(.34,1.1,.64,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ch-icon-wrap--corner{width:54px;height:54px;top:18px;left:calc(100% - 74px);transform:none}.chess-reveal{opacity:0;pointer-events:none;flex-direction:column;gap:.55rem;padding:80px 1.15rem 3.2rem;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;transform:translateY(16px)}.chess-reveal--in{opacity:1;transition-delay:.3s;transform:none}.ch-profile{align-items:center;gap:.7rem;display:flex}.ch-avatar{background:linear-gradient(135deg,#7c3aed,#a78bfa);border:1.5px solid #a78bfa59;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.2rem;display:flex;box-shadow:0 0 16px #8b5cf640}.ch-info{flex-direction:column;gap:.12rem;display:flex}.ch-username{font-family:var(--fn-d);color:var(--text);letter-spacing:-.01em;font-size:.95rem;font-weight:700}.ch-platform{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.52rem}.ch-stats{border:1px solid var(--border);border-radius:8px;gap:0;display:flex;overflow:hidden}.ch-stat{border-right:1px solid var(--border);flex-direction:column;flex:1;align-items:center;gap:.08rem;padding:.5rem .25rem;display:flex}.ch-stat:last-child{border-right:none}.ch-stat-val{font-family:var(--fn-d);color:#a78bfa;letter-spacing:-.01em;font-size:.95rem;font-weight:700}.ch-stat-label{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.48rem}.ch-record{align-items:center;gap:.55rem;display:flex}.ch-win{font-family:var(--fn-m);color:#34d399;font-size:.72rem;font-weight:600}.ch-loss{font-family:var(--fn-m);color:#f87171;font-size:.72rem;font-weight:600}.ch-draw{font-family:var(--fn-m);color:var(--text-3);font-size:.72rem;font-weight:600}.ch-sep{color:var(--text-3);font-size:.65rem}.ch-opening{border-left:2px solid #a78bfa59;flex-direction:column;gap:.12rem;padding-left:.65rem;display:flex}.ch-opening-label{font-family:var(--fn-m);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:.5rem}.ch-opening-name{color:var(--text-2);font-size:.78rem;font-weight:600}.crypto-icon-wrap{z-index:3;pointer-events:none;width:160px;height:160px;transition:width .6s cubic-bezier(.34,1.1,.64,1),height .6s cubic-bezier(.34,1.1,.64,1),top .6s cubic-bezier(.34,1.1,.64,1),left .6s cubic-bezier(.34,1.1,.64,1),transform .6s cubic-bezier(.34,1.1,.64,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crypto-icon-wrap--corner{width:54px;height:54px;top:18px;left:calc(100% - 74px);transform:none}.crypto-reveal{opacity:0;pointer-events:none;flex-direction:column;gap:.6rem;padding:86px 1.25rem 3.5rem;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;transform:translateY(16px)}.crypto-reveal--in{opacity:1;transition-delay:.32s;transform:none}.cr-title{font-family:var(--fn-m);letter-spacing:.2em;text-transform:uppercase;color:var(--text-3);margin-bottom:.15rem;font-size:.56rem}.cr-rows{flex-direction:column;gap:.5rem;display:flex}.cr-row{align-items:center;gap:.65rem;display:flex}.cr-sym{text-align:center;color:#fbbf24;width:1.5rem;font-size:1.1rem}.cr-name{color:var(--text-2);flex:1;font-size:.82rem;font-weight:500}.cr-pct{font-family:var(--fn-m);color:#f87171;font-size:.72rem;font-weight:600}.cr-divider{background:var(--border);height:1px;margin:.2rem 0}.cr-total-row{justify-content:space-between;align-items:baseline;display:flex}.cr-total-label{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.56rem}.cr-total-val{font-family:var(--fn-d);letter-spacing:-.02em;background:linear-gradient(135deg,#f87171,#ef4444);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.55rem;font-weight:700}.gaming-icon-wrap{z-index:3;pointer-events:none;width:160px;height:160px;transition:width .6s cubic-bezier(.34,1.1,.64,1),height .6s cubic-bezier(.34,1.1,.64,1),top .6s cubic-bezier(.34,1.1,.64,1),left .6s cubic-bezier(.34,1.1,.64,1),transform .6s cubic-bezier(.34,1.1,.64,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gaming-icon-wrap--corner{width:54px;height:54px;top:18px;left:calc(100% - 74px);transform:none}.gaming-reveal{opacity:0;pointer-events:none;flex-direction:column;gap:.55rem;padding:80px 1.15rem 3.2rem;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;transform:translateY(16px)}.gaming-reveal--in{opacity:1;transition-delay:.3s;transform:none}.xb-profile{align-items:center;gap:.7rem;display:flex}.xb-avatar{width:42px;height:42px;font-family:var(--fn-d);color:#fff;background:linear-gradient(135deg,#107c10,#52b043);border:1.5px solid #52b04359;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex;box-shadow:0 0 16px #107c1040}.xb-info{flex-direction:column;gap:.12rem;display:flex}.xb-gamertag{font-family:var(--fn-d);color:var(--text);letter-spacing:-.01em;font-size:.95rem;font-weight:700}.xb-since{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.52rem}.xb-stats{border:1px solid var(--border);border-radius:8px;gap:0;display:flex;overflow:hidden}.xb-stat{border-right:1px solid var(--border);flex-direction:column;flex:1;align-items:center;gap:.08rem;padding:.5rem .25rem;display:flex}.xb-stat:last-child{border-right:none}.xb-stat-val{font-family:var(--fn-d);color:#52b043;letter-spacing:-.01em;font-size:.95rem;font-weight:700}.xb-stat-label{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.48rem}.xb-games{flex-direction:column;gap:.35rem;margin-top:.1rem;display:flex}.xb-game-row{justify-content:space-between;align-items:center;font-size:.72rem;display:flex}.xb-game-name{color:var(--text-2);font-weight:500}.xb-game-gs{font-family:var(--fn-m);color:#52b043;letter-spacing:.04em;font-size:.62rem}.chess-svg-wrap{border-radius:6px;flex-shrink:0;width:214px;height:214px;overflow:hidden;box-shadow:0 8px 36px #0000008c}.chess-svg-wrap svg{width:100%;height:100%;display:block}.chess-board{border:2px solid #ffffff1a;border-radius:3px;grid-template-columns:repeat(6,1fr);width:204px;height:204px;transition:transform .15s;display:grid;overflow:hidden;box-shadow:0 12px 40px #0000008c}.hobby-card:active .chess-board{transform:scale(.97)}.chess-cell{aspect-ratio:1;justify-content:center;align-items:center;display:flex}.chess-cell.l{background:#e8c9a0}.chess-cell.d{background:#a0724a}.chess-piece{font-size:1.15rem;line-height:1;transition:transform .5s cubic-bezier(.34,1.56,.64,1);display:block}.chess-piece.moving{transform:translateY(-8px)scale(1.15)}.juggle-scene{width:130px;height:130px;position:relative}.jball{border-radius:50%;width:24px;height:24px;transition:transform .5s;position:absolute;box-shadow:0 4px 14px #0006}.jball-1{background:#f4845f;top:88px;left:16px}.jball-2{background:#8b5cf6;top:88px;right:16px}.jball-3{background:#60a5fa;top:12px;left:50%;transform:translate(-50%)}.juggling .jball-1{animation:.7s ease-in-out 3 both jug1}.juggling .jball-2{animation:.7s ease-in-out .23s 3 both jug2}.juggling .jball-3{animation:.7s ease-in-out .46s 3 both jug3}@keyframes jug1{0%{transform:translate(0)scale(1)}40%{transform:translate(35px,-80px)scale(.8)}80%{transform:translate(70px)scale(1)}to{transform:translate(0)scale(1)}}@keyframes jug2{0%{transform:translate(0)scale(1)}40%{transform:translate(-35px,-80px)scale(.8)}80%{transform:translate(-70px)scale(1)}to{transform:translate(0)scale(1)}}@keyframes jug3{0%{transform:translate(-50%)scale(.8)}40%{transform:translate(-80px,80px)scale(1)}80%{transform:translate(30px,80px)scale(1)}to{transform:translate(-50%)scale(.8)}}.monitor-wrap{flex-direction:column;align-items:center;gap:0;display:flex}.monitor-body{background:#05050d;border:2.5px solid #ffffff24;border-radius:9px 9px 3px 3px;width:220px;height:134px;position:relative;overflow:hidden}.monitor-body:after{content:"";pointer-events:none;z-index:5;background:repeating-linear-gradient(#0000 0 1px,#0000002e 1px 2px);position:absolute;inset:0}.monitor-cam{z-index:10;background:#ffffff2e;border-radius:50%;width:6px;height:6px;transition:all .3s;position:absolute;top:5px;left:50%;transform:translate(-50%)}.monitor-neck{background:#ffffff12;width:20px;height:20px;margin:0 auto}.monitor-base{background:#ffffff12;border-radius:4px;width:88px;height:7px}.monitor-idle{font-family:var(--fn-m);flex-direction:column;gap:5px;padding:18px 14px;font-size:.6rem;line-height:1.6;display:flex}.mi-line{color:var(--text-2);align-items:center;gap:.4em;display:flex}.mi-prompt{color:#60a5fa}.mi-ok{color:#34d399}.mi-dim{color:var(--text-3)}.mi-accent{color:#a78bfa}.mi-cursor{vertical-align:middle;background:#a78bfa;width:6px;height:.75em;margin-left:3px;animation:.9s step-end infinite blink;display:inline-block}.eq-scene{align-items:flex-end;gap:5px;height:80px;padding:0 10px;display:flex}.eq-bar{background:#8b5cf640;border-radius:3px 3px 0 0;flex:1;height:20%;min-height:6px;transition:height .1s}.eq-playing .eq-bar{animation:.4s ease-in-out infinite alternate eq-bounce}.eq-playing .eq-bar:first-child{animation-delay:0s}.eq-playing .eq-bar:nth-child(2){animation-delay:70ms}.eq-playing .eq-bar:nth-child(3){animation-delay:.14s}.eq-playing .eq-bar:nth-child(4){animation-delay:.21s}.eq-playing .eq-bar:nth-child(5){animation-delay:.28s}.eq-playing .eq-bar:nth-child(6){animation-delay:.35s}.eq-playing .eq-bar:nth-child(7){animation-delay:.42s}@keyframes eq-bounce{0%{background:#8b5cf64d;height:10%}to{background:#8b5cf6;height:90%;box-shadow:0 0 12px #8b5cf699}}.gamepad-body{background:var(--bg-3);border:2px solid #ffffff1a;border-radius:14px 14px 24px 24px;width:130px;height:80px;position:relative}.gamepad-btn{width:18px;height:18px;font-size:.5rem;font-weight:700;font-family:var(--fn-b);color:#ffffff80;border:1.5px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;transition:background .1s,transform .1s,box-shadow .1s;display:flex;position:absolute}.gamepad-btn.pressed{color:#fff;border-color:currentColor;transform:scale(.85);box-shadow:0 0 10px}.btn-a{color:#34d399;background:#34d39926;top:30px;right:24px}.btn-b{color:#f87171;background:#f8717126;top:14px;right:10px}.btn-x{color:#60a5fa;background:#60a5fa26;top:14px;right:38px}.btn-y{color:#facc15;background:#facc1526;top:0;right:24px}.gamepad-dpad{width:38px;height:38px;position:absolute;top:18px;left:20px}.dpad-h,.dpad-v{background:#ffffff12;border:1px solid #ffffff1a;border-radius:2px;position:absolute}.dpad-h{width:100%;height:33%;top:33%}.dpad-v{width:33%;height:100%;left:33%}@media (width<=900px){.skills{padding:5rem 0}.skills-inner{padding:0 1.5rem}.hobby-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.hobby-grid{grid-template-columns:1fr}.hobby-card{aspect-ratio:1.35}.crypto-icon-wrap,.ch-icon-wrap,.gaming-icon-wrap{width:120px;height:120px}.crypto-icon-wrap--corner,.ch-icon-wrap--corner,.gaming-icon-wrap--corner{width:46px;height:46px;top:14px;left:calc(100% - 62px)}.card-tagline{font-size:.78rem;bottom:2.6rem}:is(.hobby-card:has(.chess-reveal--in),.hobby-card:has(.crypto-reveal--in),.hobby-card:has(.gaming-reveal--in)){aspect-ratio:auto;min-height:380px}.chess-reveal,.crypto-reveal,.gaming-reveal{gap:.7rem;padding:64px 1.1rem 1.6rem}.ch-stats,.xb-stats,.ch-profile,.xb-profile,.ch-record,.ch-opening,.xb-games{flex-shrink:0}.ch-stat,.xb-stat{padding:.55rem .25rem}}@media (width<=480px){.chess-board{width:110px;height:110px}}.skills-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;max-width:1260px;margin:0 auto 4rem;padding:0 4rem;display:flex}.skills-total{font-family:var(--fn-m);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--border-2);border-radius:100px;padding:.35rem .85rem;font-size:.68rem}.skills-marquee-section{flex-direction:column;display:flex}.skills-marquee-row{border-top:1px solid var(--border);opacity:0;--play:running;padding:.65rem 0;transition:opacity 1s;display:flex;overflow:hidden}.skills-marquee-row:last-child{border-bottom:1px solid var(--border)}.skills-marquee-row.on{opacity:1}.skills-marquee-row:hover{--play:paused}.skills-marquee-track{width:max-content;animation-play-state:var(--play);flex-shrink:0;align-items:center;display:flex}.skills-marquee-track.fwd{animation:38s linear infinite mkfwd}.skills-marquee-track.bwd{animation:44s linear infinite mkbwd}.skills-marquee-track.fwd2{animation:30s linear infinite mkfwd}.sk-pill{border:1px solid var(--border);color:var(--text-2);background:var(--bg-3);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;border-radius:100px;align-items:center;gap:.55rem;margin:0 .4rem;padding:.55rem 1.3rem;font-size:.9rem;font-weight:500;transition:border-color .25s,color .25s,background .25s;display:inline-flex}.skills-marquee-row:hover .sk-pill:hover{color:var(--text);background:#8b5cf612;border-color:#8b5cf680}.sk-dot{background:var(--grad);opacity:.6;border-radius:50%;flex-shrink:0;width:6px;height:6px}@keyframes mkfwd{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes mkbwd{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (width<=768px){.skills{padding:5rem 0}.skills-top{margin-bottom:3rem;padding:0 1.5rem}.sk-pill{padding:.45rem 1rem;font-size:.8rem}}.projects{max-width:1260px;margin:0 auto;padding:8rem 4rem}.projects-header{justify-content:space-between;align-items:flex-end;margin-bottom:2rem;display:flex}.view-all{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;color:var(--violet);border-bottom:1px solid #8b5cf659;padding-bottom:2px;font-size:.68rem;transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.view-all:hover{opacity:.7;transition:opacity .2s}.proj-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem;display:flex}.proj-filter{font-family:var(--fn-m);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--border-2);color:var(--text-3);cursor:pointer;background:0 0;border-radius:100px;padding:.38rem 1rem;font-size:.65rem;transition:border-color .2s,color .2s,background .2s}.proj-filter:hover{color:var(--text-2);border-color:#8b5cf659}.proj-filter.active{color:var(--violet);background:#8b5cf61f;border-color:#8b5cf673}.projects-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;flex-direction:column;transition:border-color .3s,box-shadow .3s,transform .3s;display:flex;overflow:hidden}.project-card:hover{border-color:#8b5cf647;transform:translateY(-3px);box-shadow:0 0 0 1px #8b5cf61a,0 20px 50px #00000059}.project-card--featured{grid-column:1/-1}.proj-strip{flex-shrink:0;height:2px}.proj-inner{flex-direction:column;flex:1;display:flex}.proj-inner--h{flex-direction:row}.proj-visual{aspect-ratio:16/10;flex-shrink:0;position:relative;overflow:hidden}.project-card--featured .proj-visual{aspect-ratio:auto;flex:0 0 55%}.proj-mockup-wrap{width:100%;height:100%;transition:transform .55s cubic-bezier(.16,1,.3,1)}.project-card:hover .proj-mockup-wrap{transform:scale(1.03)}.proj-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#05050fb3;justify-content:center;align-items:center;gap:.75rem;transition:opacity .25s;display:flex;position:absolute;inset:0}.project-card:hover .proj-overlay{opacity:1}.proj-overlay-btn{color:#fff;font-family:var(--fn-m);letter-spacing:.06em;text-transform:uppercase;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:.55rem 1.3rem;font-size:.68rem;transition:background .2s}.proj-overlay-btn:hover{background:#ffffff2e}.proj-body{flex-direction:column;flex:1;gap:.65rem;padding:1.1rem 1.25rem 1.3rem;display:flex}.project-card--featured .proj-body{justify-content:center;padding:1.75rem}.proj-badge-new{font-family:var(--fn-m);letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:100px;align-self:flex-start;padding:.28rem .75rem;font-size:.6rem;font-weight:600;display:inline-flex}.proj-title-new{font-family:var(--fn-b);letter-spacing:-.01em;color:var(--text);font-size:.95rem;font-weight:700;line-height:1.35}.project-card--featured .proj-title-new{font-size:1.2rem}.proj-chips{flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.4rem;display:flex}.proj-chip{font-family:var(--fn-m);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-3);background:#ffffff05;border-radius:100px;padding:.22rem .65rem;font-size:.6rem;transition:border-color .2s,color .2s}.project-card:hover .proj-chip{border-color:var(--border-2);color:var(--text-2)}.proj-links{border-top:1px solid var(--border);align-items:center;gap:.65rem;padding-top:.65rem;display:flex}.proj-link{font-family:var(--fn-m);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:.4rem;font-size:.65rem;transition:color .2s;display:inline-flex}.proj-link:hover{color:var(--violet)}.proj-link--live{color:var(--violet);margin-left:auto}.mock-browser{background:#0e0e1a;flex-direction:column;width:100%;height:100%;display:flex}.mock-bar{border-bottom:1px solid var(--border);background:#131320;flex-shrink:0;align-items:center;gap:.4rem;padding:.55rem .8rem;display:flex}.mb-dot{border-radius:50%;width:8px;height:8px}.mb-dot.r{background:#ff5f57}.mb-dot.y{background:#febc2e}.mb-dot.g{background:#28c840}.mb-url{font-family:var(--fn-m);color:var(--text-3);background:#ffffff0a;border-radius:4px;flex:1;margin:0 .5rem;padding:.18rem .6rem;font-size:.58rem}.mock-body{flex:1;position:relative;overflow:hidden}.mazing-stage{background:radial-gradient(120% 100% at 50% 110%,#1126 0%,#0000 60%),#06060f}.mazing-grid{background-image:linear-gradient(#8b5cf612 1px,#0000 1px),linear-gradient(90deg,#8b5cf612 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70%,#000 40%,#0000 100%);mask-image:radial-gradient(70% 70%,#000 40%,#0000 100%)}.mazing-glow{aspect-ratio:1;filter:blur(6px);background:radial-gradient(circle,#8b5cf647 0%,#60a5fa1f 45%,#0000 72%);border-radius:50%;width:62%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mazing-spark{opacity:.7;background:#c4b5fd;border-radius:50%;width:4px;height:4px;animation:6s ease-in-out infinite mazing-float;position:absolute;box-shadow:0 0 10px 2px #a78bfacc}@keyframes mazing-float{0%,to{opacity:.35;transform:translateY(0)scale(1)}50%{opacity:.9;transform:translateY(-14px)scale(1.4)}}.mazing-plate{aspect-ratio:21/8;background:linear-gradient(155deg,#fff 0%,#e7e9f3 100%);border-radius:14px;justify-content:center;align-items:center;width:74%;max-width:340px;padding:1rem 1.85rem;transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 60px -16px #050514a6,0 0 0 1px #ffffff14,inset 0 1px #fff9}.project-card:hover .mazing-plate{transform:translate(-50%,-50%)scale(1.045)rotate(-1deg);box-shadow:0 28px 70px -14px #8b5cf673,0 0 0 1px #ffffff1f,inset 0 1px #ffffffb3}.mazing-logo-img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.mock-term{background:#09090f;flex-direction:column;width:100%;height:100%;display:flex}.mock-term-title{font-family:var(--fn-m);color:var(--text-3);margin:0 auto;font-size:.6rem}.mock-term-body{font-family:var(--fn-m);flex:1;padding:1rem;font-size:.68rem;line-height:1.85;overflow:hidden}.ml{gap:.5rem;display:flex}.mp{color:var(--violet)}.mc{color:var(--text)}.mo{color:var(--text-2)}.mkey{color:#c084fc}.mstr{color:#86efac}.mnum{color:#fb923c}.mbool{color:var(--blue)}.mcmt{color:#2d3044}.contact{background:var(--bg-2);border-top:1px solid var(--border);text-align:center;padding:9rem 4rem;position:relative;overflow:hidden}.contact-inner{z-index:2;max-width:1180px;margin:0 auto;position:relative}.contact-sparkle-layer{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:hidden}.contact-sparkle{will-change:transform, opacity;border-radius:50%;animation:.95s cubic-bezier(.16,1,.3,1) forwards contact-sparkle-pop;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(0)}@keyframes contact-sparkle-pop{0%{opacity:.95;transform:translate(-50%,-50%)scale(0)rotate(0)}30%{transform:translate(calc(-50% + var(--drift) * .35), calc(-50% - 16px)) scale(1) rotate(var(--rotate));opacity:1}to{transform:translate(calc(-50% + var(--drift)), calc(-50% - 52px)) scale(0) rotate(var(--rotate));opacity:0}}.contact-grid{text-align:left;grid-template-columns:1.1fr .9fr;align-items:center;gap:5rem;display:grid}.contact-info{text-align:center;max-width:480px;margin:0 auto}.contact-heading{font-family:var(--fn-d);letter-spacing:-.02em;margin:1rem 0 1.5rem;font-size:clamp(2.5rem,5.5vw,5.5rem);font-weight:700;line-height:.95}.contact-heading em{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.contact-sub{color:var(--text-2);max-width:420px;margin:0 auto 2.5rem;font-size:1rem;line-height:1.8}.contact-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;display:flex}.contact-term{border:1px solid var(--border);text-align:left;background:#09090f;border-radius:14px;transition:border-color .25s,opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 40px 100px -30px #0009}.contact-term:focus-within{border-color:#8b5cf666}.ct-bar{border-bottom:1px solid var(--border);background:#131320;align-items:center;gap:.4rem;padding:.65rem .9rem;display:flex}.ct-bar-title{font-family:var(--fn-m);color:var(--text-3);letter-spacing:.04em;margin:0 auto;font-size:.62rem}.ct-screen{font-family:var(--fn-m);flex-direction:column;gap:1rem;padding:1.85rem;display:flex}.ct-line{color:var(--text-2);white-space:normal;word-break:break-word;font-size:.74rem;line-height:1.7}.ct-prompt{align-items:center;gap:.35rem;margin-top:.4rem;font-size:.76rem;display:flex}.ct-input,.ct-textarea{border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--fn-m);background:#ffffff05;border-radius:6px;padding:.65rem .8rem;font-size:.8rem;line-height:1.7;transition:border-color .2s,background .2s}.ct-input::placeholder,.ct-textarea::placeholder{color:var(--text-3)}.ct-input:focus,.ct-textarea:focus{background:#8b5cf60d;border-color:#8b5cf680;outline:none}.ct-textarea{resize:vertical;min-height:88px}.ct-submit{color:var(--violet);font-family:var(--fn-m);background:#8b5cf61a;border:1px solid #8b5cf659;border-radius:8px;align-self:flex-start;align-items:center;gap:.5rem;margin-top:.4rem;padding:.7rem 1.4rem;font-size:.78rem;transition:background .2s,border-color .2s,transform .15s;display:inline-flex}.ct-submit:hover{background:#8b5cf62e;border-color:#8b5cf699;transform:translateY(-2px)}.ct-submit:disabled{opacity:.6;cursor:default;background:#8b5cf61a;border-color:#8b5cf659;transform:none!important}.ct-cursor{animation:1.1s step-end infinite ct-blink;display:inline-block}@keyframes ct-blink{50%{opacity:0}}.kdev-toast{letter-spacing:.01em}.kdev-toast-loading{border-left-color:var(--blue)!important}.kdev-toast-success{border-left-color:var(--violet)!important}.kdev-toast-error{border-left-color:#f87171!important}.contact-socials{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:2rem;margin-top:4rem;padding-top:4rem;display:flex}.social-link{font-family:var(--fn-m);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:.68rem;transition:color .2s;position:relative}.social-link:after{content:"";background:var(--violet);width:0;height:1px;transition:width .3s;position:absolute;bottom:-3px;left:0}.social-link:hover{color:var(--violet)}.social-link:hover:after{width:100%}.footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.75rem 4rem;display:flex}.footer-logo{font-family:var(--fn-d);letter-spacing:.01em;color:var(--text-3);font-size:1rem;font-weight:700}.footer-logo span{background:var(--grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.footer-copy{font-family:var(--fn-m);color:var(--text-3);font-size:.62rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes vinyl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ctrl-rumble{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(-1px,1px)rotate(-.2deg)}75%{transform:translate(1px,-1px)rotate(.2deg)}}@keyframes orb-drift{0%,to{transform:translate(0)scale(1)}33%{transform:translate(40px,-30px)scale(1.06)}66%{transform:translate(-25px,20px)scale(.96)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 8px var(--green)}50%{box-shadow:0 0 16px var(--green)}}@keyframes pulse-line{0%,to{opacity:.9}50%{opacity:.2}}@media (width<=1024px){.about{grid-template-columns:1fr;gap:3.5rem;padding:6rem 2rem}.projects-grid{grid-template-columns:repeat(2,1fr)}.project-card.featured{grid-column:auto}.contact-grid{grid-template-columns:1fr;gap:3.5rem}.contact-info{max-width:none}}@media (width<=768px){.navbar{padding:0 1.5rem}.nav-links{display:none}.nav-burger,.nav-mobile{display:flex}.about,.projects,.contact{padding:5rem 1.5rem}.skills{padding:5rem 0}.projects-grid{grid-template-columns:1fr}.projects-header{flex-direction:column;align-items:flex-start;gap:1rem}.ct-screen{padding:1.35rem}.contact-socials{flex-wrap:wrap;gap:1.5rem;margin-top:2.5rem;padding-top:2.5rem}.footer{text-align:center;flex-direction:column;gap:.75rem;padding:1.5rem}}@media (width<=768px),(height<=700px){.hero-scroll{display:none}}#root{min-height:100vh}
