@import "https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary:#000;--bg-secondary:#050505;--bg-card:#0a0a0a;--text-primary:#fff;--text-secondary:#8f8f8f;--text-muted:#4a4a4a;--border-color:#ffffff4d;--border-color-hover:#fff9;--font-sora:"Sora", sans-serif;--font-inter:"Inter", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;scroll-behavior:smooth;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-inter);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#222;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#444}.background-wrapper{z-index:1;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.app-container{z-index:10;max-width:1200px;margin:0 auto;padding:0 2rem;position:relative}header{z-index:20;justify-content:space-between;align-items:center;padding:2rem 0;display:flex;position:relative}.logo{font-family:var(--font-sora);letter-spacing:-1px;color:var(--text-primary);cursor:pointer;font-size:1.5rem;font-weight:800}.logo-wrap{align-items:center;display:flex}.nav-links{gap:2.5rem;list-style:none;display:flex}.nav-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500;font-family:var(--font-sora);text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--text-primary)}.menu-toggle{cursor:pointer;z-index:110;background:0 0;border:none;outline:none;width:40px;height:40px;display:none;position:relative}.menu-toggle span{background-color:var(--text-primary);border-radius:1px;width:24px;height:2px;margin:5px auto;transition:all .3s cubic-bezier(.16,1,.3,1);display:block}.menu-toggle.active span:first-child{transform:translateY(7px)rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0;transform:translate(-10px)}.menu-toggle.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.menu-overlay{-webkit-backdrop-filter:blur(4px);z-index:90;opacity:0;pointer-events:none;background:#0009;width:100vw;height:100vh;transition:opacity .4s;position:fixed;top:0;left:0}.menu-overlay.active{opacity:1;pointer-events:auto}section{padding:8rem 0;position:relative}.section-label{font-family:var(--font-sora);text-transform:uppercase;letter-spacing:.15em;color:var(--text-muted);margin-bottom:1rem;font-size:.8rem;font-weight:600}.section-title{font-family:var(--font-sora);letter-spacing:-.03em;margin-bottom:3.5rem;font-size:3rem;font-weight:800;line-height:1.1}.section-title span{color:var(--text-secondary)}.hero-section{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;min-height:calc(90vh - 100px);padding:2rem 0 6rem;display:grid}.hero-left{flex-direction:column;display:flex}.hero-greeting{font-family:var(--font-sora);color:var(--text-secondary);margin-bottom:1rem;font-size:1.1rem}.hero-name{font-family:var(--font-sora);letter-spacing:-.04em;margin-bottom:1.5rem;font-size:4.5rem;font-weight:800;line-height:1}.hero-role-wrapper{font-family:var(--font-sora);color:var(--text-secondary);min-height:5rem;font-size:2rem;font-weight:400;line-height:1.2;display:block}.hero-role{color:var(--text-primary);font-weight:700}.hero-role-cursor{background-color:var(--text-primary);vertical-align:middle;width:2px;height:2.2rem;margin-left:5px;animation:.8s infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:0}50%{opacity:1}}.hero-right{border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#05050566;border-radius:16px;justify-content:center;align-items:center;width:100%;height:500px;display:flex;position:relative;overflow:hidden}.hero-canvas-container{width:100%;height:100%;position:absolute;top:0;left:0}.resume-btn{border:1px solid var(--text-primary);background:var(--text-primary);color:var(--bg-primary);font-size:.9rem;font-weight:600;font-family:var(--font-sora);letter-spacing:.05em;border-radius:100px;align-self:flex-start;align-items:center;gap:.75rem;margin-top:2.5rem;padding:1rem 2rem;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.resume-btn:hover{color:var(--text-primary);background:0 0}.location-time-badge{color:var(--text-secondary);font-size:.85rem;font-family:var(--font-sora);align-items:center;gap:.5rem;margin-top:1.2rem;display:inline-flex}.location-dot{background-color:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-dot;display:inline-block;box-shadow:0 0 8px #22c55e99}@keyframes pulse-dot{0%{transform:scale(.95);box-shadow:0 0 #22c55eb3}70%{transform:scale(1);box-shadow:0 0 0 5px #22c55e00}to{transform:scale(.95);box-shadow:0 0 #22c55e00}}.location-time-badge .separator{color:var(--text-muted)}.social-bar{gap:1.5rem;margin-top:1.8rem;display:flex}.social-bar a{color:var(--text-secondary);transition:color .3s}.social-bar a:hover{color:var(--text-primary)}.social-bar svg{fill:currentColor;width:1.25rem;height:1.25rem}.projects-section{grid-template-columns:1fr 1.2fr;align-items:flex-start;gap:4rem;padding-top:4rem;display:grid}.projects-left{position:sticky;top:3rem}.projects-right{clip-path:inset(-1000px -1000px -128px);justify-content:center;align-items:center;height:650px;display:flex;position:relative}.proj-card-content{flex-direction:column;justify-content:flex-start;width:100%;height:100%;padding:2rem 2.2rem;display:flex}.proj-card-top{justify-content:space-between;align-items:center;display:flex}.proj-card-num{font-family:var(--font-sora);color:var(--text-muted);font-size:2.5rem;font-weight:800;line-height:1}.proj-card-tag{text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:100px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.proj-card-title{font-family:var(--font-sora);color:var(--text-primary);max-width:90%;margin-top:2rem;font-size:1.75rem;font-weight:700;line-height:1.2}.proj-card-tech-group{margin-top:.75rem}.proj-card-tech-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;max-width:90%;margin-top:.5rem;margin-bottom:.25rem;font-size:.75rem}.proj-card-tech{color:var(--text-secondary);max-width:90%;font-size:.82rem}.proj-card-bottom{align-items:center;max-width:35%;margin-top:auto;display:flex}.proj-card-link-btn{font-family:var(--font-sora);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;z-index:5;background:0 0;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem 1.2rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.proj-card-link-btn:hover{background:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.proj-card-link-btn svg{transition:transform .3s}.proj-card-link-btn:hover svg{transform:translate(1px,-1px)}.proj-card-img-wrap{border-left:1px solid var(--border-color);border-top:1px solid var(--border-color);border-top-left-radius:12px;width:60%;height:50%;position:absolute;bottom:0;right:0;overflow:hidden}.proj-card-img-wrap img,.proj-card-img-wrap video{object-fit:cover;width:110%;height:100%}.path-section{max-width:900px;margin:0 auto}.path-header{justify-content:space-between;align-items:flex-end;margin-bottom:4rem;display:flex}.path-toggle-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:100px;gap:.5rem;padding:.25rem;display:flex}.path-toggle-btn{color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:500;font-family:var(--font-sora);background:0 0;border:none;border-radius:100px;align-items:center;gap:.5rem;padding:.6rem 1.25rem;transition:all .3s;display:inline-flex}.path-toggle-btn.active{background:var(--text-primary);color:var(--bg-primary)}.path-toggle-btn svg{width:14px;height:14px}.timeline-container{padding-left:2rem;position:relative}.timeline-line{background-color:var(--border-color);width:1px;position:absolute;top:.5rem;bottom:.5rem;left:0}.timeline-tab-content{flex-direction:column;gap:3.5rem;display:none}.timeline-tab-content.active{animation:.4s ease-out forwards fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.timeline-item{grid-template-columns:180px 1fr;gap:3rem;display:grid;position:relative}.timeline-left{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.timeline-year{font-family:var(--font-sora);color:var(--text-primary);font-size:1.25rem;font-weight:700}.timeline-date{color:var(--text-muted);margin-top:.25rem;font-size:.8rem}.timeline-dot{background-color:var(--text-primary);border:2px solid var(--bg-primary);width:9px;height:9px;box-shadow:0 0 0 4px var(--border-color);border-radius:50%;transition:all .3s;position:absolute;top:.5rem;left:-2rem;transform:translate(-50%)}.timeline-item:hover .timeline-dot{background-color:var(--bg-primary);border-color:var(--text-primary);box-shadow:0 0 0 6px var(--text-primary)}.timeline-right{flex-direction:column;display:flex}.timeline-title{font-family:var(--font-sora);color:var(--text-primary);font-size:1.15rem;font-weight:600}.timeline-sub{color:var(--text-secondary);margin-top:.25rem;font-size:.85rem}.timeline-addr{color:var(--text-muted);font-size:.75rem;display:block}.timeline-desc{color:var(--text-secondary);margin-top:1rem;font-size:.9rem;line-height:1.6}.cert-view-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:100px;align-self:flex-start;align-items:center;gap:.5rem;margin-top:1rem;padding:.5rem 1rem;font-size:.75rem;font-weight:500;transition:all .3s;display:inline-flex}.cert-view-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}.cert-hover-preview{pointer-events:none;z-index:999;border:1px solid var(--text-primary);background:var(--bg-card);opacity:0;border-radius:8px;width:320px;height:200px;transition:opacity .2s,transform .2s;position:fixed;overflow:hidden;transform:scale(.95);box-shadow:0 10px 30px #000c}.cert-hover-preview img{object-fit:cover;filter:grayscale();width:100%;height:100%}.cert-mobile-modal{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000f2;justify-content:center;align-items:center;width:100vw;height:100vh;display:none;position:fixed;top:0;left:0}.cert-mobile-modal.active{display:flex}.cert-mobile-modal-content{max-width:80%;max-height:80%;position:relative}.cert-mobile-img{filter:grayscale();border:1px solid #333;border-radius:8px;max-width:100%;max-height:80vh;transition:filter .5s}.cert-mobile-modal:hover .cert-mobile-img{filter:grayscale(0%)}.cert-mobile-close{color:var(--text-primary);cursor:pointer;background:0 0;border:none;font-size:2rem;position:absolute;top:-3rem;right:0}.skills-bento{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.sk-large{grid-column:span 2}.sk-wide{grid-column:span 3}.sk-icon-wrap{border:1px solid var(--border-color);width:42px;height:42px;color:var(--text-primary);background:#ffffff05;border-radius:8px;justify-content:center;align-items:center;margin-bottom:2rem;display:flex}.sk-icon-wrap svg{stroke:currentColor;width:20px;height:20px}.sk-badge{font-family:var(--font-sora);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border:1px solid var(--border-color);border-radius:100px;margin-bottom:1.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.sk-name{font-family:var(--font-sora);margin-bottom:.75rem;font-size:1.35rem;font-weight:700}.sk-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.sk-cert-tags{flex-wrap:wrap;gap:.5rem;display:flex}.sk-cert-tags span{color:var(--text-muted);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.contact-section{max-width:900px;margin:0 auto}.contact-subtitle{color:var(--text-secondary);margin-top:-2rem;margin-bottom:3.5rem;font-size:1.25rem}.copy-email-btn{border:1px solid var(--text-primary);color:var(--text-primary);cursor:pointer;font-size:.85rem;font-weight:600;font-family:var(--font-sora);background:0 0;border-radius:100px;align-items:center;gap:.75rem;margin-bottom:4rem;padding:.8rem 1.8rem;transition:all .3s;display:inline-flex}.copy-email-btn:hover{background:var(--text-primary);color:var(--bg-primary)}.copy-email-btn svg{width:14px;height:14px}.contact-grid{border-top:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);gap:3.5rem;padding-top:3.5rem;display:grid}.contact-info-group{margin-bottom:2rem}.contact-col-title{font-family:var(--font-sora);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:block}.contact-info-val,.contact-item{color:var(--text-secondary);align-items:center;gap:.25rem;margin-bottom:.5rem;font-size:1rem;text-decoration:none;transition:color .3s;display:flex}.contact-item:hover{color:var(--text-primary)}.contact-item svg{opacity:.5;width:12px;height:12px;transition:transform .3s,opacity .3s}.contact-item:hover svg{opacity:1;transform:translate(2px,-2px)}.divider{background-color:var(--border-color);width:100%;height:1px}footer{color:var(--text-muted);border-top:1px solid var(--border-color);justify-content:space-between;padding:3rem 0;font-size:.8rem;display:flex}@media (width<=1024px){.menu-toggle{display:block;position:absolute;top:50%;right:0;transform:translateY(-50%)}.menu-toggle.active{position:fixed;top:2rem;right:2rem}.nav-container{-webkit-backdrop-filter:blur(20px);border-left:1px solid var(--border-color);z-index:100;background:#050505f2;flex-direction:column;justify-content:center;align-items:center;width:320px;height:100vh;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.nav-container.open{transform:translate(0)}.nav-links{flex-direction:column;align-items:center;gap:2.5rem;list-style:none}.nav-links a{letter-spacing:.05em;font-size:1.2rem;font-weight:600}.hero-section{grid-template-columns:1fr;gap:3rem}.hero-name{font-size:3.75rem}.hero-role-wrapper{font-size:1.75rem}.hero-right{height:400px}.projects-section{grid-template-columns:1fr;gap:3rem}.projects-left{position:static}.projects-right{clip-path:none;height:600px;margin-top:5rem}.proj-card-content{padding:1.5rem 1.75rem}.proj-card-title{margin-top:1.25rem;margin-bottom:.5rem;font-size:1.5rem}.proj-card-img-wrap{width:50%;height:45%}.proj-card-bottom{max-width:45%}.skills-bento{grid-template-columns:repeat(2,1fr)}.sk-wide{grid-column:span 2}.contact-grid{gap:2rem}}@media (width<=768px){.nav-links{gap:1.25rem}section{padding:5rem 0}.section-title{margin-bottom:2rem;font-size:2.25rem}.hero-name{font-size:3.25rem}.hero-role-wrapper{font-size:1.5rem}.projects-right{height:480px;margin-top:4.5rem}.proj-card-content{padding:1.25rem 1.5rem}.proj-card-title{margin-top:1rem;margin-bottom:.5rem;font-size:1.35rem}.proj-card-tech-label{font-size:.7rem}.proj-card-tech{font-size:.75rem}.proj-card-bottom{max-width:48%}.proj-card-link-btn{padding:.4rem 1rem;font-size:.75rem}.proj-card-img-wrap{width:50%;height:45%}.path-header{flex-direction:column;align-items:flex-start;gap:1.5rem}.timeline-item{grid-template-columns:1fr;gap:1rem}.timeline-left{text-align:left;align-items:flex-start}.timeline-dot{top:.5rem;left:-2rem}.skills-bento{grid-template-columns:1fr}.sk-large,.sk-wide{grid-column:span 1}.contact-grid{grid-template-columns:1fr;gap:2.5rem}footer{text-align:center;flex-direction:column;align-items:center;gap:1rem}}@media (width<=480px){.nav-container{border-left:none;width:100vw}.hero-name{font-size:2.5rem}.hero-role-wrapper{min-height:4rem;font-size:1.25rem}.projects-right{height:370px;margin-top:3.5rem}.proj-card-title{margin-top:.5rem;margin-bottom:.25rem;font-size:1.15rem}.proj-card-num{font-size:1.75rem}.proj-card-tag{padding:.15rem .5rem;font-size:.65rem}}.side-rays-container{pointer-events:none;z-index:3;width:100%;height:100%;position:relative;overflow:hidden}.card-swap-wrapper{transform-origin:100% 100%;flex-direction:column;align-items:flex-end;gap:1.5rem;display:flex;position:absolute;bottom:40px;right:0;transform:translate(5%)}.card-swap-container{perspective:900px;position:relative;overflow:visible}.card{border:1px solid var(--border-color);transform-style:preserve-3d;will-change:transform;backface-visibility:hidden;cursor:pointer;background:#000;border-radius:12px;transition:border-color .3s;position:absolute;top:50%;left:50%}.card:hover{border-color:var(--border-color-hover)}.card-swap-nav{z-index:50;align-items:center;gap:1.25rem;margin-right:2rem;display:flex}.card-swap-nav-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #1a1a1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex}.card-swap-nav-btn:hover{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-primary)}.card-swap-nav-btn svg{transition:transform .2s}.card-swap-nav-btn:active svg{transform:scale(.9)}.card-swap-nav-info{font-family:var(--font-sora);letter-spacing:.05em;color:var(--text-secondary);text-align:center;-webkit-user-select:none;user-select:none;min-width:50px;font-size:.85rem;font-weight:600}@media (width<=1024px){.card-swap-wrapper{transform-origin:50%;align-items:center;margin:0 auto;position:relative;bottom:auto;right:auto;transform:translate(-30px)}.card-swap-nav{margin-right:0}}@media (width<=480px){.card-swap-wrapper{transform:translate(-18px)}}.retro-game-wrapper{-webkit-user-select:none;user-select:none;background-color:#000;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;font-family:Sora,sans-serif;display:flex;position:relative;overflow:hidden}.retro-game-canvas{width:100%;height:100%;display:block}.retro-game-wrapper:hover .retro-game-canvas{cursor:none}.game-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;text-align:center;background:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;display:flex;position:absolute;top:0;left:0}.overlay-content{flex-direction:column;align-items:center;max-width:320px;animation:.4s ease-out fadeIn;display:flex}.arcade-tag{letter-spacing:.25em;color:var(--text-secondary);border:1px solid var(--text-secondary);border-radius:4px;margin-bottom:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:800}.overlay-title{letter-spacing:-.02em;color:#fff;text-transform:uppercase;margin-bottom:.75rem;font-size:2.25rem;font-weight:800}.overlay-title.lost{color:#fff;text-shadow:0 0 10px #ffffff4d}.overlay-title.won{color:#fff;text-shadow:0 0 15px #ffffff80}.overlay-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-family:Inter,sans-serif;font-size:.85rem;line-height:1.5}.scores-row{color:var(--text-secondary);letter-spacing:.05em;margin-bottom:1.5rem;font-size:.8rem;font-weight:600}.play-btn{color:#000;letter-spacing:.05em;cursor:pointer;background:#fff;border:none;border-radius:4px;padding:.85rem 2rem;font-family:Sora,sans-serif;font-size:.85rem;font-weight:700;transition:all .2s}.play-btn:hover{background:#ddd;transform:translateY(-2px)}.game-hud{pointer-events:none;z-index:5;justify-content:space-between;display:flex;position:absolute;top:15px;left:15px;right:15px}.hud-item{align-items:center;gap:.5rem;display:flex}.hud-label{color:var(--text-secondary);letter-spacing:.1em;font-size:.65rem;font-weight:700}.hud-value{color:#fff;font-size:.85rem;font-weight:800}.hud-lives{align-items:center;gap:.35rem;display:flex}.hud-heart{background-color:#fff;border-radius:1px;width:8px;height:8px;position:relative;transform:rotate(45deg)}.hud-heart:before,.hud-heart:after{content:"";background-color:#fff;border-radius:50%;width:8px;height:8px;position:absolute}.hud-heart:before{top:-4px;left:0}.hud-heart:after{top:0;left:-4px}.target-cursor-wrapper{pointer-events:none;z-index:99999;mix-blend-mode:difference;width:0;height:0;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.target-cursor-dot{will-change:transform;background:#fff;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.target-cursor-corner{will-change:transform;border:3px solid #fff;width:12px;height:12px;position:absolute;top:50%;left:50%}.corner-tl{border-bottom:none;border-right:none;transform:translate(-150%,-150%)}.corner-tr{border-bottom:none;border-left:none;transform:translate(50%,-150%)}.corner-br{border-top:none;border-left:none;transform:translate(50%,50%)}.corner-bl{border-top:none;border-right:none;transform:translate(-150%,50%)}.ink-cursor-canvas{pointer-events:none;z-index:99999;background:0 0;width:100vw;height:100vh;display:block;position:fixed;top:0;left:0}.border-glow-card{--edge-proximity:0;--cursor-angle:45deg;--edge-sensitivity:30;--color-sensitivity:calc(var(--edge-sensitivity) + 20);--border-radius:16px;--glow-padding:30px;--cone-spread:20;border-radius:var(--border-radius);isolation:isolate;border:1px solid var(--border-color);background:var(--card-bg,#0a0a0a);transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s;display:grid;position:relative;overflow:visible;transform:translateZ(.01px);box-shadow:0 10px 30px #0000004d}.border-glow-card:hover{border-color:var(--border-color-hover);transform:translateY(-4px)translateZ(.01px)}.border-glow-card:before,.border-glow-card:after,.border-glow-card>.edge-light{content:"";border-radius:inherit;z-index:-1;transition:opacity .25s ease-out;position:absolute;inset:0}.border-glow-card:not(:hover):not(.sweep-active):before,.border-glow-card:not(:hover):not(.sweep-active):after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card:before{background:linear-gradient(var(--card-bg,#0a0a0a) 0 100%) padding-box, linear-gradient(#fff0 0% 100%) border-box, var(--gradient-one,radial-gradient(at 80% 55%, #fff 0px, transparent 50%)) border-box, var(--gradient-two,radial-gradient(at 69% 34%, #b3b3b3 0px, transparent 50%)) border-box, var(--gradient-three,radial-gradient(at 8% 6%, gray 0px, transparent 50%)) border-box, var(--gradient-four,radial-gradient(at 41% 38%, #666 0px, transparent 50%)) border-box, var(--gradient-five,radial-gradient(at 86% 85%, #4d4d4d 0px, transparent 50%)) border-box, var(--gradient-six,radial-gradient(at 82% 18%, #333 0px, transparent 50%)) border-box, var(--gradient-seven,radial-gradient(at 51% 4%, #1a1a1a 0px, transparent 50%)) border-box, var(--gradient-base,linear-gradient(#fff 0 100%)) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black calc(var(--cone-spread) * 1%), transparent calc((var(--cone-spread) + 15) * 1%), transparent calc((100 - var(--cone-spread) - 15) * 1%), black calc((100 - var(--cone-spread)) * 1%));border:1px solid #0000}.border-glow-card:after{background:var(--gradient-one,radial-gradient(at 80% 55%, #fff 0px, transparent 50%)) padding-box, var(--gradient-two,radial-gradient(at 69% 34%, #b3b3b3 0px, transparent 50%)) padding-box, var(--gradient-three,radial-gradient(at 8% 6%, gray 0px, transparent 50%)) padding-box, var(--gradient-four,radial-gradient(at 41% 38%, #666 0px, transparent 50%)) padding-box, var(--gradient-five,radial-gradient(at 86% 85%, #4d4d4d 0px, transparent 50%)) padding-box, var(--gradient-six,radial-gradient(at 82% 18%, #333 0px, transparent 50%)) padding-box, var(--gradient-seven,radial-gradient(at 51% 4%, #1a1a1a 0px, transparent 50%)) padding-box, var(--gradient-base,linear-gradient(#fff 0 100%)) padding-box;-webkit-mask-image:linear-gradient(to bottom, black, black), radial-gradient(ellipse at 50% 50%, black 40%, transparent 65%), radial-gradient(ellipse at 66% 66%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 66% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 66%, black 5%, transparent 40%), conic-gradient(from var(--cursor-angle) at center, transparent 5%, black 15%, black 85%, transparent 95%);mask-image:linear-gradient(to bottom, black, black), radial-gradient(ellipse at 50% 50%, black 40%, transparent 65%), radial-gradient(ellipse at 66% 66%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 66% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 66%, black 5%, transparent 40%), conic-gradient(from var(--cursor-angle) at center, transparent 5%, black 15%, black 85%, transparent 95%);-webkit-mask-image:linear-gradient(to bottom, black, black), radial-gradient(ellipse at 50% 50%, black 40%, transparent 65%), radial-gradient(ellipse at 66% 66%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 66% 33%, black 5%, transparent 40%), radial-gradient(ellipse at 33% 66%, black 5%, transparent 40%), conic-gradient(from var(--cursor-angle) at center, transparent 5%, black 15%, black 85%, transparent 95%);-webkit-mask-composite:source-out, destination-over, destination-over, destination-over, destination-over, destination-over;opacity:calc(var(--fill-opacity,.35) * (var(--edge-proximity) - var(--color-sensitivity)) / (100 - var(--color-sensitivity)));mix-blend-mode:soft-light;border:1px solid #0000;-webkit-mask-composite:source-out,source-over,source-over,source-over,source-over,source-over;mask-composite:subtract,add,add,add,add,add}.border-glow-card>.edge-light{inset:calc(var(--glow-padding) * -1);pointer-events:none;z-index:1;-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);-webkit-mask-image:conic-gradient(from var(--cursor-angle) at center, black 2.5%, transparent 10%, transparent 90%, black 97.5%);opacity:calc((var(--edge-proximity) - var(--edge-sensitivity)) / (100 - var(--edge-sensitivity)));mix-blend-mode:plus-lighter}.border-glow-card>.edge-light:before{content:"";inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color,#fff), inset 0 0 1px 0 var(--glow-color-60,#fff9), inset 0 0 3px 0 var(--glow-color-50,#ffffff80), inset 0 0 6px 0 var(--glow-color-40,#fff6), inset 0 0 15px 0 var(--glow-color-30,#ffffff4d), inset 0 0 25px 2px var(--glow-color-20,#fff3), inset 0 0 50px 2px var(--glow-color-10,#ffffff1a), 0 0 1px 0 var(--glow-color-60,#fff9), 0 0 3px 0 var(--glow-color-50,#ffffff80), 0 0 6px 0 var(--glow-color-40,#fff6), 0 0 15px 0 var(--glow-color-30,#ffffff4d), 0 0 25px 2px var(--glow-color-20,#fff3), 0 0 50px 2px var(--glow-color-10,#ffffff1a);position:absolute}.border-glow-inner{z-index:1;flex-direction:column;justify-content:space-between;height:100%;padding:2.5rem;display:flex;position:relative;overflow:auto}.music-player-wrapper{z-index:1000;font-family:var(--font-inter);transition:all .4s cubic-bezier(.16,1,.3,1);position:fixed;bottom:2.5rem;right:2.5rem}.minimized-bubble{border:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);cursor:pointer;background:#0a0a0acc;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;padding:4px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;box-shadow:0 8px 32px #0009}.minimized-bubble:hover{border-color:var(--text-primary);transform:scale(1.08);box-shadow:0 12px 40px #ffffff26}.disc-cover{border:1px solid #fff3;border-radius:50%;width:100%;height:100%;position:relative;overflow:hidden}.disc-cover img{object-fit:cover;width:100%;height:100%}.disc-center{background:var(--bg-primary);border:2px solid var(--text-primary);z-index:2;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.spinning{animation:6s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mini-visualizer{background:var(--text-primary);border:1px solid var(--bg-primary);border-radius:100px;gap:3px;padding:4px 8px;display:flex;position:absolute;bottom:-4px;box-shadow:0 4px 10px #0006}.mini-visualizer .bar{background:var(--bg-primary);border-radius:1px;width:3px;height:10px}.mini-visualizer .bar:first-child{animation:.8s ease-in-out infinite alternate dance}.mini-visualizer .bar:nth-child(2){animation:.5s ease-in-out .15s infinite alternate dance}.mini-visualizer .bar:nth-child(3){animation:.7s ease-in-out .3s infinite alternate dance}.maximized-card{-webkit-backdrop-filter:blur(20px);background:#0a0a0abf;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;gap:1.25rem;width:330px;padding:1.5rem;animation:.4s cubic-bezier(.16,1,.3,1) forwards popIn;display:flex;box-shadow:0 20px 50px #000c}@keyframes popIn{0%{opacity:0;transform:scale(.9)translateY(15px)}to{opacity:1;transform:none}}.player-header{justify-content:space-between;align-items:center;display:flex}.player-label{font-family:var(--font-sora);letter-spacing:.15em;color:var(--text-muted);font-size:.7rem;font-weight:700}.player-minimize-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.player-minimize-btn:hover{color:var(--text-primary);background:#ffffff0d}.player-body{align-items:center;gap:1.2rem;display:flex}.track-disc{border:2px solid #ffffff0d;border-radius:50%;flex-shrink:0;width:72px;height:72px;position:relative;overflow:hidden;box-shadow:0 4px 15px #00000080}.track-disc img{object-fit:cover;width:100%;height:100%}.track-details{flex-direction:column;flex-grow:1;justify-content:center;min-width:0;display:flex}.track-title{font-family:var(--font-sora);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin-bottom:.15rem;font-size:.95rem;font-weight:600;overflow:hidden}.track-artist{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.sound-visualizer{align-items:flex-end;gap:3px;height:16px;margin-top:.5rem;display:flex}.wave-bar{background:#ffffff40;border-radius:1px;width:3px;height:3px;transition:height .3s,background-color .3s}.wave-bar.dancing{background:var(--text-primary)}.wave-bar.dancing:first-child{animation:.8s ease-in-out infinite alternate dance}.wave-bar.dancing:nth-child(2){animation:.5s ease-in-out .1s infinite alternate dance}.wave-bar.dancing:nth-child(3){animation:.9s ease-in-out .2s infinite alternate dance}.wave-bar.dancing:nth-child(4){animation:.6s ease-in-out 50ms infinite alternate dance}.wave-bar.dancing:nth-child(5){animation:.7s ease-in-out .15s infinite alternate dance}.wave-bar.dancing:nth-child(6){animation:.5s ease-in-out .25s infinite alternate dance}.wave-bar.dancing:nth-child(7){animation:.8s ease-in-out .12s infinite alternate dance}.wave-bar.dancing:nth-child(8){animation:.6s ease-in-out .3s infinite alternate dance}@keyframes dance{0%{height:3px}to{height:16px}}.player-progress{flex-direction:column;gap:.4rem;display:flex}.progress-slider{appearance:none;cursor:pointer;background:#ffffff1a;border-radius:100px;outline:none;width:100%;height:4px;transition:background .3s}.progress-slider:hover{background:#fff3}.progress-slider::-webkit-slider-thumb{appearance:none;background:var(--text-primary);cursor:pointer;border-radius:50%;width:10px;height:10px;transition:transform .2s}.progress-slider::-webkit-slider-thumb:hover{transform:scale(1.3)}.progress-slider::-moz-range-thumb{background:var(--text-primary);cursor:pointer;border:none;border-radius:50%;width:10px;height:10px;transition:transform .2s}.progress-slider::-moz-range-thumb:hover{transform:scale(1.3)}.progress-times{color:var(--text-muted);justify-content:space-between;font-size:.72rem;display:flex}.player-controls{justify-content:space-between;align-items:center;display:flex}.control-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.control-btn:hover{color:var(--text-primary);background:#ffffff0d}.play-pause-btn{background:var(--text-primary);color:var(--bg-primary);width:44px;height:44px;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),background-color .2s;box-shadow:0 4px 12px #ffffff1a}.play-pause-btn:hover{background:var(--text-primary);color:var(--bg-primary);transform:scale(1.06);box-shadow:0 6px 16px #fff3}.volume-control-wrap{align-items:center;gap:.25rem;display:flex}.volume-slider{appearance:none;opacity:0;pointer-events:none;background:#ffffff1a;border-radius:100px;outline:none;width:0;height:3px;transition:width .3s cubic-bezier(.16,1,.3,1),opacity .2s}.volume-control-wrap:hover .volume-slider,.volume-slider:hover,.volume-slider:active{opacity:1;pointer-events:auto;width:60px}.volume-slider::-webkit-slider-thumb{appearance:none;background:var(--text-primary);cursor:pointer;border-radius:50%;width:8px;height:8px}.volume-slider::-moz-range-thumb{background:var(--text-primary);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px}@media (width<=768px){.music-player-wrapper{bottom:1.5rem;right:1.5rem}.maximized-card{width:calc(100vw - 3rem);max-width:320px}}@media (width<=480px){.music-player-wrapper{bottom:1rem;right:1rem}}.unmute-badge{-webkit-backdrop-filter:blur(12px);color:var(--text-primary);font-family:var(--font-sora);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:pointer;z-index:100;background:#121212d9;border:1px solid #ffffff26;border-radius:100px;outline:none;align-items:center;gap:6px;padding:.45rem .9rem;font-size:.65rem;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s,border-color .2s,box-shadow .2s;animation:1.8s ease-in-out infinite alternate pulse-badge;display:flex;position:absolute;top:-2.6rem;left:50%;transform:translate(-50%);box-shadow:0 4px 15px #00000080}.unmute-badge:hover{background:#ffffff14;border-color:#ffffff59;animation-play-state:paused;transform:translate(-50%)scale(1.04);box-shadow:0 8px 24px #0009,0 0 12px #ffffff1a}.unmute-svg{vertical-align:middle;color:var(--text-primary);flex-shrink:0;transition:transform .2s;display:inline-block}.unmute-badge:hover .unmute-svg{transform:scale(1.1)}@keyframes pulse-badge{0%{border-color:#ffffff1f;box-shadow:0 4px 12px #00000080,0 0 #fff0}to{border-color:#ffffff4d;box-shadow:0 6px 16px #0009,0 0 8px #ffffff26}}.yt-music-tag{font-family:var(--font-sora);letter-spacing:.08em;color:#ffffff73;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:.68rem;font-weight:700;transition:all .3s;display:inline-flex}.yt-music-tag:hover{color:#ffffffd9;background:#ffffff14;border-color:#fff3}.header-player{-webkit-backdrop-filter:blur(8px);z-index:100;background:#ffffff08;border:1px solid #ffffff1a;border-radius:100px;align-items:center;gap:8px;height:36px;margin-left:1.5rem;padding:4px 12px 4px 6px;transition:border-color .3s,background .3s;display:flex}.header-player:hover{background:#ffffff0d;border-color:#fff3}.hp-play-btn{cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:transform .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.hp-play-btn:hover{border-color:#ffffff4d;transform:scale(1.08)}.hp-btn-cover{object-fit:cover;border-radius:50%;width:100%;height:100%;transition:transform .3s}.hp-play-overlay{color:#fff;opacity:1;z-index:2;background:#00000059;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;transition:background .2s;display:flex;position:absolute;top:0;left:0}.hp-play-btn:hover .hp-play-overlay{background:#0000008c}.hp-track-info{cursor:pointer;flex-direction:column;max-width:90px;display:flex}.hp-track-title{font-family:var(--font-sora);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:600;line-height:1.1;overflow:hidden}.hp-track-artist{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;line-height:1;overflow:hidden}.hp-visualizer{align-items:flex-end;gap:2px;height:10px;margin:0 2px;display:flex}.hp-bar{background:#ffffff4d;border-radius:1px;width:2px;height:2px}.hp-bar.active{background:var(--text-primary)}.hp-bar.active:first-child{animation:.7s ease-in-out infinite alternate hp-dance}.hp-bar.active:nth-child(2){animation:.4s ease-in-out .1s infinite alternate hp-dance}.hp-bar.active:nth-child(3){animation:.6s ease-in-out .2s infinite alternate hp-dance}.hp-bar.active:nth-child(4){animation:.5s ease-in-out 50ms infinite alternate hp-dance}@keyframes hp-dance{0%{height:2px}to{height:10px}}.hp-next-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s;display:flex}.hp-next-btn:hover{color:var(--text-primary);background:#ffffff0d}.hp-yt-music-tag{font-family:var(--font-sora);letter-spacing:.05em;color:#ffffff73;text-transform:uppercase;cursor:default;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:6px;flex-shrink:0;align-items:center;gap:4px;padding:3px 8px;font-size:.65rem;font-weight:700;transition:all .3s;display:inline-flex}.hp-yt-music-tag:hover{color:#ffffffd9;background:#ffffff14;border-color:#fff3}@media (width<=768px){.header-player{margin-left:1rem}}@media (width<=480px){.header-player{gap:5px;height:34px;margin-left:.5rem;padding:4px 8px 4px 6px}.hp-track-info{max-width:85px}.hp-yt-music-tag{border-radius:4px;gap:3px;padding:2px 5px;font-size:.58rem}.hp-yt-music-tag svg{width:10px!important;height:10px!important}.hp-visualizer{display:none}}
