@import url('https://fonts.googleapis.com/css2?family=Old+Standard+TT&family=Tulpen+One&family=Urbanist:wght@700&display=swap');
:root{
  --black:#242D3C;
  --accent:#7192BE;
  --highlight:rgba(255, 98, 152, 1); /*#FF6298; /*too light #D49DA1;*/
  --white:#EBEBE5;
  --dark:#4F396A;
  --dark-accent:#AFCAEE;

  --radius:1rem;
  --general-margin:1rem;
  --book-margin:1.5rem;

  --max-container-width:1200px;
}

.old-standard-tt-regular {
  font-family: "Old Standard TT", serif;
  font-weight: 400;
  font-style: normal;
}

.urbanist {
  font-family: "Urbanist", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

/*-- GLOBAL --*/
html
{
  font-size: 1em;
  font-family: "Old Standard TT", serif;
  font-weight: 400;
  font-style: normal;
  color:var(--white);
  scroll-behavior: smooth;
  text-align: justify;
  background-color: var(--black);
  box-sizing: border-box;
}

body{
  margin: 0;
  overflow-x: hidden;
  width: 100%;
}

h1, h2, h3 {
  font-weight: normal;
}

a{
  text-decoration:none;
  color: var(--white);
  transition: all ease-out .5s;
}

a:hover, a.active{
  color: var(--highlight);
  transition: all ease-out .5s;
}

ul {
  list-style: none;
  padding: 0;
}

.autobr{
  display: block;
  content: "";
  margin: 1rem;
}

/*--- utils ---*/
.flex{
  display: flex;
  gap: var(--gap, 1rem);
  align-items: center;
  flex-wrap: nowrap;
}

.container {
  margin: 0 auto;
  max-width: var(--max-container-width);
  width: 90%;
  padding: 0;
}


.row{
  flex-flow: row wrap;
  flex-direction: row;
}

.reverse-rows{
  flex-direction: row-reverse;
}

.col{
  flex-flow: column;
}

.spread{
  justify-content: space-between;
  flex-wrap: wrap;
}

.separate{
  justify-content: space-evenly;
  flex-wrap: wrap;
}

.center{
  align-items: center;
  align-content: center;
  justify-content:center;
}

.warp{
  flex-wrap: wrap !important;
}

.no-gap{
  --gap:0px;
}

/*----- HEADER ----*/
header{
  width: 100%;

}

nav{
  font-size: 1.5rem;
  font-family: "Urbanist", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  --gap:0px;
  ul > li > a{
    padding: 1rem;
  }
  a{
    display: block;
  }
  a:hover::after{
    content: "";
    /*float: left;*/
    background: var(--highlight);
    width: 100%;
    height: 6px;

    border-radius: 3px;
    margin-top: 5px;
    transition: all ease-out .5s;

  }

  a::after{
    /*border: solid 0px var(--white);*/
    content: "";
    /*float: left;*/
    display: flex;
    flex-direction: row;
    align-content: center;
    background: var(--highlight);
    margin-inline: auto;
    text-align: center;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    margin-top: 8px;
    transition: all ease-in 0.4s;

  }

  h2{
    padding: 0;
    margin: 0;
  }

}

#logo{
  align-self:flex-start;
  .logo{
    background-color: var(--accent);
    border-bottom-right-radius: var(--radius);
    padding-inline: var(--general-margin);
    align-items: baseline;
    --gap:0px;
  }

  h1,h2,h3{
    margin: 0;
    padding: 0;
  }
  h1, h2{
    display: inline;
  }
  h1{
    font-size: 5rem;
  }
  h3{
    color:var(--accent);
    margin-inline: 1rem;
  }
  i{
    text-align: right;
    flex-grow: 1;
    margin-right: 1rem;
  }
}

h2 ~ .options{
  margin-top: 0px !important;
}

main {
  margin-bottom: 5rem !important;
  h1{
    /*margin-inline : var(--general-margin);*/
    font-size: 2rem;
  }
}

.fonctions, .fonctions button{
  font-size: 2rem;
  margin-right:var(--general-margin);
  --gap:1rem;
  > li > a {
    padding: .5rem;
  }

}

