/* * {
    border: 1px solid black
} */

html,
body {
    height: 100%
}

body {
    /* height:100vh; */
    background: lightpink;
    margin: 0;
    padding: 0;

    display: grid;
    grid-template: auto 1fr auto / 1fr;

    overflow: hidden;

    font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
}

/* header */
header {
    position: sticky;
    top: 0;
    border-bottom: 1px solid black
}

header h1 {
    margin: 0.5em 0;
    padding: 0 1em;
    color: white;
    text-shadow: 1px 1px black, -1px -1px black, 1px -1px black, -1px 1px black
}

/* content (general) */
main {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    overflow: hidden;
    min-height: 0;
}

.demos,
.notes,
.refs {
    overflow: auto;
    min-height: 0;
    scrollbar-gutter: stable;

    background: pink;
    border-right: 1px solid black;
    padding: 0.5em;

}

.demos {
    display: grid;
    grid-template: max-content / repeat(3, 1fr);
    gap: 1em;
    align-content: start;
}

.item {
    border-radius: 0.5em;
    background: white;
    border: 1px solid black;
    text-align: center;
    margin: 0;
    display: flex;
    flex-direction: column;
    height: min-content
}

.item img {
    width: 100%;
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    box-sizing: border-box;
}

.demos img {
    height: 100px;

}

.item.old-week img {
    display: none;
    pointer-events: none;
}

.item.old-week:hover img {
    display: block;
    pointer-events: auto;
}


.item blockquote {
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
    font-style: italic;
    font-size: 2em;
    margin: 0.5em;
    padding: 0.5em;
    border: 2px dotted black;
}

.item figcaption {
    font-family: monospace;
    text-align: left;
    max-width: 100%;
    margin: 0.5em;
}

.item .domain {
    padding: 1em
}

.item iframe {
    width: 100%;
    display: block;
    aspect-ratio: 16 / 9;
    height: auto;
    max-width: 100%;
    border: 0;
}

.notes>.item,
.refs>.item {
    margin-bottom: 1em
}

/* footer  */
footer {
    position: sticky;
    bottom: 0;
    padding: 0;
    border-top: 1px solid black
}

footer p {
    text-align: right;
    margin: 1em
}