/*
 * Copyright (C) 2005 - 2025 Cloud Software Group, Inc. All Rights Reserved. Confidential & Proprietary.
 * Licensed pursuant to commercial Cloud Software Group, Inc. End User License Agreement.
 */


/* -----------------------------------
   TABLE OF CONTENTS

    1. BASE MENU

    2. VERTICAL MENU

    3. CONTEXT & DROPDOWN MENU

    4. PRIMARY NAVIGATION MENU

    5. CHART MENU, AD HOC DESIGNER

   -----------------------------------
    File last modified Aug 29, 2024
   -----------------------------------  */


/* ---------------- */
/*  1. BASE MENU    */
/* ---------------- */
.menu {
    position: absolute;
    float: left;
    cursor: pointer;
    list-style: none;
    margin: 0;
}

.menu > .content {
    position: relative;
    padding: 7px 0;
}

.menu .node {
    position: relative;
}

.menu .leaf {
    margin: 0;
}

.menu .wrap {
    margin-bottom: 0;
}

.menu .node > .wrap > .icon {
    background-image: url("images/disclosure_indicators_sprite.png");
    background-repeat: no-repeat;
    left: auto;
    position: absolute;
}

.menu.vertical .node .sub.menu {
    left: 100%;
    top: -5px;
    margin: 0;
}


/* -------------------- */
/*  2. VERTICAL MENU    */
/* -------------------- */
.menu.vertical {
    min-width: 150px;
    background-color: #ffffff;
    border: 1px solid var(--border-grey-16);
    font-family: source_sans_proregular, Franklin Gothic, Verdana, Arial, sans-serif;
    font-size: 14px;
    font-weight: normal;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); /*TCI box shadow:*/
}

.menu.vertical .wrap {
    background-repeat: no-repeat;
    height: 30px;
    line-height: 30px;
    padding: 0 2em;
    white-space: nowrap;
}

.menu.vertical .leaf.separator,
.menu.vertical .leaf.buttonItem {
    border-top: 1px solid var(--border-grey-20);
}

.menu.vertical .leaf.separator {
    background: none;
    height: 1px;
    margin: 6px 0;
}

.menu.vertical .node > .wrap > .icon {
    background-image: url(images/disclosure_indicators_icons_sprite.svg);
    background-position: -28px -297px;
    background-size: 170px;
    height: 18px;
    right: 5px;
    top: 6px;
    width: 18px;
}

/* States */
.menu.vertical .leaf > .wrap.toggle.down .icon,
.menu.vertical .leaf.active .wrap.button .icon {
    background-image: url(images/disclosure_indicators_icons_sprite.svg);
    background-position: -20px -115px;
    background-size: 170px;
    top: 3px;
}

.menu.vertical li > .wrap.over,
.menu.vertical li > .wrap.pressed {
    background-color: var(--jrs-theme-light);
}

.menu.vertical .leaf > .wrap.toggle.down.over .icon,
.menu.vertical .leaf > .wrap.toggle.down.pressed .icon,
.menu.vertical .leaf.active .wrap.button.over .icon,
.menu.vertical .leaf.active .wrap.button.pressed .icon {
    background-position: -50px -115px;
}

.menu.vertical .node > .wrap.over > .icon,
.menu.vertical .node > .wrap.pressed > .icon {
    background-position: -58px -297px;
}

.menu.vertical .node.closed > .menu {
    display: none;
}

.menu.vertical .node.open > .menu {
    display: block;
}

/* Keyboard Focus */
.menu.vertical li > .wrap.over.focus-visible {
    outline: 2px solid var(--jrs-theme-dark);
    outline-offset: -2px;
}


/* ------------------------------ */
/*  3. CONTEXT & DROPDOWN MENU    */
/* ------------------------------ */
.menu.context > .content,
.menu.dropDown > .content {
    margin-bottom: -6px;
    top: -2px;
    /* left: 0;
    margin-right: 0;
    position: relative; remove if there are no problems, aug 2024 */
}


