/*!
  ========= INFORMATION ============================
  - document:  Float Menu Pro
  - brand:     Wow-Company
  - brand-url: https://wow-company.com/
  - store-url: https://wow-estore.com/
  - author:    Dmytro Lobov
  - url:       https://wow-estore.com/item/float-menu-pro/
  ====================================================== */

.floating-menu {
    --fm-z-index: 9999;
    --fm-offset: 0;
    --fm-color: #e86e2c;
    --fm-hover-color: #fff;
    --fm-border-radius: 0;
    --fm-icon-size: 24;
    --fm-icon-box: calc(var(--fm-icon-size)*2);
    --fm-icon-radius: 0;
    --fm-label-radius: 0;
    --fm-text-radius: 0;
    box-sizing: border-box;
    pointer-events: none;
    position: fixed;
    visibility: hidden;
    z-index: var(--fm-z-index)
}

.floating-menu.-left {
    left: var(--fm-offset)
}

.floating-menu.-right {
    right: var(--fm-offset)
}

.floating-menu.-top {
    top: var(--fm-offset)
}

.floating-menu.-bottom {
    bottom: var(--fm-offset)
}

.floating-menu.-center {
    top: 50%
}

.floating-menu.-round {
    --fm-border-radius: calc(var(--fm-icon-box)/2*1px);
    --fm-icon-radius: var(--fm-border-radius);
    --fm-label-radius: var(--fm-border-radius);
    --fm-text-radius: 5px
}

.floating-menu.-rounded {
    --_radius: 5px;
    --fm-border-radius: var(--_radius);
    --fm-icon-radius: var(--fm-border-radius);
    --fm-label-radius: var(--fm-border-radius);
    --fm-text-radius: 5px
}

.floating-menu.-rounded-out {
    --_radius: 5px;
    --fm-border-radius: 0 var(--_radius) var(--_radius) 0;
    --fm-icon-radius: var(--fm-border-radius);
    --fm-label-radius: var(--_radius);
    --fm-text-radius: 5px
}

.floating-menu.-right.-rounded-out {
    --fm-border-radius: var(--_radius) 0 0 var(--_radius)
}

.floating-menu.-side-space {
    --fm-offset: 2px
}

@media print {
    .floating-menu {
        display: none
    }
}

.floating-menu * {
    box-sizing: border-box
}

.floating-menu.fm-ready {
    pointer-events: auto;
    visibility: visible
}

.floating-menu.fm-hidden {
    display: none
}

.floating-menu {
    --fm-button-space: 0
}

.floating-menu.-button-space {
    --fm-button-space: 2
}

.floating-menu ul.fm-bar {
    display: flex;
    flex-direction: column;
    gap: calc(var(--fm-button-space)*1px);
    list-style: none;
    margin: 0;
    padding: 0
}

.floating-menu .fm-item {
    --item_width: calc(var(--fm-icon-box)*1px);
    border-radius: var(--fm-border-radius);
    position: relative
}

.floating-menu .fm-item.-hidden {
    visibility: hidden
}

.floating-menu {
    --fm-background: #1b094f;
    --fm-hover-background: #e86e2c;
    --fm-link-duration: 400;
    --fm-link-transition-duration: calc(var(--fm-link-duration)*1ms);
    --fm-link-function: cubic-bezier(0.25, 1, 0.5, 1);
    --fm-link-width: calc(var(--fm-icon-box)*1px);
    --_width: 0;
    --fm-margin-inline: 0 var(--fm-link-width)
}

.floating-menu.-label-connect a.fm-link.-active .fm-label,
.floating-menu.-label-connect a.fm-link:focus-visible .fm-label,
.floating-menu.-label-connect a.fm-link:hover .fm-label,
.floating-menu.-label-connect form.fm-link.-active .fm-label,
.floating-menu.-label-connect form.fm-link:focus-visible .fm-label,
.floating-menu.-label-connect form.fm-link:hover .fm-label {
    padding-inline: 100% 12px
}

.floating-menu.-label-connect.-right a.fm-link.-active .fm-label,
.floating-menu.-label-connect.-right a.fm-link:focus-visible .fm-label,
.floating-menu.-label-connect.-right a.fm-link:hover .fm-label,
.floating-menu.-label-connect.-right form.fm-link.-active .fm-label,
.floating-menu.-label-connect.-right form.fm-link:focus-visible .fm-label,
.floating-menu.-label-connect.-right form.fm-link:hover .fm-label {
    padding-inline: 12px 100%
}

.floating-menu.-label-connect.-right a.fm-link.-active+.fm-extra-text,
.floating-menu.-label-connect.-right a.fm-link:focus-visible+.fm-extra-text,
.floating-menu.-label-connect.-right a.fm-link:hover+.fm-extra-text,
.floating-menu.-label-connect.-right form.fm-link.-active+.fm-extra-text,
.floating-menu.-label-connect.-right form.fm-link:focus-visible+.fm-extra-text,
.floating-menu.-label-connect.-right form.fm-link:hover+.fm-extra-text {
    left: unset;
    right: 100%
}

