@import url('https://fonts.googleapis.com/css?family=Amaranth');
@import url('https://fonts.googleapis.com/css?family=Luckiest+Guy');

body {
  background-color: #10c4fb;
  background: radial-gradient(#12d4fd 0%,#0894cb 82%);
  font-family: 'Amaranth', Arial, sans-serif;
}

.headerline {
    text-transform: uppercase;
    font-family: 'Luckiest Guy', sans-serif;
    font-size: 72px;
    text-align: center;
    color: #fff200;
    text-shadow: 4px 3px #000000;
}

.periodic {
  position: relative;
  height: calc(100% - 10px);
  width: calc(100% - 10px);
  margin-left: 10px;
  margin-right: 10px;
  text-shadow: none;
}

.periodic-row {
  clear: both;
  height: 9.5%;
}

.periodic-row-small{
  width: 10%;
}

table, th, td {
    border: 1px solid black;
    border-collapse: collapse;
  }


.periodic-info{
    height: 100%;
    width: 100%;
}



.middle-align{
  vertical-align: middle;
}

.table-heading{
    text-align: center;
    width: 5%;
}

.table-cell{
  text-align: center;
  width: 5%;
}

.cell {
  float: left;
  position: relative;
  width: 5.4%;
  height: 100%;
}

.cell-small{
    width: 10%;
    height: 10%;
}

.element-cell{
    width: 5%;
    box-sizing: border-box;
    border: 4px ridge rgba(0, 0, 0, 0.1);
    border-radius: 6px;
    text-align: center;
    cursor: default;
    color: black;
    pointer-events: none;
    background-color: #97ebff;
    position: relative;
}

.facts-cell{
  width: 20%;
}


.left-bg {
    background: linear-gradient(to right, #000000 0%, #404040 100%);
}

.right-bg {
    background: linear-gradient(to right, #404040 0%, #000000 100%);
}


.info-cell {
  float: left;
  position: absolute;
  width: 53.9%;
  bottom: 72%;
  left: 10.8%;
  right: 0;
  background-color: #10c4fb;
  background: radial-gradient(#12d4fd 0%,#0894cb 82%);
  box-sizing: border-box;
  border: 4px ridge rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  display: none;
  overflow: hidden;
  overflow-y: hidden;
  z-index: 1000;
}

.atomic-number{
  font-size: 4vw;
}

.detail-container {
    width: 100%;
    height: calc(100% - 0px);
    background-color: #404040;
}

.element-bg {
    background-color: #404040;
    background: #404040;
    height: 100%;
}


.detail-text {
    color: aliceblue;
}

.bordered {
    border: 1px solid #000;

}

.detail-left {
    float: left;
    width: 21.6%;
    height: 100%;
    background: #fff;
}
.detail-center {
    float: none;
    position: relative;
    width: auto;
}

.detail-right {
    float: right;
    position: relative;
    width: auto;
    height:100%;
}

.info-header {
  padding: 2px;
  font-size: 24px;
  font-weight: bold;
  font-style: normal;
  vertical-align: middle;
  text-align: center;
  background: radial-gradient(#d4fd12 0%,#94cb08 82%);
  height: 20%;
}

.row-cell{
  height: 80%;
}

.info-text {
  padding: 5px;
  padding-left: 10px;
  font-weight: normal;
  font-style: normal;
}

.info-symbol {
  float: left;
  width: 50px;
  margin: auto;
  margin-top: auto;
  margin-bottom: auto;
  height: 28.4%;
  vertical-align: middle;
  background-color:#fff;
  text-align: center;
  font-size: 36px;
  font-weight: bold;
  
}

.info-image {
  height: 28.4%;
    width: 100%;
}

.hidden-cell {
    display: none;
}

.element {
  position: absolute;
  top:  0px;
  left: 0px;
  bottom: 0;
  right: 0;
  box-sizing: border-box;
  border: 4px ridge rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  text-align: center;
  cursor: default;
  pointer-events: none;
  background-color: #97ebff;
}

.cell:hover .element {
  border-style: groove;
  border-color: rgba(0, 0, 0, 0.5);
}

.at_num,
.at_details {
  position: absolute;
  font-size: 4px;
  text-transform: capitalize;
  color: #000000;
  opacity: 0;
}


.at_num_table,
.at_details_table {
  position: relative;
  font-size: 4px;
  text-transform: capitalize;
  color: black;
  opacity: 0;
}




.at_num {
  top: 2px;
  left: 3px;
}


.at_num_cell {
    position: absolute;
    left: 2%;
    top: 2%;
    font-size: 1.5vw;
    color: black;
}

.symbol_cell{
    position: relative;
    top: -10%;
    font-size: 4vw;
}

.left-align{
  text-align: left;
  vertical-align: top;
}

.at_details_cell{
    position: relative;
    font-size: 1.2vw;
    color: black;
}
  

.symbol {
  position: absolute;
  top: 40%;
  left: 0px;
  right: 0px;
  margin-top: -4px;
  font-size: 9px;
  line-height: 1;
  height: 9px;
  color: #000000;
}



.at_details {
  bottom: 2px;
  left: 0px;
  right: 0px;
}
.cell:nth-child(n+13) .element{
  background-color: #c7cc00;
}
.cell:nth-child(n+14) .element{
  background-color: #e8b8e4;
}

.cell:nth-child(n+15) .element{
  background-color: #cccccc;
}
.cell:nth-child(n+16) .element{
  background-color: #fcb629;
}

.cell:nth-child(n+17) .element{
  background-color: #fcbe8b;
}
.cell:nth-child(n+18) .element{
  background-color: #f7e116;
}

.cell:nth-child(-n+2) .element{
  background-color: #ffc2e6;
}
.cell:nth-child(-n+1) .element{
  background-color: #80b3bf;
}
.periodic-row:nth-child(n+9) .cell .element{
  background-color: #bdf4f4;
}

.periodic-row:nth-child(n+10) .cell .element{
  background-color: #b0dd58;
}
.landscapeNoticeContainer  {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    background-color: rgba(255,255,255,0.5);
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.landscapeNotice {
    text-align: center;
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    line-height: 1.5;
    background-color: #fff3cd;
    font-family: "Amaranth", sans-serif;
    font-size: 18px;
}

.landscapeNoticeTitle {
    background-color: #ebb124;
    font-size: 30px;
    padding: 10px;
}

.landscapeNoticeContent {
    padding: 25px;
}

.prtiodicTableLink{
  text-align: center;
  font-size: 22px;
  a{
    color: rgb(6, 6, 110);
    text-decoration: underline;
  }
  a:hover{
    color: rgb(11, 11, 168);
  }
}

@media (max-width: 599px) {
    .periodic {
        height: 540px;
    }
    .symbol {
        font-size: 12px;
    }
    .at_num, .at_details {
        font-size: 0px;
    }
}
@media only screen and (max-width: 1024px) {
    .popupContainer {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 100;
    }
    .close {
        position: absolute;
        top: 0px;
        right: 2.5%;
        font-size: 2.5rem;
        cursor: pointer;
        color: #fff;
        opacity: 1;
    }
    .info-cell{
        width: 95%;
        bottom: 0;
        top: 5%;
        left: 0;
        right: 0;
        margin: auto;
    }
    .at_details_cell{
        font-size: 3vw;
    }
    .element {
        border: 2px ridge rgba(0, 0, 0, 0.1);
    }
    .cell:hover .element{
        cursor: pointer;
    }
    .at_num_cell {
        font-size: 2.8vw;
        top: 0px;
    }
}

@media (min-width: 600px) {
  .periodic {
    height: 460px;
    margin-right: -5px;
  }
  .element {
    right: 2px;
    bottom: 2px;
  }
  .at_num,
  .at_details {
    font-size: 4px;
    opacity: 1;
  }
  .symbol {
    margin-top: -17px;
    font-size: 16px;
    font-weight: bold;
    line-height: 30px;
    height: 30px;
    color: #000;
    text-shadow: 0 0 4px rgba(255, 255, 255, 0.5);
  }
}
@media (min-width: 800px) {
  .periodic {
    height: 540px;
  }
  .symbol {
    font-size: 20px;
  }
}
@media (min-width: 992px) {
  .periodic {
    height: 680px;
  }
  .at_num,
  .at_details {
    font-size: 7px;
  }
  .symbol {
    font-size: 24px;
  }
}
@media (min-width: 1200px) {
  .periodic {
    height: 800px;
  }
  .at_num,
  .at_details {
    font-size: 9px;
  }
  .symbol {
    font-size: 30px;
  }
}
@media screen and (max-width: 1025) {
  .info-cell {
    overflow: auto;
  }
}