* {
  box-sizing: border-box;
}

html, body {
  /*min-height: 100vh;*/
  background: #F8F8F8;
  overflow: hidden;
  height: 100%;
  font-family: Arial, Helvetica, Georgia, sans-serif;
  min-width: 270px;
}

@media (max-width:600px) { 
  screenLock { 
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 5000;
    background-color:#939393;
  }
}

@media (min-width:600px) { 
  screenLock { 
    display: none;
  }
}

/* Go from zero to full opacity */
@keyframes fadeEffect {
  from {opacity: 0;}
  to {opacity: 1;}
}

/**
*
* TOP MENU
*
**/

topMenu {
  
  top: 0px;
  left: 0px;
  position: fixed;
  width: 100%;
  height: 18px;
  overflow: hidden;
  display: block;
  background-color: #636363;
  color: #ebebeb;
  z-index: 100;
  font-size: 11px;
  line-height: 12px;
  padding: 0px 1px 0px 5px;
  min-width: 270px;
}

#labTitle, #labTitle:focus, #labTitle:focus-within, #labTitle:active {
  border: 0;
  margin: 1px 0px 1px 25px;
  padding: 0;
  height: 16px;
  width: 200px;
  font-size: 12px;
  line-height: 14px;
  outline: none;
  padding-inline: 3px 0px;
  color: #636363;
  background-color: #ebebeb;
}

/**
*
* MAIN MENU
*
**/

mainMenuButton {
  position: fixed;
  top: 0;
  /* right: 0; */
  right: 0px;
  z-index: 200;
  border-top: 0px;
  border-right: 0px;
  border-left: 1px solid #636363;
  border-bottom: 1px solid #636363;
  background-color:#ebebeb;
  border-bottom-left-radius: 70%;
  width: 23px;
  height: 23px;
  padding-left: 3px;
  transition: all 1s;
}
mainMenuButton:hover {
  cursor: pointer;
}

mainMenu {
  position: fixed;
  top: 0;
  right: -270px;
  z-index: 201;
  border-top: 0px;
  border-right: 0px;
  border-left: 1px solid #636363;
  border-bottom: 1px solid #636363;
  background-color:#ebebeb;
  border-bottom-left-radius: 10%;
  width: 270px;
  min-height: 170px;
  max-height: 90%;
  padding: 33px 10px 10px 10px;
  font-size: 0.9em;
  transition: all 1s;
}
#toolsIcons {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 10px;
}
#copyIcon {
  width: 32px;
  height: 32px;
  /*background-color: #7070EF;*/
  background-color: #e5e5e5;
  border-radius: 50%;
  border: 1px solid #636363;
  padding: 7px;
}
#copyIcon:hover {
  cursor: pointer;
  background-color: #969696;
}
#copyIcon.disabled {
  visibility: hidden;
}


/**
*
* mainMenu buttons style
*
**/

#mainMenu #userMode {
  margin: 0;
  height: 23px;
  padding: 2px;
  display: flex;
  align-items: center;
  text-decoration: none;
  font-size: 0.8em;
  color: #636363;
  position: absolute;
  top: 0;
  left: -1px;
  width: 100%;
  align-content: center;
  justify-content: center;
  border-bottom: 1px solid #636363;
}

/* Common button style */

#mainMenu .menuButton {
  display: flex;
  align-items: center;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  color: #ffffff;
  width: 100%;
  overflow: hidden;
  border-radius: 5px;
  cursor: pointer;
}

#mainMenu .menuButton .icon {
  display: inline-flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  padding: 2px 20px;
  margin-right: 15px;
}

#mainMenu .menuButton .icon svg {
  fill: #fff;
}

/* Google Login Button */
#mainMenu .google-login-btn {
  background-color: #d6523e;
  display: none;
}
#mainMenu .google-login-btn .icon {
  padding: 15px 20px;
  background-color: #cf412c;
}

#mainMenu .google-login-btn:hover {
  background-color: #d44a36;
}
#mainMenu .google-login-btn:hover .icon {
  background-color: #c63f2a;
}

/* Logout Button */
#mainMenu .logout-btn {
  background-color: #7070EF;
  display: none;
}
#mainMenu .logout-btn .icon {
  background-color: #6060FF;
}
#mainMenu .logout-btn:hover {
  background-color: #6060dF;
}
#mainMenu .logout-btn:hover .icon {
  background-color: #5050EF;
}

#pleaseConnect {
  display: none;
}

#profileName {
  display: none;
  /*display: flex;*/
  align-items: center;
  justify-content: center;
}

#schoolName {
  display: none;
  /*display: flex;*/
  align-items: center;
  justify-content: center;
  font-size: 0.8em;
  font-weight: 700;
}

#profilePicture {
  display: none;
  /*display: flex;*/
  align-items: center;
  justify-content: center;
  margin: 5px 0 5px 0;
  display: none;
}
#profilePicture img {
  width: 100%;
  max-width: 70px;
  border-radius: 50%;
}

#toolsMenu {
  margin: 15px 5px 25px 5px;
  padding-left: 2px;
  border-left: 1px solid #e5e5e5;
  font-weight: bold;
}

