/*
	* Copyright : GREZI
	* Author : Adrien Solacroup
	* Encoding : UTF-8
	* Licence (code) : GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007
	* Licence (distribution) : Creative Commons Attribution BY SA 4.0 International
*/

/*
--------------------------------
DECLARING VARIABLES
--------------------------------
*/

@font-face {
  font-family: "Amatic SC";
  font-style: normal;
  font-weight: 400;
  src: url("../font/TUZyzwprpvBS1izr_vOECuSf.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url("../font/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVI.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Virgil";
  src: url("../font/Virgil.woff2") format('woff2');
}

@font-face {
  font-family: "Nunito";
  src: url("../font/Nunito-Black.woff2") format('woff2');
}

/*
--------------------------------
GENERAL STYLES
--------------------------------
*/

/* MISCELLANEOUS */

body {
  display: none;
  font-family: var(--font_03), Arial;
  font-size: 0.75rem;
  letter-spacing: 0.0625em;
  background: transparent;
  background-repeat: no-repeat;
  background-attachment: fixed;
  /* background-size: 100%; */
}

::selection {
  color: white;
  background: var(--main_color_02);
}

::-moz-selection {
  color: white;
  background: var(--main_color_02);
}

a,
a:not([href]):not([tabindex]) {
  color: var(--main_color_01);
}

a:focus,
a:hover,
a:not([href]):not([tabindex]):focus,
a:not([href]):not([tabindex]):hover {
  text-decoration: none;
  text-shadow: 1px 0 0 currentColor;
  font-weight: initial;
  color: var(--main_color_01);
}

a:focus,
a:active {
  outline: none;
}

h1 {
  font-family: var(--font_02), Arial;
  font-size: 1.75rem;
}

h2 {
  font-size: 1.5rem;
}

h4 {
  font-size: 1rem;
}

@media (min-width: 992px) {
  body {
    font-size: 1rem;
  }

  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h4 {
    font-size: 1.5rem;
  }
}

.badge {
  background-color: var(--main_color_01);
}

.badge_warning {
  background-color: var(--quit_color_01) !important;
}

pre {
  background-color: rgba(240, 240, 240, 0.5);
  border: 1px solid #ccc;
  border-radius: 2px;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
  color : var(--quit_color_01);
  padding: 10px;
  font-family: monospace;
  height: 200px;
}

/* NAVBAR */

#mainNav {
  z-index: 999999999;
  background-color: var(--main_color_01);
  padding: .5rem;
  min-height: 8vh;
}

#mainNav .container-fluid {
  padding: 0;
}

#mainNav .navbar-toggler {
  font-size: 80%;
  padding: 0.75rem;
  color: var(--main_color_03);
  border: 1px solid var(--main_color_03);
}

#mainNav .navbar-toggler:focus {
  outline: none;
}

#nav_title {
  font-family: var(--font_01), Arial;
  color: var(--main_color_03);
  font-size: 200%;
  font-weight: bold;
}

#modeIndicator {
  position: absolute;
  width: 100%;
  display: grid;
  justify-content: center;
  pointer-events: none;
  font-family: var(--font_02), Arial;
  color: var(--main_color_03);
  font-size: 125%;
  font-weight: bold;
}

#modeIndicator .btn {
  padding: .25rem;
  pointer-events: initial;
}

#mainNav .navbar-nav .nav-item:hover,
.navbar-light .navbar-nav .nav-link {
  color: var(--main_color_03);
  outline: none;
  background-color: transparent;
}

#mainNav .navbar-nav .nav-item:active, #mainNav .navbar-nav .nav-item:focus {
  outline: none;
  background-color: var(--main_color_03_faded);
}

#mainNavv.navbar-shrink .nav-link .navbar-icon {
  filter: invert(100%);
}

#mainNav .dropdown-item.active, .dropdown-item:active {
  background-color: var(--main_color_02_faded);
}

#mainNav .dropdown-menu {
  padding-left: .5rem;
  padding-right: .5rem;
}

#mainNav .navbar-brand {
  font-family: var(--font_02), Arial;
  color: var(--main_color_03);
  font-size: 125%;
  font-weight: bold;
}

#mainNav .navbar-brand:focus,
#mainNav .nav-link:focus {
  outline: none;
}

#mainNav .show .nav-link {
  padding-top: .5rem;
  padding-bottom: .5rem;
}

@media (min-width: 992px) {
  #mainNav {
    border-bottom: none;
    -webkit-transition: background-color 0.3s ease-in-out;
    transition: background-color 0.3s ease-in-out;
  }
  #mainNav .navbar-brand {
	color: white;
    background-color: transparent
  }
  #mainNav .navbar-brand #logo_tile_01 {
    display: initial;
  }
  #mainNav .navbar-brand #logo_tile_02 {
    display: none;
  }
  #mainNav .dropdown-menu {
    background-color: var(--main_color_02)
  }
  #mainNav .dropdown-item:hover {
    background-color: var(--main_color_04)
  }
  #mainNav .nav-link {
    -webkit-transition: none;
    transition: none;
    padding-top: 0;
    padding-bottom: 0;
    color: rgba(255, 255, 255, 0.75);
    border-bottom: 0.25rem solid transparent;
  }
  #mainNav .nav-link:hover {
    color: rgba(255, 255, 255, 1);
  }
  #mainNav .nav-link:active {
    color: white;
  }
  #mainNav.navbar-shrink {
    background-color: var(--main_color_lightest_green);
  }
  #mainNav.navbar-shrink .navbar-brand {
    color: var(--main_color_01);
  }
  #mainNav.navbar-shrink .navbar-brand #logo_tile_01 {
    display: none;
  }
  #mainNav.navbar-shrink .navbar-brand #logo_tile_02 {
    display: initial;
  }
  #mainNav.navbar-shrink .dropdown-menu {
    background-color: var(--main_color_lightest_green);
  }
  #mainNav.navbar-shrink .dropdown-item:hover {
    background-color: var(--main_color_04);
  }
  #mainNav.navbar-shrink .dropdown-item.active {
    background-color: white;
  }
  #mainNav.navbar-shrink .dropdown-item.active:hover {
    background-color: var(--main_color_04);
  }
  #mainNav.navbar-shrink .nav-link {
    color: var(--main_color_05);
    padding: 1rem 1rem 1rem;
    border-bottom: 0.25rem solid transparent;
  }
  #mainNav.navbar-shrink .nav-link:hover {
    color: var(--main_color_02);
  }
  #mainNav.navbar-shrink .nav-link:active {
    color: var(--main_color_02);
  }
  #mainNav.navbar-shrink .nav-link.active {
    color: var(--main_color_02);
    outline: none;
    border-bottom: 0.25rem solid var(--main_color_02);
  }
}