.floating-menu.-right a.fm-link,
.floating-menu.-right form.fm-link {
    --link-transforn: calc(-100% + var(--fm-link-width));
    flex-direction: row-reverse;
    transform: translateX(var(--link-transforn))
}

.floating-menu.-right a.fm-link .fm-label,
.floating-menu.-right form.fm-link .fm-label {
    left: 0;
    right: auto
}

.floating-menu.-right a.fm-link .fm-label.fm-empty-icon,
.floating-menu.-right form.fm-link .fm-label.fm-empty-icon {
    background-color: var(--fm-background);
    color: var(--fm-color);
    left: calc(var(--fm-link-width) + 12px);
    right: unset !important;
    z-index: 2
}

.floating-menu.-right a.fm-link .fm-label.fm-empty-icon:hover,
.floating-menu.-right form.fm-link .fm-label.fm-empty-icon:hover {
    background-color: var(--fm-hover-background);
    color: var(--fm-hover-color)
}

.floating-menu.-right a.fm-link.-slide-out .fm-label,
.floating-menu.-right a.fm-link.-slide-out-fade .fm-label,
.floating-menu.-right form.fm-link.-slide-out .fm-label,
.floating-menu.-right form.fm-link.-slide-out-fade .fm-label {
    transform: translateX(100%)
}

.floating-menu.-right a.fm-link.-slide-in,
.floating-menu.-right form.fm-link.-slide-in {
    --fm-margin-inline: var(--fm-link-width) 0
}

.floating-menu.-right a.fm-link.-slide-in .fm-label,
.floating-menu.-right form.fm-link.-slide-in .fm-label {
    --_translate: calc(var(--fm-link-width)*-1);
    transform: translateX(var(--_translate))
}

.floating-menu.-right a.fm-link.-slide-in-in,
.floating-menu.-right a.fm-link.-slide-out-out,
.floating-menu.-right form.fm-link.-slide-in-in,
.floating-menu.-right form.fm-link.-slide-out-out {
    --fm-margin-inline: var(--fm-link-width) 0
}

.floating-menu a.fm-link,
.floating-menu form.fm-link {
    align-items: center;
    border-radius: var(--fm-border-radius);
    cursor: pointer;
    display: flex;
    margin: 0;
    max-width: none;
    outline: none;
    overflow: hidden;
    padding: 0;
    position: relative;
    text-decoration: none;
    width: var(--fm-link-width);
    z-index: 3
}

.floating-menu a.fm-link.-label-hidden .fm-label,
.floating-menu form.fm-link.-label-hidden .fm-label {
    display: none
}

.floating-menu a.fm-link .fm-label,
.floating-menu form.fm-link .fm-label {
    position: absolute;
    right: 0;
    top: 0
}

.floating-menu a.fm-link.-active,
.floating-menu a.fm-link:focus-visible,
.floating-menu a.fm-link:hover,
.floating-menu form.fm-link.-active,
.floating-menu form.fm-link:focus-visible,
.floating-menu form.fm-link:hover {
    width: calc(100% + var(--_width)*1px)
}

.floating-menu a.fm-link.-active .fm-icon,
.floating-menu a.fm-link.-active .fm-label,
.floating-menu a.fm-link:focus-visible .fm-icon,
.floating-menu a.fm-link:focus-visible .fm-label,
.floating-menu a.fm-link:hover .fm-icon,
.floating-menu a.fm-link:hover .fm-label,
.floating-menu form.fm-link.-active .fm-icon,
.floating-menu form.fm-link.-active .fm-label,
.floating-menu form.fm-link:focus-visible .fm-icon,
.floating-menu form.fm-link:focus-visible .fm-label,
.floating-menu form.fm-link:hover .fm-icon,
.floating-menu form.fm-link:hover .fm-label {
    background-color: var(--fm-hover-background);
    color: var(--fm-hover-color)
}

.floating-menu a.fm-link.-active .fm-label,
.floating-menu a.fm-link:focus-visible .fm-label,
.floating-menu a.fm-link:hover .fm-label,
.floating-menu form.fm-link.-active .fm-label,
.floating-menu form.fm-link:focus-visible .fm-label,
.floating-menu form.fm-link:hover .fm-label {
    opacity: 1
}

.floating-menu a.fm-link.-active .fm-label.fm-empty-icon,
.floating-menu a.fm-link:focus-visible .fm-label.fm-empty-icon,
.floating-menu a.fm-link:hover .fm-label.fm-empty-icon,
.floating-menu form.fm-link.-active .fm-label.fm-empty-icon,
.floating-menu form.fm-link:focus-visible .fm-label.fm-empty-icon,
.floating-menu form.fm-link:hover .fm-label.fm-empty-icon {
    background-color: var(--fm-background);
    color: var(--fm-color);
    right: calc(var(--fm-link-width)*2 - 12px);
    z-index: 2
}

