/* ALLGEMEIN */

body {

    font-family: 'Source Sans Pro', sans-serif;

    margin: 0;
    padding: 0;

    background: url(../rsc/ela_background.jpg) no-repeat center center fixed;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -o-background-size: contain;
    background-size: contain;

}

b {
    font-weight: 900;
}

a {
    text-decoration: none;
    color: black;
}

a:visited {
    color: black;
}

a:hover {
    cursor: pointer;
    font-weight: bold;
}

.clear {
    clear: both;
}

/* INDEX */

#notification {
    width: 30%;
    height: fit-content;
    border: 1px solid #006e9f;
    border-radius: 5px;
    background-color: white;
    text-align: center;
    
    top: 20%;
    left: 50%;
    
    margin-left: -15%;
    margin-top: -50px;

    padding: 10px;
    
    position: absolute;
    
    font-size: 15px;
    
}

.container {
    text-align: center;
    align-items: center;
    vertical-align: middle;
    align-content: center;

    position: absolute;

    height: 320px;
    width: 350px;

    top: 50%;
    left: 50%;

    margin-top: -160px;
    margin-left: -175px;

    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid black;
    border-radius: 20px;
}

.input {
    margin-top: 10px;
    padding-left: 10px;
    width: 200px;
    height: 30px;
}

#inputSubmit, 
#aPSubmit, 
#myBtn,
#searchBtn,
#searchBtn2,
.inputSubmit {
    background-color: #006e9f;
    border: none;
    border-radius: 5px;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    transition: all 0.5s;
    cursor: pointer;
}

#inputSubmit span, 
#aPSubmit span, 
#myBtn span,
#searchBtn span,
#searchBtn2 span,
.inputSubmit span {
    cursor: pointer;
    display: inline-block;
    position: relative;
    transition: 0.5s;
}

#inputSubmit span:after, 
#aPSubmit span:after, 
#myBtn span:after,
#searchBtn span:after,
#searchBtn2 span:after,
.inputSubmit span:after {
    content: '\00bb';
    position: absolute;
    opacity: 0;
    top: 0;
    right: -20px;
    transition: 0.5s;
}

#inputSubmit:hover span, 
#aPSubmit:hover span, 
#myBtn:hover span,
#searchBtn:hover span,
#searchBtn2:hover span,
.inputSubmit:hover span {
    padding-right: 25px;
}

#inputSubmit:hover span:after, 
#aPSubmit:hover span:after, 
#myBtn:hover span:after,
#searchBtn:hover span:after,
#searchBtn2:hover span:after,
.inputSubmit:hover span:after {
    opacity: 1;
    right: 0;
}

/* ----- ELAPORT ----- */

/* navbar */

#navbar ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;

    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10;
}
#navbar li {
    float: left;
}
#navbar li a:not(#mainLogo) {
    display: inline-block;
    color: white;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

#mainLogo {
    height: 40px;
    display: block;
    text-align: center;
    padding: 3.5px 16px;
    text-decoration: none;
    background-color: white;
    border-bottom: 1px solid #333;
}
#mainLogo:hover {
    background-color: #e6e6e6;
}

#navbar li a:hover:not(#mainLogo):not(#logOutBtn) {
    background-color: #111;
}

#logOutForm {
    margin: 0;
}

#logOutBtn {
    background: none;
    border: none;

    margin: 0;
    padding: 14px 16px;

    color: white;
    background-color: #009de0;
}
#logOutBtn:hover {
    cursor: pointer;
    background-color: #006e9f;
}

#userNav, #suppliers {
    border-right: 1px solid white;
}
#userNav {
    border-left: 1px solid white;
}

#notiIcon {
    position: relative;
    padding-left: 10px;
}

/* DASHBOARD */

/* feed */

#feed {
    width: 60%;
    float: left;
    margin-left: 3%;
}

#addFeed {
    width: 90%;
    background-color: white;
    border: 1px solid black;
    border-radius: 10px;
    margin: 0 auto;
    margin-bottom: 50px;
}
#addFeedCC {
    height: 30px;
    width: 25%;
    float: left;
    margin-top: 10px;
    margin-left: 5%; 
}
#addFeedV {
    height: 25px;
    float: right;
    margin-top: 15px;
    margin-right: 5%;
    background: white;
    border: 1px solid #B2B2B2;
    border-radius: 5px;
}
#addFeedCC:hover, #addFeedV:hover {
    cursor: pointer;
    border: 2px solid black;
}
#feedSearchSup {
    float: right;
    margin-right: 5%;
    margin-top: 10px;
    height: 30px;
    width: 25%;
    display: none;
}
#feedSearchVal, #feedSearchVal2 {
    float: right;
    height: 30px;
    width: 25%;
    margin-right: 10px;
    margin-top: 10px;
    display: none;
    background-color: white;
    font-size: 10px;
}
#feedSearchVal:hover, #feedSearchVal2:hover {
    font-weight: bold;
    cursor: pointer;
    border: 2px solid black;
}
#addFeedTA {
    width: 90%;
    border: none;
    margin: 10px auto;
    font-size: 18px;
    box-sizing: border-box;
    padding: 10px;
    border: 1px solid #B2B2B2;
    border-radius: 5px;
}
#addFeedTA:focus {
    border: none;
}
#addFeedPost {
    float: right;
    margin-right: 5%;
    margin-bottom: 10px;
    font-size: 14px;
}

