
#isu-top-button{
    position:fixed;
    z-index:999999;
    width:var(--isu-size);
    height:var(--isu-size);
    min-width:var(--isu-size);
    min-height:var(--isu-size);
    max-width:var(--isu-size);
    max-height:var(--isu-size);
    aspect-ratio:1/1;
    box-sizing:border-box;
    right:auto;left:auto;top:auto;bottom:auto;
    right:var(--isu-right);
    bottom:var(--isu-bottom);
    border:1px solid rgba(242,214,117,.8);
    border-radius:50%;
    padding:var(--isu-icon-padding);
    margin:0;
    background:#090909;
    color:#F2D675;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(18px) scale(.9);
    transition:opacity .28s ease, visibility .28s ease, transform .28s ease, box-shadow .28s ease;
    box-shadow:0 10px 28px rgba(0,0,0,.24), inset 0 0 0 1px rgba(255,255,255,.04);
    overflow:hidden;
    line-height:1;
    font-family:inherit;
}
#isu-top-button.isu-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0) scale(1);
}
#isu-top-button:hover{
    box-shadow:0 14px 34px rgba(0,0,0,.30),0 0 0 5px rgba(242,214,117,.08);
}
.isu-top-inner{
    width:78%;
    height:78%;
    aspect-ratio:1/1;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    overflow:hidden;
}
.isu-top-image{
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    object-fit:contain;
    object-position:center;
}
.isu-top-emoji{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    font-size:calc(var(--isu-size) * .42);
    line-height:1;
    transform-origin:center;
}
.isu-hide-mobile{display:none!important;}
.isu-hide-desktop{display:none!important;}
.isu-pos-top-left{top:var(--isu-top);left:var(--isu-left);}
.isu-pos-top-right{top:var(--isu-top);right:var(--isu-right);}
.isu-pos-bottom-left{bottom:var(--isu-bottom);left:var(--isu-left);}
.isu-pos-bottom-right{bottom:var(--isu-bottom);right:var(--isu-right);}
.isu-pos-middle-left{top:50%;left:var(--isu-left);transform:translateY(-50%) scale(.9);}
.isu-pos-middle-right{top:50%;right:var(--isu-right);transform:translateY(-50%) scale(.9);}
.isu-pos-bottom-center{bottom:var(--isu-bottom);left:50%;transform:translateX(-50%) scale(.9);}
.isu-pos-top-center{top:var(--isu-top);left:50%;transform:translateX(-50%) scale(.9);}
#isu-top-button.isu-visible.isu-pos-middle-left,#isu-top-button.isu-visible.isu-pos-middle-right{transform:translateY(-50%) scale(1);}
#isu-top-button.isu-visible.isu-pos-bottom-center,#isu-top-button.isu-visible.isu-pos-top-center{transform:translateX(-50%) scale(1);}
@media (max-width:767px){
    #isu-top-button{ }
    .isu-hide-mobile{display:none!important;}
}
@media (min-width:768px){
    .isu-hide-desktop{display:none!important;}
}

