h3 {
    margin-top: 1em;
}

h4 {
    margin-top: .6em;
}

h5 {
    margin-top: .4em;
}

span.hint {
    position: relative;
    cursor: pointer;
}

span.hinttext {
    visibility: hidden;
    width: 400px;
    background-color: black;
    color: #ffffff;
    text-align: center;
    border-radius: 6px;
    padding: 5px 5px;
    position: absolute;
    top: -5px;
    left: 105%;
}

span.hint:hover span.hinttext {
  visibility: visible;
}

div.box {
    padding: 10px;
    border: 2px solid LightGray;
    border-radius: 5px;
    margin-bottom: 10px;
}

#toc_container {
    background: #f9f9f9 none repeat scroll 0 0;
    border: 1px solid #aaa;
    display: table;
    position: relative;
    width: 400px;
    margin-bottom: 1em;
    padding: 10px;
    width: auto;
}

.toc_title {
    font-weight: 700;
    text-align: center;
}

#toc_container li, #toc_container ul, #toc_container ul li{
    list-style: outside circle none !important;
}

.target-element {
    scroll-margin-top: 55px;
}

.image-container img {
    cursor: zoom-in;
}

.image {
    width: auto;
    max-height: 200px;
}

input[type=checkbox]
{
    display:none;
}

input[type=checkbox]:checked ~ label > img
{
    max-width: 900px;
    max-height: 3000px;
}