#feedSort {
    height: 30px;
    width: 25%;
    float: right;
    margin-right: 5%;
}

.feedEntry {
    width: 90%;
    background-color: white;
    border: 1px solid black;
    border-radius: 10px;
    margin: 0 auto;
    margin-bottom: 30px;
    text-align: left;
}
.feedCat {
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 5%;
    border-bottom: 1px solid gray;
    border-top-left-radius: 9px;
    border-top-right-radius: 9px;
    color: white;
}
.feedDelete {
    float: right;
    margin-right: 5%;
    padding: 3px;
    background-color: white;
    border-radius: 4px;
}
.feedDelete:hover {
    border-bottom: 3px solid #006e9f;
}
.feedDone {
    background-color: #006e9f;
    border: none;
    border-radius: 5px;
    color: white;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
}
.feedDone:hover {
    font-weight: bold;
}

.feedCon {
    margin-top: 5px;
    margin-left: 5%;
    width: 90%;
    margin-top: 20px;
    margin-bottom: 20px;
}
.feedEntryLink, .feedEntryLink:visited {
    color: #006e9f;
}
.feedFooterUser {
    float: left;
    margin-left: 5%;
    margin-bottom: 10px;
}
.feedFooterDate {
    float: right;
    margin-right: 5%;
}

/* statistics */

#statistics {
    width: 30%;
    margin-left: 3%;
    float: left;
    background-color: rgba(255, 255, 255, 0.8);
}

.statsGeneral {
    width: 90%;
    margin: 0 auto;
}
.statsGeneral b {
    color: #006e9f;
    font-size: 30px;
}

#statsSuppliers {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
}
#statsSuppliers p {
    font-size: 40px;
}
#statsSuppliers b {
    font-size: 50px;
    margin-right: 20px;
}

#statsCountries {
    margin-bottom: 50px;
}
.statsFlags {
    height: 20px;
    border-radius: 3px;
    margin: 2px;
    border: 1px solid black;
}

#statsLists p {
    text-align: left;
    margin-left: 30%;
}

/* content, tableDiv and searching */

#content {
    width: 100%;
    margin-top: 70px;
    margin-bottom: 100px;
}

#tableDiv {
    width: 75%;
    margin-right: 2%;
    padding-top: 30px;
    padding-bottom: 30px;
    float: right;

    text-align: center;
    align-items: center;
    vertical-align: middle;
    align-content: center;

    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid black;
    border-radius: 20px;
}

#searching {
    width: 20%;
    margin-left: 2%;
    margin-bottom: 100px;
    padding-top: 10px;
    padding-bottom: 30px;
    float: left;

    text-align: center;
    align-items: center;
    align-content: center;

    background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid black;
    border-radius: 20px;
}

#users {
    text-align: left;
    width: 90%;
    margin-left: 5%;
}

.success {
    text-align: center;
    background-color: rgba(125, 255, 125, 0.9);
    margin-bottom: 30px;
    font-size: 20px;
    border: 2px solid darkgreen;
    border-radius: 5px;
    margin-left: 100px;
    margin-right: 100px;
}

.failed {
    text-align: center;
    background-color: rgba(255, 125, 125, 0.9);
    margin-bottom: 30px;
    font-size: 20px;
    border: 2px solid darkred;
    border-radius: 5px;
    margin-left: 100px;
    margin-right: 100px;
}

.userDlt {
    text-decoration: none;
    font-weight: 400;
    color: black;
}

.userDlt:hover {
    color: darkred;
    font-weight: 900;
}

.backButton {
    float: left; 
    margin-left: 30px; 
    color: #006e9f;
}

.backButton:hover {
    color: #009de0;
    cursor: pointer;
}

.sIcon {
    display: table-cell;
}

#imglink:hover img {
    -webkit-filter: contrast(0.1);
    filter: contrast(0.1);
}

.pagesLink:hover {
    font-weight: bold;
}

/* searching */

/* --- tab --- */

.tab {
    overflow: hidden;
    border: 1px solid #ccc;
    background-color: rgba(241, 241, 241, 0.4);
}