.floating-menu a.fm-link.-active .fm-label.fm-empty-icon:hover,
.floating-menu a.fm-link:focus-visible .fm-label.fm-empty-icon:hover,
.floating-menu a.fm-link:hover .fm-label.fm-empty-icon:hover,
.floating-menu form.fm-link.-active .fm-label.fm-empty-icon:hover,
.floating-menu form.fm-link:focus-visible .fm-label.fm-empty-icon:hover,
.floating-menu form.fm-link:hover .fm-label.fm-empty-icon:hover {
    background-color: var(--fm-hover-background);
    color: var(--fm-hover-color)
}

.floating-menu a.fm-link.-active .fm-icon img,
.floating-menu a.fm-link.-active .fm-icon span,
.floating-menu a.fm-link:focus-visible .fm-icon img,
.floating-menu a.fm-link:focus-visible .fm-icon span,
.floating-menu a.fm-link:hover .fm-icon img,
.floating-menu a.fm-link:hover .fm-icon span,
.floating-menu form.fm-link.-active .fm-icon img,
.floating-menu form.fm-link.-active .fm-icon span,
.floating-menu form.fm-link:focus-visible .fm-icon img,
.floating-menu form.fm-link:focus-visible .fm-icon span,
.floating-menu form.fm-link:hover .fm-icon img,
.floating-menu form.fm-link:hover .fm-icon span {
    animation-play-state: paused;
    animation: none
}

.floating-menu a.fm-link.-active+.fm-extra-text,
.floating-menu a.fm-link:focus-visible+.fm-extra-text,
.floating-menu a.fm-link:hover+.fm-extra-text,
.floating-menu form.fm-link.-active+.fm-extra-text,
.floating-menu form.fm-link:focus-visible+.fm-extra-text,
.floating-menu form.fm-link:hover+.fm-extra-text {
    background-color: var(--fm-hover-background);
    color: var(--fm-hover-color);
    left: 100%;
    opacity: 1;
    top: 0;
    visibility: visible
}

.floating-menu a.fm-link.-fade,
.floating-menu a.fm-link.-slide-in,
.floating-menu a.fm-link.-slide-in-in,
.floating-menu a.fm-link.-slide-out,
.floating-menu a.fm-link.-slide-out-fade,
.floating-menu a.fm-link.-slide-out-out,
.floating-menu form.fm-link.-fade,
.floating-menu form.fm-link.-slide-in,
.floating-menu form.fm-link.-slide-in-in,
.floating-menu form.fm-link.-slide-out,
.floating-menu form.fm-link.-slide-out-fade,
.floating-menu form.fm-link.-slide-out-out {
    transition: width 0s ease var(--fm-link-transition-duration)
}

.floating-menu a.fm-link.-fade.-active,
.floating-menu a.fm-link.-fade:focus-visible,
.floating-menu a.fm-link.-fade:hover,
.floating-menu a.fm-link.-slide-in-in.-active,
.floating-menu a.fm-link.-slide-in-in:focus-visible,
.floating-menu a.fm-link.-slide-in-in:hover,
.floating-menu a.fm-link.-slide-in.-active,
.floating-menu a.fm-link.-slide-in:focus-visible,
.floating-menu a.fm-link.-slide-in:hover,
.floating-menu a.fm-link.-slide-out-fade.-active,
.floating-menu a.fm-link.-slide-out-fade:focus-visible,
.floating-menu a.fm-link.-slide-out-fade:hover,
.floating-menu a.fm-link.-slide-out-out.-active,
.floating-menu a.fm-link.-slide-out-out:focus-visible,
.floating-menu a.fm-link.-slide-out-out:hover,
.floating-menu a.fm-link.-slide-out.-active,
.floating-menu a.fm-link.-slide-out:focus-visible,
.floating-menu a.fm-link.-slide-out:hover,
.floating-menu form.fm-link.-fade.-active,
.floating-menu form.fm-link.-fade:focus-visible,
.floating-menu form.fm-link.-fade:hover,
.floating-menu form.fm-link.-slide-in-in.-active,
.floating-menu form.fm-link.-slide-in-in:focus-visible,
.floating-menu form.fm-link.-slide-in-in:hover,
.floating-menu form.fm-link.-slide-in.-active,
.floating-menu form.fm-link.-slide-in:focus-visible,
.floating-menu form.fm-link.-slide-in:hover,
.floating-menu form.fm-link.-slide-out-fade.-active,
.floating-menu form.fm-link.-slide-out-fade:focus-visible,
.floating-menu form.fm-link.-slide-out-fade:hover,
.floating-menu form.fm-link.-slide-out-out.-active,
.floating-menu form.fm-link.-slide-out-out:focus-visible,
.floating-menu form.fm-link.-slide-out-out:hover,
.floating-menu form.fm-link.-slide-out.-active,
.floating-menu form.fm-link.-slide-out:focus-visible,
.floating-menu form.fm-link.-slide-out:hover {
    transition: width 0s ease
}

.floating-menu a.fm-link.-fade .fm-label,
.floating-menu form.fm-link.-fade .fm-label {
    transition: opacity var(--fm-link-transition-duration) var(--fm-link-function)
}

.floating-menu a.fm-link.-slide-out .fm-label,
.floating-menu form.fm-link.-slide-out .fm-label {
    transform: translateX(-100%);
    transition-delay: var(--fm-link-transition-duration), 0s;
    transition-duration: 0s, var(--fm-link-transition-duration);
    transition-property: opacity, transform;
    transition-timing-function: var(--fm-link-function)
}