/* 20 lightweight animations */
.isu-anim-01 .isu-top-inner,.isu-anim-01 .isu-top-emoji{animation:isuFloat 2.2s ease-in-out infinite;}
.isu-anim-02 .isu-top-inner{animation:isuPulse 1.8s ease-in-out infinite;}
.isu-anim-03 .isu-top-inner{animation:isuSpin 4s linear infinite;}
.isu-anim-04 .isu-top-inner{animation:isuSwing 1.6s ease-in-out infinite;}
.isu-anim-05 .isu-top-inner{animation:isuBounce 1.8s ease-in-out infinite;}
.isu-anim-06 .isu-top-inner{animation:isuWobble 2s ease-in-out infinite;}
.isu-anim-07 .isu-top-inner{animation:isuZoom 1.9s ease-in-out infinite;}
.isu-anim-08 .isu-top-inner{animation:isuRock 2.2s ease-in-out infinite;}
.isu-anim-09 .isu-top-inner{animation:isuBreath 2.5s ease-in-out infinite;}
.isu-anim-10 .isu-top-inner{animation:isuJelly 2.1s ease-in-out infinite;}
.isu-anim-11 .isu-top-inner{animation:isuTilt 1.7s ease-in-out infinite;}
.isu-anim-12 .isu-top-inner{animation:isuWave 2s ease-in-out infinite;}
.isu-anim-13 .isu-top-inner{animation:isuFlip 3s ease-in-out infinite;}
.isu-anim-14 .isu-top-inner{animation:isuDrift 2.8s ease-in-out infinite;}
.isu-anim-15 .isu-top-inner{animation:isuShake 2.4s ease-in-out infinite;}
.isu-anim-16 .isu-top-inner{animation:isuPop 2s ease-in-out infinite;}
.isu-anim-17 .isu-top-inner{animation:isuOrbit 3.2s ease-in-out infinite;}
.isu-anim-18 .isu-top-inner{animation:isuHeartbeat 1.8s ease-in-out infinite;}
.isu-anim-19 .isu-top-inner{animation:isuSlide 2.4s ease-in-out infinite;}
.isu-anim-20 .isu-top-inner{animation:isuGlow 2s ease-in-out infinite;}

@keyframes isuFloat{50%{transform:translateY(-4px)}}
@keyframes isuPulse{50%{transform:scale(1.08)}}
@keyframes isuSpin{to{transform:rotate(360deg)}}
@keyframes isuSwing{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes isuBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes isuWobble{0%,100%{transform:rotate(0)}25%{transform:rotate(-7deg)}75%{transform:rotate(7deg)}}
@keyframes isuZoom{50%{transform:scale(1.12)}}
@keyframes isuRock{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes isuBreath{50%{transform:scale(.93)}}
@keyframes isuJelly{0%,100%{transform:scale(1,1)}35%{transform:scale(.9,1.1)}65%{transform:scale(1.1,.9)}}
@keyframes isuTilt{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
@keyframes isuWave{50%{transform:translateX(5px) rotate(3deg)}}
@keyframes isuFlip{50%{transform:rotateY(180deg)}}
@keyframes isuDrift{50%{transform:translate(5px,-4px)}}
@keyframes isuShake{20%,60%{transform:translateX(-3px)}40%,80%{transform:translateX(3px)}}
@keyframes isuPop{50%{transform:scale(1.15)}}
@keyframes isuOrbit{50%{transform:translate(5px,-5px) rotate(8deg)}}
@keyframes isuHeartbeat{20%,60%{transform:scale(1.1)}40%,80%{transform:scale(1)}}
@keyframes isuSlide{50%{transform:translateX(6px)}}
@keyframes isuGlow{50%{filter:drop-shadow(0 0 7px rgba(242,214,117,.65))}}
@media (prefers-reduced-motion:reduce){
    #isu-top-button,.isu-top-inner,.isu-top-emoji{animation:none!important;transition:none!important;}
}


/* ==========================================================
   v5.0 — 10 SHADOW EFFECTS
========================================================== */
#isu-top-button.isu-shadow-off{box-shadow:none!important}
#isu-top-button.isu-shadow-01{box-shadow:0 7px 18px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-02{box-shadow:0 10px 24px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-03{box-shadow:0 15px 32px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-04{box-shadow:0 2px 28px 8px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-05{box-shadow:0 0 18px var(--isu-shadow-color),0 0 32px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-06{box-shadow:0 5px 0 var(--isu-shadow-color),0 13px 22px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-07{box-shadow:8px 12px 0 var(--isu-shadow-color),14px 20px 26px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-08{box-shadow:0 0 0 6px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-09{box-shadow:0 0 0 5px var(--isu-shadow-color),0 10px 28px var(--isu-shadow-color)}
#isu-top-button.isu-shadow-10{box-shadow:0 8px 18px var(--isu-shadow-color),0 0 0 1px var(--isu-shadow-color),inset 0 0 16px rgba(255,255,255,.08)}
