body {
  color: #999;
  background-color:#222222;
  margin: 0;
  font-family: Helvetica, Arial,  sans-serif;
}
.jumbotron {
  -webkit-border-radius: 7;
  -moz-border-radius: 5;
  border-radius: 7px;
  font-family: Arial;
  color: #999999;
  font-size: 16px;
  background: #333333;
  padding: 5px;
  text-decoration: none;
  text-align: center;
  width:90%;
}        
.jumbotron2 {
  -webkit-border-radius: 7;
  -moz-border-radius: 5;
  border-radius: 7px;
  font-family: Arial;
  color: #999999;
  font-size: 15px;
  background: #333333;
  padding: 10px;
  text-decoration: none;
  text-align: left;
}
/* ------------------ */
/*      FRETBOARD     */
/* ------------------ */
.fretboard{
    width:100%;
    height:240px;    
    margin:auto;
    position:absolute;
        top:60px;
        left:0px;
    cursor:default;
}
    .fretboard .backgroundimage{
        width:100%;
        height:240px;
        background-image:url(../images/fretboard-19la.png);
        background-size:contain;
        background-repeat:no-repeat;        
        z-index:-30;                
        position:absolute;
        top:36px;
        left:0;
    } 
    .fretboard .dots{
        width:100%;
        height:240px;
        background-image:url(../images/dots-v1la.png);
        background-size:contain;
        background-repeat:no-repeat;        
        z-index:-20;        
        position:absolute;
        top:36px;
        left:0;
    } 
/* BARRE */
.barre{
    width:100%;
    height:240px;    
    margin:auto;
    position:absolute;
    z-index: -5;
        top:60px;
        left:0px;
    cursor:default;
}
/* ---------------------- */
/*  END FRETBOARD IMAGES  */
/* ---------------------- */
.space { height: 350px; }
/* --------------- */
/*      FLEX       */
/* --------------- */
/* Flex container Horizontal */
.flex-container {  
  padding: 0;
  margin: 0;
  /*list-style: none;*/
  display: flex;
  flex-flow: row nowrap;
  height: 39px;
}
.flex-item {
  background: transparent;
  padding:10px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: transparent;
  border: solid 1px;
  border-color: transparent;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}
.flex-item-root {
  background: blue;
  padding:10px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: white;
  border: solid 1px;
  border-color: black;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}        
.flex-item-white {
  background: white;
  padding:10px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: black;
  border: solid 1px;
  border-color: black;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}        
.flex-item-black {
  background: #222222;
  padding:10px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: white;
  border: solid 1px;
  border-color: grey;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}        
.flex-item-red {
  background: red;
  padding:10px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: white;
  border: solid 1px;
  border-color: white;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}
.flex-item-number {
  background: transparent;
  padding:9px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: #77d42a;
  border: solid 1px;
  border-color: transparent;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 12px;
  text-align: center;
}
.flex-item-string {
  background: transparent;
  padding:8px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: #77d42a;
  border: solid 1px;
  border-color: grey;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 14px;
  text-align: center;
}
.flex-item-barre-top {
  background: grey;
  padding:8px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: transparent;
  border: solid 1px;
  border-color: black black transparent black;
  border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  /*border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;*/
  font-weight: bold;
  font-size: 14px;
  text-align: center;
}
.flex-item-barre-bottom {
  background: grey;
  padding:8px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: transparent;
  border: solid 1px;
  border-color: transparent black black black;
  /*border-top-left-radius: 45px;
  border-top-right-radius: 45px;*/
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;
  font-weight: bold;
  font-size: 14px;
  text-align: center;
}
.flex-item-barre-inside {
  background: grey;
  padding:8px;
  width: 39px;
  height: 39px;
  margin: auto;
  color: transparent;
  border: solid 1px;
  border-color: transparent black transparent black;
  /*border-top-left-radius: 45px;
  border-top-right-radius: 45px;
  border-bottom-left-radius: 45px;
  border-bottom-right-radius: 45px;*/
  font-weight: bold;
  font-size: 14px;
  text-align: center;
}
/* --------------- */
/*    END FLEX     */
/* --------------- */
/* --------------- */
/*  END FRETBOARD  */
/* --------------- */
/* --------------- */
/*     FLEX 3      */
/* --------------- */
* {
  box-sizing: border-box;
}
.flex-container3 {
  display: flex;
  flex-direction: row;
  font-size: 30px;
  text-align: center; 
  justify-content: space-around;
}
.flex-item-three {
  background-color: #222;
  padding: 10px;
  flex: 50%;
}
/* Responsive layout - makes a one column-layout instead of two-column layout */
@media (max-width: 800px) {
  .flex-container3 {
    flex-direction: column;
  }
}
.flex-container-notes {
  display: flex;
  flex-wrap: nowrap;
  background-color: #222;
}

