:root {
    --btnPrimary:#1b8da5;
    --btnPrimaryHover: #1b768e;
    --btnPrimaryDarken: #1c657e;
    --gecco: #50a559;
    --geccoDark: #0F6037
}
a {
    color: var(--btnPrimary)
}
a:hover {
    color:var(--btnPrimaryHover)
}

.btn-primary, .btn-primary.disabled, .btn-primary:disabled {
    background-color:var(--btnPrimary);
    border-color:var(--btnPrimary)
}
.btn-outline-primary {
    border-color:var(--btnPrimary)
}
.btn-primary:hover, .btn-outline-primary:hover {
    border-color:var(--btnPrimary);
    background-color:var(--btnPrimaryHover)
}
.badge-primary {
    background-color:var(--btnPrimary)
}
.text-primary {
    color:var(--btnPrimary) !important
}
.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle {
    background-color:var(--btnPrimaryDarken)
}
.dropdown-item.active, .dropdown-item:active {
    background-color:var(--btnPrimary)
}



.card-header {
    background-color:var(--lightestGrey)
}

.bg-gecco {
    background-color:var(--gecco)
}
.bg-gecco-dark {
    background-color:var(--geccoDark);
}

.gecco-page {
    min-height:100vh;
    display:flex;
    flex-direction:column;
}
.gecco-page > .main {
    background-color:var(--lightestGrey);
    flex-grow:1;
}

/* body {
    background:rebeccapurple;
} */
.navbar-white-shadow {
    background:#fff;
    box-shadow:var(--navbarShadow)
}

/* deprecated */
#ProfileNav .nav-item.active .underline {
    /* content:''; */
    width:100%;
    height:3px;
    position:absolute;
    bottom:0;
    background:rebeccapurple;
    background:currentColor;
}
/* end deprecated: to be replaced by below */

#ProfileNav {
    z-index:1010
}
.profile-content {
    background-color:var(--lightestGrey)
}
.profile-nav-item {
    position:relative;
    margin:0 8px;
}
.profile-nav-item a {
    white-space:nowrap
}


.activeborder {
    color:var(--accentColor)
}
.nav-item.current .activeborder.bottom {
    width:100%;
    height:3px;
    position:absolute;
    bottom:0;
    background:rebeccapurple;
    background:currentColor;
}
/* move active border to left if. Used if in sidebar OR moved to dropdown */
.dropdown-menu .nav-item.current .activeborder {
    width: 3px;
    height: 100%;
    left: -8px;
}
.nav-item.current .activeborder.left {
    width:3px;
    height:100%;
    position:absolute;
    bottom:0;
    left:0;
    background:rebeccapurple;
    background:currentColor;
}


.list-group-item.current .activeborder.left {
    width: 3px;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: rebeccapurple;
    background: currentColor;
}


.dynasearch {
    position:relative
}
#dynasearch-input {
    padding:12px;
    font-size:18px;
    font-style:italic;
}
.dynasearch-container {
    display:block;
    position:absolute;
    z-index:-1;
    visibility:hidden;
    display: none;
    opacity:0;
    transform:translateY(12px);
    -webkit-transform: translateY(12px);
    -moz-transform: translateY(12px);
    -ms-transform: translateY(12px);
    -o-transform: translateY(12px);
    transform: translateY(12px);
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
.dynasearch-container.show {
    z-index:1000;
    visibility:visible;
    display: block;
    opacity:1;
    transform:translateY(0)
}
.dynasearch-scroll {
    height:100%;
    position:relative;
    overflow:auto;
    max-height:480px !important;
    width:360px;
    box-shadow:0 4px 32px -8px rgba(0,0,0,0.5);
}
.dynasearch-container .default-item {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    text-align:center;
    min-height:120px;
}
.dynasearch-container .default-item > * {
    width:100%;
}
.dynasearch-container .member-item {
    overflow:hidden;
}

        .member-item.inactive {
            background:var(--lightGrey);
        }
        .member-item.inactive * {
            color:var(--darkGrey) !important;
        }
        .member-item.inactive .profile-pic {
            background: var(--lightestGrey) !important;
            filter: grayscale(100%);
        }
.dynasearch-container .member-item > .group-identifier {
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:8px;
    height:100%;
    transform:translateX(-4px);
    transition:all 0.2s;
}
.dynasearch-container .member-item.admin > .group-identifier {
    background:rebeccapurple;
}
.dynasearch-container .member-item.admin .group-identifier:hover {
    transform:translateX(-1px);
}


.member-header {
    padding-top:3rem;
    padding-bottom:3rem;
}
.member-header *, .member-header {
    transition:all 0.2s;
}
.member-header.smaller {
    padding-top:0;
    padding-bottom:0;
}
.member-header.smaller .profile-pic {
    transform:scale(0.5);
    margin-left:-25%;
}
.member-header.smaller .profile-name-holder {
    margin-left:-40px;
}
.member-header.smaller h1 {
    font-size:1.8rem
}



.full-header {
    min-height:220px;
    background-size:cover;
    background-position:center;
    position:relative;
}
.full-header > .container {
    position:relative;
}
.full-header::before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(183deg, transparent, rgba(0,0,0,0.5) 80%);
}