.floating-menu a.fm-link.-slide-out.-active .fm-label,
.floating-menu a.fm-link.-slide-out:focus-visible .fm-label,
.floating-menu a.fm-link.-slide-out:hover .fm-label,
.floating-menu form.fm-link.-slide-out.-active .fm-label,
.floating-menu form.fm-link.-slide-out:focus-visible .fm-label,
.floating-menu form.fm-link.-slide-out:hover .fm-label {
    transform: translateX(0);
    transition-delay: 0s, 0s
}

.floating-menu a.fm-link.-slide-out-fade .fm-label,
.floating-menu form.fm-link.-slide-out-fade .fm-label {
    transform: translateX(-100%);
    transition-duration: var(--fm-link-transition-duration);
    transition-property: opacity, transform;
    transition-timing-function: var(--fm-link-function)
}

.floating-menu a.fm-link.-slide-out-fade.-active .fm-label,
.floating-menu a.fm-link.-slide-out-fade:focus-visible .fm-label,
.floating-menu a.fm-link.-slide-out-fade:hover .fm-label,
.floating-menu form.fm-link.-slide-out-fade.-active .fm-label,
.floating-menu form.fm-link.-slide-out-fade:focus-visible .fm-label,
.floating-menu form.fm-link.-slide-out-fade:hover .fm-label {
    transform: translateX(0)
}

.floating-menu a.fm-link.-slide-in.-active,
.floating-menu a.fm-link.-slide-in:focus-visible,
.floating-menu a.fm-link.-slide-in:hover,
.floating-menu form.fm-link.-slide-in.-active,
.floating-menu form.fm-link.-slide-in:focus-visible,
.floating-menu form.fm-link.-slide-in:hover {
    width: calc(100% + var(--_width)*1px + var(--fm-link-width))
}

.floating-menu a.fm-link.-slide-in .fm-label,
.floating-menu form.fm-link.-slide-in .fm-label {
    margin-inline: var(--fm-margin-inline);
    transform: translateX(var(--fm-link-width));
    transition-duration: var(--fm-link-transition-duration);
    transition-property: transform, opacity;
    transition-timing-function: var(--fm-link-function)
}

.floating-menu a.fm-link.-slide-in.-active .fm-label,
.floating-menu a.fm-link.-slide-in:focus-visible .fm-label,
.floating-menu a.fm-link.-slide-in:hover .fm-label,
.floating-menu form.fm-link.-slide-in.-active .fm-label,
.floating-menu form.fm-link.-slide-in:focus-visible .fm-label,
.floating-menu form.fm-link.-slide-in:hover .fm-label {
    transform: translateX(0);
    transition-duration: var(--fm-link-transition-duration);
    transition-property: transform, opacity;
    transition-timing-function: var(--fm-link-function)
}

.floating-menu a.fm-link.-slide-out-out.-active,
.floating-menu a.fm-link.-slide-out-out:focus-visible,
.floating-menu a.fm-link.-slide-out-out:hover,
.floating-menu form.fm-link.-slide-out-out.-active,
.floating-menu form.fm-link.-slide-out-out:focus-visible,
.floating-menu form.fm-link.-slide-out-out:hover {
    width: calc(100% + var(--_width)*1px + var(--fm-link-width))
}

.floating-menu a.fm-link.-slide-out-out .fm-label,
.floating-menu form.fm-link.-slide-out-out .fm-label {
    animation: fmSlideOutFirst var(--fm-link-transition-duration) var(--fm-link-function) forwards;
    margin-inline: var(--fm-margin-inline)
}

.floating-menu a.fm-link.-slide-out-out.-active .fm-label,
.floating-menu a.fm-link.-slide-out-out:focus-visible .fm-label,
.floating-menu a.fm-link.-slide-out-out:hover .fm-label,
.floating-menu form.fm-link.-slide-out-out.-active .fm-label,
.floating-menu form.fm-link.-slide-out-out:focus-visible .fm-label,
.floating-menu form.fm-link.-slide-out-out:hover .fm-label {
    animation: fmSlideOutSecond var(--fm-link-transition-duration) var(--fm-link-function) forwards
}

.floating-menu a.fm-link.-slide-in-in.-active,
.floating-menu a.fm-link.-slide-in-in:focus-visible,
.floating-menu a.fm-link.-slide-in-in:hover,
.floating-menu form.fm-link.-slide-in-in.-active,
.floating-menu form.fm-link.-slide-in-in:focus-visible,
.floating-menu form.fm-link.-slide-in-in:hover {
    width: calc(100% + var(--_width)*1px + var(--fm-link-width))
}

.floating-menu a.fm-link.-slide-in-in .fm-label,
.floating-menu form.fm-link.-slide-in-in .fm-label {
    animation: fmSlideInFirst var(--fm-link-transition-duration) var(--fm-link-function) forwards;
    margin-inline: var(--fm-margin-inline)
}