.tab button {
    background-color: #ccc;
    float: left;
    width: 50%;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 14px 16px;
    transition: 0.3s;
    font-size: 17px;
}

.tab button:hover {
    background-color: #ddd;
}

.tab button.active {
    background-color: #f1f1f1;
}

.tabcontent {
    display: none;
    padding: 6px 12px;
    border: 1px solid #ccc;
    border-top: none;
}

/* --- searching --- */

#searchSProduct {
    width: 90%;
    height: 30px;
}

#searchLieferzeit, #searchQualitaet, #searchLieferzeit2 {
    width: 90%;
}

#LieferzeitLabel, #QualitaetLabel, #LieferzeitLabel2 {
    margin-top: -20px;
    font-size: 13px;
    color: #006e9f;
}

.searchCountry input, .searchCountry label, .searchCountry a, .floatLeft, #searchZertLink, .tabcontent b, #resetSearch {
    float: left;
    margin-left: 10px;
}

.searchCountry a, #searchZertLink, #resetSearch {
    margin-top: 5px;
    color: #006e9f;
    font-size: 13px;
}

#searchBack {
    margin-top: 10px;
    color: #006e9f;
    font-size: 15px;
}

.searchCountry a:hover, #searchZertLink:hover, #resetSearch:hover, #searchBack:hover {
    font-weight: 900;
    cursor: pointer;
}

.columns {
    width: 16%;
    float: left;
    margin-left: 2%;
    margin-right: 2%;
}

.searchCountrySubmit {
    margin-top: 20px;
    margin-bottom: 50px;
}

/* table */

.tableSuppliers {
    width: 94%;
    margin-left: 3%;
    margin-right: 3%;
    border-spacing: 0;
    padding: 5px;
    /*border: 2px solid black;
    border-radius: 8px;*/
}

.tableSuppliers thead tr th {
    text-align: left;
    vertical-align: top;
}

.tableSuppliers tbody tr td {
    text-align: left;
    vertical-align: top;
}

.tableLines td {
    border-top: 1px dotted #006e9f;
}

table td, table th {
    padding: 2px 5px 2px 5px;
}

.countryImg {
    height: 15px;
    position: relative;
    z-index: 0;
}

.overflow-x-container {
    width: 100%;
    overflow-x: auto;
}

.sortClick:hover {
    color: #006e9f;
    cursor: pointer;
}

#sortableTable th:not(.sortClick):hover {
    cursor: default;
}

/* supplier info */

.sHead, .sMiddle, .sFooter {
    text-align: left;
    width: 94%;
    margin-left: 3%;
    margin-right: 3%;
    border: 2px solid #006e9f;
    border-radius: 5px;
    background-color: rgba(217,217,217, 0.6);
}

.sMiddle {
    margin-top: 50px;
}

.sFooter {
    margin-top: 50px;
    height: 50px;
}

#sFooterL {
    margin-left: 30px;
    float: left;
}

#sFooterR {
    margin-right: 30px;
    float: right;
}

#sTopRow {
    margin-top: -5px;
}

.sRow {
    width: 100%;
    float: left;
    margin-top: 20px;
    padding-left: 10px;
}

#sFlagCountry {
    float: right;
    margin-top: 20px;
    margin-right: 20px;
    border-radius: 4px;
}

.sRow div {
    float: left;
    /*border: 3px solid red;*/
}

#sContact2 a {
    color: black;
    text-decoration: none;
}

#sContact2 a:hover {
    color: #006e9f;
    font-weight: 900;
    cursor: pointer;
}

.sRow div:not(#sProduction2):not(#sFirma):not(#sLand):not(#sOther):not(#sRanking) {
    width: 24%;
}

#sProduction2, #sFirma, #sLand, #sRanking {
    width: 49%;
}

.sBlue {
    color: #006e9f;
}

#sProduction2 table {
    text-align: left;
    margin-left: -1px;
    width: 100%;
}

#sRanking table {
    text-align: left;
    width: 100%;
}

.space {
    color: rgba(255, 255, 255, 0);
    width: 100%;
    /*border: 2px solid red;*/
}

.space:hover {
    cursor: default;
}

#certTable, #sOther table {
    margin-left: -1px;
    width: 100%;
    text-align: left;
}

#sOther table th {
    vertical-align: top;
}

#sProduction2 table td {
    text-align: left;
}

#sOther {
    width: 99%;
}

.rahmen {
    float: left;
    width: auto;
    margin-right: 2px;
    border: 1px solid black;
    border-radius: 3px;
    padding: 2px;
}

.sProduct {
    margin-top: 30px;
    margin-left: 30px;
}

.sProduct table th {
    text-align: right;
}

