.shiny-text{color:#b5b5b5a4;background:linear-gradient(120deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.8) 50%,rgba(255,255,255,0) 60%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;display:inline-block;animation:portfolio-shine 5s linear infinite}@keyframes portfolio-shine{0%{background-position:100%}to{background-position:-100%}}.shiny-text.disabled{animation:none}.pc-card-wrapper{--pointer-x:50%;--pointer-y:50%;--pointer-from-center:0;--pointer-from-top:.5;--pointer-from-left:.5;--rotate-x:0deg;--rotate-y:0deg;perspective:500px;position:relative;width:min(100%,410px);margin-inline:auto;touch-action:none}.pc-card-wrapper:before{content:"";position:absolute;inset:-10px;border-radius:30px;background:radial-gradient(35% 52% at 55% 20%,#00ffaac4 0,#073aff00 100%),radial-gradient(100% 100% at 50% 50%,#00c1ffff 1%,#073aff00 76%),conic-gradient(from 124deg at 50% 50%,#c137ffff 0,#07c6ffff 40%,#07c6ffff 60%,#c137ffff 100%);filter:contrast(2) saturate(2) blur(36px);opacity:.65;transform:scale(.8);transition:all .5s ease}.pc-card-wrapper.pc-active:before{filter:contrast(1) saturate(2) blur(40px);transform:scale(.9);opacity:1}.pc-card{height:min(80svh,540px);aspect-ratio:.718;position:relative;overflow:hidden;border-radius:30px;background:#161616;border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 45px rgba(0,0,0,.35);transform:translateZ(.1px) rotateX(0) rotateY(0);transition:transform 1s ease}.pc-inside{position:absolute;inset:1px;overflow:hidden;border-radius:29px;background:#111111}.pc-content,.pc-glare,.pc-shine{position:absolute;inset:0;border-radius:29px}.pc-shine{z-index:3;background:repeating-linear-gradient(0deg,#ff9d9d 5%,#ffe76b 10%,#9aff69 15%,#73f5ff 20%,#8b8bff 25%,#f18bff 30%,#ff9d9d 35%),repeating-linear-gradient(-45deg,#0e152e 0,hsl(180,10%,60%) 4%,hsl(180,29%,66%) 5%,#0e152e 10%),radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),hsla(0,0%,0%,.1) 12%,hsla(0,0%,0%,.25) 120%);background-position:0 var(--pointer-y),var(--pointer-x) var(--pointer-y),50%;background-blend-mode:color,hard-light;background-size:500% 500%,300% 300%,200% 200%;mix-blend-mode:color-dodge}.pc-glare,.pc-shine{opacity:0;pointer-events:none}.pc-glare{z-index:4;background:radial-gradient(farthest-corner circle at var(--pointer-x) var(--pointer-y),hsl(248,25%,80%) 12%,hsla(207,40%,30%,.8) 90%);mix-blend-mode:overlay;filter:brightness(.8) contrast(1.2)}.pc-avatar-content{overflow:hidden}.pc-avatar{width:100%;position:absolute;left:50%;bottom:2px;transform:translateX(-50%);opacity:calc(1.75 - var(--pointer-from-center))}.pc-avatar-content:before{content:"";inset:0;z-index:1;-webkit-mask:linear-gradient(180deg,transparent 0,transparent 60%,#000 90%,#000);mask:linear-gradient(180deg,transparent 0,transparent 60%,#000 90%,#000)}.pc-avatar-content:before,.pc-user-info{position:absolute;backdrop-filter:blur(30px)}.pc-user-info{bottom:20px;left:20px;right:20px;z-index:5;justify-content:space-between;padding:12px 14px;border:1px solid rgba(255,255,255,.1);border-radius:15px;background:rgba(255,255,255,.1)}.pc-user-details,.pc-user-info{display:flex;align-items:center;gap:12px}.pc-mini-avatar{width:48px;height:48px;flex-shrink:0;overflow:hidden;border-radius:50%;border:1px solid rgba(255,255,255,.1)}.pc-mini-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.pc-user-text{display:flex;flex-direction:column;gap:6px}.pc-handle{font-size:14px;font-weight:500;color:rgba(255,255,255,.9)}.pc-status{font-size:14px;color:rgba(255,255,255,.7)}.pc-contact-btn{border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 16px;color:rgba(255,255,255,.9);font-size:14px;font-weight:600;text-decoration:none}.pc-content{z-index:6;text-align:center;pointer-events:none}.pc-details{position:absolute;top:3em;width:100%;display:flex;flex-direction:column}.pc-details h3{margin:0;font-size:min(5svh,3em);font-weight:600;color:#f5f5f5}.pc-details p{margin:-12px auto 0;font-size:16px;font-weight:600;color:rgba(255,255,255,.68)}@media(max-width:768px){.pc-card{height:min(70svh,450px)}.pc-user-info{bottom:15px;left:15px;right:15px;padding:10px 12px}.pc-mini-avatar{width:28px;height:28px}.pc-handle{font-size:13px}.pc-status{font-size:10px}.pc-contact-btn{padding:6px 12px;font-size:11px}}@media(max-width:480px){.pc-card{height:min(60svh,380px)}.pc-user-info{bottom:12px;left:12px;right:12px;padding:8px 10px;border-radius:50px}.pc-mini-avatar{width:24px;height:24px}.pc-handle{font-size:12px}.pc-status{font-size:9px}.pc-contact-btn{padding:5px 10px;font-size:10px;border-radius:50px}}.chroma-grid{position:relative;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));justify-content:center;gap:1rem;margin:0 auto;padding:.75rem 0;--x:50%;--y:50%;--r:260px}.chroma-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:370px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:0;text-align:left;color:white;background:var(--card-gradient);cursor:pointer;transition:transform .35s ease,border-color .3s ease}.chroma-card:hover{transform:translateY(-6px);border-color:var(--card-border)}.chroma-card:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.32),transparent 68%);transition:opacity .4s ease}.chroma-card:hover:before{opacity:1}.chroma-visual{position:relative;height:230px;overflow:hidden;margin:10px 10px 0;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(5,5,10,.48)}.chroma-visual-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 0);background-size:32px 32px}.chroma-visual-art{position:absolute;inset:32px 28px 24px}.chroma-index,.chroma-metric{position:absolute;top:12px;z-index:1;font-family:var(--font-jetbrains-mono),monospace;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}.chroma-index{left:12px}.chroma-metric{right:12px;color:rgba(255,255,255,.75)}.chroma-info{position:relative;z-index:3;display:flex;justify-content:space-between;gap:12px;padding:18px 17px 17px}.chroma-info h3{margin:0;font-size:18px;line-height:1.15;font-weight:600;letter-spacing:-.025em}.chroma-handle,.chroma-info p,.chroma-location{display:block;margin-top:7px;color:rgba(255,255,255,.58);font-size:11px;line-height:1.45}.chroma-handle{color:rgba(255,255,255,.38);font-family:var(--font-jetbrains-mono),monospace;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.chroma-location{color:rgba(255,255,255,.4);font-size:9px}.chroma-arrow{font-size:20px;color:rgba(255,255,255,.45);transition:transform .3s ease,color .3s ease}.chroma-card:hover .chroma-arrow{transform:translate(3px,-3px);color:white}.mini-bars{position:absolute;left:8%;right:8%;bottom:8%;height:64%;display:flex;align-items:flex-end;gap:8px}.mini-bars i{flex:1;border-radius:5px 5px 2px 2px;background:linear-gradient(0deg,rgba(34,211,238,.25),rgba(167,139,250,.95))}.mini-bars i:first-child{height:38%}.mini-bars i:nth-child(2){height:58%}.mini-bars i:nth-child(3){height:45%}.mini-bars i:nth-child(4){height:78%}.mini-bars i:nth-child(5){height:92%}.mini-line{position:absolute;left:3%;right:3%;top:43%;height:2px;background:#fff;transform:rotate(-10deg);opacity:.7;box-shadow:0 0 14px rgba(255,255,255,.6)}.mini-globe{position:absolute;left:20%;top:8%;width:130px;height:130px;border:1px solid rgba(56,189,248,.65);border-radius:50%;box-shadow:inset 0 0 35px rgba(56,189,248,.12),0 0 25px rgba(56,189,248,.12)}.mini-globe:after,.mini-globe:before{content:"";position:absolute;inset:12px 30px;border:1px solid rgba(255,255,255,.2);border-radius:50%}.mini-globe:after{transform:rotate(90deg)}.mini-globe span{position:absolute;left:10%;right:10%;top:49%;border-top:1px solid rgba(255,255,255,.25)}.mini-points i{position:absolute;width:7px;height:7px;border-radius:50%;background:#c4b5fd;box-shadow:0 0 12px #c4b5fd}.mini-points i:first-child{left:12%;top:28%}.mini-points i:nth-child(2){right:10%;top:22%}.mini-points i:nth-child(3){right:18%;bottom:24%}.mini-points i:nth-child(4){left:18%;bottom:14%}.mini-donut{left:15%;top:16%;width:130px;height:130px;background:conic-gradient(#a78bfa 0 42%,#22d3ee 42% 68%,rgba(255,255,255,.15) 68% 100%)}.mini-donut,.mini-donut:after{position:absolute;border-radius:50%}.mini-donut:after{content:"";inset:28px;background:#141322;border:1px solid rgba(255,255,255,.08)}.chroma-visual-hr .mini-bars{left:54%;right:4%;height:55%;bottom:13%}.mini-route{position:absolute;inset:15% 8%}.mini-route:before{content:"";position:absolute;left:8%;right:8%;top:50%;height:2px;background:linear-gradient(90deg,#22d3ee,#a78bfa);transform:rotate(-13deg);box-shadow:0 0 15px rgba(34,211,238,.45)}.mini-route span{position:absolute;width:13px;height:13px;border-radius:50%;border:2px solid #fff;background:#22d3ee;box-shadow:0 0 14px rgba(34,211,238,.7)}.mini-route span:first-child{left:5%;top:56%}.mini-route span:nth-child(2){left:48%;top:38%}.mini-route span:nth-child(3){right:5%;top:19%}.chroma-visual-ev .mini-bars{left:5%;right:5%;height:32%;bottom:0}.chroma-fade,.chroma-overlay{position:absolute;inset:0;pointer-events:none;z-index:5;backdrop-filter:grayscale(1) brightness(.78);-webkit-backdrop-filter:grayscale(1) brightness(.78);background:rgba(0,0,0,.001);mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0,transparent 15%,rgba(0,0,0,.1) 30%,rgba(0,0,0,.22) 45%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.68) 88%,white 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 0,transparent 15%,rgba(0,0,0,.1) 30%,rgba(0,0,0,.22) 45%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.5) 75%,rgba(0,0,0,.68) 88%,white 100%)}.chroma-fade{opacity:1;transition:opacity .25s ease;z-index:6;mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),white 0,white 15%,rgba(255,255,255,.9) 30%,rgba(255,255,255,.78) 45%,rgba(255,255,255,.65) 60%,rgba(255,255,255,.5) 75%,rgba(255,255,255,.32) 88%,transparent 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),white 0,white 15%,rgba(255,255,255,.9) 30%,rgba(255,255,255,.78) 45%,rgba(255,255,255,.65) 60%,rgba(255,255,255,.5) 75%,rgba(255,255,255,.32) 88%,transparent 100%)}@media (max-width:1100px){.chroma-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.chroma-grid{grid-template-columns:1fr}.chroma-card{min-height:350px}}