#toolsMenu > div {
  margin: 0px;
  padding: 4px 0px 4px 8px;
  color: #636363;
}

#toolsMenu > .disabled {
  color: #e5e5e5;
  text-shadow: 1px 0px 2px #636363;
  font-style: italic;
}

#toolsMenu > div:hover {
  background-color: #636363;
  color: #ebebeb;
  cursor: pointer;
}

#toolsMenu > .disabled:hover {
  background-color: inherit;
  color: #e5e5e5;
  text-shadow: 1px 0px 2px #636363;
  font-style: italic;
  cursor: not-allowed;
}


/**
*
* MAIN SCREEN
*
**/
main {
  margin: 0px;    
  top: 0px;
  left: 0px;
  position: fixed;
  width: 100%;
  height: 100%;
  padding-top: 18px;
  overflow: hidden;
  display: block;
  background-color: #f8f8f8;
  z-index: 0;
  min-width: 600px;
}
#codeZone, #resultZone {
  /*min-height: 50%;*/
  width: 50%;
  height: 100%;
  position: relative;
  top:0px;
  display:inline;
  overflow: hidden;
}
#codeZone {
  left: 0px;
  float: left;
}
#resultZone {
  right: 0px;
  float: right;  
  border-left: 2px solid #636363;
}

    /**
    *
    * TABS < MAIN SCREEN
    *
    **/
    /* Style the tab */
    .tab {
      overflow: hidden;
      border: 1px solid #e5e5e5;
      border-bottom: none;
      background-color: #ebebeb;
      height: 33px;
      min-width: 300px;
      position: relative;
      padding-left: 47px;
    }
    #resultZone > .tab {
      padding-left: 7px;
    }
    /* Style the buttons that are used to open the tab content */
    .tab button {
      background-color: #ebebeb;
      color: #939393;
      float: left;
      border: none;
      outline: none;
      cursor: pointer;
      padding: 7px 14px;
      transition: 0.3s;
    } 
    /* Change background color of buttons on hover */
    .tab button:hover {
      background-color: #ffffff;
    } 
    /* Create an active/current tablink class */
    .tab button.active {
      background-color: #ffffff;
      border-top: 2px solid #7070ef;
    }
    /**
    *
    * end : TABS < MAIN SCREEN
    *
    **/

    /**
    *
    * PADS < MAIN SCREEN
    *
    **/
    tab {
      width: 100%;
      margin: 0px;
      padding: 2px;
      display: block; 
    } 

        /**
        *
        * EDITPAD < MAIN SCREEN
        *
        **/
        #editPad {
          position: relative;
          display: block;
          width: 100%;
          height: calc(100% - 33px);
        }
        /* Style the tab content */
        .tabContent {
          display: none;
          border: 1px solid #e5e5e5;
          border-top: none;
          background-color: #ffffff;
          position: relative;
          height: 100%;
          width: 100%;
          top: 0;
          left: 0;
          visibility: visible;
        }
        #tabJs, #tabCss, #tabHtml {
          visibility: visible;
        }
        .tabContent {
          animation: fadeEffect 1s; /* Fading effect takes 1 second */
        }
        /* ACE modifications */
        .ace-chrome .ace_marker-layer .ace_active-line {
          background: #ececfe;
        }
        /**
        *
        * end : EDITPAD < MAIN SCREEN
        *
        **/

        /**
        *
        * VIEWPAD < MAIN SCREEN
        *
        **/
        #viewPad {
          position: relative;
          /*border-left: 2px solid #636363;*/
          display: block;
          width: 100%;
          height: calc(100% - 33px);
        }
        #viewPad > tab {
          padding: 0px;
        } 
        #plan {
          visibility: hidden;
        }
        /* Style the view content */
        .viewContent {
          display: none;
          /*border: 1px solid #e5e5e5;*/
          border: none;
          background-color: #ffffff;
          position: relative;
          height: 100%;
          width: 100%;
          top: 0;
          left: 0;
          visibility: visible;
        }
        .viewContent {
          animation: fadeEffect 1s; /* Fading effect takes 1 second */
        }
            /**
            *
            * WEBVIEW < VIEWPAD < MAIN SCREEN
            *
            **/
            #resultat {
              /*border-left: 2px solid #636363;*/
              /*height: 100%;*/
              height: 100%;
              position: relative;
              padding-bottom: 18px;
              transition: all 1s;
            }
            iframe {
              position: relative;
              display: block;
              border: 0px;
              top: 0px;
              left: 0px;
              width: 100%;
              min-height: 100%;
            }
            #consoleArrow {
              position:sticky;
              float: right;
              top: -18px;
              right: -4px;
              margin-top: -18px;
              margin-right: -4px;
              background-color: #7070ef;
              width: 18px;
              height: 18px;
              text-align: center;
            }
            #consoleArrow:hover {
              cursor: pointer;
            }
            #output {
              border-left: 2px #636363 solid;
              font-size: 12px;
              background-color: #636363;
              color: #f8f8f8;
              height: calc(25% + 18px);
              position: relative;
              top: -18px;
              padding: 18px 5px 5px 5px;
              overflow: auto;
              transition: all 1s;
            }
            /**
            *
            * end : WEBVIEW < VIEWPAD < MAIN SCREEN
            *
            **/
            /**
            *
            * README < VIEWPAD < MAIN SCREEN
            *
            **/
            #viewerReadmeToggle {
              height: 18px;
              position: relative;
              border-bottom: 1px solid #e5e5e5;
              display: block;
              text-align: right;
              padding: 0px 5px 0px 5px;
            }
            #viewerReadmeToggle a,
            #viewerReadmeToggle a:visited {
              font-size: 10px;
              color: #969696;
              text-decoration: none;
              position: relative;
              top: -3px;
            }
            #viewerReadmeToggle a:hover {
              color: #303030;
              text-decoration: none;
            }
            #viewerReadmeEdit {
              height: calc(100% - 18px);
              position: relative;
              transition: all 1s;
              display: none;
            }
            #viewerReadmePreview {
              height: calc(100% - 18px);
              max-height: calc(100% - 18px);
              overflow: auto;
              position: relative;
              transition: all 1s;
              display: block;
              font-size: 0.9em;
              padding: 3px;
            }
            /**
            *
            * end : README < VIEWPAD < MAIN SCREEN
            *
            **/
            /**
            *
            * PLAN < VIEWPAD < MAIN SCREEN
            *
            **/
            #viewerPlanToggle {
              height: 18px;
              position: relative;
              border-bottom: 1px solid #e5e5e5;
              display: block;
              text-align: right;
              padding: 0px 5px 0px 5px;
            }
            #viewerPlanToggle a,
            #viewerPlanToggle a:visited {
              font-size: 10px;
              color: #969696;
              text-decoration: none;
              position: relative;
              top: -3px;
            }
            #viewerPlanToggle a:hover {
              color: #303030;
              text-decoration: none;
            }
            #viewerPlanEdit {
              height: calc(100% - 18px);
              position: relative;
              transition: all 1s;
              display: none;
            }
            #viewerPlanPreview {
              height: calc(100% - 18px);
              max-height: calc(100% - 18px);
              overflow: auto;
              position: relative;
              transition: all 1s;
              display: block;
              font-size: 0.9em;
              padding: 3px;
            }
            /**
            *
            * end : PLAN < VIEWPAD < MAIN SCREEN
            *
            **/

        /**
        *
        * end : VIEWPAD < MAIN SCREEN
        *
        **/

    /**
    *
    * end : PADS < MAIN SCREEN
    *
    **/



