/* Rand Racker Fixed Side Buttons */

.rr_fixed_side_buttons_wrap{
    position: fixed;
    right: var(--rr_fsb_right, 20px);
    top: var(--rr_fsb_top, 50%);
    z-index: var(--rr_fsb_z, 9999);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--rr_fsb_gap, 40px);
    pointer-events: none;
    transform: translateY(-50%) translateY(var(--rr_fsb_footer_shift, 0px));
}

.rr_fixed_side_buttons_wrap[data-top-mode="custom"]{
    transform: translateY(0) translateY(var(--rr_fsb_footer_shift, 0px));
}

.rr_fixed_side_buttons_item{
    text-align: center;
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rr_fixed_side_buttons_hidden{
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.rr_fixed_side_buttons_visible{
    opacity: 1;
    visibility: visible;
}

.rr_fixed_side_buttons_animate{
    transition: opacity 220ms ease, visibility 220ms ease;
}

.rr_fixed_side_buttons_display_none{
    display: none !important;
}

/* Classic */

.rr_fixed_side_buttons_iconlink{
    display: block;
    text-decoration: none;
    line-height: 0;
    pointer-events: auto;
}

.rr_fixed_side_buttons_bg{
    width: var(--rr_fsb_bg_w, 110px);
    height: var(--rr_fsb_bg_h, 110px);
    border-radius: var(--rr_fsb_bg_r, 9999px);
    background: var(--rr_fsb_bg, #1e86c6);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px auto;
    box-sizing: border-box;
    transition: background var(--rr_fsb_trans, 220ms) ease;
}

.rr_fixed_side_buttons_iconlink:hover .rr_fixed_side_buttons_bg,
.rr_fixed_side_buttons_iconlink:focus .rr_fixed_side_buttons_bg{
    background: var(--rr_fsb_bg_hover, var(--rr_fsb_bg, #1e86c6));
}

.rr_fixed_side_buttons_icon{
    width: var(--rr_fsb_icon, 56px);
    height: auto;
    display: block;
}

.rr_fixed_side_buttons_textlink{
    display: block;
    font-size: var(--rr_fsb_font, 22px);
    line-height: 1.1;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    color: var(--rr_fsb_text, inherit);
    transition: color var(--rr_fsb_trans, 220ms) ease;
}

.rr_fixed_side_buttons_textlink:hover,
.rr_fixed_side_buttons_textlink:focus{
    color: var(--rr_fsb_text_hover, var(--rr_fsb_text, inherit));
    text-decoration: underline;
}

/* Hover Reveal Mode */

.rr_fixed_side_buttons_mode_hover .rr_fixed_side_buttons_item{
    align-items: flex-end;
}

.rr_fixed_side_buttons_tab{
    pointer-events: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: var(--rr_fsb_sq_r, 0px);
    height: var(--rr_fsb_bg_h, 110px);
    width: calc(var(--rr_fsb_bg_h, 110px) + var(--rr_fsb_label_w, 180px));
    transform: translateX(var(--rr_fsb_label_w, 180px));
    transition: transform var(--rr_fsb_trans, 220ms) ease, background var(--rr_fsb_trans, 220ms) ease;
    background: var(--rr_fsb_bg, #f2a200);
}

.rr_fixed_side_buttons_tab:hover,
.rr_fixed_side_buttons_tab:focus{
    transform: translateX(0px);
    background: var(--rr_fsb_bg_hover, var(--rr_fsb_bg, #f2a200));
}

.rr_fixed_side_buttons_focus_open .rr_fixed_side_buttons_tab:focus-within{
    transform: translateX(0px);
    background: var(--rr_fsb_bg_hover, var(--rr_fsb_bg, #f2a200));
}

.rr_fixed_side_buttons_iconwrap{
    width: var(--rr_fsb_bg_h, 110px);
    height: var(--rr_fsb_bg_h, 110px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.rr_fixed_side_buttons_mode_hover .rr_fixed_side_buttons_icon{
    width: calc(var(--rr_fsb_bg_h, 110px) * 0.55);
}

.rr_fixed_side_buttons_label{
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    overflow: hidden;
    width: var(--rr_fsb_label_w, 180px);
    padding: 0 18px;
    font-size: var(--rr_fsb_font, 22px);
    line-height: 1.1;
    font-weight: 700;
    color: var(--rr_fsb_text, inherit);
    transition: color var(--rr_fsb_trans, 220ms) ease;
}

.rr_fixed_side_buttons_tab:hover .rr_fixed_side_buttons_label,
.rr_fixed_side_buttons_tab:focus .rr_fixed_side_buttons_label{
    color: var(--rr_fsb_text_hover, var(--rr_fsb_text, inherit));
}


/* Alternative switches are separated:
   rr_fsb_alt_bg_active -> background colors
   rr_fsb_alt_text_active -> text colors
*/

/* Classic background switch */
.rr_fsb_alt_bg_active .rr_fixed_side_buttons_bg{
    background: var(--rr_fsb_alt_bg, var(--rr_fsb_bg, #1e86c6));
}
.rr_fsb_alt_bg_active.rr_fixed_side_buttons_iconlink:hover .rr_fixed_side_buttons_bg,
.rr_fsb_alt_bg_active.rr_fixed_side_buttons_iconlink:focus .rr_fixed_side_buttons_bg{
    background: var(--rr_fsb_alt_bg_hover, var(--rr_fsb_alt_bg, var(--rr_fsb_bg, #1e86c6)));
}

/* Classic text switch */
.rr_fsb_alt_text_active .rr_fixed_side_buttons_textlink{
    color: var(--rr_fsb_alt_text, var(--rr_fsb_text, inherit));
}
.rr_fsb_alt_text_active .rr_fixed_side_buttons_textlink:hover,
.rr_fsb_alt_text_active .rr_fixed_side_buttons_textlink:focus{
    color: var(--rr_fsb_alt_text_hover, var(--rr_fsb_alt_text, var(--rr_fsb_text, inherit)));
}

/* Hover mode background switch (tab) */
.rr_fixed_side_buttons_tab.rr_fsb_alt_bg_active{
    background: var(--rr_fsb_alt_bg, var(--rr_fsb_bg, #f2a200));
}
.rr_fixed_side_buttons_tab.rr_fsb_alt_bg_active:hover,
.rr_fixed_side_buttons_tab.rr_fsb_alt_bg_active:focus,
.rr_fixed_side_buttons_focus_open .rr_fixed_side_buttons_tab.rr_fsb_alt_bg_active:focus-within{
    background: var(--rr_fsb_alt_bg_hover, var(--rr_fsb_alt_bg, var(--rr_fsb_bg, #f2a200)));
}

/* Hover mode text switch (label) */
.rr_fixed_side_buttons_tab.rr_fsb_alt_text_active .rr_fixed_side_buttons_label{
    color: var(--rr_fsb_alt_text, var(--rr_fsb_text, inherit));
}
.rr_fixed_side_buttons_tab.rr_fsb_alt_text_active:hover .rr_fixed_side_buttons_label,
.rr_fixed_side_buttons_tab.rr_fsb_alt_text_active:focus .rr_fixed_side_buttons_label{
    color: var(--rr_fsb_alt_text_hover, var(--rr_fsb_alt_text, var(--rr_fsb_text, inherit)));
}

