/*styles.css
This document contains all external styling across the Specimen Requester System */


/*Adds vertical scrollbars to containers when the content exceeds it.*/
html {
    overflow-y: scroll;
}

#passwordError{
  color:red;
}
/*Designates size and background color.*/
body {
    margin: 0;
    background-color: #F6F6F6;
}

/*All buttons and input submit elements that act as buttons.
- Border: Adds a black border around the button
- Padding: Adds spacing within the button and makes them bigger
- Border-Radius: Curves the button's corners.*/
button, #signUpBtn, #submitReq {
    border: 1px solid black;
    padding: 5px;
    border-radius: 10px;
}

/*Submit button for both lab (onsite) and release requests.
- Padding: Adds large spacing within the button that is greater than that of a normal button.
- Background Color + Color: Same as the navbar buttons. Different than the back button and clear button.*/
#submitReq {
    padding: 20px;
    background-color: #3B4387;
    color: white;
}

/*Clear button for signature canvas on new request submission.
- Background-Color: Unique from the other buttons.*/
#clear {
    background-color: lightgray;
}

/*Changes cursor to pointer when hovering over a button or an input field that acts as a button.*/
button:hover, #signUpBtn:hover, #submitReq:hover {
    cursor: pointer;
}

/*???*/
.tableClass tbody {
    width:100%;
}

/*Copied image of signature on the request detail pages.*/
#base64image {
    display:block;
    margin:auto;
    width:400px;
    height:200px;
    border:1px
    solid black;
    background-color:white;
}

#blank {
    display: none;
}

#hiddenStyling {
    width:100%;
    text-align:left;
    padding-left:5%;
    padding-top:30px;
}

#hiddenStylingClear {
    width:100%;
    text-align:center;
    padding-top:30px;
}

.hiddenButton {
    display:none;
    margin:0 auto;
    margin-top: 5px;
}

#header {
    text-align: center;
    color: white;
    padding: 0;
    top: 0;
    left: 0;
    width: 100%;
    margin-bottom: 1px;
    position: fixed;
    background-color: black;
    z-index: 2;

}
#header ul {margin-bottom:0;}
#headerComponentList {
    margin: 0;
    background-color: #090909;
}

#headerIMGPoint {
    height: 0;
}

#headerIMG {
    position: absolute;
    left: 2%;
    height: 50px;
    top:6px;
}

#headerPhoneIcon {
    cursor:pointer;
    height:50px;
    width:50px;
    font-size:35px;
    display: block;
}

#headerPhoneCloseSpan {
    cursor:pointer;
    height:50px;
    width:50px;
    font-size:45px;
    display: block;
}

#headerTitle {
    height: 30px;
    padding: 6px 40px 13px 0;
    font-size: 18px
}

#hideSubmit {
    display:none;
}

#homeDiv {
    padding-top: 160px;
}

#signupMenuTest {
    padding-top: 100px;
}

.insertedRow {
    font-weight: bold;
    background-color: darkgray;
    color: white
}

.lastInserted {
    color: white;
}

#logout {
    font-size: 15px;
    margin: 0;
    position: absolute;
    background-color: #090909;
    top: 0;
    right: 0;
    border-left: darkgray 1px solid;
    border-top: 0px;
    border-bottom: 0;
    height: 65px;
    width: 65px;
    color: white;
}

#sigButtons {
    margin-bottom: 50px;
    width:100%;
    text-align:center;
    margin-left: auto;
    margin-right: auto;
}

#nextSigDetail {
    margin:0 auto;
}

#sigDetail {
    display: none;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

#initialsSection {
    display: none;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

#backSigDetail {
    text-align: center;
}

.red {
    color: darkred
}

#signature {
    display:none;
    /*padding-top:50px;*/
}

#signatureDetail {
    width: 100%;
    min-height: 400px;
    text-align: center;
}
#nextInitialDetail{
    margin-left:auto;
    margin-right:auto;
}
#subTitle {
    text-align: center;
}

#formSubtitle {
    font-weight: bold;
    padding-top:134px
}

#infoBundle {
    text-align: center;
    padding-bottom: 50px;
}

#infoWarning {
    top: 100px;
    color: darkred;
}

#requesterSearchForm {
    width: fit-content;
}

#searchHeader {
    margin:0 0 10px 0;
}

#searchTable {
    /*width: 70%;*/
}

