@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('AtkinsonHyperlegibleNext-Regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
}
@font-face {
  font-family: 'Atkinson Hyperlegible Next';
  font-style: bold;
  font-weight: 400;
  src: local(''),
       url('AtkinsonHyperlegibleNext-Bold.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
}
@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('AtkinsonHyperlegibleMono-Regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
}
:root
{
    --dark0:  #2e3440;
    --dark1:  #3b4252;
    --dark2:  #434c5e;
    --dark3:  #4c566a;

    --light0: #d8dee9;
    --light1: #e5e9f0;
    --light2: #eceff4;
    --light3: #ffffff;

    --frost0: #8fbcbb;
    --frost1: #88c0d0;
    --frost2: #81a1c1;
    --frost3: #5e81ac;

    --red:    #bf616a;
    --orange: #d08770;
    --orange: #f28322;
    --yellow: #ebcb8b;
    --green:  #a3be8c;
    --purple: #b48ead;

    --text: var(--dark1);
    --text2: var(--dark3);
    --background: var(--light2);
    --background2: var(--light0);
    --border: var(--orange); /* #F28322 */
    --link: var(--orange);
    --selection-bg: var(--orange);
    --selection-color: var(--light2);
}

* {
        box-sizing: border-box;
        line-height: 1.5;
}

html,
body {
        background: var(--background);
        color: var(--text);
        margin: 0;
        padding: 0;
        min-height: 100vh;
}

html {
        font-family: "Atkinson Hyperlegible Next";
        font-size: 15px;

        @media (min-width: 750px) {
                font-size: 17px;
        }
}

body {
        border-color: var(--border);
        border-bottom-width: 4px;
        border-bottom-style: solid;
        border-top-width: 4px;
        border-top-style: solid;
        display: flex;
        flex-direction: column;
        margin-bottom: 4px;
}

.content {
        flex: 1;
}

#tagpage {
        font-size: 18px;
        margin-top: 10px;
}

#homepage {
        font-family: "Atkinson Hyperlegible Mono";
        font-size: 18px;
        margin-top: 10px;

        li {
                display: flex;
                flex-direction: row; 
                flex-wrap: wrap;

                .tags {
                        margin-left: 10px;
                        @media (max-width: 750px) {
                                flex: 100%
                        }
                }
        }
}


::selection {
        background: var(--selection-bg);
        color: var(--selection-color);
}

h1,
h2,
h3,
h4,
h5,
h6 {
        color: var(--dark3);
        line-height: normal;
}

a {
        color: var(--link);
        text-decoration: none;

        &:hover {
                text-decoration: underline;
        }
}

a.fill-div {
        display: block;
        height: 100%;
        width: 100%;
        z-index: 10;
        top: 0;
        left: 0;
        position: absolute;
        text-decoration: none;
}

img {
        display: block;
        margin: 0 auto;
        max-width: 100%;
}

td {
        vertical-align: top;
}

.container {
        margin: 0 auto;
        max-width: 800px;
        width: 100%;
        padding: 0 20px;
        box-sizing: border-box; 
}

.nav {
        box-shadow: 0 2px 2px -2px var(--dark1);
        overflow: auto;

        .nav-title {
                -webkit-transition: all .2s ease-out;
                -moz-transition: all .2s ease-out;
                transition: all .2s ease-out;
                color: var(--text);
                /* display: inline-block; */
                margin: 0;
                padding-right: .2rem
        }
        .nav-title:hover,
        .nav-title:focus {
                opacity: .6;
        }

        .container {
                display: flex;
                justify-content: space-between; 
                align-items: center;           
                height: 80px;
        }

        ul {
                list-style-type: none;
                margin: 1rem 0 0;
                padding: 0;
                text-align: center;
                display: flex;

                li {
                        @include transition(all .2s ease-out);
                        color: var(--text);
                        opacity: .6;
                        padding: 0 2rem 0 0;

                        &:last-child {
                                padding-right: 0;
                        }

                        &:hover,
                        &:focus {
                                opacity: 1;
                        }
                }
        }
        a {
                color: var(--link);
        }
}

@media (min-width: 750px) {
        .nav {
                .nav-container {
                        text-align: left;
                }

                ul {
                        bottom: 0;
                        right: 0;
                }
        }
}

footer {
        padding: 2rem 0;
        text-align: center;

        span {
                color: var(--text);
                font-size: .8rem;
        }
}

.embed-video {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%;
        margin-bottom: 1em;

        iframe {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
        }
}

.post {
        padding: 3rem 0;

        .post-info {
                width: 100%;
                height: 100%;
                /*color: #979797;*/
                margin-bottom: 1rem;
                /* display: inline-block; */

                .date {
                        float: left;
                }
                .tags {
                        /* float: right; */
                        /* text-align: right; */
                        font-size: 1.04rem;
                        max-width: 60%;
                }
        }

        .post-title {
                color: var(--dark3);
                font-size: 3rem;
                margin: 1rem 0;
                line-height: 0.9;
                text-align: center;
        }

        .post-line {
                border-top: 0.4rem solid var(--border);
                /* display: block; */
                margin: 0 auto 2rem;
                width: 6rem;
        }

        a:hover {
                text-decoration: underline;
        }

        article {
                h1 {
                        border-bottom: .2rem solid var(--border);
                }
        }

        figure{
                background-color: var(--background2);
        }

        figcaption {
                color: var(--text2);
                background-color: var(--background2);
                text-align: center;
                margin: 0;
                font-size: 0.8rem;
                line-height: 1.4;
                font-style: italic;
        }
        figcaption > p {
                margin: 0;
        }
}

.tag-container {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin: 20px 0;
}

.tag {
        display: inline-flex;
        align-items: center;
        padding: 0px 4px;
        margin: 3px 0px;
        font-size: 0.85rem;
        text-decoration: none;
        transition: all 0.2s ease-in-out;
        border-radius: 7px;
        background-color: hsl(var(--tag-hue), 70%, 94%);
        color: hsl(var(--tag-hue), 60%, 25%);
        border: 1px solid hsl(var(--tag-hue), 40%, 80%);

        &:hover {
                transform: translateY(-3px);
        }
}

/* Conteneur principal de la note */
.footnote-definition {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        /* margin: 1.5rem 0; */
        /* padding: 0.8rem; */
        font-size: 0.9rem;
        /* color: #555; */
        /* border-left: 3px solid #e0e0e0; */
        /* background-color: #f9f9f9; */
        /* border-radius: 0 4px 4px 0; */
        /* transition: all 0.3s ease; */
}

/* Changement d'état au survol */
/* .footnote-definition:hover { */
/*     border-left-color: #007bff; /* Une couleur d'accentuation */ */
/*     background-color: #f0f7ff; */
/*     color: #333; */
/* } */

/* Stylisation du numéro (le label) */
.footnote-definition-label {
        font-weight: bold;
        /* color: #007bff; */
        vertical-align: super;
        font-size: 0.8rem;
        min-width: 1.5rem;
}

/* Stylisation du paragraphe interne */
.footnote-definition p {
        margin: 0;
        line-height: 1.4;
        font-style: italic;
}