/**
*
* PORTFOLIO
*
**/

portfolio {
  /*display: none;*/
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0px;
  left: -100vw;
  z-index: 500;
  /*background-color: rgba(255,255,255,0.5);*/
  border: 0px;
  padding: 5px 5px 5px 0px;
  transition: all 0.5s ease-in;
}

portfolioList {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
  background-color:#fefefe;
  border-left: 0px;
  border-top: 2px solid #636363;
  border-right: 2px solid #636363;
  border-bottom: 2px solid #636363;
  border-radius: 0px 12px 12px 0px;
  transition: all 0.5s ease-in;
  padding: 10px;
}

ptfCloseButton {
  position: absolute;
  top: 0;
  right: 0px;
  border-top: 0px;
  border-right: 0px;
  border-left: 1px solid #636363;
  border-bottom: 1px solid #636363;
  background-color:#e5e5e5;
  border-bottom-left-radius: 70%;
  width: 23px;
  height: 23px;
  padding-left: 7px;
  transition: all 1s;
}
ptfCloseButton:hover {
  cursor: pointer;
  background-color:#969696;
}

.labCollectionTable {
  border: 0px;
  border-collapse: collapse;
  width: 100%;
  padding-left: 10px;
}
.labCollectionTable tr:hover td {
  border-bottom: 1px solid #636363;
}
.labCollectionTable tr td:hover {
  background-color: #e5e5e5;
}
.labCollectionTable tr td {
  border-bottom: 1px solid #969696;
  color: #636363;
  font-size: 0.8em;
}
#ptfCollection table td a {
  color: #636363;
  text-decoration: none;
}
#ptfCollection table td a:hover {
  color: #636363;
  cursor: pointer;
  /*font-weight: bold;*/
}
.labCollectionIcon {
  width: 18px;
}

.svgDeleteIconActive {
  fill: #636363;
  cursor: pointer;
}
.svgDeleteIconDisabled {
  fill: #C5C5C5;
  cursor:not-allowed;
}

.labCollectionTable tr.submittedLabsCollectionRow {
  position: relative;
  top: -1px;
}
.labCollectionTable tr.submittedLabsCollectionRow td {
  border-bottom: 1px solid #636363;
  background-color: #f8f8f8;
}
.labCollectionTable tr.submittedLabsCollectionRow td.activeCell:hover {
  background-color: #e5e5e5;
}
#ptfCollection table td a.userLabLink:hover {
  /*font-weight: bold;*/
  color: #5050cd;
}

a.labsListArrow {
  padding-left: 3px;
}
a.labsListArrow > svg {
  transform: rotate(90deg);
}