.sProduct:last-child {
    margin-bottom: 30px;
}

/* add button */

.width100 {
    width: 100%;
    height: 50px;
}

.width100 a {
    color: white;
    text-decoration: none;
}

.width100 a:hover {
    cursor: pointer;
}

.floatRight {
    float: right;
    margin-right: 20px;
}

/* add stuff */

textarea {
    resize: none;
}

#select1, #select2, #select3 {
    height: 100px;
    margin-left: 30px;
    margin-bottom: 20px;
}

#display1, #display2, #display3, #display4 {
    width: 100%;
    height: 100%;
    padding-left: 10px;

    font-size: 10px;
    font-weight: 900;
    color: #006e9f;
}

#sCerts {
    height: 140px;
}

#selectZert {
    float: right;
    margin-right: 20px;
}

#selectZert div, #selectZert select {
    float: right;
}

#selectSCountry {
    height: 30px;
}

#addSFlag {
    border-radius: 4px;
    margin-left: 20px;
    vertical-align: middle;
}

.aPElement {
    width: 100%;
    height: 100px;
    border: 2px solid #006e9f;
    border-radius: 5px;
    margin-top: 10px;
}

.s50percentL {
    float: left;
}

.s50percentR {
    float: right;
}

.s50percentL, .s50percentR {
    width: 48%;
    height: 100px;
}

.s50percentL .s50percentL, 
.s50percentR .s50percentR {
    padding-left: 5px;
}

.aPDiv h2 i {
    color: #006e9f;
}

.aPDiv textarea {
    border: none;
    border-left: 2px solid #006e9f;
    border-right: 2px solid #006e9f;
    background-color: #f2f2f2;

    padding-left: 10px;

    font-size: 18px;
    font-weight: 900;
    color: #006e9f;
}

#aPselectType {
    margin-left: 30px;
    height: 40px;
    width: 200px;
}

#sAddBtn {
    text-align: center;
}

#myBtn {
    margin: 10px 0px;
}

.aPshowProduct {
    background-color: rgba(217,217,217, 0.4);
    border: 2px solid #009de0;
    border-radius: 10px;
    margin: 30px 3%;
    padding: 10px;
}

.aPshowProduct h2 {
    float: left;
    margin-top: 10px;
    margin-left: 20px;
    color: #006e9f;
}

.aPshowProduct table {
    text-align: left;
    margin-left: 30px;
    float: left;
    width: 100%;
}

.aPshowProduct table th {
    text-align: right;
}

.aPeditProduct, .eSupplier {
    padding: 5px;
}

.aPeditProduct:hover, .eSupplier:hover {
    border-radius: 5px;
    background-color: rgba(0, 157, 224, 0.1);
}

.eSupplier {
    margin-top: 15px;
}

#ePtypeName {
    color: #006e9f;
}

#ePtypeName b {
    color: black;
}

.delete {
    margin-top: 15px;
}

/* MODALS */

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    padding-top: 60px; /* Location of the box */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
    background-color: #fefefe;
    margin: auto;
    padding: 20px;
    border: 1px solid #888;
    border-radius: 10px;
    width: 80%;
}

/* The Close Button */
.close {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

/* POPUPS */
.popup {
    position: relative;
    display: inline-block;
    cursor: help;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.popup .popuptext {
    visibility: hidden;
    width: 250px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 8px 6px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -125px;
}

.popup .popuptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
}

.popup .show {
    visibility: visible;
    -webkit-animation: fadeIn 1s;
    animation: fadeIn 1s;
}

@-webkit-keyframes fadeIn {
    from {opacity: 0;} 
    to {opacity: 1;}
}

@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity:1 ;}
}

/* MAP */

#map {
    width: 90%;
    height: 600px;
    margin: 0 auto;
    border: 5px solid #006e9f;
    border-radius: 10px;
    z-index: 1;
}

#map a {
    color: #006e9f;
    text-decoration: none;
}

#map a:hover {
    color: black;
    cursor: pointer;
}

.highlight-marker {
    z-index: 1000 !important;
}

/* IMPRESSUM / DATENSCHUTZ */
.impDatWrapper {
    width: 90%;
    max-width: 900px;
    
    padding: 30px;

    margin: 50px auto;

    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 7px;
}

/* MEDIA */

@media screen and (max-width: 900px) {
    #content {
        margin-top: 120px;
    }

    /*#navbar li, #navbar .right {
    float: none;
}*/
}

@media screen and (max-width: 1400px) {
    #sAdd div {
        display: block;
        float: none;
        width: 100%;
        /*border: 1px solid red;*/
    }

    #sCerts {
        height: 180px;
    }

    #selectZert, #selectZert div, #selectZert select {
        float: left;
    }

}