html, body {
    height: 99.8%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 18px;
    background-color: #CBC6AE;
}

body > .page {
    flex: 1;
    display: flex;
    flex-direction: column;
    max-height: 100vh;
}

/* --- Flex row layout for aside + main --- */
.row {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.row aside {
    flex: 0 0 130px;
    height: 99.5%;
    background-color: #fff8f8bb;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;    
    padding: 0px 8px 8px 0px;
    overflow: auto;    
    min-width: 190px;
    width: 220px;
    float: left;
}

@media screen and (max-width: 1039px) {
    .row aside {
        padding: 1px;
    }

}
@media screen and (min-width: 1040px) {
    .row aside {
        padding: 1em;
        min-width: 370px;
        width: 370px;
    }
}

.row aside ol, .row aside ul {
  margin: 0;
  padding: 0;
  list-style: none;
  flex: 1 1 auto;
  overflow-x: hidden;
  overflow-y: auto;
}

p {
    margin: 2px 0 2px 0;
    padding:2px;
    max-width:900px;
}

h1,h2 {
    text-align: center;
}

div.page {
    height: 96%;
    /* width: 99.8%; */
    /* max-width: 1480px; */
    position: relative;
    border-spacing: 1px;
    border-collapse: separate;
    border: solid 2px #795d21c9;
    background-color: #ffffffa0;
}

header {
    margin-top:4px;    
    background: linear-gradient(0.02turn, #ffffffff, #ffffffd0, #ffffff60);
    min-height:45px;
    height:70px;
}

header>div {
    width:100%;
    height:100%;
    text-align: center;
    background-image: url(/images/background.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: left;
    display: flex;
    justify-content: center;
    align-items: center;
}

header h1, header a, header img {
    display:inline-block;
    text-wrap: auto;
    text-wrap-mode: wrap;
    text-wrap-style: balance;    
}

@media screen and (max-width: 1040px) {
    header img {
        display:none;
    }
}

a.printer {
    cursor: copy,context-menu,pointer;
}

aside, main {
    border: solid 1px #75611edb;
    margin:2px;
}

main {
    
    background: linear-gradient(0.25turn, #ffffffa8, #ffffff40);
    width:100%;
}

@media screen and (min-width: 1200px) {
    main {
        padding-left: 12px;
    }
}

aside ol,  aside ul {
    padding-inline-start: 0px;
}
aside p {
    margin-top: 10px;
    text-align: center;
}
aside li {
    display: block;
    border-bottom: 1px solid #ddd;    
}
aside li a {
    text-decoration: none;
    display: block;
    color: #000;
    padding: 3px 3px;
}
@media screen and (min-width: 1100px) {
    aside li a {
        padding: 5px 16px 2px 10px;
    }
}
@media screen and (min-width: 1450px) {
    main scrollable {
        padding: 0 12px 10px 12px;
    }
}

aside li a:hover {
    background : #5092DB url(/images/linkarrow.gif) no-repeat right center;/* #4688D1 #3574BA*/
    color: #fff;
    text-decoration: none;
}

li.selected {
    background-color:#FFE5CC; 
}

.scrollable {
  height: 96%;
  overflow: auto;
  padding: 10px;
  box-sizing: border-box;
  position: relative;
  flex: 1;
}

.flexRow {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: fit-content;
    text-align: center;
}

a.printer {
    cursor: copy,context-menu,pointer;
}
.content {
  font-family:Tahoma, Verdana, Arial, system-ui; 
  max-width: 1150px;
}
.restoreLink:hover {
    background-color:blue;
}
li.selected {
    background-color:#FFE5CC; 
}
.questions div {
    height: 130px;
}

.header {
    text-align:center;
    max-height:42px;
}

.header table {
    width:100%;  
}


/* Tooltip container */
.tooltip {
  position: relative;
  display: inline-block;
  /*border-bottom: 1px dotted brown; /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  width: 200px;
  background-color: #87d;
  color: #fff;
  text-align: center;
  padding: 4px;
  border-radius: 6px;
  font-size:1.2em;

  /* Position the tooltip text */
  position: absolute;
  z-index: 1;
  top: 125%;
  left: 25%;
  margin-left: -60px;

  /* Fade in tooltip */
  opacity: 0;
  transition: opacity 1.8s;
}

/* Tooltip arrow */
.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #555 transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
  visibility: visible;
  opacity: 0.96;
}

.theoryContent {
  height: 97%;
  overflow:auto;
  padding:8px
}

.flexRow {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: fit-content;
    text-align: center;
}

/*                 Master wallpaper     */

#balloon {
    width: 200px;
    height: 25px;
    background-color: #ffcc00;
    border: 1px solid #000;
    border-radius: 10px;
    padding: 4px;
    position: absolute;
    bottom: 10px;
    right: 10px;
    cursor: move;
  }
  #menu {
    display: none;
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 10px;
    padding: 10px;
    position: absolute;
  }
  .image-option {
    display: flex;
    align-items: center;
    margin: 5px 0;
  }

  .ui-widget-overlay{opacity:unset; background:unset; transition: backdrop-filter 3s;}
  

  .biglinks a {
      display: block; width: 100%; height: 100%;
  }

  .biglinks a:hover {
      filter: sepia(1);      
      border: solid 1px orange;
  }

  .example {
      background:#ccddff; 
      border:1px solid #cccccc; 
      padding:5px 10px;
      margin:12px 0;
      width:900px;
  }

 .img_background {
      background:#adb9ca; 
      border:1px solid #5b9bd5; 
      padding:5px 5px;
      margin:12px 0;
      width:900px;
      text-align:center;
  }

  .code {
      white-space: pre;
      font-family: monospace;
  }
  .lastModified  
  {
    float: right;
    padding: 4px;
    color: chocolate;
  }  
  .lastModified>.value
  {
    color: #ba4;
  }

section {
  background-color:#d6dce5
}