/*pagenav*/
.page-nav {
    z-index:1010;
}
.page-nav .navbar-nav {
    min-height:56px;
}
.page-nav {
    min-width:0;
}


/*sitetree nav for the Gecco dashboard*/
.menu-1, .menu-2, .menu-3, .menu-4 { border:none } /*fixes issue with border not appearing unless on hover */
.menu-2::before,
.menu-3::before,
.menu-4::before {
    content:'';
    position:absolute;
    left:16px;
    bottom:50%;
    height:100%;
    width:12px;
    /*border-left: 2px solid;*/
    border-bottom:2px solid;
    border-color:var(--lightGrey)
}
/*.menu-2:not(:last-of-type)::after,*/
/*.menu-3:not(:last-of-type)::after,*/
/*.menu-4:not(:last-of-type)::after {*/
    /*content:'';*/
    /*position:absolute;*/
    /*left:16px;*/
    /*height:100%;*/
    /*bottom:0;*/
/*}*/
.menu-2:first-of-type::before {
    height:50%;
}
.menu-2 > * { margin-left:20px; }
.menu-3::before { left:28px; }
.menu-3 > * { margin-left:36px; }
.menu-4::before { left:40px; }
.menu-4 > * { margin-left:48px; }

.site-tree-children {
    position:relative;
}
.site-tree-children::before {
    content:'';
    position:absolute;
    z-index:1010;
    left:16px;
    border-left:2px solid var(--lightGrey);
    bottom:28.5px;
    height:calc(100% - 28.5px);
}
/*.site-tree-children::before {*/
    /*z-index:1000;*/
    /*background:red;*/
    /*width:20px;*/
/*}*/
.site-tree-children.level-3::before { left: 28px; }
.site-tree-children.level-4::before { left: 40px; }
.site-tree-children.level-5::before { left: 52px; }

.site-tree-children.level-3::before,
.site-tree-children.level-4::before,
.site-tree-children.level-5::before {
    height:100%;
}

[aria-expanded="true"] > .fa-caret-down {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}




/*custom fields*/
form .field.FULL {
    background:var(--lightGrey);
    padding:1.5rem 1rem 1rem 1rem;
    border:1px solid var(--darkGreyAlpha);
    border-radius:0.25rem;
}
form .field.FULL::before {
    content:'Visible to users with FULL access privileges';
    color:var(--darkGrey);
    display:block;
    font-size:0.8rem;
    text-align:right;
}
form .field.PARTIAL {
    background:var(--lightestGrey);
    padding:1.5rem 1rem 1rem 1rem;
    border:1px solid var(--midGreyAlpha);
    border-radius:0.25rem;
}
form .field.PARTIAL::before {
    content:'Visible to users with PARTIAL access privileges';
    color:var(--midGrey);
    display:block;
    font-size:0.8rem;
    text-align:right;
}



/*cards*/
.card .card-body .card-break {
    background-color:var(--lightestGrey);
    margin: 0 -1.25rem;
    padding:1.25rem;
}

.card-full-height {
    height:100%;
}

.card-full-height.mb-1 {
    height:calc(100% - .25rem);
}
.card-full-height.mb-2 {
    height:calc(100% - .5rem);
}
.card-full-height.mb-3 {
    height:calc(100% - 1rem);
}
.card-full-height.mb-4 {
    height:calc(100% - 1.5rem);
}
.card-full-height.mb-5 {
    height:calc(100% - 6rem);
}

a.card, label.card {
    cursor:pointer;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}
a.card:hover, label.card:hover, input:checked+label.card {
    text-decoration: none;
    transform: translateY(-0.1rem);
    border-color:var(--primary)
}
input:checked+label.card {
    background:rgba(60,120,210,0.1)
}
.addressoptionset input {
    display: none
}
.field.addressoptionset.card-deck {
    display:block !important;
}
.addressoptionset.card-deck:not(.field) {
    flex-flow:nowrap;
    overflow-x:scroll;
    padding: 12px 0;
}
.addressoptionset .card {
    min-width:120px;
}
.addressoptionset .card:not(.is-address) .card-body {
    display: flex;
    align-items: center;
    justify-content: center;
}
.addressoptionset .card.is-address {
    min-width:180px;
}

/* Form messages */ 
.message.required {
    color: #EE2222;
}


/* branch profiles */

.branch-profile .branch-banner {
    height:320px;
    background-size: cover;
    background-position: center;
    border-radius: 0 0 0.5rem 0.5rem;
    box-shadow: 0 3px 20px -4px rgba(0,0,0,0.4);
    margin:0 -15px;
}
.branch-profile .branch-banner ~ .branch-header .header .profile-pic {
    margin-top: -80px;
}
.branch-profile .header .profile-pic {
    margin-right:1.25rem;
}

