body {
    margin: 40px auto;
    max-width: 650px;
    line-height: 1.6;
    font-size: 18px;
    color: #444;
    padding: 10px;
    background-color: #F0F0F0;
    position: relative;
}

h1, h2, h3 {
    line-height: 1.2;
    color: #3D3D3D;
}

pre {
    background-color: #EFEFEF;
    border: 1px solid #CCCCCC;
    border-left: 3px solid #1C5D75;
    color: #666;
    page-break-inside: avoid;
    font-family: monospace;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 1.6em;
    max-width: 100%;
    overflow: auto;
    padding: 1em 1.5em;
    display: block;
    word-wrap: break-word;
}

a.linkage:link {
  color: #1C5D75;
}

a.linkage:visited {
  color: #1C5D75;
}

a.linkage:hover {
  color: #3D3D3D;
  text-decoration: none;
}

a.linkage:active {
  background-color: #F0F0F0;
}

code {
    background-color: #F4F4F4;
    border: 1px solid #DDD;
    border-radius: 4px;
    color: #666;
    font-family: monospace;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    padding: 0.2em 0.4em;
    white-space: pre-wrap;
}

.faded-text {
  position: absolute;
  bottom: 100px;
  left: -50px;
  transform: rotate(-90deg);
  transform-origin: bottom left;
  opacity: 0.1;
  font-size: 56px;
  line-height: 1.2;
}

ul.custom {
  list-style-type: none;
  padding: 0;
  margin: 0;
  color: #333;
  background-color: #F7F3E9;
  border-radius: 10px;
  padding: 10px;
}

ol.custom {
  list-style-type: numeric;
  padding: 0;
  margin: 0;
  color: #333;
  background-color: #F7F3E9;
  border-radius: 10px;
  padding: 10px;
}

li.custom {
  padding: 3px;
  margin: 3px 0;
}

.radio-button {
      display: inline-block;
      padding: 2px 5px;
      background-color: #EFEFEF;
      border: 2px solid #999999;
      border-radius: 5px;
      font-size: 16px;
      font-family: Arial, sans-serif;
      text-decoration: none;
      color: #333333;
      cursor: pointer;
      text-align: center;
}

.radio-button:hover {
      background-color: #DDDDDD;
}

.radio-button:active {
      background-color: #CCCCCC;
}

.table-of-contents {
    border: 1px solid #999999;
    border-radius: 5px;
    padding: 25px;
}

.table-of-contents h2 {
    margin-top: 0;
}

.table-of-contents ol {
    list-style-type: decimal;
    margin-left: 20px;
    padding-left: 0;
}

.table-of-contents li {
    margin-bottom: 5px;
}

.table-of-contents a {
    text-decoration: none;
}

.table-of-contents a:hover {
    text-decoration: underline;
}

.checklist {
    margin: 20px left;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
}
.checklist li {
    list-style: none;
    margin-bottom: 10px;
}
.checklist input[type="checkbox"] {
    margin-right: 10px;
}