/* ------------------------------ */
/*  4. PRIMARY NAVIGATION MENU    */
/* ------------------------------ */
.menu.primaryNav {
    height: 100%;
    margin-left: 10px;
    -webkit-tap-highlight-color: transparent; /* "turn off" link highlight for iPad */
}

.menu.primaryNav .leaf,
.menu.primaryNav .node {
    border: none;
    margin: 0;
    padding-right: 0;
}

.menu.primaryNav .wrap {
    border: none;
    background-repeat: repeat-x;
    font-size: 14px;
    height: 39px;
    line-height: 39px;
    margin-top: 0;
    padding: 0 0.9em;
}

.menu.primaryNav #main_view .wrap,
.menu.primaryNav #main_manage .wrap,
.menu.primaryNav #main_create .wrap {
    padding-left: 1em;
    padding-right: 1.6em;
}

.menu.primaryNav .node > .wrap > .icon {
    background-image: url(images/disclosure_icons_sprite@1x.png);
    background-position: 0 -112px;
    background-size: 15px;
    height: 16px;
    right: 7px;
    top: 12px;
    width: 11px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .menu.primaryNav .node > .wrap > .icon {
        background-image: url(images/disclosure_icons_sprite@2x.png);
    }
}

.menu.primaryNav #main_home .wrap {
    padding: 0 1.4em;
    text-indent: -5000px;
    width: 34px;
}

.menu.primaryNav #main_home .wrap > .icon {
    background-image: url(images/banner_icons_sprite@1x.png);
    background-repeat: no-repeat;
    background-position: 0 2px;
    background-size: 20px;
    height: 28px;
    margin: 10px 9px 0 9px;
    width: 20px;
}

/* 2x icons */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .menu.primaryNav #main_home .wrap > .icon {
        background-image: url(images/banner_icons_sprite@2x.png);
    }
}

@media only screen and (max-width: 750px) {
    .menu.primaryNav .wrap {
        font-size: 13px;
    }
    .menu.primaryNav .node > .wrap > .icon {
        background-position: 0 -87px;
        background-size: 12px;
    }
    .menu.primaryNav #main_view .wrap,
    .menu.primaryNav #main_manage .wrap,
    .menu.primaryNav #main_create .wrap {
        padding-left: .6em;
    }
    .menu.primaryNav #main_home .wrap {
        padding: 0;
        width: 28px;
    }
    .menu.primaryNav {
        margin-left: 4px;
    }
    .menu.primaryNav #main_home .wrap > .icon {
        background-position: 0 3px;
        background-size: 18px;
        margin-left: 6px;
    }
}

/* States */
.menu.primaryNav .wrap.over,
.menu.primaryNav .wrap.pressed {
    background-color: var(--jrs-theme-light);
}

.menu .wrap.over,
.menu .wrap.pressed,
.menu.primaryNav .up,
.menu.primaryNav .wrap,
.menu.primaryNav .up.over,
.menu.primaryNav .up.pressed,
.menu.primaryNav .wrap.over,
.menu.primaryNav .wrap.pressed {
    color: #ffffff;
}

/* Keyboard Focus
Same as State
.menu.primaryNav .leaf.focus-visible .wrap,
.menu.primaryNav .node.focus-visible .wrap {
    background-color: var(--jrs-theme-light);
} */


/* ---------------------------------- */
/*  5. CHART MENU, AD HOC DESIGNER    */
/* ---------------------------------- */
.menu#chartMenu {
    padding: 7px 0;
    z-index: 2;
}

.menu#chartMenu li {
    padding: 0;
}

.menu#chartMenu li .wrap {
    color: var(--text-light);
}

.menu#chartMenu li .wrap.over {
    color: #ffffff;
}

.menu#chartMenu li.disabled > p.wrap.over {
    background: none;
    color: var(--text-light);
}