@font-face {
    font-family: Bastien;
    src: url("./Bastien-Regular.otf") format("opentype");
}

:root {
    color-scheme: dark;
    background-color: #360842;
    --text-color: #f3f3ff;
    color: var(--text-color);
    font-size: 140%;
    font-family: Bastien, Garamond, serif;
}

:root.police-lisible {
    font-family: Garamond, serif;
    font-size: 100%;
}

body {
    display: block;
    max-width: min(100ch, 100% - 4rem);
    margin-inline: auto;
    padding-bottom: 2rem;
}

main {
    font-size: 1.2rem;
    line-height: 1.5;
}

a:link {
    color: hsl(310, 75%, 80%);
}

a:visited {
    color: hsl(310, 75%, 70%);
}

a:hover {
    color: hsl(310, 75%, 90%);
}

a:active {
    color: hsl(310, 75%, 80%);
}

my-intro {
    display: block;
    margin-bottom: 4rem;
}

my-chapters {
    display: block;
}

summary {
    margin-bottom: 1rem;
}

fieldset > *:not(:last-child) {
    margin-bottom: 0.5rem;
}

nav {
    margin-top: 3rem;
}

footer {
    margin-top: 2rem;
}

#notes > *:not(:last-child) {
    margin-bottom: 2rem;
}

.texte-de-roman {
    text-align: justify;
}

.chapitres-nav {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 50px;
}

.footnote {
    font-size: 0.9rem;
}

.lettre {
    font-size: 1.06rem;
    padding-left: 32px;
    font-style: italic;
    border-left: 1px solid var(--text-color);
}

@media (max-width: 800px) {
    :root {
        font-size: 110%;
    }

    body {
        max-width: calc(100% - 2rem);
    }

    .texte-de-roman {
        text-align: start;
    }
}
