:root{--bg:#08080d;--bg-alt:#0c0c13;--surface:#11111a;--surface-2:#171722;--surface-3:#1d1d2b;--border:#292934;--border-soft:#20202b;--text:#e9e9f2;--text-dim:#9b9bad;--text-faint:#5e5e6c;--accent:#00ff9d;--accent-dim:#00ff9d2b;--accent-soft:#00ff9d14;--violet:#7c3aed;--violet-soft:#7c3aed24;--danger:#ff2e63;--shadow:0 30px 90px -35px #00ff9d40;--font-mono:"JetBrains Mono", monospace;--font-sans:"Space Grotesk", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);background-image:radial-gradient(85% 50% at 50% -10%,#7c3aed2e,#0000 58%),radial-gradient(61% 46% at 88% 18%,#00ff9d12,#0000 62%),linear-gradient(#ffffff04,#0000 22%);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--accent);color:#030305}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.scanline-bg{pointer-events:none;z-index:1;opacity:.022;background:repeating-linear-gradient(0deg,#fff 0,#0000 1px 2px,#fff 3px);position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:3;mix-blend-mode:screen;will-change:transform;background:radial-gradient(circle,#00ff9d1c 0%,#7c3aed11 36%,#0000 68%);border-radius:50%;width:430px;height:430px;margin-top:-215px;margin-left:-215px;position:fixed;top:0;left:0}@media (max-width:640px){.cursor-glow{display:none}}@media (prefers-reduced-motion:reduce){.cursor-glow{display:none}}.container{max-width:1240px;margin:0 auto;padding:0 24px}nav{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border-soft);background:#08080dd6;position:fixed;top:0;left:0;right:0}.nav-inner{justify-content:space-between;align-items:center;max-width:1240px;margin:0 auto;padding:15px 24px;display:flex}.logo{font-family:var(--font-mono);color:var(--accent);white-space:nowrap;align-items:center;gap:8px;font-size:14px;font-weight:800;display:flex}.logo:before{content:"❯";color:var(--violet)}.nav-right{align-items:center;gap:18px;display:flex}.nav-links{font-family:var(--font-mono);gap:22px;font-size:12px;display:flex}.nav-links a{color:var(--text-dim);white-space:nowrap;transition:color .2s}.nav-links a:hover{color:var(--accent)}.lang-toggle{font-family:var(--font-mono);color:var(--accent);background:var(--accent-dim);cursor:pointer;border:1px solid #00ff9d9e;border-radius:7px;padding:5px 10px;font-size:12px;font-weight:800;transition:all .2s}.lang-toggle:hover{background:var(--accent);color:#030305}@media (max-width:900px){.nav-links{gap:13px;font-size:11px}}@media (max-width:720px){.nav-links{display:none}}.hero{z-index:2;align-items:center;min-height:100vh;padding:120px 0 80px;display:flex;position:relative}.hero-grid{grid-template-columns:minmax(0,850px) 320px;justify-content:space-between;align-items:center;gap:28px;display:grid}.terminal-window{border:1px solid var(--border);box-shadow:var(--shadow), 0 0 0 1px #ffffff05;isolation:isolate;background:linear-gradient(#11111af5,#0d0d14f5);border-radius:13px;max-width:none;position:relative;overflow:hidden}.terminal-window:before{content:"";z-index:-1;background:radial-gradient(280px circle at var(--mx,50%) var(--my,0%), #00ff9d33, transparent 68%);opacity:0;border-radius:13px;transition:opacity .35s;position:absolute;inset:-1px}.terminal-window:hover:before{opacity:1}.terminal-titlebar{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.dot{border-radius:50%;flex:none;width:11px;height:11px;display:inline-block}.dot-r{background:#ff5f56}.dot-y{background:#ffbd2e}.dot-g{background:#27c93f}.terminal-titlebar span{font-family:var(--font-mono);color:var(--text-faint);margin-left:auto;margin-right:auto;font-size:12px;transform:translate(-14px)}.terminal-body{font-family:var(--font-mono);min-height:250px;padding:32px 28px 36px;font-size:14px}.terminal-line{color:var(--text-dim);opacity:0;gap:10px;margin-bottom:10px;animation:.4s forwards fadeIn;display:flex}.terminal-line .prompt{color:var(--accent);flex-shrink:0}.terminal-line .cmd{color:var(--text)}.terminal-out{color:var(--text-dim);margin:0 0 16px;padding-left:20px}.hero-name{font-family:var(--font-mono);color:var(--text);letter-spacing:-.04em;font-size:clamp(32px,5vw,54px);font-weight:800;line-height:1.1;display:inline-block}.hero-name .accent-text{color:var(--accent)}.hero-role{color:#cfcfe0;margin-top:8px;font-size:15px;display:inline-block}.hero-quote{max-width:68ch}.cursor{background:var(--accent);vertical-align:-2px;width:9px;height:26px;margin-left:6px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}@keyframes fadeIn{to{opacity:1}}.hero-cta{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.btn{font-family:var(--font-mono);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 21px;font-size:13px;font-weight:700;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#040406;border-color:var(--accent)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 25px #00ff9d73}.btn-ghost{color:var(--text);background:#ffffff04}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.hero-side-card{border:1px solid var(--border);background:linear-gradient(#11111aeb,#0d0d14b8);border-radius:18px;min-height:350px;padding:22px;position:relative;overflow:hidden;box-shadow:0 26px 80px -45px #7c3aed8c}.hero-side-card:before{content:"";opacity:.8;background:conic-gradient(from 120deg,#0000,#00ff9d1f,#0000,#7c3aed24,#0000);animation:14s linear infinite rotate;position:absolute;inset:-35%}.hero-side-card>*{z-index:1;position:relative}@keyframes rotate{to{transform:rotate(360deg)}}.side-card-top{font-family:var(--font-mono);color:var(--accent);align-items:center;gap:8px;margin-bottom:28px;font-size:12px;display:flex}.pulse{background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px var(--accent);border-radius:50%;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.stack-orbit{flex-direction:column;gap:12px;display:flex}.stack-orbit span{font-family:var(--font-mono);color:var(--text);background:#00ff9d14;border:1px solid #00ff9d38;border-radius:999px;padding:10px 12px;font-size:13px}.activity-list{gap:10px;margin-top:28px;display:grid}.activity-row{font-family:var(--font-mono);border-bottom:1px solid #ffffff0f;justify-content:space-between;gap:14px;padding:10px 0;font-size:11.5px;display:flex}.activity-row span{color:var(--text-faint)}.activity-row strong{color:var(--text);text-align:right;font-weight:600}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-side-card{min-height:auto}}@media (max-width:560px){.terminal-body{padding:22px 18px 26px;font-size:12px}.terminal-line{flex-direction:column;gap:0}.terminal-out{padding-left:0}}.section{z-index:2;padding:100px 0;position:relative}.eyebrow{font-family:var(--font-mono);color:var(--violet);align-items:center;gap:10px;margin-bottom:14px;font-size:13px;display:flex}.eyebrow:before{content:"//";color:var(--text-faint)}.section-title{font-family:var(--font-mono);letter-spacing:-.035em;margin-bottom:0;font-size:clamp(25px,4vw,36px);font-weight:800}.section-head-row{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:38px;display:flex}.section-subtitle{color:var(--text-dim);max-width:470px;font-size:14.5px}@media (max-width:760px){.section{padding:78px 0}.section-head-row{display:block}.section-subtitle{margin-top:12px}}.profile-json-layout{grid-template-columns:240px minmax(0,1fr);gap:16px;display:grid}.file-tree,.json-window,.skill-group,.github-card,.code-block,.contact-box{border:1px solid var(--border);background:linear-gradient(#11111af2,#0d0d14eb);box-shadow:inset 0 1px #ffffff06}.file-tree{font-family:var(--font-mono);border-radius:14px;min-height:300px;padding:16px}.file-tree-title{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px;font-size:11px}.file-node{width:100%;color:var(--text-dim);text-align:left;font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:9px 10px;font-size:12px;transition:background .2s,color .2s,transform .2s;display:flex}.file-node:hover{color:var(--text);background:#ffffff09}.file-node.active{background:var(--accent-soft);color:var(--accent);transform:translate(2px)}.json-window{border-radius:14px;overflow:hidden}.json-tab-row{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 14px;display:flex}.json-tab{font-family:var(--font-mono);border-left:1px solid var(--border-soft);border-right:1px solid var(--border-soft);color:var(--text-dim);padding:12px 14px;font-size:12px}.json-tab.active{color:var(--accent);background:#00ff9d0a}.json-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 12px var(--accent);border-radius:50%}.json-window pre{color:var(--text-dim);font-family:var(--font-mono);margin:0;padding:22px;font-size:13px;line-height:1.9;overflow:auto}.c-key{color:var(--violet)}.c-str{color:var(--accent)}.c-com{color:var(--text-faint)}.c-punc{color:var(--text-dim)}@media (max-width:820px){.profile-json-layout{grid-template-columns:1fr}.file-tree{min-height:auto}}.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.skill-group{border-radius:14px;padding:18px}.skill-group h3{font-family:var(--font-mono);color:var(--accent);margin-bottom:13px;font-size:13px}.skills-grid.compact{flex-wrap:wrap;gap:8px;display:flex}.skill-pill{border:1px solid var(--border-soft);font-family:var(--font-mono);color:#dcdcec;isolation:isolate;background:#ffffff06;border-radius:999px;padding:7px 10px;font-size:11.5px;line-height:1;transition:border-color .2s,transform .2s,background .2s;position:relative;overflow:hidden}.skill-pill:before{content:"";z-index:-1;background:radial-gradient(95px circle at var(--mx,50%) var(--my,50%), #00ff9d59, transparent 65%);opacity:0;transition:opacity .25s;position:absolute;inset:-1px}.skill-pill:hover{background:#00ff9d0e;border-color:#00ff9d6b;transform:translateY(-1px)}.skill-pill:hover:before{opacity:1}@media (max-width:760px){.skill-groups{grid-template-columns:1fr}}.github-panel{border:1px solid var(--border);background:linear-gradient(#11111af2,#0d0d14eb);border-radius:18px;padding:22px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff06}.github-panel:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 20%,#00ff9d14,#0000 32%),radial-gradient(circle at 80% 10%,#7c3aed21,#0000 35%);position:absolute;inset:-45% -20%}.github-panel>*{z-index:1;position:relative}.github-panel-top{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.github-kicker{color:var(--text-faint);font-family:var(--font-mono);margin-bottom:6px;font-size:12px;display:block}.github-panel h3{color:var(--accent);font-family:var(--font-mono);font-size:18px}.github-open-link{color:var(--text);border:1px solid var(--border-soft);font-family:var(--font-mono);white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:12px;transition:border-color .2s,color .2s,transform .2s}.github-open-link:hover{color:var(--accent);border-color:#00ff9d73;transform:translateY(-1px)}.github-loading,.github-error{min-height:180px;color:var(--text-dim);font-family:var(--font-mono);border:1px dashed var(--border);text-align:center;background:#ffffff04;border-radius:14px;justify-content:center;align-items:center;padding:24px;display:flex}.github-error p{max-width:48ch}.github-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.github-stat-card{border:1px solid var(--border-soft);background:#ffffff06;border-radius:14px;flex-direction:column;justify-content:space-between;min-height:108px;padding:15px;display:flex}.github-stat-card.wide{grid-column:span 2}.github-stat-card span{color:var(--text-faint);font-family:var(--font-mono);font-size:11.5px}.github-stat-card strong{color:var(--text);font-family:var(--font-mono);letter-spacing:-.04em;font-size:clamp(22px,4vw,32px)}.language-panel{border:1px solid var(--border-soft);background:#00000029;border-radius:14px;margin-top:14px;padding:16px}.language-panel-title{color:var(--accent);font-family:var(--font-mono);margin-bottom:14px;font-size:12px}.language-row{margin-bottom:12px}.language-row:last-child{margin-bottom:0}.language-row-head{color:var(--text);font-family:var(--font-mono);justify-content:space-between;align-items:center;gap:14px;margin-bottom:7px;font-size:12px;display:flex}.language-row-head strong{color:var(--text-dim)}.language-track{background:#ffffff0f;border-radius:999px;height:8px;overflow:hidden}.language-track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--violet));height:100%;display:block}.github-muted{color:var(--text-dim);font-family:var(--font-mono);font-size:12px}.github-source{color:var(--text-faint);font-family:var(--font-mono);margin-top:14px;font-size:11px}@media (max-width:900px){.github-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.github-panel-top{display:block}.github-open-link{margin-top:14px;display:inline-flex}.github-stat-grid{grid-template-columns:1fr}.github-stat-card.wide{grid-column:auto}}.about-title-gap{margin-bottom:38px}.about-grid{grid-template-columns:1.08fr .92fr;align-items:start;gap:46px;display:grid}.about-text p{color:var(--text-dim);max-width:62ch;margin-bottom:18px;font-size:15.5px}.about-text strong{color:var(--text);font-weight:700}.code-block{font-family:var(--font-mono);border-radius:14px;padding:22px;font-size:13px;line-height:1.9;overflow:auto}@media (max-width:850px){.about-grid{grid-template-columns:1fr}}.contact-box{text-align:center;border-radius:18px;padding:54px 38px;position:relative;overflow:hidden}.contact-box:before{content:"";background:radial-gradient(at 50% 0,#00ff9d17,#0000 68%);position:absolute;inset:0}.contact-box h2{font-family:var(--font-mono);letter-spacing:-.03em;margin-bottom:12px;font-size:clamp(24px,4vw,34px);position:relative}.contact-box p{color:var(--text-dim);margin-bottom:28px;position:relative}.contact-links{flex-wrap:wrap;justify-content:center;gap:14px;display:flex;position:relative}footer{text-align:center;font-family:var(--font-mono);color:var(--text-faint);border-top:1px solid var(--border-soft);z-index:2;padding:30px 24px;font-size:12px;position:relative}