.Thumbnails{
  align-items: center;
  margin-left: var(--book-margin);
  --gap : calc(1.5 * var(--book-margin));
  > li{
    aspect-ratio: 1/1.5;
    background-color: var(--dark-accent);
    max-width: 19%;
    min-width: 200px;
    box-sizing: border-box;
    border-top-right-radius: var(--radius);
    border-bottom-right-radius: var(--radius);
    position: relative;
    height: calc(100% + var(--book-margin));
  }
}


.book{
  aspect-ratio: 1/1.5;
  position: absolute;
  background-color: var(--accent);
  border: 2px solid var(--black);
  padding: var(--book-margin);
  max-width: calc(19% - var(--book-margin));
  min-width: calc(200px - var(--book-margin));
  border-top-right-radius: var(--radius);
  border-bottom-right-radius: var(--radius);
  border-top-left-radius: calc(0.25 * var(--radius));
  border-bottom-left-radius: calc(0.25 * var(--radius));
  transform: rotateY(20deg) translateX(calc(-10px - var(--book-margin)));
  transition: all ease-out 1.0s;
  height: calc(100% - 2 * var(--book-margin));
}

.big-shadow{
  background-color: var(--dark-accent);
  box-sizing: border-box;
  border-top-right-radius: var(--radius);
  border-bottom-right-radius: var(--radius);
  position: relative;
  max-width: calc(0.3 * var(--max-container-width)) !important;
  width: calc(0.3 * var(--max-container-width)) !important;
}

.big-book{
  height: auto !important;
  position: relative !important;
  max-width: calc(0.3 * var(--max-container-width)) !important;
  transform: rotateY(5deg) translateX(calc(-0.5 * var(--book-margin))) !important;
}

.book:has(.book-cover){
  background-color: var(--white);
}

 .more {
   background-color: var(--dark);
   font-size: 4rem !important;
   display: flex;
   justify-content: center;
   align-items: center;
 }

a:hover > .more {
  background-color: var(--highlight);
}

a > .book {
  color: var(--white);
}

a:hover > .book{
  transform: rotateY(0deg) translateX(calc(-1 * var(--book-margin)));
  transition: all ease-in .2s;
  color: white;
  background-color: var(--highlight);
  > img {
    opacity: 0.9;
  }
}

.book-title, .book-subtitle, .book-star{
  text-align: center;
  position: relative;
  z-index: 10;
  text-shadow: var(--dark) 2px 1px;
  margin: auto;
}

.book-title{
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.4rem;
}

.book-subtitle{
  font-weight: lighter;
  font-size: 0.9rem;
}

.book-date{
  text-align: right;
  position: absolute;
  bottom: var(--book-margin);
  right: var(--book-margin);
  text-shadow: var(--dark) 1px 1px;
  font-weight: lighter;
  font-size: 0.8rem;
  z-index: 10;

}
.book-star{
  margin-top: 1.5rem;
  font-size: .5rem;

}

.book-cover{
  --border-book: 2px;
  position: absolute;
  object-position: center;
  object-fit: cover;
  overflow: clip;
  top: var(--border-book);
  left: var(--border-book);
  min-width: calc(100% - 2 * var(--border-book));
  height: calc(100% - 2 * var(--border-book));
  aspect-ratio: 1/1.5;
  border-top-right-radius: var(--radius);
  border-bottom-right-radius: var(--radius);
  border-top-left-radius: calc(0.25 * var(--radius));
  border-bottom-left-radius: calc(0.25 * var(--radius));
  opacity: 0.7;
  filter: blur(2px);
}

.livre{
  flex: 2;
  min-width: 400px;
  h1, h2{
    margin: 0;
    padding: 0;
  }
  h1{
    font-weight: bold;
    text-transform: uppercase;
  }

 .date{
   text-align: right;
   align-self: baseline;
 }

 .description{
    font-weight: bold;
    margin-top: var(--general-margin);
    margin-bottom: var(--general-margin);
 }
 .livre-title{
   /*margin-bottom: var(--general-margin);*/
 }
}

.classification{
  font-family: "Urbanist", sans-serif;
  font-optical-sizing: auto;
  margin-bottom: calc(2 * var(--general-margin));
}

hr {
   margin-top: 3rem;
   height: 2px;
   background-color: var(--accent);
   border:none
 }

footer{
  width: 100vw;
  background-color: var(--accent);
  bottom: 0px;
  position: fixed;
  padding-bottom: 1rem;
  padding-top: 1rem;
}