.floating-menu a.fm-link.-slide-in-in.-active .fm-label,
.floating-menu a.fm-link.-slide-in-in:focus-visible .fm-label,
.floating-menu a.fm-link.-slide-in-in:hover .fm-label,
.floating-menu form.fm-link.-slide-in-in.-active .fm-label,
.floating-menu form.fm-link.-slide-in-in:focus-visible .fm-label,
.floating-menu form.fm-link.-slide-in-in:hover .fm-label {
    animation: fmSlideInSecond var(--fm-link-transition-duration) var(--fm-link-function) forwards
}

.floating-menu:hover a.fm-link.fm-hovering-hide:not(:hover) .fm-label {
    visibility: hidden
}

@keyframes fmSlideOutSecond {
    0% {
        opacity: 0;
        transform: translateX(-100%)
    }
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes fmSlideOutFirst {
    0% {
        opacity: 1;
        transform: translateX(0)
    }
    to {
        opacity: 0;
        transform: translateX(var(--fm-link-width))
    }
}

@keyframes fmSlideInSecond {
    0% {
        opacity: 0;
        transform: translateX(var(--fm-link-width))
    }
    to {
        opacity: 1;
        transform: translateX(0)
    }
}

@keyframes fmSlideInFirst {
    0% {
        opacity: 1;
        transform: translateX(0)
    }
    to {
        opacity: 0;
        transform: translateX(-100%)
    }
}

.floating-menu .fm-icon {
    --_flip: 1;
    --_rotate: 0;
    align-items: center;
    background-color: var(--fm-background);
    color: var(--fm-color);
    display: flex;
    font-size: calc(var(--fm-icon-size)*1px);
    justify-content: center;
    margin: 0;
    padding: 0;
    transform-origin: center;
    z-index: 1
}

.floating-menu .fm-icon,
.floating-menu .fm-icon.-full img {
    border-radius: var(--fm-icon-radius);
    height: calc(var(--fm-icon-box)*1px);
    width: calc(var(--fm-icon-box)*1px)
}

.floating-menu .fm-icon img {
    height: calc(var(--fm-icon-size)*1px);
    -o-object-fit: cover;
    object-fit: cover;
    width: calc(var(--fm-icon-size)*1px)
}

.floating-menu .fm-icon img,
.floating-menu .fm-icon span {
    rotate: calc(var(--_rotate)*1deg);
    scale: var(--_flip)
}

.floating-menu .fm-icon.-flip-horizontal {
    --_flip: -1 1
}

.floating-menu .fm-icon.-flip-vertical {
    --_flip: 1 -1
}

.floating-menu .fm-icon.-flip-both {
    --_flip: -1 -1
}

.floating-menu .fm-icon.-beat,
.floating-menu .fm-icon.-beat-fade,
.floating-menu .fm-icon.-bounce,
.floating-menu .fm-icon.-fade,
.floating-menu .fm-icon.-flip,
.floating-menu .fm-icon.-shake,
.floating-menu .fm-icon.-spin {
    --icon-delay: 0s;
    --icon-duration: 1s;
    --icon-count: infinite
}

.floating-menu .fm-icon.-beat img,
.floating-menu .fm-icon.-beat span,
.floating-menu .fm-icon.-beat-fade img,
.floating-menu .fm-icon.-beat-fade span,
.floating-menu .fm-icon.-bounce img,
.floating-menu .fm-icon.-bounce span,
.floating-menu .fm-icon.-fade img,
.floating-menu .fm-icon.-fade span,
.floating-menu .fm-icon.-flip img,
.floating-menu .fm-icon.-flip span,
.floating-menu .fm-icon.-shake img,
.floating-menu .fm-icon.-shake span,
.floating-menu .fm-icon.-spin img,
.floating-menu .fm-icon.-spin span {
    animation-delay: var(--icon-delay);
    animation-direction: normal;
    animation-duration: var(--icon-duration);
    animation-iteration-count: var(--icon-count)
}

.floating-menu .fm-icon.-beat img,
.floating-menu .fm-icon.-beat span {
    animation-name: wowp-icon-beat;
    animation-timing-function: ease-in-out
}

.floating-menu .fm-icon.-bounce img,
.floating-menu .fm-icon.-bounce span {
    animation-name: wowp-icon-bounce;
    animation-timing-function: cubic-bezier(.28, .84, .42, 1)
}

.floating-menu .fm-icon.-fade img,
.floating-menu .fm-icon.-fade span {
    animation-name: wowp-icon-fade;
    animation-timing-function: cubic-bezier(.4, 0, .6, 1)
}

.floating-menu .fm-icon.-beat-fade img,
.floating-menu .fm-icon.-beat-fade span {
    animation-name: wowp-icon-beat-fade;
    animation-timing-function: cubic-bezier(.4, 0, .6, 1)
}

.floating-menu .fm-icon.-flip img,
.floating-menu .fm-icon.-flip span {
    animation-name: wowp-icon-flip;
    animation-timing-function: ease-in-out
}

.floating-menu .fm-icon.-shake img,
.floating-menu .fm-icon.-shake span {
    animation-name: wowp-icon-shake;
    animation-timing-function: linear
}

.floating-menu .fm-icon.-spin img,
.floating-menu .fm-icon.-spin span {
    animation-name: wowp-icon-spin;
    animation-timing-function: linear
}

@keyframes wowp-icon-beat {
    0%,
    90% {
        transform: scale(1)
    }
    45% {
        transform: scale(1.25)
    }
}

@keyframes wowp-icon-bounce {
    0% {
        transform: scale(1) translateY(0)
    }
    10% {
        transform: scale(1.1, .9) translateY(0)
    }
    30% {
        transform: scale(.9, 1.1) translateY(-.25em)
    }
    50% {
        transform: scale(1.05, .95) translateY(0)
    }
    57% {
        transform: scale(1) translateY(-.125em)
    }
    64% {
        transform: scale(1) translateY(0)
    }
    to {
        transform: scale(1) translateY(0)
    }
}

@keyframes wowp-icon-fade {
    50% {
        opacity: .4
    }
}

@keyframes wowp-icon-beat-fade {
    0%,
    to {
        opacity: .4;
        transform: scale(1)
    }
    50% {
        opacity: 1;
        transform: scale(1.125)
    }
}

@keyframes wowp-icon-flip {
    50% {
        transform: rotateY(-180deg)
    }
}

@keyframes wowp-icon-shake {
    0% {
        transform: rotate(-15deg)
    }
    4% {
        transform: rotate(15deg)
    }
    24%,
    8% {
        transform: rotate(-18deg)
    }
    12%,
    28% {
        transform: rotate(18deg)
    }
    16% {
        transform: rotate(-22deg)
    }
    20% {
        transform: rotate(22deg)
    }
    32% {
        transform: rotate(-12deg)
    }
    36% {
        transform: rotate(12deg)
    }
    40%,
    to {
        transform: rotate(0deg)
    }
}

@keyframes wowp-icon-spin {
    0% {
        transform: rotate(0deg)
    }
    to {
        transform: rotate(1turn)
    }
}

.floating-menu {
    --fm-label-size: 15;
    --fm-label-font: inherit;
    --fm-label-font-style: normal;
    --fm-label-weight: normal
}

.floating-menu.fm-label-ready .fm-label {
    visibility: visible
}

.floating-menu .fm-label {
    align-items: center;
    background-color: var(--fm-background);
    border-radius: var(--fm-label-radius);
    color: var(--fm-color);
    display: flex;
    font-family: var(--fm-label-font);
    font-size: calc(var(--fm-label-size)*1px);
    font-style: var(--fm-label-font-style);
    font-weight: var(--fm-label-weight);
    height: calc(var(--fm-icon-box)*1px);
    opacity: 0;
    padding-inline: 12px;
    white-space: nowrap
}

.floating-menu {
    --fm-text_width: max-content;
    --fm-text_size: 16px
}

.floating-menu .fm-extra-text {
    --text_margin: 0;
    background-color: var(--fm-background);
    border-radius: var(--fm-text-radius);
    color: var(--fm-color);
    font-size: var(--fm-text_size);
    left: -9999px;
    margin-inline: calc(var(--text_margin)*1px);
    opacity: 0;
    padding: calc(var(--fm-icon-box)*1px + 5px) 12px 12px 12px;
    position: absolute;
    top: -9999px;
    transition: opacity var(--fm-link-transition-duration) var(--fm-link-function);
    visibility: hidden;
    width: var(--fm-text_width)
}

.floating-menu .fm-extra-text p {
    line-height: 1.125;
    margin: 0
}

.floating-menu .fm-extra-text p+p {
    margin-top: 12px
}

.floating-menu {
    --fm-sub-space: 0px;
    --fm-sub-box: calc(var(--fm-icon-box)*1px);
    --fm-sub-duration: 400;
    --fm-sub-transition-duration: calc(var(--fm-sub-duration)*1ms);
    --fm-sub-function: cubic-bezier(0.25, 1, 0.5, 1)
}

.floating-menu.-right .fm-has-sub.fm-sub-side.-active .fm-sub,
.floating-menu.-right .fm-has-sub.fm-sub-side:has(.fm-link:focus-within) .fm-sub {
    left: calc((var(--fm-sub-box) + var(--fm-sub-space))*-1);
    top: calc(var(--fm-sub-box) + var(--fm-sub-space))
}

.floating-menu.-right .fm-has-sub.fm-sub-side.-sub-slide .fm-sub {
    --_box: calc(var(--fm-icon-box)*1px + var(--fm-sub-space))
}

.floating-menu.-sub-space {
    --fm-sub-space: 2px
}

.floating-menu .fm-sub {
    left: -9999px;
    opacity: 0;
    position: absolute;
    top: -9999px;
    visibility: hidden;
    z-index: 9
}

.floating-menu .fm-sub:after {
    content: "";
    height: calc(100% + var(--fm-sub-space)*2);
    left: calc(var(--fm-sub-space)*-1);
    position: absolute;
    top: calc(var(--fm-sub-space)*-1);
    width: calc(100% + var(--fm-sub-space)*2)
}

.floating-menu .fm-has-sub {
    position: relative;
    width: var(--fm-sub-box)
}

.floating-menu .fm-has-sub>.fm-link.-label-hidden {
    z-index: 2
}

.floating-menu .fm-has-sub>.fm-link.-label-hidden .fm-label {
    visibility: hidden
}

.floating-menu .fm-has-sub.fm-sub-circular {
    --_offset: 0
}

.floating-menu .fm-has-sub.fm-sub-circular .fm-item {
    left: 0;
    position: absolute;
    top: 0
}

.floating-menu .fm-has-sub.fm-sub-circular .fm-item:has(.fm-link:focus-visible),
.floating-menu .fm-has-sub.fm-sub-circular .fm-item:hover {
    z-index: 9
}

.floating-menu .fm-has-sub.fm-sub-circular.-active {
    margin-bottom: calc(var(--_offset)*1px + var(--fm-sub-space))
}

.floating-menu .fm-has-sub.fm-sub-circular.-active:after {
    content: "";
    height: calc(var(--_box)*1px*2 + var(--fm-sub-box));
    position: absolute;
    top: calc(var(--_box)*1px*-1);
    width: calc(var(--_box)*1px + var(--fm-sub-box))
}

.floating-menu .fm-has-sub.fm-sub-circular.-active .fm-sub {
    left: 0;
    opacity: 1;
    top: 0;
    visibility: visible
}

.floating-menu .fm-has-sub.fm-sub-circular.-active .fm-item {
    --x: 0px;
    --y: 0px;
    transform: translate(var(--x), var(--y))
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-slide .fm-sub {
    --_box: 0
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-slide .fm-sub .fm-item {
    transition: transform var(--_duration) var(--_function)
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-linear-fade .fm-sub .fm-item {
    transition: opacity var(--_duration) var(--_function) calc(var(--_close_delay)*1ms), transform 0s linear var(--_duration)
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-linear-fade.-active .fm-sub .fm-item {
    --_delay: 0;
    --_close_delay: 0;
    transition: opacity var(--_duration) var(--_function) calc(var(--_delay)*1ms), transform 0s linear
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-linear-slide .fm-sub .fm-item {
    position: absolute;
    top: 0
}

.floating-menu .fm-has-sub.fm-sub-circular.-sub-linear-slide .fm-sub .fm-item,
.floating-menu .fm-has-sub.fm-sub-circular.-sub-linear-slide.-active .fm-sub .fm-item {
    transition-delay: calc(var(--_delay)*1ms);
    transition-duration: var(--_duration);
    transition-property: opacity, transform;
    transition-timing-function: var(--_function)
}

.floating-menu .fm-has-sub.fm-sub-side.-active .fm-sub {
    left: calc(var(--fm-sub-box) + var(--fm-sub-space));
    opacity: 1;
    top: calc(var(--fm-sub-box) + var(--fm-sub-space));
    visibility: visible
}

.floating-menu .fm-has-sub.fm-sub-side.-active>.fm-link.-label-hidden+.fm-sub {
    top: 0
}

.floating-menu .fm-has-sub.fm-sub-under {
    --_offset: 0
}

.floating-menu .fm-has-sub.fm-sub-under.-active {
    margin-bottom: calc(var(--_offset)*1px + var(--fm-sub-space))
}

.floating-menu .fm-has-sub.fm-sub-under.-active .fm-sub {
    left: 0;
    opacity: 1;
    position: absolute;
    top: calc(100% + var(--fm-sub-space));
    visibility: visible
}

.floating-menu .fm-has-sub.-sub-fade {
    --_duration: var(--fm-sub-transition-duration);
    --_function: var(--fm-sub-function);
    transition: margin calc(var(--_duration)/2) var(--_function)
}

.floating-menu .fm-has-sub.-sub-fade .fm-sub {
    transition: opacity var(--_duration) var(--_function), visibility 0s linear var(--_duration), top 0s linear var(--_duration), left 0s linear var(--_duration)
}

.floating-menu .fm-has-sub.-sub-fade.-active .fm-sub {
    transition: opacity var(--_duration) var(--_function), visibility 0s linear 0s, left 0s linear 0s, top 0s linear 0s
}

.floating-menu .fm-has-sub.-sub-slide {
    --_duration: calc(var(--fm-sub-transition-duration)/2);
    --_function: var(--fm-sub-function);
    transition: margin var(--fm-sub-transition-duration) var(--_function)
}

.floating-menu .fm-has-sub.-sub-slide .fm-sub {
    --_box: calc((var(--fm-icon-box)*1px + var(--fm-sub-space))*-1);
    transform: translateX(var(--_box));
    transition: opacity var(--_duration) var(--_function), transform var(--_duration) var(--_function), visibility 0s linear var(--_duration), top 0s linear var(--_duration), left 0s linear var(--_duration)
}

.floating-menu .fm-has-sub.-sub-slide.-active .fm-sub {
    transform: translateX(0);
    transition: opacity var(--_duration) var(--_function), transform var(--_duration) var(--_function), visibility 0s linear 0s, left 0s linear 0s, top 0s linear 0s
}

.floating-menu .fm-has-sub.-sub-slide.fm-sub-under .fm-sub {
    transform: translateY(var(--_box))
}

.floating-menu .fm-has-sub.-sub-slide.fm-sub-under.-active .fm-sub {
    transform: translateY(0)
}

.floating-menu .fm-has-sub.-sub-linear-fade {
    --_duration: var(--fm-sub-transition-duration);
    --_function: var(--fm-sub-function);
    transition: margin var(--_duration) var(--_function)
}

.floating-menu .fm-has-sub.-sub-linear-fade .fm-sub {
    transition: opacity 0s linear var(--_duration), visibility 0s linear var(--_duration), left 0s linear var(--_duration), top 0s linear var(--_duration)
}

.floating-menu .fm-has-sub.-sub-linear-fade .fm-sub .fm-item {
    --_delay: 0;
    --_close_delay: 0;
    opacity: 0;
    transition: opacity var(--_duration) var(--_function) calc(var(--_close_delay)*1ms)
}

.floating-menu .fm-has-sub.-sub-linear-fade.-active .fm-sub {
    transition: opacity 0s linear 0s, visibility 0s linear 0s, left 0s linear 0s, top 0s linear 0s
}

.floating-menu .fm-has-sub.-sub-linear-fade.-active .fm-sub .fm-item {
    opacity: 1;
    transition: opacity var(--_duration) var(--_function) calc(var(--_delay)*1ms)
}

.floating-menu .fm-has-sub.-sub-linear-slide {
    --_duration: var(--fm-sub-transition-duration);
    --_function: var(--fm-sub-function);
    transition: margin var(--_duration) var(--_function)
}

.floating-menu .fm-has-sub.-sub-linear-slide .fm-sub {
    transition: opacity 0s linear var(--_duration), visibility 0s linear var(--_duration), left 0s linear var(--_duration), top 0s linear var(--_duration)
}

.floating-menu .fm-has-sub.-sub-linear-slide .fm-sub .fm-item {
    --_delay: 0;
    --_close_delay: 0;
    --_top: -100%;
    opacity: 0;
    position: relative;
    top: var(--_top);
    transition-duration: var(--_duration);
    transition-property: top, opacity, left;
    transition-timing-function: var(--_function)
}

.floating-menu .fm-has-sub.-sub-linear-slide.-active .fm-sub {
    transition: opacity 0s linear 0s, visibility 0s linear 0s, left 0s linear 0s, top 0s linear 0s
}

.floating-menu .fm-has-sub.-sub-linear-slide.-active .fm-sub .fm-item {
    opacity: 1;
    top: 0;
    transition-duration: var(--_duration);
    transition-property: top, opacity, left;
    transition-timing-function: var(--_function)
}

@keyframes fmItemSub {
    0% {
        overflow: unset
    }
    90% {
        overflow: unset
    }
    to {
        overflow: hidden
    }
}

body:has(.floating-menu .fm-window[open]),
html:has(.floating-menu .fm-window[open]) {
    overflow: hidden
}

.floating-menu {
    --fm-window-width: 500;
    --fm-window-backdrop: rgba(0, 0, 0, .4);
    --fm-window-bg: #f0f0f0;
    --fm-window-close-color: #fff;
    --fm-window-head-color: #fff;
    --fm-window-head-bg: hsla(0, 0%, 100%, 0);
    --fm-window-body-color: #707070
}

.floating-menu .fm-window {
    background-color: var(--fm-window-bg);
    border: none;
    border-radius: var(--fm-text-radius);
    box-shadow: 0 8px 16px rgba(0, 0, 0, .2), 0 4px 6px rgba(0, 0, 0, .1);
    max-width: calc(var(--fm-window-width)*1px);
    padding: 1px;
    width: 100%
}

.floating-menu .fm-window.-left {
    margin-left: 0
}

.floating-menu .fm-window.-right {
    margin-right: 0
}

.floating-menu .fm-window.-top {
    margin-top: 0
}

.floating-menu .fm-window.-bottom {
    margin-bottom: 0
}

.floating-menu .fm-window::backdrop {
    background: var(--fm-window-backdrop)
}

.floating-menu .fm-panel {
    position: relative
}

.floating-menu .fm-close {
    align-items: center;
    background: transparent;
    border: none;
    color: var(--fm-window-close-color);
    cursor: pointer;
    display: flex;
    font-size: 20px;
    height: 25px;
    justify-content: center;
    left: calc(100% + 8px);
    position: sticky;
    top: 0;
    width: 25px
}

.floating-menu .fm-head {
    background-color: var(--fm-window-head-bg);
    color: var(--fm-window-head-color);
    margin-top: -25px;
    padding: 18px 17px
}

.floating-menu .fm-title {
    display: inline;
    font-size: 22px
}

.floating-menu .fm-body {
    --fm_margin: 0;
    color: var(--fm-window-body-color);
    font-size: 15px;
    margin-top: var(--fm_margin);
    padding: 15px
}

.floating-menu .fm-body p {
    line-height: 1.125;
    margin: 0
}

.floating-menu .fm-body p+p {
    margin-top: 12px
}