/*!
 * SKYFLY DJ PORTAL
 * 
 * By Roefja - www.roefja.com
 *
 * main.css
 *
 */

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

:root {
  --purple-color: #9068b2;
  --green-color: #8bb268;
  --grey-color: #999999;
  --grey-dark-color: #666666;
  --green-second-color: #9dc777;
  --brown-color: #ccaca6;
  --main-border-radius: 10px;
  --small-border-radius: 5px;
  --background-blur: blur(15px);
  --background-blur2: blur(5px);
  --background-blur-color: rgba(144, 104, 178, 0.8);
  --background-blur-color2: rgba(144, 104, 178, 0.5);
  --background-blur-color-white: rgba(255, 255, 255, 0.7);
  --gradient-left: #c14198;
  --gradient-right: #6a8dc4;
  --bg-gradient: linear-gradient(to right, var(--gradient-left), var(--gradient-right));
  --main-horizontal-padding: 15px;
}

html,
body {
  width: 100%;
  height: 100%;
}

body {
  font-family: 'Roboto', sans-serif;
  position: relative;
}

body {
  background-image: url('/assets/img/background.png');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.btn-primary,
.btn-primary:hover,
.btn-primary:active {
  background-color: var(--purple-color) !important;
  border-color: var(--purple-color) !important;
}

.btn-primary,
.btn-primary>a {
  color: white
}

a {
  text-decoration: none;
}

/* NAV */
nav {
  background: var(--bg-gradient);
  width: 100%;
  padding: 20px var(--main-horizontal-padding);
  display: flex;
  height: 90px;
}

nav .branding {
  height: 100%;
  width: auto;
  position: relative;
  margin-right: 10px;
}

nav .branding svg {
  width: auto;
  height: 100%;
}

nav .menu {
  margin: auto 10px;
  color: #fff
}

nav .menu a {
  color: #fff;
}

nav .menu a:hover {
  opacity: .7;
}

nav .menu li {
  list-style: none;
  margin-right: 10px;
}

nav .menu li:last-child {
  margin-right: 0;
}

nav .menu {
  display: flex;
}

nav .buttons {
  margin-left: auto;
}

nav .buttons>* {
  margin-right: 10px;
}

nav .buttons>*:last-child {
  margin-right: 0;
}

main#main-page {
  height: 100%;
  display: flex;
  flex-direction: column;
}

footer {
  margin-top: auto;
  padding: 15px var(--main-horizontal-padding);
  background-color: var(--purple-color);
  color: #FFF;
}

footer p {
  margin-bottom: 0;
}

#main-content {
  max-width: 1000px;
  margin: 20px auto;
  width: calc(100% - 20px);
}

/* Courses */
.courses .course-wrapper {
  background: var(--background-blur-color);
  backdrop-filter: var(--background-blur);
  -webkit-backdrop-filter: var(--background-blur);
  padding: 10px 20px;
  border-radius: var(--main-border-radius);
  color: #fff;
  margin-bottom: 10px;
  cursor: pointer;
}

.courses .course-wrapper:hover {
  background: var(--background-blur-color2);
}

.courses .title {
  font-weight: bold;
  margin: auto 0;
}

.course-wrapper .course_top {
  display: flex;
  justify-content: space-between;
}

.course-wrapper .course_top .badge {
  min-width: 100px;
  text-align: center;
  padding: 10px 5px;
}

.bg-primary.badge {
  background-color: var(--gradient-left) !important;
}

li.active>a,
a.active {
  font-weight: bold;
  border-bottom: 1px solid #fff;
}

.badge.bg-warning {
  color: black
}

/* Content Blocks */
.content-block {
  background-color: var(--background-blur-color-white);
  backdrop-filter: var(--background-blur2);
  -webkit-backdrop-filter: var(--background-blur2);
  padding: var(--main-horizontal-padding);
  border-radius: var(--main-border-radius);
}

.content-block h1 {
  font-size: 1.5em;
  margin-bottom: 20px;
  margin-top: 10px;
  text-align: center;
}

.content-block .courses {
  display: flex;
  flex-direction: column;
}


.course-steps .course-step {
  background-color: var(--background-blur-color-white);
  backdrop-filter: var(--background-blur2);
  -webkit-backdrop-filter: var(--background-blur2);
  padding: 20px;
  border-top-left-radius: var(--main-border-radius);
  border-top-right-radius: var(--main-border-radius);
  margin: 10px 0;
}

@media only screen and (min-width: 900px) {
  .toggle-menu {
    display: none
  }

}


@media only screen and (max-width: 899px) {
  nav {
    position: relative;
  }

  nav ul.menu {
    position: fixed;
    left: -100%;
    top: 90px;
    background: var(--purple-color);
    margin: 0 -10px;
    padding: 20px 30px;
    width: calc(100% + 10px);
    height: 100%;
    flex-direction: column;
    text-align: center;
    transition: 0.65s;
  }

  nav ul.menu:not(.show) {
    display: none;
  }

  nav ul.menu.show {
    left: 0;
    z-index: 9999;
  }

  nav ul.menu li {
    font-size: 1.5em;
    margin-bottom: 10px;
  }

  footer {
    text-align: center;
  }

}