/*------------------------------------------ 

            THE ENTIRE PAGE

---------------------------------------------*/

html, body {
    background-color: white;
    color: var(--black);
    font-size: 17px;
    word-wrap: break-word;
    /* overflow-x: hidden; */
    width: 100%;
}

::selection {
    background: var(--lighterpink); /* WebKit/Blink Browsers */
}

::-moz-selection {
    background: var(--lighterpink); /* Gecko Browsers */
}

/*------------------------------------------ 

            FONT AND STYLES FORMATTING

---------------------------------------------*/

html { 
    /* scroll-behavior: smooth; */
    scroll-padding-top: 90px;
 }

ul {
    list-style-type: none;
}

li {
    /* font-size: 16px; */
    padding-bottom: 10px;
}

a {
    color: var(--darkblue);
}

a:hover {
    color: var(--blue);
}

.clearFormatting {
    all: revert;
}

h1 {
    margin: 25px 25px;
    font-size: 40px;
    text-align: center;
    word-wrap: break-word;
}

h2 {
    margin: 15px 15px;
    font-size: 30px;
}

h3 {
    margin: 15px 15px;
    font-size: 24px;
}

h4 {
    margin: 15px 15px;
    font-size: 20px;
}

hr.rounded {
  border-top: 8px solid #bbb;
  border-radius: 5px;
}

@media only screen and (max-width: 767px) {
    h1 {
        font-size: 7vw;
    }
    
    h2 {
        font-size: 6vw;
    }
    
    h3 {
        font-size: 5vw;
    }

    h4 {
        font-size: 4vw;
    }
}

h1, h2, h3, h4, h5, h6 {
    color: var(--black);
    margin: 0;
    padding-top: 15px;
    padding-bottom: 15px;
}

p {
    color: var(--black);
    font-size: 17px;
    margin: 0;
    padding-top: 15px;
    padding-bottom: 15px;
}

.subText {
    font-style: italic;
    margin: 15px;
    text-align: center;
}

.innerHeader
{
    width: 100%;
    display: block;
    float: left;
    text-align: center;
}

.iconInHeader {
    padding-right: 20px;
}

/*------------------------------------------ 

            HEADER STYLING

---------------------------------------------*/

.navRow {
    /* padding-right: 10px; */
    padding-left: 10px;
}

.topLeftLogo {
    /* top: 10px; */
    left: 5px;
    position: relative;
    z-index: 20;
    height: 75px;
    padding: 10px;
}

.topRightBars {
    height: 75px;
    /* top: 10px;
    right: 10px; */
    position: relative;
    text-align: right;
    z-index: 20;
}

.header {
    top: 0;
    display: block;
    position: fixed;
    height: 75px;
    width: 100%;
    z-index: 19;
    background-color: var(--black);
}

#logo {
    cursor: pointer;
}

/*------------------------------------------ 

            HEADER LOGO STYLING

---------------------------------------------*/

.headerLogoContainer {
    float: left;
    height: 100%;
}

.headerLogoImage {
    height: 90%;
}

@media only screen and (max-width: 300px) {
    .headerLogoImage {
        padding-top: 5px;
        height: 45px;
    }  
}

/*------------------------------------------ 

            headerNavBar STYLING

---------------------------------------------*/

#iconForSkip {
    padding-top: 0;
    margin-top: 15px;
    margin-right: 15px;
 
    font-size: 50px;
    color: var(--blue);
    float: right;
    cursor: pointer;
}

#iconForSkip:hover {
    color: var(--white);
}

#headerNavBar {
    /* top: 0px;
    right: 0px; */
    float: right;
    position: relative;
    /* padding-right: 15px; */
    z-index: 10;
    height: 75px;
    /* wider so more range of motion when hovering */
    width: 75px;
}

.navBarSection {
    display: block;
    float: right;
    max-height: 625px;
    width: 275px;
    overflow: auto;
    text-align: left;
    position: relative;
    background-color: var(--black);
}

.navBarSection details {
    height: fit-content;
    font-size: 18px;
    background-color: var(--black);
    cursor: pointer;
}

details summary::-webkit-details-marker {
    display: none;
}