/*container for the sideNav (header) elements. Present on all pages.*/
#sideNav {
    text-align: center;
    position: fixed;
    width:100%;
    top:65px;
    padding-top: 10px;
    background: #CDCDCD;
    z-index: 2;
}

/*Ul element for the header list. Present on all pages.*/
#sideNavList {
    margin:0;
    padding-top:5px;
    font-size:14px;
}

#signatureLabel {
    /*padding-left:5%;*/
    /*float:left;*/
    text-align: center;
}

#timeStamp {
    /*float:right;*/
    /*margin-top:0;*/
    /*padding-right:5%;*/
    text-align: center;
    margin-bottom: 0;
}

#updateSavedInfo {
    float:left;
    width:100%;
    display:block;
    text-align:center;
    padding-top: 30px;
    padding-bottom: 50px;
}

/*Errors do not display by default.*/
.error {
    display: none;
}

/*Styling for "wrong" text*/
#incorrect{
    color:red;
    font-weight:bold;
}

/*Styling for increasing width of element to full screen.*/
.fullWidth {
    width: 100%;
}

.fullWidthCenter {
    width: 100%;
    text-align: center;
}

.infoColumn {
    float: left;
    width: 33%;
}

/*Link elements should be blue and underlined.*/
.link {
    color:#0000EE;
    text-decoration:underline;
}

/**/
.loginScreen {
    width: 100%;
    text-align: center;
}

.rules {
    margin-left: auto;
    margin-right: auto;
    width: 85%;
    /*text-align: left;*/
}

/*Styles all information text to align left instead of center.*/
.rulesParagraph {
    text-align: left;
}

.simpleHeader {
    text-align: center;
}

.specSubtitle {
    padding-top: 20px;
}

.tableClass {
    display: block;
    border: none;
    overflow:scroll;
    height:300px;
}

.underline {
    text-decoration: underline;
}

td a {
    text-decoration: none;
    color: #23274F;
    font-weight:bold;
}
a {
    text-decoration: none;
    color: #2a2f5f;
}

a.sidebarValue {
    color: white;
    border-style: solid;
    border-width: 2px;
    border-radius: 30px;
    border-color: #3B4387;
    background-color: #3B4387;
    padding: 6px;
    height: 100%;
}

a.sidebarValue:hover {
    background-color: #545fbb;
    border-color: #545fbb;
}

li {
    display: inline-block;
    height: 34px;
}


li.sideNavLink:not(:last-child) {
    margin-right: 10px;
}

/*Standard borders and centering across table elements.*/
table, td, th {
    text-align: center;
    border: 1px solid black;
    border-collapse: collapse;
}


/*Table styling. Aligns spacing of table, sets cell colors, and removes bullets from lists.*/
table {
    margin-left: auto;
    margin-right: auto;
}

th {
    background-color: #C1C8FF;
}

tr:hover {
    background-color: #E6E8FB;
}

ul {
    list-style-type: none;
}
.dataColumnDuo{
    text-align:center;
}




/*Flex styling for overarching flex as well as individual containers within.*/
.flex-container {
    display: flex;
    justify-content: center;

}

.flex-container > div {
    background-color: #EFEFEF;
    width: 100%;
    margin: 10px;
    padding: 20px;
    text-align: center;
}

.stretch-container {
    display: flex;
    align-items: stretch;
}


#headerUl{margin-bottom:0px;}
#loginWarning{width:70%;margin-left:auto;margin-right:auto}

#wrapper1 {
    width: 800px;
    height: 400px;
    margin-left:auto;
    margin-right:auto;
    /*padding-top: 20px;*/
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/*Appearance of signature pad for signing user name at the end of a new submission. Defines the border and color of the pad.*/
.signature-pad {
    aspect-ratio: 2/1;
    border:2px black solid;
    background-color:white;
}

