/* basic style */
html {
    height: 100%;
}

body {
    font-size: 15px;
    line-height: 1.375em;
    min-height: 100%;
    position: relative;
    padding-bottom: 42px;
    -webkit-font-smoothing: antialiased;
    text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
}

.container {
    margin-bottom: 20px;
}

body, footer, div {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

a {
    text-decoration: none;
    cursor: pointer;
}

hr {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #E5E5E5;
}

.hidden {
    display: none !important;
}

.vcenter {
    margin: auto;
}
.tcenter {
    text-align: center;
}
.tleft {
    text-align: left;
}
.tright {
    text-align: right;
}

.fright {
    float: right;
}

.nopad {
    padding: 0 !important;
}

/* text style */
.semistrong {
    font-weight: 600 !important;
}

.strong {
    font-weight: 700 !important;
}

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

body, div, p, a, small,
.pure-g [class *="pure-u"] {
    font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4 {
    margin: 3px 0;
    font-weight: 600;
}

p, span  { font-size:    1em; line-height: 1.375em; }
h1 { font-size:    3em; line-height: 1.05em; }
h2 { font-size: 2.25em; line-height: 1.25em; }
h3 { font-size: 1.75em; line-height: 1.25em; }
h4 { font-size: 1.125em; line-height: 1.222em; }
small { font-size: 0.85em; line-height: 1em; }

/* text for mobile */
@media (max-width: 767px) {
    p, span  { font-size:     1em; line-height: 1.25em; }
    h1 { font-size:     2em; line-height: 1.25em; }
    h2 { font-size: 1.625em; line-height: 1.154em;}
    h3 { font-size: 1.375em; line-height: 1.136em; }
    h4 { font-size: 1em; line-height: 1.111em; }
    small { font-size: 0.9em; line-height: 1em; }
}

@media (max-width: 450px) {
    body { font-size: 12px; }
}

/* buttons */
.btn {
    display: inline-block;
    height: 32px;
    line-height: 32px;
    margin: 4px auto;
    padding: 0 19px;
    vertical-align: middle;

    background: #fefefe;
    border: 1px solid #bbb;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    box-shadow: 0 0 2px rgba(100, 100, 100, 0.4);
    color: #666;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

.btn:hover {
    background: #f7f7f7;
    border-color: #a4a4a4;
    box-shadow: 0 0 6px rgba(50, 50, 50, 0.5);
    color: black;
}

.btn + .btn {
    margin-left: 5px;
}

/* boxes */
.box {
    margin: 5px;
    padding: 15px 25px;
    border: 1px solid #b9b9b9;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: 0 0 3px 1px #d3d3d3;
    -webkit-box-shadow: 0 0 3px 1px #d3d3d3;
    box-shadow: 0 0 3px 1px #d3d3d3;
    overflow: hidden;
}

.box .box {
    border: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.form .box {
    display: inline-block;
}
@media (max-width: 480px) {
    .form .box {
        display: block;
    }
}

.rmpad {
    margin: -15px -25px;
}

.rmpad table {
    width: 100%;
    box-sizing: content-box;
    border: 0;
}

@media (max-width: 767px) {
    .box {
        padding: 15px 10px;
    }
    .rmpad {
        margin: -15px -10px;
    }
}

.box-img {
    padding: 0;
    padding-left: 133px;
    height: 132px;
}

.box-img > div {
    height: 132px;
}

.box-img .left-img {
    width: 132px;
    overflow: hidden;
    border-right: 1px solid #b9b9b9;
    margin-left: -133px;
    display: inline-block;
}

.box-img .left-img img {
    height: 132px;
}

@media (max-width: 767px) {
    .box-img {
        height: 82px;
        padding-left: 83px;
    }
    .box-img > div {
        height: 82px;
    }
    .box-img .left-img {
        width: 82px;
        margin-left: -83px;
    }
    .box-img .left-img img {
        height: 82px;
    }
}


.box .content {
    padding: 5px;
    overflow: hidden;
}

.flash-msg-container-fixed {
    position: fixed;
    top: 20px;
    width: 100%;
    margin: auto;
    z-index: 10000;
}

.flash-msg-container-fixed .flash-message {
    -moz-box-shadow: 0 0 6px 2px rgba(140, 140, 140, 0.7);
    -webkit-box-shadow: 0 0 6px 2px rgba(140, 140, 140, 0.7);
    box-shadow: 0 0 6px 2px rgba(140, 140, 140, 0.7);
}

.flash-message {
    margin: 5px;
    margin-bottom: 14px;
    padding: 12px;

    -moz-box-shadow: 0 0 3px #b3b3b3;
    -webkit-box-shadow: 0 0 3px #b3b3b3;
    box-shadow: 0 0 3px #b3b3b3;
    font-weight: 600;
}
.flash-message:before {
    margin-right: 11px;
    font-family: FontAwesome;
}

.flash-message-success:before {
    content: '\f00c';
}
.flash-message-error:before, .flash-message-warn:before {
    content: '\f12a';
}
.flash-message-info:before {
    content: '\f129';
}

/* Header elements */
header {
    padding: 5px 5px;
    /*height: 80px;*/
    margin-bottom: 10px;
}

.banner {
    max-height: 80px;
}

.searchbar {
    padding: 10px;
}

@media (min-width: 1020px) {
    .logo {
        display: none;
    }
}

@media (max-width: 1019px) {
    .banner {
        display: none;
    }
}
/* Navbar elements */
nav {
    text-align: center;
    margin-right: 0;
}
nav a {
    white-space: nowrap;
    margin-left: 7px;
    margin-right: 7px;
}

nav > ul > li {
  position: relative;
}

nav > ul > li > ul {
  position: absolute;
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  background-color: #E6E6E6;
  left: 0;
  min-width: 90px;
  display: none;
  text-align: center;
  float: none;
}

.header ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header li a {
  display: block;
  padding: 5px 5px;
  text-decoration: none;
}

.header .menu {
  clear: both;
  max-height: 0;
  transition: max-height .2s ease-out;
}

.header .menu-icon {
  cursor: pointer;
  display: inline-block;
  float: right;
  padding: 28px 20px;
  position: relative;
  user-select: none;
}

.header .menu-icon .navicon {
  background: #333;
  display: block;
  height: 2px;
  position: relative;
  transition: background .2s ease-out;
  width: 18px;
}

.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
  background: #333;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}

.header .menu-icon .navicon:before {
  top: 5px;
}

.header .menu-icon .navicon:after {
  top: -5px;
}

.header .menu-btn {
  display: none;
}

.header .menu-btn:checked ~ .menu {
  max-height: 270px;
}

.header .menu-btn:checked ~ .menu-icon .navicon {
  background: transparent;
}

.header .menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.header .menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  top: 0;
}

@media(max-width: 64em){
  .header ul {
    background-color: #FFFFFF;
    overflow: hidden;
    float: right;
    width: 15em;
  }

  .header li{
    border: 2px solid whitesmoke;
  }
}

@media (min-width: 64em) {
  .header li:not(.language_link) {
      display: inline-block;
  }
  .header li a {
    padding: 5px 5px;
  }
  .header .menu {
    clear: none;
    float: right;
    max-height: none;
  }
  .header .menu-icon {
    display: none;
  }
  nav > ul > li:hover > ul {
    display: block;
  }
}


.language_link {
    color: #de6212;
    cursor:pointer;
}

/* Menu elements */
.pure-menu.pure-menu-open {
    background-color: inherit;
}

.pure-menu li {
    font-weight: 600;
}
.pure-menu .pure-menu-selected {
    font-weight: 700;
}

/* Footer elements */

footer {
    position:absolute;
    bottom:0;
    width:100%;
    padding: 10px;
    font-weight: 600;
    text-align: center;
}


.tags {
    list-style: none;
}

.tags li {
    position: relative;
    float: left;
    height: 26px;
    line-height: 26px;
    margin-left: 5px;
}

.label {
    margin: 2px;
    padding: 2px 6px 3px;

    background-color: #999;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.label:hover {
    color: #fff;
    text-decoration: none;
}

.label-important {
    background-color: #b94a48;
}
.label-important:hover {
    background-color: #953b39;
}

.label-warning {
    background-color: #f89406;
}
.label-warning:hover {
    background-color: #c67605;
}

.label-success {
    background-color: #468847;
}
.label-success:hover {
    background-color: #356635;
}

.label-info {
    background-color: #3a87ad;
}
.label-info:hover {
    background-color: #2d6987;
}

.breadcrumbs {
    margin: 0 auto;
}

.breadcrumbs a {
    color: inherit;
}

.breadcrumbs .fa-caret-right {
    margin: 0 2px;
}

.lecture-img {
    float: right;
    max-height: 150px;
    width: auto;
}

.pure-paginator {
    letter-spacing: -0.35em;
    margin-top: 15px;
/*    box-shadow: 0 0 2px rgba(100, 100, 100, 0.4);
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-padding-start: 0;
    margin: 0;
    display: inline-block;*/
}

.pure-paginator .btn {
    box-shadow: none;
}

.pure-paginator .btn:hover {
    border-color: #bbb;
}

.pure-paginator .prev, .pure-paginator .next {
    color: #777;
}

.pure-paginator .prev:hover, .pure-paginator .next:hover {
    color: black;
}

.pure-form-aligned .pure-controls {
    text-align: center;
    margin: 1em 0 0;
}
.pure-form-aligned .pure-control-group label {
    width: 11em;
}

.pure-form-aligned .pure-control-group select option {
    width: 100%;
    text-align: left;
}
legend {
    text-align: left;
}

.pure-form-aligned .pure-control-group label {
    display: inline-block;
    text-align: right;
}

.pure-form-aligned .pure-control-group .message-aligned {
    margin-left: 14em;
}

.pure-form input:not([type]), .pure-form input[type=text], .pure-form input[type=password], .pure-form input[type=email], .pure-form input[type=url], .pure-form input[type=date], .pure-form input[type=month], .pure-form input[type=time], .pure-form input[type=datetime], .pure-form input[type=datetime-local], .pure-form input[type=week], .pure-form input[type=number], .pure-form input[type=search], .pure-form input[type=tel], .pure-form input[type=color], .pure-form label {
    display: inline-block;
    margin: 0;
}

/* Tooltips */
.has-tooltip {
    position: relative;
    text-decoration: none;
}
.has-tooltip .tooltip {
    font-size: .9em;

    position: absolute;
    z-index: -1;
    bottom: 110%;
    left: 50%;

    visibility: hidden;

    padding: 7px 15px;

    -webkit-transition: all .4s ease;
       -moz-transition: all .4s ease;
         -o-transition: all .4s ease;
            transition: all .4s ease;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
    white-space: nowrap;

    opacity: 0;
    color: #eee;
    background: #333;
    box-shadow: 0 0 4px 1px #666;
}

.has-tooltip:hover .tooltip {
    z-index: 10;
    visibility: visible;
    opacity: .9;
}

.nanoModalOverride .nanoModalButtons {
    text-align: center;
}

.editingTextbox{
    height: 35px;
    margin: 0px;
    border: none;
}

.playlistpartLabel{
    display:block; 
    text-align:center;
}

.fixed-size-table {
    width: 100%;
}

/* used to make the element visible at data-time with js */
.activate-at {
    display: none;
}

.equal-width-container {
    display: flex;
    flex-direction: column;
    width: max-content;
}

.equal-width-container-element {
    width: 100%;
}

/* used to left-align <hX> elements outside boxes */
.ml-5px {
    margin-left: 5px;
}
