@font-face{
  font-family: IBM Plex Mono;
  src: url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@1,300&display=swap');
}

body{
    background-color: rgb(33, 10, 15);
    font-family: 'IBM Plex Mono', monospace;
    max-width: 800px;
    width: 100%;    
    margin: 0 auto;
}

header{
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: rgb(34, 85, 90);
    font-style: italic;
    text-align: center;
}


div{
    color: white;
    background-image: none;
    background-color: #000000;
    margin: 20px;
    padding: 10px;
    height: auto;
    text-align: justify;
    /* debug
    border: 1px solid red;
    */
}

div.captionbox{
    margin: 0;
    padding: 0;
    font-size: 12px;
    text-align: center;
    background-color: inherit;
    color: #666;
}

div.fillerbox{
    margin: 10px 0;
    padding: 0;
    background-color: inherit;
    color: inherit;
}

.fillerbox table {
  width: 100%;
  table-layout:auto;
  border-collapse: collapse;
}
.fillerbox th:nth-child(1) { width: 75%; }
.fillerbox th:nth-child(2) { width: 25%;text-align: right; padding-right: 10px; }

.fillerbox td:nth-child(2) {text-align: right; padding-right: 10px;}

.fillerbox tr { height: 10px; }

div.Titlebox{
    width: 100%;
    padding: 0;
    padding-top: 10px;
    padding-bottom: 10px;
    color: white;
    background-color: rgb(50, 0, 50);
    text-align: center;
    margin: 10px 0;
}

div.Titlebox h1,
div.Titlebox h5,
div.Titlebox p {
    margin-top: 4px;
    margin-bottom: 4px;
}

a{
    color: white;
    text-decoration: underline;
}
a:hover {color: darkblue;}

footer{
    color: white;
    text-align: center;
}

img {
    height: auto;
    padding-top: 10px;
    padding-bottom: 5px;
    display: block;
    margin: 0 auto;
    max-width: 75%;
}

img[alt] {
    color: #666;
    font-size: 12px;
    text-align: end;
}

@media (max-width: 600px) {
    body {
        max-width: 100%;
        margin: 0;
    }
    div {
        height: auto;
    }
}

/* Two-column (flex) utility for side-by-side blocks */
.two-col{
    display: flex;
    gap: 12px; /* space between columns */
    align-items: flex-start;
    flex-wrap: wrap; /* allow columns to wrap on narrow screens */
    box-sizing: border-box;
}
.two-col .col{
    flex: 1 1 45%; /* grow/shrink, start at 50% width */
    min-width: 220px; /* prevents columns from getting too narrow */
    box-sizing: border-box;
}

@media (max-width: 500px) {
    .two-col .col{ flex-basis: 100%; }
}