.flex-container-notes > div {
  background-color: #333;
  width: 40px;
  margin: 1px;
  text-align: center;
  line-height: 20px;
  font-size: 16px;
  border: solid 1px;
  border-color: black;
}
/* --------------------------*/
/*           MODAL  (one)    */
/*---------------------------*/
.popup {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}
.popup-content {
    position: relative;
    background-color: #fff;
    margin: auto;
    padding: 0;
    width: 60%;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
    -webkit-animation-name: animatetop;
    -webkit-animation-duration: 0.4s;
    animation-name: animatetop;
    animation-duration: 0.4s
}
.popup-head {
    padding: 2px 16px;
    background-color: #222;
    color:darkgray;
}
.popup-main {padding: 2px 16px;  background-color: #333; color: darkgray; }
.popup-foot {
    padding: 2px 16px;
    background-color: #222;
    color: dimgray;
}
/* add animation effects */
@-webkit-keyframes animatetop {
    from {top:-300px; opacity:0}
    to {top:0; opacity:1}
}
@keyframes animatetop {
    from {top:-300px; opacity:0}
    to {top:0; opacity:1}
}
/* close button style */
.close {
    color: white;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
/* --------------------------*/
/*           MODAL  (two)    */
/*---------------------------*/
/* popuptwo box style */
.popuptwo {
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
}
.popuptwo-content {
    position: relative;
    background-color: #fefefe;
    margin: auto;
    padding: 0;
    width: 60%;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
    -webkit-animation-name: animatetop;
    -webkit-animation-duration: 0.4s;
    animation-name: animatetop;
    animation-duration: 0.4s
}
.popuptwo-head {
    padding: 2px 16px;
    background-color: #222;
    color:darkgray;
}
.popuptwo-main {padding: 2px 16px;  background-color: #333; color: darkgray; }
.popuptwo-foot {
    padding: 2px 16px;
    background-color: #222;
    color:darkgray;
}
/* add animation effects */
@-webkit-keyframes animatetop {
    from {top:-300px; opacity:0}
    to {top:0; opacity:1}
}
@keyframes animatetop {
    from {top:-300px; opacity:0}
    to {top:0; opacity:1}
}
/* closetwo button style */
.closetwo {
    color: white;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.closetwo:hover, .closetwo:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
/* ----------------------------------------*/
/*              BACK TO TOP  (add on)      */
/*-----------------------------------------*/
#BackTop {
  display: none;
  position: fixed;
  bottom: 18px;
  right: 1px;
  z-index: 99;
  outline: none;
  background-color: rgba(0,0,0,0.1);
  color: white;
  cursor: pointer;
  padding: 15px;
  border-radius: 10px;
	border-style: solid;
	border-color: white;
}
#BackTop:hover {
  background-color: #333;
}
/* __________________________*/
/* __________ Modes Flex __________ */
/* __________________________*/

/* --------------- */
/*      FLEX       */
/* --------------- */
/* Flex container Horizontal */
.flexModes-container {  
  padding: 1px;
  margin: 1px;
  list-style: none;
  display: flex;
  flex-flow: row nowrap;
  height: auto;
}
.flexModes-item-white {
  background: #f1f1f1;
  padding:1px;
  width: 150px;
  height: auto;
  margin: 1px;
  color: #111;
  border: solid 1px;
  border-color:  black;
  font-size: 16px;
  text-align: center;
}        
.flexModes-item-black {
  background: #333;
  padding:1px;
  width: 150px;
  height: auto;
  margin: 1px;
  color: #999;
  border: solid 1px;
  border-color: #444;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
}