:root{--text-main:#e8efff;--text-soft:#e2ebffd1;--bg-main:#05070f;--bg-grad-a:#316bff59;--bg-grad-b:#58f2ff33;--hero-bg-a:#0b1023e6;--hero-bg-b:#070b19d1;--hero-border:#799cff40;--panel-bg:#080d1fbf;--panel-border:#7f9def38;--card-bg:#151f3e99;--card-border:#8eaaff33;color:var(--text-main);background-color:var(--bg-main);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box;cursor:none!important}.custom-cursor-dot,.custom-cursor-outer{pointer-events:none;z-index:9999;opacity:0;transition:width .3s,height .3s,background-color .3s,border-color .3s,opacity .3s,transform .3s;position:fixed;transform:translate(-50%,-50%)}.custom-cursor-dot.is-visible,.custom-cursor-outer.is-visible{opacity:1}.custom-cursor-dot{background-color:#67e3ff;border-radius:50%;width:6px;height:6px;box-shadow:0 0 15px #67e3ff,0 0 30px #67e3ff66}.custom-cursor-dot.is-pointer{background-color:#fff;width:4px;height:4px;transform:translate(-50%,-50%)scale(1.5);box-shadow:0 0 20px #fff}.custom-cursor-outer{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border:1.5px solid #67e3ff80;border-radius:50%;width:32px;height:32px}.custom-cursor-outer:after{content:"";border:1px solid #67e3ff26;border-radius:50%;animation:2s linear infinite cursorRingPulse;position:absolute;inset:-4px}@keyframes cursorRingPulse{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}.custom-cursor-outer.is-pointer{background-color:#67e3ff1a;border-color:#67e3ffcc;width:60px;height:60px;box-shadow:0 0 25px #67e3ff33}html,body{background:radial-gradient(circle at 20% -10%, var(--bg-grad-a), transparent 38%), radial-gradient(circle at 85% 10%, var(--bg-grad-b), transparent 40%), var(--bg-main);min-height:100%;color:var(--text-main);margin:0;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}#app{min-height:100vh}.portfolio{width:min(1120px,92%);margin:32px auto 48px}.hero{border:1px solid var(--hero-border);background:linear-gradient(145deg, var(--hero-bg-a), var(--hero-bg-b)), #080b1cb8;border-radius:24px;min-height:560px;padding:24px;position:relative;overflow:hidden}.hero-beam{filter:blur(10px);mix-blend-mode:screen;background:linear-gradient(#0000 8%,#58f2ff1a 32%,#58f2ff66 52%,#58f2ff14 72%,#0000 92%);width:48%;height:200%;animation:8.5s ease-in-out infinite beamSweep;position:absolute;top:-50%;left:26%;transform:rotate(18deg)}.hero-ring{border:1px solid #78c7ff59;border-radius:50%;width:380px;height:380px;animation:4.2s ease-in-out infinite ringPulse;position:absolute;top:-110px;right:-70px;box-shadow:inset 0 0 42px #6dceff33,0 0 60px #5c9bff38}.hero-scan{pointer-events:none;background:linear-gradient(90deg,#0000 0% 42%,#70ddff38 50%,#0000 58% 100%);animation:6.2s linear infinite scanLine;position:absolute;inset:0;transform:translate(-120%)}.hero-grid{pointer-events:none;background-image:linear-gradient(90deg,#7da8ff1f 1px,#0000 1px),linear-gradient(#7da8ff1f 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 35%,#000 5%,#0000 75%);mask-image:radial-gradient(circle at 50% 35%,#000 5%,#0000 75%)}.nav,.hero-content{z-index:2;position:relative}.nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{letter-spacing:1.6px;font-size:.95rem;font-weight:700}.nav ul{color:var(--text-soft);gap:20px;margin:0;padding:0;list-style:none;display:flex}.nav a:hover{color:#8fd5ff}.hero-content{max-width:680px;margin-top:96px}.tool-btn{color:var(--text-main);cursor:pointer;background:#4f6ec91f;border:1px solid #89adff73;border-radius:8px;padding:8px 10px;font-size:.82rem}.tag{color:#9fdfff;background:#5ebfff1a;border:1px solid #7cc3ff73;border-radius:999px;padding:6px 12px;font-size:.84rem;display:inline-block}h1,h2,h3,p{margin:0}h1{margin-top:18px;font-size:clamp(2rem,4vw,3.8rem);line-height:1.08}.intro{color:var(--text-soft);max-width:620px;margin-top:18px}.actions{gap:14px;margin-top:30px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:8px;padding:11px 20px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-icon{width:18px;height:18px;transition:transform .3s}.btn.primary{color:#061227;background:linear-gradient(110deg,#67e3ff,#7f9bff);box-shadow:0 4px 15px #67e3ff40}.btn.primary:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 20px #67e3ff66}.btn.primary:hover .btn-icon{transform:scale(1.1)rotate(-5deg)}.btn.ghost{color:#d8e5ff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#4f6ec91f;border-color:#89adff73}.btn.ghost:hover{color:#fff;background:#4f6ec933;border-color:#89adffcc;transform:translateY(-2px)}.btn.ghost:hover .btn-icon{transform:translate(2px)}.section{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:18px;margin-top:52px;padding:28px}.section-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.section-head span{color:#c2d3ffa6;font-size:.88rem}.projects-section{position:relative;overflow:hidden}.projects-bg-glow{pointer-events:none;z-index:0;filter:blur(50px);background:radial-gradient(circle at 70% 30%,#7f9def1f 0%,#0000 50%),radial-gradient(circle at 20% 80%,#67e3ff1f 0%,#0000 50%);width:150%;height:180%;animation:18s ease-in-out infinite alternate projectsGlowMove,25s linear infinite projectsHueShift;position:absolute;top:-40%;right:-20%}@keyframes projectsGlowMove{0%{transform:translate(0)rotate(0)scale(1)}to{transform:translate(8%,5%)rotate(-10deg)scale(1.1)}}@keyframes projectsHueShift{0%{filter:hue-rotate(-15deg)blur(50px);opacity:.8}50%{filter:hue-rotate(15deg)blur(60px);opacity:1}to{filter:hue-rotate(-15deg)blur(50px);opacity:.8}}.projects-bg-grid{pointer-events:none;opacity:.5;background-image:linear-gradient(90deg,#7f9def0a 1px,#0000 1px),linear-gradient(#7f9def0a 1px,#0000 1px);background-size:50px 50px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 15% 85%,#0000);mask-image:linear-gradient(#0000,#000 15% 85%,#0000)}.projects-bg-grid:after{content:"";background:linear-gradient(#0000,#67e3ff0f,#0000);width:100%;height:40%;animation:8s ease-in-out infinite projectsVerticalScan;position:absolute;top:-100%;left:0}@keyframes projectsVerticalScan{0%{top:-100%}40%{top:150%}to{top:150%}}.projects-section .section-head,.projects-section .cards{z-index:1;position:relative}.cards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.project-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c1228b3;border:1px solid #67e3ff2e;border-radius:20px;padding:24px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d,inset 0 0 20px #67e3ff0d}.card-accent{background:#67e3ff;border-radius:50%;width:4px;height:4px;position:absolute;top:12px;right:12px;box-shadow:0 0 10px #67e3ff}.project-card h3{color:#67e3ff;margin-top:8px;font-size:1.2rem;font-weight:700}.project-card p{color:var(--text-soft);margin:10px 0 16px;font-size:.95rem;line-height:1.6}.project-card ul{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.project-card li{color:#67e3ff;background:#67e3ff14;border:1px solid #67e3ff26;border-radius:4px;padding:2px 8px;font-size:.75rem}.project-card:hover{background:#0f1632cc;border-color:#67e3ff80;transform:translateY(-8px);box-shadow:0 25px 50px #00000080,0 0 30px #67e3ff33,inset 0 0 15px #67e3ff1a}.project-card:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#67e3ff4d,#0000);height:1px;position:absolute;top:0;left:0;right:0}.project-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff08,#0000);width:100%;height:100%;transition:all .5s;position:absolute;top:0;left:-100%}.project-card:hover:before{left:100%}.card h3{font-size:1.05rem}.card p{color:var(--text-soft);min-height:72px;margin-top:8px}.card ul{flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.card li{background:#66c8ff26;border:1px solid #7bc3ff59;border-radius:999px;padding:4px 8px;font-size:.8rem}.showcase-wrap{border-top:1px solid #89a8ff33;margin-top:26px;padding-top:22px}.showcase-head{margin-bottom:14px}.showcase-head h3{font-size:1.1rem}.showcase-head span{text-align:right;max-width:520px}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.showcase-card{border:1px solid var(--card-border);background:var(--card-bg);cursor:pointer;border-radius:18px;padding:18px;transition:transform .2s,box-shadow .2s}.showcase-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #3672ff40}.showcase-art-container{aspect-ratio:16/9;border:1px solid #90b1ff52;border-radius:12px;width:100%;position:relative;overflow:hidden}.showcase-art{color:#90b1ff80;letter-spacing:1.2px;background:linear-gradient(135deg,#141e4666,#0a0f2899);justify-content:center;align-items:center;width:100%;height:100%;font-size:.82rem;font-weight:500;display:flex;position:absolute;inset:0;overflow:hidden}.showcase-art:before{content:"";background:radial-gradient(circle,#7da8ff14 0%,#0000 75%),repeating-linear-gradient(45deg,#7da8ff05 0 1px,#0000 1px 10px);animation:6s ease-in-out infinite artPulse;position:absolute;inset:0}@keyframes artPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.showcase-art-img{object-fit:cover;object-position:top;width:100%;height:100%;display:block;position:absolute;inset:0}.carousel-fade-enter-active,.carousel-fade-leave-active{transition:opacity .5s}.carousel-fade-enter-from,.carousel-fade-leave-to{opacity:0}.showcase-subtitle{color:var(--text-soft);margin-top:14px;font-size:.95rem}.showcase-card h4{margin-top:5px;font-size:1.2rem;font-weight:600}.tone-blue .showcase-art{background:linear-gradient(135deg,#69b5ff59,#4a68ff8c)}.tone-violet .showcase-art{background:linear-gradient(135deg,#b882ff52,#7059ff85)}.tone-cyan .showcase-art{background:linear-gradient(135deg,#54eaff59,#3695ff8c)}.tone-mint .showcase-art{background:linear-gradient(135deg,#79ffd259,#3ca9ff80)}.tone-rose .showcase-art{background:linear-gradient(135deg,#ff85ba59,#8b65ff80)}.tone-amber .showcase-art{background:linear-gradient(135deg,#ffcd7461,#ff7f5f7a)}.showcase-modal-overlay{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#020614bf;justify-content:center;align-items:center;padding:12px;display:flex;position:fixed;inset:0}.showcase-modal{background:linear-gradient(145deg,#0f1637d9,#080c1ef2);border:1px solid #7f9def3d;border-radius:20px;width:min(1200px,96%);overflow:hidden;box-shadow:0 40px 100px #0009}.showcase-modal-head{border-bottom:1px solid #7f9def2e;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 10px;display:flex}.showcase-modal-title h3{margin-top:6px;font-size:1.25rem}.modal-subtitle{color:var(--text-soft);font-size:.95rem;display:inline-block}.modal-close{color:var(--text-main);cursor:pointer;background:#0a102d66;border:1px solid #89adff59;border-radius:12px;width:40px;height:40px;transition:transform .1s,background-color .2s,border-color .2s}.modal-close:hover{background:#0a102d99;border-color:#89adff8c}.modal-close:active{transform:translateY(1px)}.showcase-modal-body{grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;padding:14px 16px 10px;display:grid}.modal-nav{width:44px;height:44px;color:var(--text-main);cursor:pointer;background:#0a102d52;border:1px solid #89adff52;border-radius:14px;justify-content:center;align-items:center;font-size:26px;line-height:1;transition:transform .1s,background-color .2s,border-color .2s;display:flex}.modal-nav:hover{background:#0a102d80;border-color:#89adff80}.modal-nav:active{transform:translateY(1px)}.modal-art-wrap{background:#78a0ff0f;border:1px solid #89adff2e;border-radius:16px;max-height:82vh;padding:8px;overflow-y:auto}.modal-art-wrap::-webkit-scrollbar{width:6px}.modal-art-wrap::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.modal-art-wrap::-webkit-scrollbar-thumb{background:#7f9def4d;border-radius:10px}.modal-art-wrap::-webkit-scrollbar-thumb:hover{background:#7f9def80}.modal-art{background:linear-gradient(135deg,#8cbeff40,#5a70ff73);border:1px solid #90b1ff38;border-radius:12px;height:600px}.modal-img{border:1px solid #90b1ff38;border-radius:12px;width:100%;display:block}.tone-blue .modal-art{background:linear-gradient(135deg,#69b5ff59,#4a68ff99)}.tone-violet .modal-art{background:linear-gradient(135deg,#b882ff52,#7059ff94)}.tone-cyan .modal-art{background:linear-gradient(135deg,#54eaff59,#3695ff99)}.tone-mint .modal-art{background:linear-gradient(135deg,#79ffd259,#3ca9ff8c)}.tone-rose .modal-art{background:linear-gradient(135deg,#ff85ba59,#8b65ff8c)}.tone-amber .modal-art{background:linear-gradient(135deg,#ffcd746b,#ff7f5f8c)}.showcase-modal-foot{border-top:1px solid #7f9def2e;justify-content:center;gap:18px;padding:10px 16px 16px;display:flex}.modal-hint{color:var(--text-soft);font-size:.85rem}.skills-section{position:relative;overflow:hidden}.skills-bg-glow{pointer-events:none;z-index:0;filter:blur(50px);background:radial-gradient(circle at 30% 30%,#67e3ff40 0%,#0000 50%),radial-gradient(circle at 75% 70%,#7f9def40 0%,#0000 50%),radial-gradient(circle,#67e3ff1a 0%,#0000 65%);width:160%;height:220%;animation:15s ease-in-out infinite alternate skillsGlowMove,15s linear infinite skillsHueShift;position:absolute;top:-60%;left:-30%}@keyframes skillsGlowMove{0%{transform:translate(0)rotate(0)scale(1)}to{transform:translate(-12%,-10%)rotate(25deg)scale(1.3)}}@keyframes skillsHueShift{0%{filter:hue-rotate(-20deg)blur(40px);opacity:.7}50%{filter:hue-rotate(20deg)blur(55px);opacity:1}to{filter:hue-rotate(-20deg)blur(40px);opacity:.7}}.skills-bg-grid{pointer-events:none;opacity:.6;background-image:linear-gradient(90deg,#7f9def0d 1px,#0000 1px),linear-gradient(#7f9def0d 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 20%,#0000 90%);mask-image:radial-gradient(circle,#000 20%,#0000 90%)}.skills-bg-grid:after{content:"";background:linear-gradient(90deg,#0000 0%,#67e3ff0d 30%,#67e3ff40 50%,#67e3ff0d 70%,#0000 100%);width:60%;height:100%;animation:5s cubic-bezier(.4,0,.2,1) infinite skillsScan;position:absolute;top:0;left:-100%;transform:skew(-30deg);box-shadow:0 0 40px #67e3ff1a}@keyframes skillsScan{0%{left:-100%}30%{left:150%}to{left:150%}}.skills-section .section-head,.skills-section .chips{z-index:1;position:relative}.chips{flex-wrap:wrap;gap:12px;display:flex}.chips span{animation:4s ease-in-out infinite chipsBreathe;animation-delay:calc(var(--i,0) * .2s);background:#5d7bd233;border:1px solid #8daaff33;border-radius:10px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes chipsBreathe{0%,to{border-color:#8daaff33;box-shadow:0 0 #67e3ff00}50%{border-color:#67e3ff80;box-shadow:0 0 12px #67e3ff33}}.chips span:hover{color:#fff;background:#5d7bd259;border-color:#67e3ff;transform:translateY(-4px)scale(1.05);box-shadow:0 8px 24px #5d7bd280,0 0 15px #67e3ff4d}.about-section{position:relative;overflow:hidden}.about-bg-glow{pointer-events:none;z-index:0;filter:blur(60px);background:radial-gradient(circle at 20% 80%,#7f9def1f 0%,#0000 50%),radial-gradient(circle at 80% 20%,#67e3ff1a 0%,#0000 50%);width:150%;height:200%;animation:20s ease-in-out infinite alternate aboutGlowMove,25s linear infinite aboutHueShift;position:absolute;bottom:-50%;left:-20%}@keyframes aboutGlowMove{0%{transform:translate(0)rotate(0)scale(1)}to{transform:translate(5%,5%)rotate(-12deg)scale(1.1)}}@keyframes aboutHueShift{0%{filter:hue-rotate(-15deg)blur(60px);opacity:.6}50%{filter:hue-rotate(15deg)blur(70px);opacity:.9}to{filter:hue-rotate(-15deg)blur(60px);opacity:.6}}.about-bg-grid{pointer-events:none;opacity:.4;background-image:linear-gradient(90deg,#7f9def08 1px,#0000 1px),linear-gradient(#7f9def08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 10%,#0000 85%);mask-image:radial-gradient(circle,#000 10%,#0000 85%)}.about-bg-grid:after{content:"";background:linear-gradient(90deg,#0000,#67e3ff0d,#0000);width:40%;height:100%;animation:10s ease-in-out infinite aboutScan;position:absolute;top:0;left:-100%;transform:skew(-20deg)}@keyframes aboutScan{0%{left:-100%}30%{left:150%}to{left:150%}}.about-section .section-head,.about-section .about-intro,.about-section .about-detail{z-index:1;position:relative}.about-intro{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#7f9def0a;border:1px solid #7f9def1a;border-radius:24px;align-items:flex-start;gap:32px;margin-bottom:40px;padding:28px;display:flex;overflow:hidden}.about-intro:after{content:"";background:radial-gradient(circle at 100% 0,#67e3ff0d,#0000 70%);width:100px;height:100px;position:absolute;top:0;right:0}.about-portrait{flex-shrink:0;width:80px;height:80px;position:relative}.portrait-inner{z-index:1;background:#0a0f2880;border:2px solid #67e3ff66;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.portrait-img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.about-portrait:hover .portrait-img{transform:scale(1.1)}.portrait-z{color:#05070f;font-family:Inter,sans-serif;font-size:2.2rem;font-weight:900}.portrait-glow{filter:blur(8px);opacity:.5;background:linear-gradient(135deg,#67e3ff,#7f9bff);border-radius:50%;animation:4s ease-in-out infinite portraitPulse;position:absolute;inset:-4px}@keyframes portraitPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.about-bio{flex-direction:column;flex:1;gap:12px;display:flex}.bio-header{align-items:center;gap:12px;display:flex}.bio-tag{color:#67e3ff;letter-spacing:2px;background:#67e3ff1a;border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:700}.bio-line{background:linear-gradient(90deg,#67e3ff33,#0000);flex:1;height:1px}.about-text{color:var(--text-main);text-align:justify;border-left:2px solid #67e3ff4d;padding-left:20px;font-size:1.05rem;line-height:1.8;position:relative}.about-text:before{content:"";background:#67e3ff;width:2px;height:20%;position:absolute;top:0;left:-2px;box-shadow:0 0 10px #67e3ff}.about-detail{margin-top:32px}.detail-group{margin-bottom:40px}.detail-title{color:#67e3ff;text-transform:uppercase;letter-spacing:1.5px;align-items:center;gap:10px;width:fit-content;margin-bottom:24px;font-size:1.25rem;transition:all .3s;display:flex;position:relative}.detail-title:after{content:"";background:linear-gradient(90deg,#67e3ff,#0000);width:0;height:2px;transition:width .3s;position:absolute;bottom:-4px;left:0}.detail-group:hover .detail-title{text-shadow:0 0 15px #67e3ff80;transform:translate(5px)}.detail-group:hover .detail-title:after{width:100%}.title-icon{opacity:.8;font-size:1.4rem}.highlights-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.highlight-card{border:1px solid var(--card-border);background:#151f3e66;border-radius:14px;align-items:flex-start;gap:12px;padding:16px 20px;transition:all .3s;display:flex;position:relative}.highlight-card:hover{background:#151f3eb3;border-color:#67e3ff99;transform:translateY(-5px);box-shadow:0 12px 30px #0006,0 0 20px #67e3ff26}.highlight-num{color:#67e3ff;opacity:.6;margin-top:4px;font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:700}.highlight-card p{color:var(--text-soft);font-size:.95rem;line-height:1.6}.about-experience-row{grid-template-columns:1fr 1fr;gap:32px;display:grid}.timeline{padding-left:0;position:relative}.timeline:before{content:"";opacity:.3;background:linear-gradient(#67e3ff,#0000);width:2px;position:absolute;top:10px;bottom:10px;left:7px}.timeline-item{cursor:default;margin-bottom:20px;padding-left:28px;list-style:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.timeline-dot{z-index:1;background:#05070f;border:3px solid #67e3ff;border-radius:50%;width:16px;height:16px;transition:all .3s;position:absolute;top:8px;left:0;box-shadow:0 0 10px #67e3ff66}.timeline-item:hover .timeline-dot{background:#67e3ff;transform:scale(1.25);box-shadow:0 0 20px #67e3ff,0 0 40px #67e3ff66}.timeline-content{color:var(--text-soft);font-size:.95rem;line-height:1.6;transition:all .3s cubic-bezier(.4,0,.2,1)}.timeline-item:hover .timeline-content{color:#fff;transform:translate(8px)}.pm-details{flex-direction:column;gap:12px;display:flex}.pm-item{background:#7f9def0d;border-left:3px solid #7f9bff;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.pm-item:hover{background:#7f9def1f;border-left-color:#67e3ff;transform:translate(6px);box-shadow:0 4px 12px #0003}.pm-item p{color:var(--text-soft);font-size:.95rem;line-height:1.5}.education-card{border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#151f3e99,#0a0f28cc);border-radius:18px;justify-content:space-between;align-items:center;padding:24px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.education-card:hover{background:linear-gradient(145deg,#151f3ecc,#0a0f28f2);border-color:#67e3ff99;transform:translateY(-8px);box-shadow:0 20px 40px #00000080,0 0 30px #67e3ff33,inset 0 0 15px #67e3ff1a}.edu-info{z-index:1}.about-meta.education{color:var(--text-main);margin-bottom:8px;font-size:1.1rem;font-weight:600}.about-meta.award{color:#67e3ff;opacity:.9;font-size:.95rem}.education-card:hover .edu-decoration{background:radial-gradient(circle,#67e3ff33 0%,#0000 70%);transform:scale(1.2)rotate(15deg)}.edu-decoration{background:radial-gradient(circle,#67e3ff1a 0%,#0000 70%);border-radius:50%;width:120px;height:120px;transition:all .5s;position:absolute;top:-20px;right:-20px}@media (width<=768px){.showcase-modal-overlay{padding:0}.showcase-modal{border:none;border-radius:0;flex-direction:column;width:100%;height:100%;display:flex}.showcase-modal-head{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#080c1ef2;padding:12px 16px}.showcase-modal-body{flex:1;padding:0;display:block;position:relative;overflow:hidden}.modal-art-wrap{background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;height:100%;max-height:none;padding:0;display:flex}.modal-img{object-fit:contain;touch-action:none;border:none;border-radius:0;max-height:100%;transition:transform .1s ease-out}.modal-nav{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d;border:1px solid #ffffff1a;width:40px;height:40px;position:absolute;top:50%;transform:translateY(-50%)}.modal-nav[aria-label=Previous]{left:10px}.modal-nav[aria-label=Next]{right:10px}.showcase-modal-foot{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;pointer-events:none;background:#080c1ecc;padding:12px;position:absolute;bottom:0;left:0;right:0}.modal-hint{opacity:.8;font-size:.75rem}}@media (width<=900px){.about-intro{text-align:center;flex-direction:column}.about-experience-row,.highlights-grid{grid-template-columns:1fr}}.footer{color:var(--text-soft);margin-top:52px;padding:8px 0 10px}.footer h2{margin-bottom:8px}.contact-panel{border:1px solid var(--panel-border);background:linear-gradient(150deg, #2846a02e, #6649b41f), var(--panel-bg);text-align:center;border-radius:22px;padding:30px 22px;position:relative;overflow:hidden}.contact-glow{pointer-events:none;filter:blur(6px);background:radial-gradient(circle,#71dcff73,#0000 65%);border-radius:50%;width:340px;height:340px;position:absolute;top:-120px;left:50%;transform:translate(-50%)}.contact-desc{max-width:620px;color:var(--text-soft);margin:0 auto}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.contact-item{border:1px solid var(--card-border);text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#151f3e66;border-radius:16px;align-items:center;gap:16px;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.contact-item:hover{background:#151f3eb3;border-color:#74c7ff99;transform:translateY(-4px)scale(1.02);box-shadow:0 12px 32px #0006,0 0 20px #71dcff26}.contact-scan{opacity:0;pointer-events:none;background:linear-gradient(#0000 0%,#71dcff0d 50%,#0000 100%);width:100%;height:10px;position:absolute;inset:0}.contact-item:hover .contact-scan{opacity:1;animation:2s linear infinite contactScan}@keyframes contactScan{0%{transform:translateY(-100%)}to{transform:translateY(400%)}}.contact-info{z-index:1;flex:1}.contact-meta{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.contact-item small{color:var(--text-soft);letter-spacing:1px;text-transform:uppercase;font-size:.75rem;display:block}.status-tag{color:#67e3ff;letter-spacing:.5px;background:#67e3ff1a;border:1px solid #67e3ff33;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:700}.contact-item strong{letter-spacing:.5px;color:var(--text-main);font-family:JetBrains Mono,monospace,sans-serif;font-size:1.1rem}.contact-item .icon{color:#8bdfff;z-index:1;background:#76ccff1a;border:1px solid #76ccff33;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .3s;display:inline-flex;position:relative}.contact-item:hover .icon{background:#76ccff33;transform:rotate(10deg);box-shadow:0 0 15px #76ccff4d}.contact-item .icon svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.contact-actions{justify-content:center;gap:12px;margin-top:16px;display:flex}@keyframes beamSweep{0%,to{opacity:.45;transform:rotate(18deg)translate(-18%)}50%{opacity:.95;transform:rotate(18deg)translate(18%)}}@keyframes ringPulse{0%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.04)}to{opacity:.55;transform:scale(.92)}}@keyframes scanLine{0%{opacity:0;transform:translate(-120%)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate(120%)}}@media (width<=900px){.portfolio{width:min(1120px,94%);margin-top:18px}.hero{min-height:510px}.hero-content{margin-top:62px}.nav{flex-direction:column;align-items:flex-start;gap:14px}.cards,.showcase-grid{grid-template-columns:1fr}.showcase-head{flex-direction:column;align-items:flex-start;gap:8px}.showcase-head span{text-align:left}.contact-grid{grid-template-columns:1fr}.contact-actions{flex-wrap:wrap}.showcase-modal-body{grid-template-columns:40px 1fr 40px}.modal-art{height:320px}}