/*Media query for *** devices.*/
@media screen and (min-width: 1235px){
    td, th {

        padding: 10px;
    }
    .dataColumnDuo {
        float: right;
        width: 50%;
    }
    .tableDisplay {
        text-align: center;
        padding-bottom: 50px;
    }
    #mainBodyDiv{
        padding-top:100px;
    }
    .wrapperr {
        z-index: 1;
        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (min-width: 970px) and (max-width:1235px){
    td, th {

        padding: 10px;
    }
    .dataColumnDuo {
        float: right;
        width: 50%;
    }
    .tableDisplay {
        text-align: center;
        padding-bottom: 50px;
    }
    #mainBodyDiv{
        padding-top:130px;
    }
    .wrapperr {
        z-index: 1;

        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (max-width: 970px) and (min-width:660px) {
    td, th {
        padding: 2px;
    }
    .tableDisplay{
        padding-bottom:10px;
        text-align: center;
    }
    #mainBodyDiv{
        padding-top:130px;
    }
    .wrapperr {
        z-index: 1;

        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (max-width: 660px)and (min-width:475px) {
    td, th {
        padding: 2px;
    }
    #mainBodyDiv{
        padding-top:180px;
    }
    .dateColumnDuo{
        width:100%;
    }
    td, th {
        padding: 2px;
    }
    .tableDisplay{
        padding-bottom:10px;
        text-align: center;
    }
    .wrapperr {
        z-index: 1;

        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (max-width: 475px)and (min-width:412px) {
    td, th {
        padding: 2px;
    }
    #mainBodyDiv{
        padding-top:230px;
    }
    .dateColumnDuo{
        width:100%;
    }
    td, th {
        padding: 2px;
    }
    .tableDisplay{
        padding-bottom:10px;
        text-align: center;
    }
    .wrapperr {
        z-index: 1;

        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (max-width: 412px)and (min-width:350px) {
    td, th {
        padding: 2px;
    }
    #mainBodyDiv{
        padding-top:270px;
    }
    .dateColumnDuo{
        width:100%;
    }
    td, th {
        padding: 2px;
    }
    .tableDisplay{
        padding-bottom:10px;
        text-align: center;
    }
    .wrapperr {
        z-index: 1;

        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for small screen devices.*/
@media screen and (max-width: 350px) {
    td, th {
        padding: 0px;
    }
    #mainBodyDiv{
        padding-top:260px;
    }
    .dateColumnDuo{
        width:100%;
    }

    .tableDisplay{
        padding-bottom:10px;
        text-align: center;
    }
    .wrapperr {
        z-index: 1;
        display: block;
        border: none;
        height:300px;
        overflow:scroll;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }
}

/*Media query for *** devices.*/
@media screen and (max-width: 750px) {
    .flex-container {
        flex-direction: column;
    }

    #headerTitle {
        font-size: 18px;
    }
    #sideNavList{display:none;}
    #logout {
        font-size: 12px;
    }

    #mainBodyDiv {
        padding-top: 70px;
    }
    #headerIMGPhone {
        position: absolute;
        left: 2%;
        height: 50px;
        top:6px;
    }
    #headerPhoneClose {
        position: absolute;
        left: 2%;
        height: 50px;
        top:6px;
        display:none;
    }
    #requesterSearchForm, .flex-container > div {
        width: unset;
    }
    #requesterSearchForm > form > .textinput:nth-child(odd), #requesterSearchForm > form > .boxinput, .hiddenOnMinimize{
        display: none;
    }
    #mySideNav{
        padding-top:100px;
    }

    .sidenav {
        height: 100%;
        width: 0;
        position: fixed;
        z-index: 1;
        top: 0;
        left: 0;
        background-color: #CDCDCD;
        overflow-x: hidden;
        transition: 0.5s;
        padding-top: 60px;
    }

    .sidenav a {
        padding: 8px 8px 8px 32px;
        text-decoration: none;
        font-size: 25px;
        color: #3B4387;
        display: block;
        transition: 0.3s;
    }

    .sidenavLink {
        border-bottom: 1px solid black;
        font-family: "Lato", sans-serif;
    }

    .sidenav a:hover {
        color: #545fbb;
    }

    .sidenav .closebtn {
        position: absolute;
        top: 0;
        right: 25px;
        font-size: 36px;
        margin-left: 50px;
    }
}

/*//Media query for *** devices.*/
@media screen and (min-width: 751px) {
    #headerIMGPhone{display:none}
    #headerPhoneIcon{display:none}
    #headerPhoneCloseSpan{display:none}
    #headerPhoneClose{display:none}
    #sideNavList{display:inline-block;}
    #mySideNav{display:none;}

}

@media screen and (max-height: 450px) {
    .sidenav {padding-top: 15px;}
    .sidenav a {font-size: 18px;}
}