/* HEADER */

.masthead {
  position: relative;
  width: 100%;
  height: 92vh;
  min-height: 35rem;
}

.masthead:before {
  z-index: -1;
  position:absolute;
  left:0;
  top:0;
  opacity: 0.5;
  width: 100%;
  height: 100%;
  content: '';
  background: url('../img/archipelago.webp') no-repeat center center;
  background-size: cover;
}

/* BUTTON */

.btn {
  -webkit-box-shadow: 0 0 0 0 !important;
  box-shadow: 0 0 0 0 !important;
  padding: 1.25rem 2rem;
  font-family: 'Arial';
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: .15rem;
  border: 0;
}

.btn-primary {
  background-color: var(--main_color_04) !important;
}

.btn-primary:hover {
  background-color: var(--main_color_02) !important;
}

.btn-primary:focus {
  background-color: var(--main_color_02) !important;
  box-shadow: none !important;
}

.btn-primary:active {
  background-color: var(--main_color_02) !important;
  box-shadow: none !important;
}

/* TOOLTIP */

.tooltip-inner {
  pointer-events: none;
  background: var(--main_color_02);
  font-weight: bold;
}

.bs-tooltip-auto[x-placement^=bottom] .arrow::before, .bs-tooltip-bottom .arrow::before {
  border-bottom-color: var(--main_color_02_dark) !important;
}
.bs-tooltip-auto[x-placement^=top] .arrow::before, .bs-tooltip-top .arrow::before {
  border-top-color: var(--main_color_02_dark) !important;
}
.bs-tooltip-auto[x-placement^=left] .arrow::before, .bs-tooltip-left .arrow::before {
  border-left-color: var(--main_color_02_dark) !important;
}
.bs-tooltip-auto[x-placement^=right] .arrow::before, .bs-tooltip-right .arrow::before {
  border-right-color: var(--main_color_02_dark) !important;
}

/* ANIMATION (img zoom in) */

.inner {
  overflow: hidden;
}

.inner img {
  transition: all 0.5s ease;
}

.inner:hover img {
  transform: scale(1.1);
}

.inner object {
  transition: all 0.5s ease;
}

.inner:hover object {
  transform: scale(1.1);
}

/* BOOK IMAGE */

#div_book_image {
  width: 100%;
  height: 150px;
  display: flex;
  justify-content: center;
}

#book_image {
  position: absolute;
  height: inherit !important;
}

#book_image_access {
  z-index: 9999;
  opacity: 0;
  transition: 0.75s;
  position: absolute;
  height: inherit !important;
}

#book_image_access img {
  height: inherit !important;
}

#book_image_access:hover {
  opacity: 1;
}

@media (min-width: 992px) {
  #div_book_image {
    height: 150px;
  }
}

/* TEMPLATE EXPLANATION */

#div_template_image {
  width: 100%;
  display: flex;
  justify-content: center;
}

#template_image {
  width: 95%;
}

@media (min-width: 992px) {
  #template_image {
    width: 90%;
  }
}

/* LICENCES IMG */

.licences_img {
  border-width: 0px;
  height: 10px;
}

@media (min-width: 992px) {
  .licences_img {
    height: 30px;
  }
}

/* LIBERAPAY BUTTON */

html>body .liberapay-btn {
  background-color: #f6c915;
  border-radius: 4px;
  color: #1a171b !important;
  display: inline-block;
  font-family: Helvetica Neue, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 22px;
  padding: 5px 7px 3px;
  position: relative;
  text-decoration: none;
}

html>body .liberapay-btn:hover {
  background-color: #fbce1a;
}

.liberapay-btn>svg {
  position: absolute;
  left: 7px;
  top: 7px;
}

.liberapay-btn>span {
  margin-left: 19px;
}

/*
--------------------------------
SPECIFIC VIEWS STYLES
--------------------------------
*/

#form_updating {
  width: 100%;
}

#form_updating h2 {
  margin-top: 3rem;
}

#form_updating .btn-primary {
  padding: 1rem !important;
  font-size: 100% !important;
}

/*
--------------------------------
FOOTER STYLES
--------------------------------
*/

footer {
  padding: 3rem 0;
  color: var(--main_color_05);
  background-color: var(--main_color_01);
}

footer h2 {
  color: var(--main_color_03);
}

footer a {
  color: var(--main_color_03);
}

footer a:focus,
footer a:hover,
footer a:not([href]):not([tabindex]):hover {
  text-decoration: none;
  text-shadow: 1px 0 0 currentColor;
  color: var(--main_color_03);
}
