/*
 * Package 114H replacement for 114E fireworks/hover file
 * Direct upload only.
 *
 * Fixes:
 * - visible circular mouseover animation from icon
 * - keeps fireworks on click
 */

.so114b-member-subnav a{
    position:relative!important;
    overflow:visible!important;
    isolation:isolate!important;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, filter .18s ease!important;
}

.so114b-member-subnav a:hover,
.so114b-member-subnav a:focus{
    transform:translateY(-2px) scale(1.025)!important;
    filter:saturate(1.07)!important;
}

.so114b-member-subnav a .so114b-icon{
    position:relative!important;
    z-index:2!important;
    overflow:visible!important;
    transform-origin:center!important;
}

/* This is the circular mouseover element that was missing */
.so114b-member-subnav a .so114b-icon .so114h-hover-ring{
    position:absolute;
    left:50%;
    top:50%;
    width:36px;
    height:36px;
    border-radius:999px;
    transform:translate(-50%,-50%) scale(.35);
    opacity:0;
    pointer-events:none;
    z-index:-1;
    background:
        radial-gradient(circle,rgba(255,255,255,.95) 0 14%,rgba(243,50,134,.28) 15% 42%,rgba(107,124,255,.18) 43% 70%,transparent 71%);
    box-shadow:0 0 0 0 rgba(243,50,134,.24),0 0 18px rgba(107,124,255,.16);
}

.so114b-member-subnav a:hover .so114b-icon .so114h-hover-ring,
.so114b-member-subnav a:focus .so114b-icon .so114h-hover-ring{
    animation:so114h-icon-ripple .76s ease-out both;
}

.so114b-member-subnav a:hover .so114b-icon,
.so114b-member-subnav a:focus .so114b-icon{
    animation:so114h-icon-lift .42s ease-out both;
}

@keyframes so114h-icon-ripple{
    0%{opacity:0; transform:translate(-50%,-50%) scale(.35); box-shadow:0 0 0 0 rgba(243,50,134,.30),0 0 12px rgba(107,124,255,.12)}
    26%{opacity:1}
    100%{opacity:0; transform:translate(-50%,-50%) scale(2.05); box-shadow:0 0 0 12px rgba(243,50,134,0),0 0 26px rgba(107,124,255,0)}
}

@keyframes so114h-icon-lift{
    0%{transform:translateY(0) scale(1)}
    45%{transform:translateY(-1px) scale(1.14)}
    100%{transform:translateY(0) scale(1)}
}

/* Click feedback */
.so114b-member-subnav a.so114e-firework-click{
    animation:so114e-button-pop .46s cubic-bezier(.2,.9,.18,1) both!important;
}

.so114b-member-subnav a.so114e-firework-click .so114b-icon{
    animation:so114e-icon-kick .52s cubic-bezier(.2,.9,.18,1) both!important;
}

/* Fireworks particles */
.so114e-firework-spark{
    position:fixed;
    left:0;
    top:0;
    width:8px;
    height:8px;
    border-radius:999px;
    pointer-events:none;
    z-index:100000;
    opacity:0;
    transform:translate(-50%,-50%) scale(.18);
    background:var(--so114e-color,#f33286);
    box-shadow:0 0 10px var(--so114e-color,#f33286),0 0 20px rgba(255,255,255,.55);
    animation:so114e-firework-flight .86s cubic-bezier(.13,.86,.18,1) forwards;
}

.so114e-firework-spark.so114e-star{
    width:10px;
    height:10px;
    border-radius:3px;
    transform:translate(-50%,-50%) scale(.18) rotate(45deg);
}

.so114e-firework-spark.so114e-dot-small{
    width:5px;
    height:5px;
}

.so114e-firework-ring{
    position:fixed;
    left:0;
    top:0;
    width:20px;
    height:20px;
    border-radius:999px;
    pointer-events:none;
    z-index:99999;
    transform:translate(-50%,-50%) scale(.3);
    border:2px solid rgba(243,50,134,.55);
    box-shadow:0 0 0 8px rgba(107,124,255,.08),0 0 20px rgba(243,50,134,.22);
    animation:so114e-ring-pop .78s ease-out forwards;
}

.so114e-firework-flash{
    position:fixed;
    left:0;
    top:0;
    width:32px;
    height:32px;
    border-radius:999px;
    pointer-events:none;
    z-index:99998;
    transform:translate(-50%,-50%) scale(.25);
    background:radial-gradient(circle,rgba(255,255,255,.95),rgba(255,227,242,.45) 35%,transparent 70%);
    animation:so114e-flash .42s ease-out forwards;
}

@keyframes so114e-button-pop{
    0%{transform:translateY(-2px) scale(1.025)}
    38%{transform:translateY(-3px) scale(1.115)}
    100%{transform:translateY(-2px) scale(1.025)}
}

@keyframes so114e-icon-kick{
    0%{transform:rotate(0deg) scale(1)}
    32%{transform:rotate(-14deg) scale(1.26)}
    68%{transform:rotate(9deg) scale(1.08)}
    100%{transform:rotate(0deg) scale(1)}
}

@keyframes so114e-firework-flight{
    0%{opacity:0; transform:translate(-50%,-50%) scale(.18) rotate(0deg)}
    10%{opacity:1}
    70%{opacity:1}
    100%{opacity:0; transform:translate(calc(-50% + var(--so114e-x,0px)),calc(-50% + var(--so114e-y,0px))) scale(var(--so114e-scale,.9)) rotate(var(--so114e-rot,0deg))}
}

@keyframes so114e-ring-pop{
    0%{opacity:0; transform:translate(-50%,-50%) scale(.3)}
    18%{opacity:1}
    100%{opacity:0; transform:translate(-50%,-50%) scale(3.15)}
}

@keyframes so114e-flash{
    0%{opacity:0; transform:translate(-50%,-50%) scale(.25)}
    28%{opacity:1}
    100%{opacity:0; transform:translate(-50%,-50%) scale(2.2)}
}

@media (prefers-reduced-motion:reduce){
    .so114e-firework-spark,
    .so114e-firework-ring,
    .so114e-firework-flash,
    .so114b-member-subnav a.so114e-firework-click,
    .so114b-member-subnav a.so114e-firework-click .so114b-icon{
        animation:none!important;
    }

    .so114e-firework-spark,
    .so114e-firework-ring,
    .so114e-firework-flash{
        display:none!important;
    }
}
