:root{--bg:#0b0d17;--bg-card:#111422;--bg-raised:#181c2e;--bg-hover:#1e2235;--border:hsla(0,0%,100%,.065);--border-strong:hsla(0,0%,100%,.12);--border-accent:rgba(100,255,218,.28);--accent:#64ffda;--accent-glow:rgba(100,255,218,.1);--accent-dim:rgba(100,255,218,.55);--gold:#d4a843;--gold-light:#f0c96a;--lvl-master:#64ffda;--lvl-master-bg:rgba(100,255,218,.08);--lvl-master-bd:rgba(100,255,218,.22);--lvl-expert:#89b4fa;--lvl-expert-bg:rgba(137,180,250,.08);--lvl-expert-bd:rgba(137,180,250,.2);--lvl-advanced:#a6e3a1;--lvl-advanced-bg:rgba(166,227,161,.08);--lvl-advanced-bd:rgba(166,227,161,.18);--lvl-proficient:#f9e2af;--lvl-proficient-bg:hsla(41,86%,83%,.07);--lvl-proficient-bd:hsla(41,86%,83%,.18);--lvl-other:#4a5270;--lvl-other-bg:rgba(74,82,112,.2);--lvl-other-bd:rgba(74,82,112,.3);--text:#cdd6f4;--text-2:#8892b0;--text-3:#4e5a78;--font-head:"Syne",sans-serif;--font-body:"Plus Jakarta Sans",sans-serif;--font-mono:"JetBrains Mono",monospace;--sidebar-w:288px;--r:6px;--r-lg:12px;--tx:150ms ease}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:var(--accent);text-decoration:none;-webkit-transition:opacity var(--tx);-o-transition:opacity var(--tx);transition:opacity var(--tx)}a:hover{opacity:.75}body:before{content:"";position:fixed;inset:0 0 auto 0;height:2px;background:-webkit-gradient(linear,left top,right top,from(transparent),color-stop(25%,var(--accent)),color-stop(50%,var(--gold)),color-stop(75%,var(--accent)),to(transparent));background:-webkit-linear-gradient(left,transparent,var(--accent) 25%,var(--gold) 50%,var(--accent) 75%,transparent);background:-o-linear-gradient(left,transparent 0,var(--accent) 25%,var(--gold) 50%,var(--accent) 75%,transparent 100%);background:linear-gradient(90deg,transparent,var(--accent) 25%,var(--gold) 50%,var(--accent) 75%,transparent);background-size:200% 100%;-webkit-animation:bar-shift 5s linear infinite;animation:bar-shift 5s linear infinite;z-index:1000}@-webkit-keyframes bar-shift{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes bar-shift{0%{background-position:100% 0}to{background-position:-100% 0}}.resume{min-height:100vh}.resume,.sidebar{display:-ms-flexbox;display:flex}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--bg-card);border-right:1px solid var(--border);padding:44px 28px 60px;-ms-flex-direction:column;flex-direction:column;gap:30px;scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-animation:slide-in-left .45s ease both;animation:slide-in-left .45s ease both}.sidebar::-webkit-scrollbar{width:3px}.sidebar::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}@-webkit-keyframes slide-in-left{0%{opacity:0;-webkit-transform:translateX(-16px);transform:translateX(-16px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slide-in-left{0%{opacity:0;-webkit-transform:translateX(-16px);transform:translateX(-16px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}.sidebar__profile{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:10px}.avatar{width:68px;height:68px;border-radius:50%;overflow:hidden;border:2px solid var(--border-accent);background:var(--bg-raised);-ms-flex-negative:0;flex-shrink:0}.avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.sidebar__name{font-family:var(--font-head);font-size:20px;font-weight:800;color:var(--text);line-height:1.15;letter-spacing:-.3px}.sidebar__label{font-size:11px;font-family:var(--font-mono);color:var(--accent);line-height:1.5;letter-spacing:.3px}.sidebar__label--section{font-family:var(--font-mono);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-3);margin-bottom:10px}.sidebar__block{-ms-flex-direction:column;flex-direction:column;gap:7px}.contact-row,.sidebar__block{display:-ms-flexbox;display:flex}.contact-row{-ms-flex-align:center;align-items:center;gap:9px;color:var(--text-2);font-size:12px;text-decoration:none;-webkit-transition:color var(--tx);-o-transition:color var(--tx);transition:color var(--tx);padding:1px 0}.contact-row:hover{color:var(--accent);opacity:1}.contact-row svg{-ms-flex-negative:0;flex-shrink:0;color:var(--text-3)}.profile-row{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:9px;color:var(--text-2);font-size:11px;font-family:var(--font-mono);text-decoration:none;padding:3px 0;-webkit-transition:color var(--tx);-o-transition:color var(--tx);transition:color var(--tx)}.profile-row:hover{color:var(--accent);opacity:1}.sidebar__nav{-ms-flex-direction:column;flex-direction:column;gap:1px;padding:6px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.nav-link,.sidebar__nav{display:-ms-flexbox;display:flex}.nav-link{-ms-flex-align:center;align-items:center;gap:6px;color:var(--text-3);font-size:11.5px;font-family:var(--font-mono);text-decoration:none;padding:6px 8px;border-radius:var(--r);-webkit-transition:all var(--tx);-o-transition:all var(--tx);transition:all var(--tx);letter-spacing:.2px}.nav-link:before{content:"\203A";opacity:0;color:var(--accent);-webkit-transition:opacity var(--tx);-o-transition:opacity var(--tx);transition:opacity var(--tx)}.nav-link:hover{color:var(--accent);background:var(--accent-glow);opacity:1}.nav-link:hover:before{opacity:1}.lang-list{-ms-flex-direction:column;flex-direction:column;gap:5px}.lang-list,.lang-row{display:-ms-flexbox;display:flex}.lang-row{-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-size:12px}.lang-name{color:var(--text-2)}.lang-level{font-family:var(--font-mono);font-size:10px;color:var(--text-3);background:var(--bg-raised);padding:2px 6px;border-radius:3px}.interest-cloud{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:6px}.interest-pill{font-size:11px;color:var(--text-3);background:var(--bg-raised);border:1px solid var(--border);padding:3px 9px;border-radius:20px;-webkit-transition:all var(--tx);-o-transition:all var(--tx);transition:all var(--tx);cursor:default}.interest-pill:hover{border-color:var(--border-accent);color:var(--text-2)}.main{-ms-flex:1 1;flex:1 1;padding:48px 56px 80px;-webkit-animation:fade-up .5s ease .1s both;animation:fade-up .5s ease .1s both;min-width:0}@-webkit-keyframes fade-up{0%{opacity:0;-webkit-transform:translateY(14px);transform:translateY(14px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;-webkit-transform:translateY(14px);transform:translateY(14px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}.section{margin-bottom:72px}.section--intro{margin-bottom:56px;padding-bottom:48px;border-bottom:1px solid var(--border)}.intro-summary{max-width:700px}.intro-summary p{font-size:15px;line-height:1.85;color:var(--text-2);padding-left:22px;position:relative}.intro-summary p:before{content:"";position:absolute;left:0;top:.35em;bottom:.35em;width:2px;background:-webkit-gradient(linear,left top,left bottom,from(var(--accent)),to(transparent));background:-webkit-linear-gradient(top,var(--accent),transparent);background:-o-linear-gradient(top,var(--accent),transparent);background:linear-gradient(180deg,var(--accent),transparent);border-radius:1px}.section-head{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:14px;margin-bottom:34px}.section-num{font-family:var(--font-mono);font-size:11px;color:var(--accent);letter-spacing:.8px;font-weight:500}.section-num,.section-title{-ms-flex-negative:0;flex-shrink:0}.section-title{font-family:var(--font-head);font-size:24px;font-weight:800;color:var(--text);letter-spacing:-.5px}.section-rule{-ms-flex:1 1;flex:1 1;height:1px;background:var(--border)}.work-timeline{-ms-flex-direction:column;flex-direction:column}.work-card,.work-timeline{display:-ms-flexbox;display:flex}.work-card{gap:22px;padding-bottom:36px;-webkit-animation:fade-up .4s ease both;animation:fade-up .4s ease both}.work-card:last-child{padding-bottom:0}.work-card__rail{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;width:12px;padding-top:5px}.work-card__dot,.work-card__rail{-ms-flex-negative:0;flex-shrink:0}.work-card__dot{width:10px;height:10px;border-radius:50%;background:var(--bg-raised);border:1.5px solid var(--border-strong);-webkit-transition:all var(--tx);-o-transition:all var(--tx);transition:all var(--tx)}.work-card--active .work-card__dot{background:var(--accent);border-color:var(--accent);-webkit-box-shadow:0 0 10px var(--accent-glow),0 0 4px rgba(100,255,218,.5);box-shadow:0 0 10px var(--accent-glow),0 0 4px rgba(100,255,218,.5)}.work-card__stem{-ms-flex:1 1;flex:1 1;width:1px;background:var(--border);margin-top:7px;min-height:16px}.work-card:last-child .work-card__stem{display:none}.work-card__content{-ms-flex:1 1;flex:1 1;min-width:0;padding-bottom:8px}.work-card__meta{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:10px;margin-bottom:5px}.work-card__dates{font-family:var(--font-mono);font-size:11px;color:var(--text-3);letter-spacing:.2px}.date-now{color:var(--accent)}.badge-active{font-family:var(--font-mono);font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:2px 7px;border-radius:3px;font-weight:600}.work-card__position{font-family:var(--font-head);font-size:16px;font-weight:700;color:var(--text);margin-bottom:3px;letter-spacing:-.2px}.work-card__company{font-size:12px;color:var(--accent);font-family:var(--font-mono);font-weight:500;-webkit-transition:opacity var(--tx);-o-transition:opacity var(--tx);transition:opacity var(--tx)}.work-card__company:hover{opacity:.7}.work-card__company--plain{color:var(--text-2);cursor:default}.work-card__company--plain:hover{opacity:1}.work-card__summary{margin-top:10px;font-size:13px;color:var(--text-2);line-height:1.75}.work-card__bullets{margin-top:10px;padding-left:16px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:4px}.work-card__bullets li{font-size:13px;color:var(--text-2);line-height:1.65}.work-card__bullets li::marker{color:var(--accent-dim)}.tag-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:5px;margin-top:12px}.tag{display:inline-block;font-size:10.5px;font-family:var(--font-mono);color:var(--text-3);background:var(--bg-raised);border:1px solid var(--border);padding:2px 8px;border-radius:var(--r);white-space:nowrap;-webkit-transition:all var(--tx);-o-transition:all var(--tx);transition:all var(--tx)}.tag:hover{border-color:var(--border-accent);color:var(--text-2)}.skills-block{margin-bottom:36px}.skills-block__label{font-family:var(--font-mono);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--text-3);margin-bottom:14px}.tech-cloud{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:7px}.tech-pill{font-size:11px;font-family:var(--font-mono);padding:4px 11px;border-radius:20px;border:1px solid transparent;white-space:nowrap;-webkit-transition:all var(--tx);-o-transition:all var(--tx);transition:all var(--tx);cursor:default}.tech-pill--master{color:var(--lvl-master);background:var(--lvl-master-bg);border-color:var(--lvl-master-bd)}.tech-pill--expert{color:var(--lvl-expert);background:var(--lvl-expert-bg);border-color:var(--lvl-expert-bd)}.tech-pill--advanced{color:var(--lvl-advanced);background:var(--lvl-advanced-bg);border-color:var(--lvl-advanced-bd)}.tech-pill--proficient{color:var(--lvl-proficient);background:var(--lvl-proficient-bg);border-color:var(--lvl-proficient-bd)}.tech-pill--competent,.tech-pill--foundational,.tech-pill--intermediate,.tech-pill--novice{color:var(--lvl-other);background:var(--lvl-other-bg);border-color:var(--lvl-other-bd)}.skills-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.skill-bars{gap:11px}.skill-bar,.skill-bars{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.skill-bar{gap:5px}.skill-bar__label{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.skill-bar__name{font-size:12px;color:var(--text-2)}.skill-bar__badge{font-family:var(--font-mono);font-size:9px;letter-spacing:.4px;text-transform:uppercase;padding:1px 5px;border-radius:3px}.skill-bar__badge--master{color:var(--lvl-master);background:var(--lvl-master-bg)}.skill-bar__badge--expert{color:var(--lvl-expert);background:var(--lvl-expert-bg)}.skill-bar__badge--advanced{color:var(--lvl-advanced);background:var(--lvl-advanced-bg)}.skill-bar__badge--proficient{color:var(--lvl-proficient);background:var(--lvl-proficient-bg)}.skill-bar__badge--competent,.skill-bar__badge--foundational,.skill-bar__badge--intermediate{color:var(--lvl-other);background:var(--lvl-other-bg)}.skill-bar__track{height:3px;background:var(--bg-raised);border-radius:2px;overflow:hidden}.skill-bar__fill{height:100%;border-radius:2px;background:-webkit-gradient(linear,left top,right top,from(var(--accent-dim)),to(var(--accent)));background:-webkit-linear-gradient(left,var(--accent-dim),var(--accent));background:-o-linear-gradient(left,var(--accent-dim),var(--accent));background:linear-gradient(90deg,var(--accent-dim),var(--accent));-webkit-transition:width .9s cubic-bezier(.25,.46,.45,.94);-o-transition:width .9s cubic-bezier(.25,.46,.45,.94);transition:width .9s cubic-bezier(.25,.46,.45,.94)}.edu-list{-ms-flex-direction:column;flex-direction:column;gap:18px}.edu-card,.edu-list{display:-ms-flexbox;display:flex}.edu-card{gap:24px;padding:22px 26px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);-webkit-transition:border-color var(--tx);-o-transition:border-color var(--tx);transition:border-color var(--tx)}.edu-card:hover{border-color:var(--border-accent)}.edu-card__years{font-family:var(--font-mono);font-size:11px;color:var(--text-3);white-space:nowrap;padding-top:2px;min-width:100px}.edu-card__body{-ms-flex:1 1;flex:1 1}.edu-card__institution{font-family:var(--font-head);font-size:16px;font-weight:700;color:var(--text);margin-bottom:4px}.edu-card__degree{font-size:12px;color:var(--accent);font-family:var(--font-mono);margin-bottom:2px}.edu-card__area{font-size:13px;color:var(--text-2)}.edu-card__gpa{font-size:11px;color:var(--text-3);font-family:var(--font-mono);margin-top:5px}.vol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.vol-card{padding:18px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);-webkit-transition:border-color var(--tx);-o-transition:border-color var(--tx);transition:border-color var(--tx);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:4px}.vol-card:hover{border-color:var(--border-accent)}.vol-card__org{font-family:var(--font-head);font-size:14px;font-weight:700;color:var(--text)}.vol-card__org a{color:var(--text);text-decoration:none}.vol-card__org a:hover{color:var(--accent);opacity:1}.vol-card__role{font-family:var(--font-mono);font-size:10px;letter-spacing:.5px;color:var(--accent);text-transform:uppercase}.vol-card__summary{font-size:12px;color:var(--text-2);line-height:1.6;margin-top:4px}.vol-card__note{font-size:11px;color:var(--text-3);margin-top:2px}@media (max-width:900px){.skills-columns{grid-template-columns:1fr 1fr}}@media (max-width:768px){.resume{-ms-flex-direction:column;flex-direction:column}.sidebar{width:100%;min-width:unset;position:static;height:auto;padding:32px 24px;border-right:none;border-bottom:1px solid var(--border)}.main{padding:32px 24px 60px}.skills-columns{gap:28px}.skills-columns,.vol-grid{grid-template-columns:1fr}.edu-card{-ms-flex-direction:column;flex-direction:column;gap:6px}.edu-card__years{min-width:unset}}@media print{body:before{display:none}.sidebar{position:static;height:auto;page-break-inside:avoid}.resume{-ms-flex-direction:row;flex-direction:row}.work-card{page-break-inside:avoid}}
/*# sourceMappingURL=main.1db42b6e.css.map*/