@import "https://fonts.googleapis.com/css2?family=Syne:wght@600;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#fff;background:#050505;margin:0;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.app{width:100%;min-height:100vh}.main-content{width:100%}.main-content>section{width:100%;scroll-margin-top:20px;position:relative}@media (width<=768px){.main-content>section{width:100%}}:root{--bg:#070b16;--violet:#8067ff;--cyan:#3de8ff;--amber:#ffb86b;--text:#eef0fb;--muted:#9eafd2}.hero,.hl{color:var(--text);font-family:Plus Jakarta Sans,system-ui,sans-serif}.hero{background:var(--bg);isolation:isolate;min-height:100vh;position:relative;overflow:hidden}.hero-canvas{z-index:-1;inset:0;position:absolute!important}.hero-glow{z-index:-2;background:radial-gradient(60% 55% at 76% 48%,#5d3dff52,#0000 70%),radial-gradient(40% 40% at 8% 95%,#3de8ff1f,#0000 70%);position:absolute;inset:0}.hero-grain{z-index:0;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence baseFrequency='.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.hero-nav{z-index:3;justify-content:space-between;align-items:center;padding:26px clamp(20px,5vw,72px);display:flex;position:relative}.logo{letter-spacing:-1px;font-family:Syne,sans-serif;font-size:1.5rem;font-weight:800}.logo i{color:var(--cyan);font-style:normal}.nav-right{align-items:center;gap:34px;display:flex}.nav-links{gap:30px;display:flex}.nav-links a{color:var(--muted);font-size:.9rem;font-weight:600;text-decoration:none;transition:color .25s}.nav-links a:hover{color:var(--cyan)}.nav-cv{color:var(--text);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #fff3;border-radius:999px;padding:9px 18px;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .25s}.nav-cv:hover{border-color:var(--violet);background:#8067ff29}.hero-inner{z-index:2;grid-template-columns:1.08fr .92fr;align-items:center;gap:40px;max-width:1280px;min-height:calc(100vh - 92px);margin:0 auto;padding:0 clamp(20px,5vw,72px) 56px;display:grid;position:relative}.status{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#b7c8e8;letter-spacing:.05em;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:11px;margin:0 0 22px;padding:8px 15px;font-size:.78rem;font-weight:700;display:inline-flex}.status em{background:#8ba0c859;width:1px;height:13px}.pulse{background:#55e59b;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #55e59bb3}@keyframes pulse{to{box-shadow:0 0 0 12px #55e59b00}}.hero-title{letter-spacing:-.035em;flex-direction:column;margin:0;font-family:Syne,sans-serif;font-size:clamp(2.8rem,min(6vw,11vh),6.2rem);font-weight:800;line-height:.9;display:flex}.split{white-space:nowrap;display:block}.split-mask{vertical-align:top;margin:-.05em -.02em -.08em;padding:.05em .02em .08em;display:inline-block;overflow:hidden}.split-mask>span{display:inline-block}.split:last-child .split-mask>span{background:linear-gradient(100deg, #a895ff, var(--cyan) 60%, var(--amber));color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite sheen}@keyframes sheen{50%{background-position:100% 0}}.roles{color:#d9d3ff;height:2rem;margin:22px 0 10px;font-size:clamp(1rem,1.5vw,1.3rem);font-weight:600;overflow:hidden}.roles span{display:inline-block}.hero-desc{color:#a7b8d6;max-width:48ch;margin:0 0 26px;font-size:clamp(.88rem,1vw,.96rem);line-height:1.8}.hero-cta{flex-wrap:wrap;gap:14px;display:flex}.btn{cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:14px 24px;font:800 .85rem/1 Plus Jakarta Sans,sans-serif;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff40 50%,#0000 70%);transition:transform .7s;position:absolute;inset:0;transform:translate(-120%)}.btn:hover{transform:translateY(-3px)}.btn:hover:after{transform:translate(120%)}.btn:focus-visible,.nav a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.btn-primary{color:#fff;background:linear-gradient(135deg,#8067ff,#5940d7);border:1px solid #ad9dffb3;box-shadow:0 12px 34px #563cdc66,inset 0 1px #fff3}.btn-primary:hover{box-shadow:0 18px 44px #563cdc8c}.btn-primary b{background:#ffffff26;border-radius:7px;place-items:center;width:24px;height:24px;font-size:15px;display:grid}.btn-ghost{color:#dce6fa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c152599;border:1px solid #6580b173}.btn-ghost:hover{background:#271e5866;border-color:#8c78ff99}.stats{margin-top:32px;display:flex}.stat{border-left:1px solid #607aa94d;padding:0 26px}.stat:first-child{border-left:none;padding-left:0}.stat strong{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-family:Syne,sans-serif;font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:800;display:block}.stat span{color:#7389b4;letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:.72rem;font-weight:700;display:block}.socials{flex-wrap:wrap;gap:22px;margin-top:30px;display:flex}.social{color:var(--text);opacity:.82;align-items:center;gap:10px;text-decoration:none;transition:opacity .25s,transform .25s;display:flex}.social:hover{opacity:1;transform:translateY(-2px)}.social:focus-visible{outline:2px solid var(--cyan);outline-offset:4px;border-radius:6px}.social svg{color:#b7c8e8;flex:none;width:20px;height:20px;transition:color .25s}.social:hover svg{color:var(--cyan)}.social span{flex-direction:column;line-height:1.25;display:flex}.social b{font-size:.82rem;font-weight:700}.social em{color:#7389b4;font-size:.72rem;font-style:normal}.photo-stage{perspective:1000px;place-items:center;display:grid;position:relative}.photo-wrap{position:relative}.photo-frame{aspect-ratio:1;max-width:94vw;height:min(80vh,720px);transform-style:preserve-3d;position:relative;-webkit-mask-image:linear-gradient(#000 82%,#0000 100%);mask-image:linear-gradient(#000 82%,#0000 100%)}.photo-frame img{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 20px 40px #00000073);width:100%;height:100%;display:block}.photo-shine{display:none}@keyframes shine{0%{background-position:150% 0}60%,to{background-position:-50% 0}}@keyframes bob{50%{transform:translateY(-11px)}}.scroll-hint{z-index:2;color:#7389b4;letter-spacing:.1em;align-items:center;gap:12px;font-size:.75rem;font-weight:700;display:flex;position:absolute;bottom:28px;right:clamp(20px,5vw,72px)}.scroll-hint i{background:linear-gradient(var(--cyan), transparent);transform-origin:top;width:1px;height:44px;animation:2s ease-in-out infinite drip}@keyframes drip{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.hl{z-index:1000;position:fixed;inset:0}.hl-curtain{background:#05070d;height:50.5%;position:absolute;left:0;right:0}.hl-top{top:0}.hl-bottom{bottom:0}.hl-core{place-content:center;justify-items:center;gap:18px;display:grid;position:absolute;inset:0}.hl-count{font-variant-numeric:tabular-nums;background:linear-gradient(100deg, var(--violet), var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text;font-family:Syne,sans-serif;font-size:clamp(4rem,14vw,9rem);font-weight:800;line-height:1}.hl-bar{background:#ffffff1f;width:min(280px,60vw);height:2px;overflow:hidden}.hl-bar i{background:var(--cyan);transform-origin:0;height:100%;display:block}.hl-name{color:#7e91b5;letter-spacing:.35em;font-size:.75rem;font-weight:700}@media (width<=1000px){.hero-inner{grid-template-columns:1fr;gap:30px;padding-top:10px}.photo-stage{order:-1}.photo-frame{height:min(50vh,440px)}.hero-title{flex-flow:wrap;gap:.25em;font-size:clamp(3.2rem,14vw,6rem)}.scroll-hint{display:none}}@media (width<=640px){.nav-links{display:none}.stat{padding:0 18px}.btn{flex:1;justify-content:center}}@media (prefers-reduced-motion:reduce){.hero *,.hl *{transition-duration:.01ms!important;animation:none!important}}.projects-section{--projects-text:#f1f5f9;--projects-muted:#9ba9c0;width:100%;color:var(--projects-text);box-sizing:border-box;margin:0 auto;padding:76px 24px 44px;overflow:hidden}.projects-section *,.projects-section :before,.projects-section :after{box-sizing:border-box}.projects-container{width:100%;max-width:1240px;margin:0 auto}.projects-header{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:32px;display:flex}.projects-heading-content{max-width:720px}.projects-eyebrow{color:#b9a9ff;letter-spacing:3px;align-items:center;gap:12px;margin-bottom:17px;font-size:11px;font-weight:800;display:flex}.projects-eyebrow-line{background:linear-gradient(90deg,#a78bfa,#0000);width:23px;height:1px}.projects-title{color:#f8fafc;letter-spacing:-2px;margin:0;font-size:clamp(34px,5vw,58px);font-weight:800;line-height:1.1}.projects-title>span{-webkit-text-fill-color:transparent;background:linear-gradient(110deg,#c4b5fd 5%,#818cf8 48%,#67e8f9 100%);-webkit-background-clip:text;background-clip:text}.projects-description{max-width:630px;color:var(--projects-muted);margin:18px 0 0;font-size:14px;line-height:1.9}.projects-github-link{color:#e2e8f0;background:#8b5cf614;border:1px solid #a78bfa52;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:12px;font-weight:650;text-decoration:none;transition:background .25s,border-color .25s,transform .25s,box-shadow .25s;display:inline-flex}.projects-github-link:hover{background:#8b5cf62b;border-color:#a78bfaa6;transform:translateY(-2px);box-shadow:0 8px 28px #8b5cf61f}.project-button-icon{flex-shrink:0;width:16px;height:16px;display:block}.projects-summary{-webkit-backdrop-filter:blur(14px);background:#0f172a80;border:1px solid #94a3b81f;border-radius:15px;align-items:center;gap:28px;width:fit-content;max-width:100%;margin-bottom:30px;padding:17px 22px;display:flex}.projects-summary-item{align-items:center;gap:11px;display:flex}.projects-summary-number{color:#c4b5fd;letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:23px;font-weight:800;line-height:1}.projects-summary-label{color:#94a3b8;max-width:90px;font-size:10px;line-height:1.5}.projects-summary-divider{background:#94a3b833;width:1px;height:30px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.project-card{--project-accent:#b6a0ff;--project-accent-rgb:167,139,250;isolation:isolate;background:linear-gradient(145deg,#141b2df5,#0a0f1bf7 75%);border:1px solid #94a3b826;border-radius:20px;flex-direction:column;min-width:0;min-height:365px;padding:23px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 35px #00000021,inset 0 1px #ffffff09}.project-card:hover{border-color:rgba(var(--project-accent-rgb),.43);box-shadow:0 20px 45px #0000003b, 0 0 28px rgba(var(--project-accent-rgb),.06), inset 0 1px 0 #ffffff0d;transform:translateY(-5px)}.project-card-glow{z-index:-1;background:radial-gradient(circle, rgba(var(--project-accent-rgb),.13), rgba(var(--project-accent-rgb),.03) 45%, transparent 72%);opacity:.7;pointer-events:none;border-radius:50%;width:230px;height:230px;transition:opacity .35s,transform .4s;position:absolute;top:-100px;right:-100px}.project-card:hover .project-card-glow{opacity:1;transform:scale(1.2)}.project-card--purple{--project-accent:#b6a0ff;--project-accent-rgb:167,139,250}.project-card--blue{--project-accent:#7db7ff;--project-accent-rgb:96,165,250}.project-card--cyan{--project-accent:#67e8f9;--project-accent-rgb:34,211,238}.project-card--pink{--project-accent:#f9a8d4;--project-accent-rgb:244,114,182}.project-card--green{--project-accent:#86efac;--project-accent-rgb:74,222,128}.project-card-top{z-index:1;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.project-identity{flex-wrap:wrap;align-items:center;gap:9px;min-width:0;display:flex}.project-number{color:var(--project-accent);letter-spacing:1px;font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}.project-category{color:#94a3b8;letter-spacing:.8px;text-transform:uppercase;font-size:9px;font-weight:700}.project-status{border:1px solid #0000;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:7px 9px;font-size:9px;font-weight:750;line-height:1;display:inline-flex}.project-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.project-status--live{color:#86efac;background:#22c55e17;border-color:#4ade8030}.project-status--live .project-status-dot{box-shadow:0 0 8px #4ade8099}.project-status--ongoing{color:#fcd34d;background:#f59e0b17;border-color:#f59e0b33}.project-status--project{color:#a5b4fc;background:#818cf817;border-color:#818cf833}.project-heading{z-index:1;align-items:center;gap:16px;min-width:0;margin:26px 0 0;display:flex;position:relative}.project-icon-wrap{isolation:isolate;width:64px;height:64px;color:var(--project-accent);background:linear-gradient(145deg, rgba(var(--project-accent-rgb),.15), rgba(var(--project-accent-rgb),.035));border:1px solid rgba(var(--project-accent-rgb),.26);border-radius:15px;flex:0 0 64px;justify-content:center;align-items:center;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d}.project-card:hover .project-icon-wrap{border-color:rgba(var(--project-accent-rgb),.55);box-shadow:0 7px 22px rgba(var(--project-accent-rgb),.1);transform:translateY(-2px)}.project-icon-image{z-index:1;object-fit:contain;border-radius:inherit;width:100%;height:100%;padding:5px;transition:transform .3s cubic-bezier(.2,.7,.2,1);display:block;position:relative;transform:scale(1)}.project-card:hover .project-icon-image{transform:scale(1.12)}.project-icon-glow{z-index:0;background:radial-gradient(circle at center, rgba(var(--project-accent-rgb),.12), transparent 72%);pointer-events:none;position:absolute;inset:0}.project-heading-text{min-width:0}.project-subtitle{color:var(--project-accent);margin:0 0 6px;font-size:10px;font-weight:650;line-height:1.5}.project-heading-text h3{color:#f1f5f9;letter-spacing:-.55px;overflow-wrap:anywhere;margin:0;font-size:clamp(18px,2vw,22px);font-weight:750;line-height:1.35}.npwt-device-icon{z-index:1;width:37px;height:37px;filter:drop-shadow(0 0 12px rgba(var(--project-accent-rgb),.2));display:block;position:relative}.project-description{z-index:1;color:#9aa9c0;margin:19px 0 0;font-size:12px;line-height:1.85;position:relative}.project-technologies{z-index:1;flex-wrap:wrap;align-items:center;gap:7px;margin-top:19px;display:flex;position:relative}.project-tech-tag{color:#c3cde0;overflow-wrap:anywhere;background:#94a3b811;border:1px solid #94a3b81f;border-radius:7px;align-items:center;max-width:100%;padding:6px 9px;font-size:9px;font-weight:600;line-height:1.4;transition:color .25s,border-color .25s,background .25s;display:inline-flex}.project-card:hover .project-tech-tag{border-color:rgba(var(--project-accent-rgb),.18)}.project-actions{z-index:1;flex-wrap:wrap;align-items:center;gap:9px;margin-top:auto;padding-top:24px;display:flex;position:relative}.project-button{text-align:center;overflow-wrap:anywhere;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;max-width:100%;min-height:39px;padding:10px 12px;font-family:inherit;font-size:10px;font-weight:750;line-height:1.3;text-decoration:none;transition:color .25s,background .25s,border-color .25s,transform .25s,box-shadow .25s;display:inline-flex}.project-button:hover{transform:translateY(-2px)}.project-button--primary{color:#0b1020;background:var(--project-accent);border-color:var(--project-accent);box-shadow:0 4px 14px rgba(var(--project-accent-rgb),.12)}.project-button--primary:hover{box-shadow:0 7px 20px rgba(var(--project-accent-rgb),.22);filter:brightness(1.08)}.project-button--secondary{color:#d3dbea;background:#94a3b80e;border-color:#94a3b82e}.project-button--secondary:hover{color:#fff;background:rgba(var(--project-accent-rgb),.09);border-color:rgba(var(--project-accent-rgb),.38)}.project-button:focus-visible,.projects-github-link:focus-visible{outline:2px solid var(--project-accent,#a78bfa);outline-offset:4px}.project-button .project-button-icon{width:15px;height:15px}.project-development-note{z-index:1;color:#cbd5e1;align-items:center;gap:9px;margin-top:auto;padding-top:24px;font-size:10px;font-weight:600;display:flex;position:relative}.project-development-line{background:var(--project-accent);opacity:.8;flex-shrink:0;width:23px;height:1px}.projects-footer{border-top:1px solid #94a3b81a;justify-content:center;align-items:center;gap:10px;margin-top:35px;padding-top:20px;display:flex}.projects-footer-indicator{background:#a78bfa;border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 12px #a78bfa99}.projects-footer p{color:#7f8da6;text-align:center;margin:0;font-size:11px;line-height:1.7}@media (width<=900px){.projects-section{padding:62px 20px 38px}.projects-header{flex-direction:column;align-items:flex-start;gap:22px}.projects-title{font-size:clamp(34px,6vw,49px)}.projects-summary{gap:20px;padding:15px 18px}.projects-grid{gap:16px}.project-card{min-height:385px;padding:20px}.project-icon-wrap{flex-basis:60px;width:60px;height:60px}.project-heading{gap:13px}}@media (width<=600px){.projects-section{padding:46px 14px 28px}.projects-header{gap:20px;margin-bottom:25px}.projects-eyebrow{letter-spacing:2.3px;gap:9px;margin-bottom:14px;font-size:9px}.projects-eyebrow-line{width:18px}.projects-title{letter-spacing:-1.5px;font-size:clamp(32px,9vw,43px)}.projects-description{margin-top:14px;font-size:13px;line-height:1.85}.projects-github-link{width:100%;min-height:43px}.projects-summary{grid-template-columns:1fr;gap:0;width:100%;margin-bottom:22px;padding:6px 16px;display:grid}.projects-summary-item{gap:13px;padding:12px 0}.projects-summary-number{min-width:31px;font-size:21px}.projects-summary-label{max-width:none;font-size:11px}.projects-summary-divider{width:100%;height:1px}.projects-grid{grid-template-columns:minmax(0,1fr);gap:14px}.project-card{border-radius:17px;min-height:0;padding:19px}.project-card-top{align-items:flex-start;gap:8px}.project-identity{gap:7px}.project-category{letter-spacing:.6px;font-size:8px}.project-status{padding:6px 8px;font-size:9px}.project-heading{gap:13px;margin-top:22px}.project-icon-wrap{border-radius:13px;flex-basis:56px;width:56px;height:56px}.project-icon-image{padding:4px}.project-heading-text h3{letter-spacing:-.4px;font-size:19px}.project-subtitle{font-size:9px}.project-description{margin-top:16px;font-size:12px;line-height:1.8}.project-technologies{gap:6px;margin-top:16px}.project-tech-tag{padding:6px 8px;font-size:9px}.project-actions{gap:8px;padding-top:20px}.project-button{flex:auto;min-height:40px;padding:10px;font-size:10px}.project-development-note{padding-top:20px;font-size:10px}.projects-footer{margin-top:26px}.projects-footer p{font-size:10px}}@media (width<=360px){.projects-section{padding-left:11px;padding-right:11px}.project-card{padding:16px}.project-category{font-size:7px}.project-status{gap:5px;padding:6px 7px;font-size:8px}.project-heading{gap:10px}.project-icon-wrap{flex-basis:50px;width:50px;height:50px}.project-heading-text h3{font-size:17px}.project-actions{flex-direction:column;align-items:stretch}.project-button{width:100%}}@media (prefers-reduced-motion:reduce){.project-card,.project-card-glow,.project-icon-wrap,.project-icon-image,.project-button,.projects-github-link,.project-tech-tag{transition:none}.project-card:hover,.project-button:hover,.projects-github-link:hover,.project-card:hover .project-icon-wrap,.project-card:hover .project-icon-image{transform:none}}*,.activities-page,.activities-page *{box-sizing:border-box}.activities-page{color:#e8edff;background:radial-gradient(circle at 80% 0,#5846be1f,#0000 30%),radial-gradient(circle at 10% 90%,#0078ff12,#0000 28%);min-height:100vh;padding:28px}.activities-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px;display:flex}.activities-eyebrow{color:#8f9cff;letter-spacing:1.8px;align-items:center;gap:8px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.activities-header h1{letter-spacing:-1px;background:linear-gradient(90deg,#fff,#aab4ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:clamp(30px,3vw,44px);font-weight:700;line-height:1.1}.activities-header p{color:#7f8ba8;margin:9px 0 0;font-size:14px}.activities-header-badge{color:#b9c0ff;white-space:nowrap;background:#25205759;border:1px solid #6d5bff4d;border-radius:12px;align-items:center;gap:8px;padding:10px 15px;font-size:13px;display:flex;box-shadow:0 0 25px #5a46ff0f}.activity-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}.activity-stat-card{background:linear-gradient(145deg,#10192bf5,#070e1beb);border:1px solid #697aa338;border-radius:13px;align-items:flex-start;gap:12px;min-height:116px;padding:15px;transition:transform .2s,border-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff06,0 10px 30px #00000026}.activity-stat-card:hover{border-color:#7d8cff61;transform:translateY(-2px)}.activity-stat-icon{color:#8390ff;background:#5064ff1f;border:1px solid #6e7dff38;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.activity-stat-icon.coding{color:#8291ff;background:#4d5dff1f}.activity-stat-icon.problems{color:#d27aff;background:#ba4aff1f}.activity-stat-icon.github{color:#d8e1f5;background:#7891b91a}.activity-stat-icon.games{color:#ffae52;background:#ff8c1e1a}.activity-stat-icon.learning{color:#56dda5;background:#28d2821a}.activity-stat-content{min-width:0}.activity-stat-title{color:#aab4cc;margin:1px 0 4px;font-size:13px}.activity-stat-value{color:#f2f5ff;margin:0;font-size:23px;line-height:1.1}.activity-stat-bottom{color:#8290ad;align-items:center;gap:8px;margin-top:9px;font-size:11px;display:flex}.activity-stat-change{color:#20e5a0;align-items:center;gap:2px;display:flex}.activity-mini-bars{opacity:.8;align-items:flex-end;gap:3px;height:42px;display:flex;position:absolute;bottom:13px;right:12px}.activity-mini-bars span{background:linear-gradient(#a675ff,#6470ff);border-radius:2px 2px 0 0;width:4px;min-height:8px;display:block}.activities-main-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.activity-panel{background:linear-gradient(145deg,#091220fa,#050c18f5);border:1px solid #67799e3b;border-radius:13px;min-width:0;padding:13px;position:relative;box-shadow:inset 0 1px #ffffff06,0 12px 35px #0000001f}.activity-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.activity-section-title{align-items:center;gap:9px;display:flex}.activity-section-icon{color:#f1f4ff;background:#485b7d2b;border:1px solid #788cb42b;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.activity-section-title h2{color:#edf1ff;margin:0;font-size:17px;font-weight:650}.activity-section-action{color:#8da2ff;align-items:center;gap:4px;font-size:12px;text-decoration:none;transition:color .2s;display:flex}.activity-section-action:hover{color:#c2cbff}.activity-label{color:#8290ac;margin-bottom:5px;font-size:11px;display:block}.three-metrics{background:#0b1627a6;border:1px solid #5f709633;border-radius:10px;grid-template-columns:repeat(3,1fr);margin-top:10px;display:grid}.three-metrics>div{text-align:center;padding:10px}.three-metrics>div+div{border-left:1px solid #5f70962e}.three-metrics strong{color:#edf2ff;font-size:18px;display:block}.three-metrics span{color:#7e8ca8;margin-top:3px;font-size:10px;display:block}.leetcode-highlight-grid{grid-template-columns:1.45fr .75fr;gap:10px;display:grid}.leetcode-last-solved,.streak-box{background:#0b1627a6;border:1px solid #51679133;border-radius:10px;padding:11px}.leetcode-last-solved strong{color:#e8edff;margin-bottom:8px;font-size:16px;display:block}.leetcode-tags{color:#7f8da9;flex-wrap:wrap;align-items:center;gap:6px;font-size:10px;display:flex}.tag{color:#a9b3cc;background:#6e82aa24;border-radius:6px;padding:4px 9px}.tag.easy{color:#3ce6a1;background:#1eb46e1a;border:1px solid #3ce6a159}.streak-number{align-items:center;gap:7px;display:flex}.streak-number span{font-size:22px}.streak-number strong{color:#f2f5ff;font-size:23px}.streak-box small{color:#7e8ca8;margin-left:31px}.leetcode-grid-wrapper{margin-top:24px;padding-top:4px}.leetcode-calendar{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;width:100%;margin-top:22px;padding:6px 2px 2px;display:grid}.leetcode-month{width:100%;min-width:0}.leetcode-month-grid{grid-template-rows:repeat(7,1fr);grid-auto-flow:row;gap:6px;width:100%;padding-top:4px;display:grid}.leetcode-day-cell{aspect-ratio:1;background:#14243a;border:1px solid #5a73960f;border-radius:5px;width:100%;min-width:0;min-height:0;transition:transform .15s,filter .15s,box-shadow .15s;display:block}.leetcode-day-cell.filled{background:#18a765;box-shadow:0 0 5px #18a76514}.leetcode-day-cell:hover{filter:brightness(1.15);z-index:5;cursor:pointer;position:relative;transform:scale(1.12);box-shadow:0 0 10px #28dc8240}.leetcode-month-label{text-align:center;color:#7f91ae;margin-top:11px;font-size:14px;font-weight:500;line-height:1}@media (width<=1000px){.leetcode-calendar{gap:20px}.leetcode-month-grid{gap:5px}.leetcode-day-cell{border-radius:4px}}@media (width<=700px){.leetcode-calendar{grid-template-columns:1fr;gap:26px;margin-top:20px}.leetcode-month{width:100%}.leetcode-month-grid{gap:6px}.leetcode-day-cell{border-radius:4px}.leetcode-month-label{margin-top:10px;font-size:13px}}@media (width<=400px){.leetcode-calendar{gap:22px;padding-left:1px;padding-right:1px}.leetcode-month-grid{gap:4px}.leetcode-day-cell{border-radius:3px}.leetcode-month-label{font-size:12px}}.github-latest-push{background:#ffffff06;border:1px solid #ffffff12;border-radius:14px;margin-top:20px;padding:18px}.github-latest-push .activity-label{margin-bottom:10px;display:block}.github-push-repo{color:#f4f7fb;align-items:center;gap:7px;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.github-push-repo:hover{color:#18b879}.github-push-message{color:#a9b4c8;word-break:break-word;margin:8px 0 10px;font-size:13px;line-height:1.55}.github-push-meta{flex-wrap:wrap;gap:8px;display:flex}.github-push-meta span{color:#7f8ba3;background:#ffffff0b;border-radius:7px;align-items:center;min-height:25px;padding:4px 8px;font-size:11px;display:inline-flex}.github-loading,.github-empty-state{color:#7f8ba3;padding:8px 0 2px;font-size:13px}.github-api-error{color:#d99a9a;margin:12px 0 0;font-size:11px}.github-grid-wrapper{width:100%;margin-top:20px;overflow:hidden}.github-live-calendar{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;display:grid}.github-month{min-width:0}.github-month-grid{grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:3px;width:100%;min-height:92px;display:grid}.github-cell{aspect-ratio:1;box-sizing:border-box;background:#ffffff0b;border-radius:2px;width:100%;min-width:0;min-height:4px;transition:transform .15s,filter .15s;display:block}.github-cell.level-0{background:#ffffff0b}.github-cell.level-1{background:#18b8793d}.github-cell.level-2{background:#18b87973}.github-cell.level-3{background:#18b879ad}.github-cell.level-4{background:#18b879}.github-cell:hover{filter:brightness(1.18);z-index:2;position:relative;transform:scale(1.18)}.github-month-label{color:#7f8ba3;text-align:center;margin-top:7px;font-size:10px;font-weight:500}.github-legend{color:#68748a;justify-content:flex-end;align-items:center;gap:4px;margin-top:12px;font-size:9px;display:flex}.github-legend i{border-radius:2px;width:8px;height:8px;display:block}.github-legend .level-0{background:#ffffff0b}.github-legend .level-1{background:#18b8793d}.github-legend .level-2{background:#18b87973}.github-legend .level-3{background:#18b879ad}.github-legend .level-4{background:#18b879}@media (width<=700px){.github-latest-push{padding:14px}.github-push-repo{font-size:16px}.github-push-meta{gap:5px}.github-push-meta span{font-size:10px}.github-live-calendar{gap:6px}.github-month-grid{gap:2px;min-height:76px}.github-month-label{font-size:9px}.github-legend{margin-top:9px}}@media (width<=480px){.github-live-calendar{gap:4px}.github-month-grid{gap:2px;min-height:62px}.github-cell{border-radius:1.5px}.github-month-label{margin-top:5px;font-size:8px}.github-legend{font-size:8px}.github-legend i{width:7px;height:7px}}.chess-activity-panel{flex-direction:column;align-self:stretch;height:100%;display:flex}.chesscom-official-logo{object-fit:contain;flex-shrink:0;width:28px;height:28px;display:block}.chess-top-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.chess-last-game,.chess-rating{background:#0b1627a6;border:1px solid #50699433;border-radius:10px;padding:11px;position:relative}.chess-result{margin:4px 0;font-size:17px;display:block}.chess-result.is-win{color:#19e99a}.chess-result.is-loss{color:#ff5d68}.chess-result.is-draw{color:#f2c94c}.chess-last-game p{color:#8996b0;margin:0 0 3px;font-size:11px}.chess-last-game small{color:#63718c;font-size:9px}.chess-rating>strong{color:#edf2ff;font-size:22px}.rating-change{color:#19e99a;align-items:center;gap:2px;margin-left:4px;font-size:11px;display:inline-flex}.rating-chart{align-items:flex-end;gap:4px;height:28px;margin-top:7px;display:flex}.rating-chart span{background:linear-gradient(#19e99a,#1ae19733);border-radius:3px 3px 0 0;flex:1}.rating-chart span:first-child{height:20%}.rating-chart span:nth-child(2){height:28%}.rating-chart span:nth-child(3){height:25%}.rating-chart span:nth-child(4){height:48%}.rating-chart span:nth-child(5){height:40%}.rating-chart span:nth-child(6){height:60%}.rating-chart span:nth-child(7){height:85%}.chess-seven-days{background:#0b1627a6;border:1px solid #50699433;border-radius:10px;margin-top:10px;padding:11px}.chess-seven-days-header{color:#8b99b3;align-items:center;gap:7px;font-size:11px;display:flex}.chess-seven-days-header strong{color:#edf2ff;font-size:14px}.games-bar{background:#202b42;border-radius:3px;height:13px;margin-top:10px;display:flex;overflow:hidden}.games-bar>div{min-width:2px}.games-bar .wins{background:#20dc8e}.games-bar .draws{background:#8993ac}.games-bar .losses{background:#ff5d68}.games-result-row{color:#8490a8;justify-content:space-between;margin-top:7px;font-size:10px;display:flex}.games-result-row .win-text{color:#20dc8e}.games-result-row .loss-text{color:#ff646d}.learning-list{flex-direction:column;gap:16px;display:flex}.learning-item-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.learning-item-top p{color:#d8e0f3;margin:0;font-size:11px}.learning-item-top span{color:#75829c;font-size:10px}.learning-progress-track{background:#19263a;border-radius:10px;height:7px;overflow:hidden}.learning-progress-bar{border-radius:inherit;background:linear-gradient(90deg,#21d79a,#3ce4a9);height:100%}@media (width<=1300px){.activity-stats-grid{grid-template-columns:repeat(3,1fr)}.activities-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.activities-page{padding:20px}.activity-stats-grid{grid-template-columns:repeat(2,1fr)}.activities-main-grid{grid-template-columns:1fr}.activities-header{flex-direction:column;align-items:flex-start}}@media (width<=600px){.activities-page{padding:15px}.activities-header h1{font-size:30px}.activities-header p{font-size:12px}.activities-header-badge{justify-content:center;width:100%}.activity-stats-grid{grid-template-columns:1fr}.activity-stat-card{min-height:105px}.activity-panel{padding:11px}.activity-section-title h2{font-size:15px}.leetcode-highlight-grid,.chess-top-grid,.wordle-content{grid-template-columns:1fr}.wordle-streak{width:100%}.wordle-letters{gap:4px}.wordle-letters span{width:29px;height:29px}.three-metrics strong{font-size:16px}.three-metrics span{font-size:9px}.github-grid{gap:3px}.github-cell{border-radius:2px;height:9px}}@media (width<=400px){.activities-page{padding:10px}.wordle-letters span{width:26px;height:26px;font-size:11px}.activity-stat-card{padding:12px}.activity-stat-icon{width:42px;height:42px}}.duolingo-language{justify-content:flex-end;align-items:center;gap:7px;display:inline-flex!important}.duolingo-language-flag{border-radius:2px;flex-shrink:0;width:22px;height:15px;display:block;overflow:hidden}.duolingo-course-language-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.duolingo-logo{background:#58cc02;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;overflow:hidden}.duolingo-official-logo{object-fit:contain;width:32px;height:40px;display:block;transform:scale(1.25)}.duolingo-activity-panel:before{content:"";filter:blur(18px);pointer-events:none;background:#58cc0214;border-radius:50%;width:190px;height:190px;position:absolute;top:-90px;right:-70px}.duolingo-logo{color:#fff;background:linear-gradient(145deg,#7eea16,#58cc02);border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-family:Arial,sans-serif;font-size:18px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 5px 16px #58cc0238,inset 0 1px #ffffff47}.duolingo-hero{background:linear-gradient(135deg,#58cc021c,#0a142394 62%);border:1px solid #58cc0233;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:15px;display:flex}.duolingo-hero-main{align-items:center;gap:12px;min-width:0;display:flex}.duolingo-flame{color:#ff9f43;background:#ff9f431f;border:1px solid #ff9f432e;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.duolingo-streak-value{letter-spacing:-.8px;align-items:baseline;gap:6px;margin-top:2px;font-size:30px;font-weight:800;line-height:1;display:flex}.duolingo-streak-value span{color:#8da0bd;letter-spacing:0;font-size:12px;font-weight:500}.duolingo-streak-line{background:#17243a;border-radius:99px;width:112px;height:4px;margin-top:8px;overflow:hidden}.duolingo-streak-line span{border-radius:inherit;background:linear-gradient(90deg,#58cc02,#9bea4c);width:78%;height:100%;display:block}.duolingo-hero-badge{text-align:right;background:#07101db8;border:1px solid #263650;border-radius:11px;min-width:92px;padding:9px 11px}.duolingo-hero-badge span,.duolingo-hero-badge strong{display:block}.duolingo-hero-badge span{color:#8da0bd;margin-bottom:3px;font-size:10px}.duolingo-hero-badge strong{color:#f5f8ff;font-size:14px}.duolingo-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.duolingo-metric-card{background:#0a142385;border:1px solid #1f2a3d;border-radius:11px;min-width:0;padding:12px 13px;transition:border-color .2s,transform .2s,background .2s}.duolingo-metric-card:hover{background:#0c1928b8;border-color:#58cc0259;transform:translateY(-1px)}.duolingo-metric-card strong{letter-spacing:-.3px;margin-top:4px;font-size:21px;line-height:1.1;display:block}.duolingo-metric-card small{color:#71839f;margin-top:4px;font-size:10px;display:block}.duolingo-progress-card,.duolingo-courses-card{background:#0a142380;border:1px solid #1f2a3d;border-radius:11px;margin-top:10px;padding:13px}.duolingo-progress-head,.duolingo-courses-header,.duolingo-progress-meta,.duolingo-course-row,.duolingo-footer-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.duolingo-progress-head strong,.duolingo-courses-header strong{margin-top:3px;font-size:13px;display:block}.duolingo-progress-number{color:#9bea4c;font-size:13px;font-weight:700}.duolingo-progress-track{background:#17243a;border-radius:99px;height:6px;margin-top:10px;overflow:hidden}.duolingo-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#58cc02,#9bea4c);min-width:3%;height:100%;transition:width .4s;display:block;box-shadow:0 0 12px #58cc0247}.duolingo-progress-meta{color:#71839f;margin-top:6px;font-size:10px}.duolingo-course-count{color:#58cc02;background:#58cc021a;border:1px solid #58cc0229;border-radius:8px;place-items:center;min-width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.duolingo-course-list{margin-top:10px}.duolingo-course-row{border-top:1px solid #1f2a3db8;padding:9px 0}.duolingo-course-row:first-child{border-top:0}.duolingo-course-language{color:#dce5f5;align-items:center;gap:7px;min-width:0;font-size:12px;display:flex}.duolingo-course-language>span:not(.duolingo-course-dot){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.duolingo-course-dot{background:#58cc02;border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:0 0 8px #58cc026b}.duolingo-course-language em{color:#58cc02;background:#58cc0217;border-radius:5px;padding:2px 5px;font-size:9px;font-style:normal}.duolingo-course-xp{flex-shrink:0;align-items:baseline;gap:4px;display:flex}.duolingo-course-xp strong{font-size:12px}.duolingo-course-xp span{color:#71839f;font-size:9px}.duolingo-footer-row{color:#71839f;margin-top:10px;padding:0 2px;font-size:10px}.duolingo-live-dot{align-items:center;gap:5px;display:inline-flex}.duolingo-live-dot i{background:#58cc02;border-radius:50%;width:5px;height:5px;box-shadow:0 0 7px #58cc0280}.duolingo-api-error{color:#ff6877;margin:10px 0 0;font-size:12px}@media (width<=700px){.duolingo-hero{flex-direction:column;align-items:flex-start}.duolingo-hero-badge{text-align:left;width:100%}.duolingo-metrics-grid{grid-template-columns:1fr 1fr}}@media (width<=420px){.duolingo-metrics-grid{grid-template-columns:1fr}}.lyfta-streak-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px;display:grid}.lyfta-streak-card{background:#0b1627a6;border:1px solid #50699433;border-radius:10px;padding:11px}.lyfta-streak-card strong{color:#edf2ff;font-size:23px;line-height:1.05;display:block}.lyfta-streak-card small{color:#687791;margin-top:4px;font-size:9px;display:block}@media (width<=700px){.lyfta-streak-grid{gap:8px}.lyfta-streak-card{padding:10px}}.lyfta-activity-panel{min-width:0}.lyfta-icon{background:#050a12;border:1px solid #9bea4c3d;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:4px;display:inline-flex;overflow:hidden;box-shadow:0 0 18px #9bea4c12}.lyfta-official-icon{object-fit:cover;border-radius:7px;width:100%;height:100%;display:block}.lyfta-stat-hero{background:radial-gradient(circle at 100% 0,#9bea4c21,#0000 40%),radial-gradient(circle at 0 100%,#4a96ff0f,#0000 34%),linear-gradient(145deg,#9bea4c14,#08121fe0);border:1px solid #9bea4c3d;border-radius:15px;margin-top:5px;padding:17px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff09,0 14px 32px #00000029}.lyfta-stat-hero:after{content:"";pointer-events:none;border:1px solid #9bea4c17;border-radius:50%;width:145px;height:145px;position:absolute;bottom:-58px;right:-42px}.lyfta-stat-hero-top{z-index:1;align-items:center;gap:12px;display:flex;position:relative}.lyfta-session-copy{flex:1;min-width:0}.lyfta-session-copy>span{color:#91a5c1;text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700;display:block}.lyfta-session-copy strong{color:#f5f8ff;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:18px;font-weight:700;line-height:1.18;display:block;overflow:hidden}.lyfta-session-copy small{color:#8295b1;font-variant-numeric:tabular-nums;margin-top:6px;font-size:11px;font-weight:500;display:block}.lyfta-live-pill{color:#b2f36f;background:#9bea4c14;border:1px solid #9bea4c38;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:700;display:inline-flex}.lyfta-live-pill i{background:#9bea4c;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #9bea4cb3}.lyfta-primary-stat{z-index:1;border-top:1px solid #9bea4c21;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:17px;padding-top:14px;display:flex;position:relative}.lyfta-primary-stat span:first-child{color:#91a3bd;font-size:12px;font-weight:500;display:block}.lyfta-primary-stat strong{color:#fff;letter-spacing:-1px;margin-top:3px;font-size:36px;font-weight:750;line-height:1;display:block}.lyfta-stat-unit{color:#a5ef5d;padding-bottom:3px;font-size:13px;font-weight:750}.lyfta-stat-grid{background:#0a1423ad;border:1px solid #5069943d;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px;display:grid;overflow:hidden}.lyfta-stat-box{text-align:center;min-width:0;padding:13px 8px}.lyfta-stat-box+.lyfta-stat-box{border-left:1px solid #50699433}.lyfta-stat-box span,.lyfta-stat-box small{color:#7f91ae;font-size:10px;font-weight:500;display:block}.lyfta-stat-box strong{color:#f1f5ff;white-space:nowrap;text-overflow:ellipsis;margin:5px 0 4px;font-size:18px;font-weight:700;line-height:1.1;display:block;overflow:hidden}.lyfta-breakdown{background:linear-gradient(#0c1728b8,#08111e94);border:1px solid #5069943d;border-radius:12px;margin-top:12px;padding:13px 14px}.lyfta-breakdown-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;display:flex}.lyfta-breakdown-header span{color:#c2cee0;font-size:12px;font-weight:700}.lyfta-breakdown-header small{color:#7185a2;font-size:10px;font-weight:500}.lyfta-exercise-list{flex-direction:column;display:flex}.lyfta-exercise-row{border-top:1px solid #1f2a3dc7;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:9px 0;display:grid}.lyfta-exercise-index{color:#70829e;font-variant-numeric:tabular-nums;font-size:10px}.lyfta-exercise-name{color:#e2e9f6;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;font-weight:500;overflow:hidden}.lyfta-exercise-sets{color:#a5b5ca;background:#9bea4c0b;border:1px solid #9bea4c24;border-radius:6px;flex-shrink:0;padding:4px 7px;font-size:10px;font-weight:600}.lyfta-footer-row{color:#7890ae;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:0 2px;font-size:11px;font-weight:500;display:flex}.lyfta-live-dot{align-items:center;gap:6px;display:inline-flex}.lyfta-live-dot i{background:#9bea4c;border-radius:50%;width:6px;height:6px;box-shadow:0 0 8px #9bea4c94}.lyfta-api-error{color:#ff6877;margin:10px 0 0;font-size:11px;line-height:1.4}@media (width<=700px){.lyfta-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lyfta-stat-box:nth-child(3){border-top:1px solid #50699433;border-left:0}.lyfta-stat-box:nth-child(4){border-top:1px solid #50699433}}@media (width<=420px){.lyfta-stat-hero{padding:14px}.lyfta-session-copy strong{font-size:16px}.lyfta-session-copy small{font-size:10px}.lyfta-live-pill{padding:6px 8px;font-size:10px}.lyfta-primary-stat strong{font-size:31px}.lyfta-stat-box{padding:11px 6px}.lyfta-stat-box strong{font-size:16px}.lyfta-exercise-name{font-size:11px}}@media (width>=701px){.activities-page{zoom:.9}}.show-hobbies-toggle{color:#c5ccff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:max-content;font:inherit;letter-spacing:.2px;cursor:pointer;background:#0a1222e0;border:1px solid #7d8cff4d;border-radius:999px;align-self:flex-end;align-items:center;gap:10px;margin:18px 0 0 auto;padding:10px 14px;font-size:12px;font-weight:600;transition:background .2s,border-color .2s,transform .2s;display:flex;position:static;box-shadow:0 8px 24px #00000047}.show-hobbies-toggle span{color:#e4e8ff;background:#7d8cff29;border-radius:50%;place-items:center;width:18px;height:18px;font-size:15px;line-height:1;display:inline-grid}.show-hobbies-toggle:hover{background:#141d34f5;border-color:#919dff94;transform:translateY(-2px)}.show-hobbies-toggle:focus-visible{outline-offset:3px;outline:2px solid #9ba7ff}.show-hobbies-toggle.is-open{color:#e2e6ff}@media (width<=600px){.show-hobbies-toggle{margin-top:14px;padding:9px 12px;font-size:11px}}.activity-stat-icon.monkeytype{color:#f4cf67;background:#f4cf671c;border-color:#f4cf6738}.monkeytype-activity-panel{position:relative;overflow:hidden}.monkeytype-activity-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#f4cf6717,#0000 70%);width:240px;height:200px;position:absolute;top:-95px;right:-75px}.monkeytype-speed-hero{background:linear-gradient(120deg,#f4cf6717,#11192b94 65%);border:1px solid #f4cf672e;border-radius:15px;justify-content:space-between;align-items:center;gap:20px;margin:18px 0 15px;padding:22px 24px;display:flex;position:relative}.monkeytype-speed-copy{min-width:0}.monkeytype-speed-value{color:#f7f8ff;letter-spacing:-1.8px;font-variant-numeric:tabular-nums;align-items:baseline;gap:9px;margin-top:6px;font-size:clamp(36px,4vw,50px);font-weight:750;line-height:1.05;display:flex}.monkeytype-speed-value small{color:#e7cb75;letter-spacing:.7px;font-size:14px;font-weight:700}.monkeytype-speed-copy p{color:#8e9ab4;margin:9px 0 0;font-size:12px}.monkeytype-speed-mark{color:#f0ce67;background:#f4cf6714;border:1px solid #f4cf673b;border-radius:17px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:76px;height:76px;display:flex}.monkeytype-speed-mark span{color:#c8b36d;letter-spacing:2px;font-size:9px;font-weight:800}.monkeytype-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;display:grid}.monkeytype-stat-box{background:#080f1d8c;border:1px solid #697aa329;border-radius:12px;min-width:0;padding:15px 16px}.monkeytype-stat-box span,.monkeytype-stat-box small{color:#8390aa;font-size:11px;display:block}.monkeytype-stat-box strong{color:#edf1ff;font-variant-numeric:tabular-nums;margin:8px 0 5px;font-size:clamp(18px,2vw,23px);font-weight:700;display:block}.monkeytype-stat-box .monkeytype-date-value{letter-spacing:-.2px;font-size:clamp(13px,1.4vw,17px)}.monkeytype-footer-row{color:#7f8ba5;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:11px;display:flex}.monkeytype-footer-row a{color:#e7cf7c;align-items:center;gap:5px;text-decoration:none;transition:color .2s;display:inline-flex}.monkeytype-footer-row a:hover{color:#fff0ad}.monkeytype-api-note{color:#8793ac;margin:12px 0 0;font-size:11px;line-height:1.5}@media (width<=900px){.monkeytype-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.monkeytype-speed-hero{padding:17px}.monkeytype-speed-mark{width:60px;height:60px}.monkeytype-stats-grid{gap:8px}.monkeytype-stat-box{padding:12px}.monkeytype-footer-row{flex-direction:column;align-items:flex-start}}.chess-career-stats{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(96px,auto);align-content:space-between;gap:10px;margin-top:10px;display:grid}.chess-career-stat{background:#0b1627a6;border:1px solid #50699433;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;min-width:0;padding:13px 14px;display:flex}.chess-career-stat>strong{color:#edf2ff;font-size:22px;font-weight:750;line-height:1.15}.chess-career-stat>strong.win-text{color:#20dc8e}.chess-career-stat>strong.loss-text{color:#ff646d}.chess-career-stat>small{color:#7f8ba8;font-size:10px}.chess-career-stat .activity-label{font-size:11px}@media (width<=600px){.chess-career-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.skills-showcase{--skills-bg:#080b14;--skills-panel:#111626;--skills-line:#abbeff26;--skills-muted:#9aa7c7;--skills-bright:#75e6ff;isolation:isolate;color:#f0f4ff;background:radial-gradient(ellipse at 12% 8%, #3f75d62e, transparent 32%), radial-gradient(ellipse at 92% 46%, #9458ee24, transparent 30%), var(--skills-bg);width:100%;padding:clamp(58px,8vw,112px) clamp(16px,4vw,56px);font-family:Manrope,sans-serif;position:relative;overflow:hidden}.skills-showcase *{box-sizing:border-box}.skills-orb{z-index:-1;pointer-events:none;border:1px solid #75e6ff17;border-radius:50%;position:absolute}.skills-orb-one{width:440px;height:440px;top:-220px;right:-100px;box-shadow:0 0 0 44px #75e6ff05,0 0 0 88px #9a7dff05}.skills-orb-two{width:300px;height:300px;bottom:10%;left:-230px;box-shadow:0 0 0 35px #d7ff7405,0 0 0 70px #9a7dff05}.skills-shell{max-width:1400px;margin:0 auto;position:relative}.skills-hero{border-bottom:1px solid var(--skills-line);padding:0 0 30px;position:relative}.skills-hero:after{content:"";background:linear-gradient(90deg, var(--skills-bright), #a69bff, transparent);width:min(210px,32%);height:2px;display:block;position:absolute;bottom:-1px;left:0}.skills-eyebrow,.skills-hero-bottom,.skills-total span,.skills-results-line,.tile-topline,.tile-index,.footer-kicker,.footer-status{letter-spacing:.12em;font-family:DM Mono,monospace}.skills-eyebrow{color:var(--skills-bright);background:linear-gradient(90deg,#75e6ff12,#a69bff09);border:1px solid #75e6ff38;border-radius:4px;align-items:center;gap:10px;width:fit-content;margin-bottom:25px;padding:9px 12px;font-size:10px;display:flex}.eyebrow-pulse{background:var(--skills-bright);border-radius:50%;width:7px;height:7px;box-shadow:0 0 13px #75e6ffbf}.skills-heading-row{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.skills-heading-row h2{letter-spacing:-.075em;max-width:900px;margin:0;font-size:clamp(42px,7.5vw,100px);font-weight:800;line-height:.98}.skills-heading-row h2 span{color:#0000;white-space:nowrap;background:linear-gradient(100deg,#75e6ff 0%,#a69bff 58%,#d7a8ff 100%);-webkit-background-clip:text;background-clip:text;font-weight:600;position:relative}.skills-heading-row h2 span:after{content:"";opacity:.85;background:linear-gradient(90deg,#75e6ff,#a69bff,#0000);border-radius:4px;height:3px;position:absolute;bottom:-10px;left:3px;right:2%}.skills-intro{color:#9eaaa3;max-width:570px;margin:22px 0 0;font-size:14px;line-height:1.9}.skills-total{background:#75e6ff0e;border:1px solid #75e6ff40;flex-shrink:0;align-items:center;gap:11px;padding:13px 15px;display:flex}.skills-total strong{letter-spacing:-.08em;color:var(--skills-bright);font-size:38px;font-weight:600;line-height:1}.skills-total span{color:#a8b7ac;font-size:8px;line-height:1.7}.skills-hero-bottom{color:#7e8bab;align-items:center;gap:14px;margin-top:36px;font-size:9px;display:flex}.hero-line{background:#394867;width:60px;height:1px;display:inline-block}.skills-controls{justify-content:space-between;align-items:flex-start;gap:22px;padding:24px 0 20px;display:flex}.skills-filter-list{flex-wrap:wrap;gap:7px;display:flex}.skills-filter{cursor:pointer;color:#aab7d8;background:#101628cc;border:1px solid #29334c;border-radius:3px;padding:9px 12px;font:10px DM Mono,monospace;transition:color .2s,background .2s,border-color .2s,transform .2s}.skills-filter:hover{color:#eafaff;border-color:#566eaa;transform:translateY(-1px)}.skills-filter.is-active{color:#08131d;background:var(--skills-bright);border-color:var(--skills-bright);box-shadow:0 0 20px #75e6ff1a}.skills-search{color:#a2b0d0;background:#101628d6;border:1px solid #29334c;align-items:center;gap:9px;min-width:240px;max-width:290px;height:38px;padding:0 11px;display:flex}.search-glyph{font-size:23px;line-height:1;transform:rotate(-20deg)}.skills-search input{color:#f0f4ff;background:0 0;border:0;outline:0;width:100%;min-width:0;font:11px Manrope,sans-serif}.skills-search input::placeholder{color:#7e8bab}.search-shortcut{border:1px solid #37415e;place-items:center;width:18px;height:20px;font:10px DM Mono,monospace;display:grid}.skills-results-line{border-top:1px solid var(--skills-line);color:#7e8bab;justify-content:space-between;padding:13px 1px;font-size:9px;display:flex}.skills-results-line span:last-child{color:var(--skills-bright)}.skills-wall{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.skill-tile{--skill-accent:#75e6ff;text-align:left;color:#eff6f0;cursor:pointer;min-width:0;min-height:174px;animation:.48s both tile-appear;animation-delay:var(--tile-delay);background:linear-gradient(145deg,#161d34f7,#0c101ffa);border:1px solid #abbeff26;border-radius:5px;flex-direction:column;align-items:stretch;padding:10px 11px 9px;transition:border-color .22s,transform .22s,background .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}.skill-tile:before{content:"";background:var(--skill-accent);width:2px;height:0;box-shadow:0 0 16px var(--skill-accent);transition:height .25s;position:absolute;top:0;left:0}.skill-tile:after{content:"";background:var(--skill-accent);opacity:.025;filter:blur(25px);border-radius:50%;width:110px;height:110px;transition:opacity .25s;position:absolute;inset:auto -25px -55px auto}.skill-tile:hover,.skill-tile-selected{border-color:color-mix(in srgb, var(--skill-accent) 58%, transparent);box-shadow:0 13px 30px #0000002b, inset 0 0 25px color-mix(in srgb, var(--skill-accent) 5%, transparent);background:linear-gradient(145deg,#1c2542fa,#0f1428fc);transform:translateY(-3px)}.skill-tile:hover:before,.skill-tile-selected:before{height:100%}.skill-tile:hover:after,.skill-tile-selected:after{opacity:.11}.tile-topline{color:#8997bd;white-space:nowrap;align-items:center;gap:7px;font-size:8px;display:flex}.tile-dot{background:var(--skill-accent);width:5px;height:5px;box-shadow:0 0 8px color-mix(in srgb, var(--skill-accent) 55%, transparent);border-radius:50%;flex-shrink:0}.tile-arrow{color:#7784aa;margin-left:auto;font-size:12px;transition:transform .2s,color .2s}.skill-tile:hover .tile-arrow,.skill-tile-selected .tile-arrow{color:var(--skill-accent);transform:translate(2px,-2px)}.tile-logo-wrap{border:1px solid color-mix(in srgb, var(--skill-accent) 24%, transparent);background:radial-gradient(circle at 35% 20%, color-mix(in srgb, var(--skill-accent) 12%, transparent), #ffffff04);border-radius:7px;align-self:flex-start;place-items:center;width:46px;height:46px;margin:12px 0 9px;transition:transform .25s,border-color .25s;display:grid;box-shadow:inset 0 0 20px #ffffff04}.skill-tile:hover .tile-logo-wrap{border-color:color-mix(in srgb, var(--skill-accent) 52%, transparent);transform:scale(1.06)rotate(-2deg)}.skill-logo{object-fit:contain;filter:drop-shadow(0 3px 7px #0003);width:27px;height:27px}.skill-fallback{width:29px;height:29px;color:var(--skill-accent);border:1px solid color-mix(in srgb, var(--skill-accent) 40%, transparent);border-radius:5px;place-items:center;font:11px DM Mono,monospace;display:grid}.tile-name{z-index:1;letter-spacing:-.025em;overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.35;position:relative}.tile-note{z-index:1;color:#99a6c6;min-height:27px;margin-top:4px;font-size:9px;line-height:1.45;position:relative}.tile-bottomline{align-items:center;gap:8px;margin-top:auto;padding-top:9px;display:flex}.tile-accent-line{background:var(--skill-accent);opacity:.8;width:26px;height:2px;display:block}.tile-index{color:#69769b;margin-left:auto;font-size:8px}.skills-empty{color:#aab7ad;text-align:center;border:1px dashed #354238;justify-items:center;padding:60px 20px;display:grid}.skills-empty>span{color:var(--skills-bright);font-size:30px}.skills-empty h3{color:#f0f4ff;margin:12px 0 0}.skills-empty p{font-size:12px}.skills-empty button{color:#08131d;background:var(--skills-bright);cursor:pointer;border:0;padding:9px 12px}.skills-footer{border-top:1px solid var(--skills-line);align-items:center;gap:16px;margin-top:36px;padding:22px 0 0;display:flex}.footer-mark{width:48px;height:48px;color:var(--skills-bright);background:#75e6ff0b;border:1px solid #75e6ff52;flex-shrink:0;place-items:center;font:13px DM Mono,monospace;display:grid}.footer-kicker{color:var(--skills-bright);font-size:8px}.skills-footer p{color:#e0e8ff;margin:6px 0 0;font-size:14px;font-weight:600}.footer-status{color:#99a6c6;white-space:nowrap;align-items:center;gap:8px;margin-left:auto;font-size:8px;display:flex}.footer-status i{background:#75e6ff;border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px #75e6ffa6}@keyframes tile-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1150px){.skills-wall{grid-template-columns:repeat(5,minmax(0,1fr))}.skills-controls{flex-direction:column}.skills-search{width:100%;max-width:none}}@media (width<=850px){.skills-wall{grid-template-columns:repeat(4,minmax(0,1fr))}.skills-heading-row h2{font-size:clamp(42px,8vw,72px)}}@media (width<=600px){.skills-showcase{padding:56px 14px}.skills-heading-row{align-items:flex-start}.skills-heading-row h2{font-size:clamp(39px,11vw,58px)}.skills-total{gap:7px;padding:9px}.skills-total strong{font-size:29px}.skills-total span{font-size:7px}.skills-intro{margin-top:16px;font-size:12px}.skills-hero-bottom{flex-wrap:wrap;gap:9px;font-size:8px}.hero-line{width:24px}.skills-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.skill-tile{min-height:154px;padding:9px}.tile-topline{letter-spacing:.07em;gap:5px;font-size:7px}.tile-logo-wrap{width:39px;height:39px;margin:10px 0 8px}.skill-logo{width:23px;height:23px}.tile-name{font-size:11px}.tile-note{min-height:24px;font-size:8px}.skills-filter{padding:8px 9px;font-size:9px}.skills-footer{align-items:flex-start;gap:11px}.footer-mark{width:40px;height:40px}.skills-footer p{font-size:12px;line-height:1.6}.footer-status{align-self:flex-end;font-size:7px}}@media (width<=370px){.skills-total{display:none}.skills-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.tile-topline{letter-spacing:0}.footer-status{display:none}.skill-tile{min-height:150px}}@media (prefers-reduced-motion:reduce){.skill-tile,.skill-tile:before,.skill-tile:after,.tile-logo-wrap,.tile-arrow{transition:none!important;animation:none!important}}.experience-section{--journey-text:#f1f5f9;--journey-muted:#9ba9c0;width:100%;color:var(--journey-text);box-sizing:border-box;margin:0 auto;padding:78px 24px 64px;overflow:hidden}.experience-section *,.experience-section :before,.experience-section :after{box-sizing:border-box}.experience-container{width:100%;max-width:1120px;margin:0 auto}.journey-heading{margin-bottom:42px}.experience-eyebrow{color:#b9a9ff;letter-spacing:2.8px;align-items:center;gap:12px;margin-bottom:16px;font-size:10px;font-weight:800;display:flex}.experience-eyebrow-line{background:linear-gradient(90deg,#a78bfa,#0000);width:28px;height:1px;display:inline-block}.experience-title{color:#f8fafc;letter-spacing:-1.8px;margin:0;font-size:clamp(32px,4.7vw,56px);font-weight:800;line-height:1.12}.experience-title>span{-webkit-text-fill-color:transparent;background:linear-gradient(110deg,#c4b5fd 5%,#818cf8 48%,#67e8f9 100%);-webkit-background-clip:text;background-clip:text}.journey-story{max-width:900px;margin:0 0 36px}.journey-brand{align-items:center;gap:13px;width:fit-content;max-width:100%;margin-bottom:27px;display:flex}.journey-brand-logo{object-fit:contain;object-position:center;flex:0 0 48px;width:48px;height:54px;display:block}.journey-brand-name{color:#f1f5f9;letter-spacing:-.7px;font-size:clamp(23px,3vw,31px);font-weight:750;line-height:1.2}.journey-role-line{flex-wrap:wrap;align-items:baseline;gap:5px 9px;margin-bottom:17px;display:flex}.journey-role{color:#f8fafc;letter-spacing:-.7px;font-size:clamp(23px,3vw,31px);font-weight:750;line-height:1.3}.journey-role-at{color:#a5b4fc;font-size:clamp(18px,2.4vw,24px);font-weight:550}.journey-description{max-width:790px;color:var(--journey-muted);margin:0;font-size:14px;line-height:1.95}.journey-action-row{flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:21px;display:flex}.journey-location-line{color:#cbd5e1;flex-wrap:wrap;align-items:center;gap:9px;font-size:12px;display:flex}.journey-certificate-link{color:#d8d0ff;background:#8b5cf614;border:1px solid #a78bfa59;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;font-weight:650;text-decoration:none;transition:background .2s,border-color .2s,transform .2s;display:inline-flex}.journey-certificate-link:hover:not(.is-unavailable){background:#8b5cf62e;border-color:#a78bfab3;transform:translateY(-1px)}.journey-certificate-link.is-unavailable{opacity:.65;cursor:not-allowed}.journey-pin-icon{color:#a78bfa;flex-shrink:0;width:17px;height:17px;display:block}.journey-location-line a{color:#c4b5fd;align-items:center;gap:5px;margin-left:7px;text-decoration:none;transition:color .2s;display:inline-flex}.journey-location-line a:hover{color:#67e8f9}.journey-link-icon{width:14px;height:14px;display:inline-block}.journey-photo-feature{background:#111827;width:100%;height:clamp(270px,46vw,510px);margin:0 0 27px;position:relative;overflow:hidden}.journey-photo-feature:after{content:"";pointer-events:none;background:linear-gradient(#0000,#040812d1);position:absolute;inset:35% 0 0}.journey-photo-feature img{object-fit:cover;object-position:center 53%;filter:saturate(.9)contrast(1.03);width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block}.journey-photo-feature:hover img{transform:scale(1.025)}.journey-image-clickable{cursor:default;outline:none}.journey-image-clickable:focus-visible{box-shadow:0 0 0 2px #a78bfa}.journey-image-open-hint{z-index:2;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#080c18ad;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:5px;padding:8px 11px;font-size:10px;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;top:16px;right:16px;transform:translateY(-4px)}.journey-photo-feature:hover .journey-image-open-hint,.journey-image-trigger:hover .journey-image-open-hint,.journey-image-clickable:focus-visible .journey-image-open-hint{opacity:1;transform:translateY(0)}.journey-photo-feature-caption{z-index:1;position:absolute;bottom:clamp(18px,3.5vw,34px);left:clamp(18px,3.5vw,36px);right:20px}.journey-photo-feature-caption span{color:#d0c6ff;letter-spacing:2px;font-size:9px;font-weight:800}.journey-photo-feature-caption p{color:#fff;letter-spacing:-.3px;margin:9px 0 0;font-size:clamp(16px,2.2vw,23px);font-weight:650}.journey-photo-pair{grid-template-columns:1.1fr .9fr;align-items:start;gap:clamp(18px,3.4vw,38px);display:grid}.journey-photo-secondary{min-width:0;margin:0}.journey-image-trigger{text-align:left;cursor:default;background:0 0;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.journey-photo-secondary img{object-fit:cover;object-position:center;filter:saturate(.92);width:100%;height:clamp(230px,34vw,370px);transition:filter .25s,transform .4s;display:block}.journey-photo-secondary:hover img{filter:saturate(1.05);transform:scale(1.02)}.journey-image-trigger:focus-visible{outline-offset:3px;outline:2px solid #a78bfa}.journey-image-trigger .journey-image-open-hint{opacity:0}.journey-image-trigger:hover .journey-image-open-hint,.journey-image-trigger:focus-visible .journey-image-open-hint{opacity:1;transform:translateY(0)}.journey-lightbox{z-index:9999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:default;background:#020612f0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px 24px;display:flex;position:fixed;inset:0}.journey-lightbox img{object-fit:contain;cursor:default;width:auto;max-width:min(94vw,1400px);height:auto;max-height:82vh;display:block;box-shadow:0 18px 80px #00000073}.journey-lightbox p{color:#cbd5e1;text-align:center;margin:0;font-size:12px}.journey-lightbox-close{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-size:30px;line-height:1;display:grid;position:absolute;top:16px;right:22px}.journey-lightbox-close:hover{background:#ffffff2e}.journey-photo-portrait img{object-position:center 34%}.journey-photo-badge img{object-position:center 48%}.journey-photo-secondary figcaption{color:#aab6ca;align-items:center;gap:10px;margin-top:13px;font-size:12px;display:flex}.journey-photo-secondary figcaption span{color:#a78bfa;letter-spacing:1px;font-size:10px;font-weight:800}.journey-closing-line{color:#8795ad;align-items:center;gap:13px;margin-top:38px;display:flex}.journey-closing-line>span{background:linear-gradient(90deg,#a78bfa,#0000);flex:0 0 26px;width:26px;height:1px}.journey-closing-line p{margin:0;font-size:12px;font-style:italic;line-height:1.8}@media (width>=1200px){.experience-section{padding-top:90px}}@media (width<=640px){.experience-section{padding:58px 17px 45px}.journey-heading{margin-bottom:32px}.experience-title{letter-spacing:-1.2px}.journey-brand{gap:11px;margin-bottom:23px}.journey-brand-logo{flex-basis:42px;width:42px;height:48px}.journey-brand-name{font-size:25px}.journey-action-row{flex-direction:column;align-items:flex-start;gap:12px}.journey-description{font-size:13px;line-height:1.85}.journey-photo-feature{height:300px;margin-bottom:24px}.journey-photo-feature img{object-position:51% center}.journey-lightbox{padding:54px 12px 18px}.journey-lightbox img{max-width:96vw;max-height:78vh}.journey-photo-pair{grid-template-columns:1fr;gap:25px}.journey-photo-secondary img{aspect-ratio:4/3;height:auto;max-height:440px}.journey-photo-badge img{aspect-ratio:4/3}.journey-closing-line{align-items:flex-start;margin-top:30px}}@media (prefers-reduced-motion:reduce){.journey-photo-feature img,.journey-photo-secondary img,.journey-image-open-hint{transition:none}}.contact-page{--contact-bg:#05070d;--contact-card:#0b1120e0;--contact-border:#8499be2b;--contact-text:#e8edf8;--contact-muted:#8d9ab3;--contact-accent:#8ca7ff;isolation:isolate;min-height:100vh;color:var(--contact-text);background:radial-gradient(ellipse at 12% 18%, #4054a01f, transparent 36%), radial-gradient(ellipse at 90% 50%, #4f3b911a, transparent 32%), var(--contact-bg);padding:76px 5.5% 0;font-family:inherit;position:relative;overflow:hidden}.contact-orb{z-index:-1;pointer-events:none;filter:blur(85px);opacity:.16;border-radius:50%;position:absolute}.contact-orb-one{background:#435de0;width:260px;height:260px;top:210px;left:-120px}.contact-orb-two{background:#7648bb;width:300px;height:300px;top:390px;right:-140px}.contact-header{text-align:center;width:min(100%,780px);margin:0 auto 54px}.contact-eyebrow{color:#a9b9ff;letter-spacing:2.4px;align-items:center;gap:9px;margin-bottom:19px;font-size:11px;font-weight:700;display:inline-flex}.contact-eyebrow-dot,.contact-status-dot{background:#56dbab;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 12px #56dbab6b}.contact-header h1{color:#f0f3fc;letter-spacing:-2.1px;margin:0;font-size:clamp(34px,4.5vw,54px);font-weight:750;line-height:1.14}.contact-header h1 span{color:#9aafff;background:linear-gradient(100deg,#a5b7ff,#c0a5ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.contact-header>p{max-width:620px;color:var(--contact-muted);margin:19px auto 0;font-size:15px;line-height:1.85}.contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);align-items:stretch;gap:26px;width:min(100%,1100px);margin:0 auto 64px;display:grid}.contact-intro,.contact-links-section{border:1px solid var(--contact-border);background:var(--contact-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:19px;min-width:0;padding:30px;box-shadow:0 18px 50px #00000029}.contact-intro{flex-direction:column;align-items:flex-start;display:flex}.contact-intro-mark{color:#b5c3ff;background:#697fe71f;border:1px solid #899eff38;border-radius:14px;place-items:center;width:49px;height:49px;margin-bottom:25px;display:grid}.contact-kicker{color:#9baee8;letter-spacing:1.5px;font-size:10px;font-weight:700;line-height:1.6;display:block}.contact-intro h2,.contact-links-heading h2{color:#e9eefb;letter-spacing:-.65px;margin:9px 0 0;font-size:23px;font-weight:700}.contact-intro-copy{max-width:430px;color:var(--contact-muted);margin:14px 0 24px;font-size:13px;line-height:1.85}.contact-email-box{background:#11192bbf;border:1px solid #8799be29;border-radius:13px;align-items:center;gap:12px;width:100%;min-width:0;padding:15px;display:flex}.contact-email-icon{color:#a9baff;background:#697fe71c;border:1px solid #899eff29;border-radius:11px;flex:none;place-items:center;width:39px;height:39px;display:grid}.contact-email-text{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.contact-email-text>span{color:#8190aa;font-size:11px}.contact-email-text a{overflow-wrap:anywhere;color:#e1e8f8;font-size:13px;font-weight:600;text-decoration:none;transition:color .2s}.contact-email-text a:hover{color:#aebeff}.contact-copy-button{color:#9eacc6;cursor:pointer;background:#ffffff06;border:1px solid #8499be2b;border-radius:9px;flex:none;place-items:center;width:35px;height:35px;transition:color .2s,border-color .2s,background .2s;display:grid}.contact-copy-button:hover{color:#dce5ff;background:#778cef1a;border-color:#91a5ff66}.contact-copied-note{color:#56dbab;margin-top:8px;font-size:11px}.contact-primary-button{color:#101528;background:linear-gradient(110deg,#bdcaff,#c9b7ff);border:1px solid #c6cfff66;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:43px;margin-top:22px;padding:0 17px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.contact-primary-button:hover{transform:translateY(-2px);box-shadow:0 7px 22px #8c9dff29}.contact-links-section{flex-direction:column;display:flex}.contact-links-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.contact-links-heading>svg{color:#aabaff;flex:none}.contact-links-heading h2{font-size:21px}.contact-links-list{flex-direction:column;gap:11px;display:flex}.contact-link-item{background:#11192ba6;border:1px solid #8499be26;border-radius:13px;align-items:center;gap:13px;min-width:0;padding:15px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:flex}.contact-link-item:hover{background:#1a243dcc;border-color:#8fa3ff59;transform:translateY(-2px)}.contact-link-icon{color:#b4c1ff;background:#697fe71a;border:1px solid #899eff2b;border-radius:12px;flex:none;place-items:center;width:43px;height:43px;display:grid}.contact-link-github .contact-link-icon{color:#d5def2;background:#8499be17}.contact-link-leetcode .contact-link-icon{color:#ffc58b;background:#ffae6514;border-color:#ffae652e}.contact-link-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.contact-link-copy strong{color:#e5ebf9;font-size:13px;font-weight:700}.contact-link-copy>span{color:#98a6c0;font-size:11px}.contact-link-copy small{overflow-wrap:anywhere;color:#7786a3;font-size:10px}.contact-link-arrow{color:#7f91b8;flex:none;transition:color .2s,transform .2s}.contact-link-item:hover .contact-link-arrow{color:#c1ccff;transform:translate(2px,-2px)}.contact-bottom-note{color:#8998b3;align-items:center;gap:9px;margin-top:auto;padding-top:20px;font-size:11px;line-height:1.6;display:flex}.contact-bottom-note .contact-status-dot{width:6px;height:6px}.contact-footer{z-index:1;background:#070a12d1;border-top:1px solid #8499be21;width:111.65%;margin-left:-5.825%;position:relative}.contact-footer-inner{justify-content:space-between;align-items:center;gap:20px;width:min(100% - 48px,1100px);min-height:58px;margin:0 auto;display:flex}.contact-footer-brand{color:#dfe6f7;flex:none;align-items:center;gap:9px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.contact-footer-mark{color:#c9d3ff;background:#697fe71f;border:1px solid #96a9ff42;border-radius:7px;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.contact-footer-inner>p{color:#74819a;text-align:center;margin:0;font-size:10px}.contact-footer-separator{color:#52617d;margin:0 7px}.contact-footer-email{color:#9baee8;flex:none;align-items:center;gap:7px;font-size:11px;text-decoration:none;transition:color .2s;display:inline-flex}.contact-footer-email:hover{color:#d6dfff}@media (width>=1400px){.contact-page{padding-left:7%;padding-right:7%}.contact-footer{width:115.05%;margin-left:-7.525%}}@media (width<=900px){.contact-page{padding-top:60px}.contact-header{margin-bottom:38px}.contact-layout{grid-template-columns:1fr;gap:18px;max-width:650px;margin-bottom:44px}.contact-intro,.contact-links-section{padding:25px}.contact-bottom-note{margin-top:23px}}@media (width<=520px){.contact-page{padding:44px 16px 0}.contact-header{margin-bottom:29px}.contact-eyebrow{margin-bottom:15px;font-size:10px}.contact-header h1{letter-spacing:-1.3px;font-size:clamp(31px,9vw,40px)}.contact-header>p{margin-top:14px;font-size:13px;line-height:1.75}.contact-intro,.contact-links-section{border-radius:15px;padding:21px 17px}.contact-intro-mark{margin-bottom:20px}.contact-intro h2,.contact-links-heading h2{font-size:20px}.contact-intro-copy{font-size:12px}.contact-email-box{gap:9px;padding:11px}.contact-email-icon{width:34px;height:34px}.contact-email-text a{font-size:11px}.contact-copy-button{width:31px;height:31px}.contact-link-item{gap:10px;padding:12px 10px}.contact-link-icon{width:38px;height:38px}.contact-link-copy>span{font-size:10px}.contact-link-copy small{font-size:9px}.contact-bottom-note{align-items:flex-start;font-size:10px}.contact-footer{width:calc(100% + 32px);margin-left:-16px}.contact-footer-inner{flex-wrap:wrap;justify-content:space-between;gap:8px;width:calc(100% - 30px);min-height:54px;padding:9px 0}.contact-footer-brand{font-size:11px}.contact-footer-inner>p{text-align:center;order:3;width:100%;font-size:9px}.contact-footer-email{gap:5px;font-size:10px}}@media (prefers-reduced-motion:reduce){.contact-page *,.contact-page :before,.contact-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
