*{
    font-family: 'Courier New', Courier, monospace;
    box-sizing: border-box;
}

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

html{
    overflow-y: scroll;
}

body{
    text-align: justify;
    margin: 0;
    display: flex;
    flex-direction: column;
    min-height: 100svh;
}

main{
    width: calc(min(100svw,440px));
    padding: 0 20px;
    margin: auto;
    flex: 1;
    display: flex;
    flex-direction: column;
}

header{
    text-align: center;
    top: 0;
    position: sticky;
    z-index: 1;
    background-color: white;
    margin-bottom: 10px;
}

header h1 {
  margin: 0;
}

a{
    color: black;
}

a:hover{
    text-decoration: underline wavy;
}

a.current{
    text-decoration: underline double;
}

footer{
    height: 30px;
    text-align: center;
}

.centre{
    text-align: center;
}

.filler{
    flex: 1;
    margin: 10px 0;
    display: flex;
    align-items: flex-end;
}

.clicky{
    cursor: pointer;
}

/* card */

#card_cont{
    perspective: 50px;
    flex: 1 1 0;
    display: flex;
    min-height: 0;
    justify-content: center;
    align-items: flex-start;
} 
    
#card{
    transform: rotateX(0deg);
    max-height: 100%;
    max-width: 100svw;
    object-fit: contain;
    pointer-events: none;
}

#plumb{
    position: absolute;
    left: 50%;
    height: 100%;
    border-left: 2px solid red;
}

.fit{
    object-fit: contain;
    bottom: 0;
    max-width: 100%;
    max-height: 100%;
}

li{
    list-style-type: '∟';
    padding-inline-start: 1ch;
}

.blue{
    color: blue;
}

.email-images{
    display: flex;
}

.email-images img{
    display: block;
    width: 100%;
}

.email-images a{
    display: block;
}

.email-images > span{
    flex: 1;
}

.alt-text{
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 100px;
}

#switch{
    height: 100px;
    width: 100px;
    margin: auto;
}

.tiny{
    font-size: 10px;
}

.no-select{
    user-select: none;
    margin: auto;
}