.navLink a {
    margin: 0;
    padding: 0;
    color: var(--grey);
    font-size: 18px
}

.navTitle, .navSubLink, .navLink {
    padding: 15px;
    background-color: var(--black);
    cursor: pointer;
}

.navTitle, .navSubLink a, .navLink a {
    color: var(--grey);
}

.navTitle:has(+ div .navSubLink.active), .navSubLink.active a, .navLink.active a {
    color: white;
}

.navTitle, .navLink {
    font-weight: bold;
}

.navSubLink {
    padding-left: 30px;
}

.navSubLink a {
    padding: 0;
    margin: 0;
    font-size: 17px;
}

.navTitle:hover, .navTitle:has(+ div .navSubLink:hover), .navSubLink:hover a, .navLink:hover a {
    color: white;
}

/*------------------------------------------ 

        mainSection sections STYLING

---------------------------------------------*/

.mainSection {
    overflow-x: hidden;
    overflow-y: auto;
    float: left;
    width: 100%;
    display: block;
    height: fit-content;
    position: relative;
    /* padding: 25px; */
    padding-top: 75px;
    background-color: white;
}

:host {
    display: inline-block;
}

.docsSection {
    padding: 35px;
    background-color: white;
    width: calc(100% - 300px);
}

.navigationSection {
    padding-top: 20px;
    padding-right: 10px;
    padding-left: 20px;
    padding-bottom: 5px;
    position: fixed;
    overflow: auto;
    height: calc(100% - 75px);
    width: 300px;
    background-color: var(--white);
    display: inline-block;
    z-index: 10;
}

@media only screen and (max-width: 768px) {
    .navigationSection {
       display: none;
    }
    .docsSection{
        width: 100%;
    }
}

.bc_param_div {
   background-color: #F0F0F0;
   padding: 8px;
   border: 1px solid #d0d0d0;
   border-left: 1px solid #d0d0d0;
   overflow-wrap: break-word;
   white-space: pre-line;
   font-size: 85%;
}


/*------------------------------------------ 

        navigationSection STYLING

---------------------------------------------*/

.skipTo, #skipToTop, .clickLink {
    padding: 5px;
    cursor: pointer;
}

.skipTo:hover, .clickLink:hover{
    background-color: var(--lightbluegrey);
}

.navigationSection div {
    padding-bottom: 15px;
}

.navigationSection div h3 {
    text-transform: none;
    font-size: 22px;
    text-align: center;
}

.navigationSection div h4 {
    text-transform: none;
    font-size: 19px;
    padding: 0;
    padding-left: 5px;
    padding-top: 7px;
    padding-bottom: 5px;
    line-height: 25px;
}

.navigationSection div div h5 {
    text-transform: none;
    font-size: 17px;
    line-height: 23px;
}

.navigationSection div div {
    padding-left: 15px;
}

.navigationSection div div p {
    padding-left: 5px;
    margin: 0;
    display: block;
    font-size: 17px;
    line-height: 20px;
}

.navigationSection div div p,  .navigationSection div h4, .navigationSection div div h5{
    color: var(--black);
    font-family: "Montserrat","Helvetica Neue",Helvetica,Arial,sans-serif;
    cursor: pointer;
    font-weight: normal;
    letter-spacing: 0.2px;
}

.navigationSection div h4.clickLink {
    color: var(--darkblue);
}

/*------------------------------------------ 

            zero-md STYLING

---------------------------------------------*/

span:has(zero-md) {
    height: fit-content;
    display: block;
    overflow-x: auto;
}

zero-md {
    width: 100%;
    overflow: auto;
}

/*------------------------------------------ 

            skipToTop button STYLING

---------------------------------------------*/

.skipToTopSection {
    position: fixed;
    bottom: 15px;
    right: 15px;
    height: 68px;
    width: 68px;
    background-color: var(--verydarkblue);
    border-radius: 50px;
    text-align: center;
    cursor: pointer;
    opacity: 0.5;
}

.skipToTopSection:hover {
    opacity: 1;
}

#skipToTop {
    font-size: 38px;
    color: white;
}
