
/* font: Noto Serif */
@font-face {
    font-family: 'Noto Serif';
    src: local('Noto Serif Regular'),
         url('/style/NotoSerif-Regular.woff2') format('woff2'),
         url('/style/NotoSerif-Regular.woff') format('woff'),
         url('/style/NotoSerif-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap; /* TODO optional? */
}
@font-face {
    font-family: 'Noto Serif';
    src: local('Noto Serif Italic'),
         url('/style/NotoSerif-Italic.woff2') format('woff2'),
         url('/style/NotoSerif-Italic.woff') format('woff'),
         url('/style/NotoSerif-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Noto Serif';
    src: local('Noto Serif Bold'),
         url('/style/NotoSerif-Bold.woff2') format('woff2'),
         url('/style/NotoSerif-Bold.woff') format('woff'),
         url('/style/NotoSerif-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* font: Go Mono */
@font-face {
    font-family: 'Go Mono';
    src: local('Go Mono'),
         url('/style/Go-Mono.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* font: Courier Prime */
@font-face {
    font-family: 'Courier Prime';
    src: local('Courier Prime'),
         url('/style/CourierPrime-Regular.woff2') format('woff2'),
         url('/style/CourierPrime-Regular.woff') format('woff'),
         url('/style/CourierPrime-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}







/* Full-page background */
body {
    background: url('/style/background-3.webp') no-repeat center center fixed;
    background-size: cover;

    font-family: 'Noto Serif', serif;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 40px 0px 40px 0px; /* space around the panels */
    box-sizing: border-box;

    overflow: overlay;
}

/* Container holding the two panes */
.cont {
    display: flex;
    gap: 15px; /* space between the panes */
    max-width: 1200px;
    width: 100%;
    
    justify-content: center;
}
/* Sidebar / nav pane */
.cosi {
    position: sticky;
    top: 40px; /* distance from top of viewport */
    flex: 0 0 250px;
    background-color: rgba(255, 255, 255, 1);
    padding: 18px;
    align-self: flex-start; /* important: only take the space it needs */
    
    max-width: 190px;
    border: 2px solid black;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
/* Main content pane */
.coma {
    flex: 1; /* fill remaining space */
    background-color: rgba(255, 255, 255, 1);
    padding: 0px 18px 10px 18px;
    
    max-width: 650px;
    border: 2px solid black;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

@media (max-width: 927px) {
    body {
        padding: 20px 0; /* remove side padding, keep top/bottom space */
        background-image: none;
    }
    .cont {
        /* flex-direction: column-reverse; */
        /* max-width: calc(100% - 80px); /* 40px padding on each side from body  */
        flex-direction: column;
    }
    .cosi {
        width: 100%;
        position: static;
        /*max-width: calc(100vw - 40px);*/
        max-width: calc(100% - 40px);
    }
    .coma {
        width: 100%;
        max-width: calc(100% - 40px);
    }
}

/*
.container {
    display: flex;
    justify-content: center;
    margin: 100px auto 0 auto;
    position: relative;
    max-width: 100%;
    width: fit-content;
}

.content {
    width: 650px;
    height: 900px;
    overflow-y: auto;
     *background-color: #eabe4f;
    background-color: #ffffff;
    color: black;
    padding: 0 20px 20px 20px;
    border: 2px solid black;

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.side-panel {
    width: 200px;
    align-self: flex-start; * automatically changes height because of display:flex, this fixes
    *background-color: #757169;
    *background-color: #c9ea4f;
    *background-color: #ea714fee;
    background-color: #ffffff;
    color: black;
    padding: 20px;
    border: 2px solid black;
    margin-left: 10px; * space between side panel and main panel
}

*/




.name {
    padding-left: calc(var(--depth) * 1.5rem);
}
table {
  border-collapse: separate;
  border-spacing: 0 0; /* 20px horizontal, 0 vertical */
}
tbody tr:nth-child(odd) {
  background-color: #f7f7f7;
}
td {
  padding: 1px 12px;
}

figure {
    display: block;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 40px;
    margin-right: 40px;
}
figcaption {
    font-size: 0.9em;
    color: #555;
    margin-top: 0.5em;
}

code {
    background-color: #f4f4f4;
    color: #333;
    font-family: 'Go Mono', 'Courier Prime', monospace;
    font-size: 0.85em;
}
code.block {
    display: block;
    overflow-x: auto;
    padding: 1em;
    line-height: 1.5;
}

/*
ul {
    list-style: none;
}
li {
    border-bottom: 1px solid #ddd;
    display: grid;
    grid-template-columns: 1fr 1fr 90px;
    align-items: flex-start;
    gap: 1rem;
}
li a {
    text-decoration: none;
}
*/



a {
    text-decoration: underline;
    color: #0D6EFD /*#007BFF*/;
}
a:hover {
    text-decoration-style: wavy;
    /* text-decoration-color: #FF8400; */
}
a[href^="http"] {
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: #0077cc; /* #0D6EFD */ /*#007BFF */
}
a[href^="http"]::after {
    content: " (" attr(href) ")"; /* shows the link’s href */
    font-size: 0.8em;
    color: #555;
}
