@charset "UTF-8";
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 400;
  src: url("../lib/fonts/IBMPlexSans-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Sans";
  font-style: italic;
  font-weight: 400;
  src: url("../lib/fonts/IBMPlexSans-Italic.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 500;
  src: url("../lib/fonts/IBMPlexSans-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Sans";
  font-style: normal;
  font-weight: 600;
  src: url("/lib/fonts/IBMPlexSans-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "IBM Plex Sans";
  font-style: italic;
  font-weight: 600;
  src: url("/lib/fonts/IBMPlexSans-SemiBoldItalic.woff2") format("woff2");
}
/* ANIMATION */
/* SHADOWS */
legend {
  margin-bottom: 22px;
  font-size: 24px;
}

output {
  padding-top: 8px;
  font-size: 16px;
  line-height: 1.428571429;
}

.form-control {
  height: 38px;
  padding: 7px 0;
  font-size: 16px;
  line-height: 1.428571429;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type=date].form-control,
  input[type=time].form-control,
  input[type=datetime-local].form-control,
  input[type=month].form-control {
    line-height: 38px;
  }
  input[type=date].input-sm, .input-group-sm input[type=date],
  input[type=time].input-sm,
  .input-group-sm input[type=time],
  input[type=datetime-local].input-sm,
  .input-group-sm input[type=datetime-local],
  input[type=month].input-sm,
  .input-group-sm input[type=month] {
    line-height: 26px;
  }
  input[type=date].input-lg, .input-group-lg input[type=date],
  input[type=time].input-lg,
  .input-group-lg input[type=time],
  input[type=datetime-local].input-lg,
  .input-group-lg input[type=datetime-local],
  input[type=month].input-lg,
  .input-group-lg input[type=month] {
    line-height: 47px;
  }
}
.radio label,
.checkbox label {
  min-height: 22px;
}

.form-control-static {
  padding-top: 8px;
  padding-bottom: 8px;
  min-height: 38px;
}

.input-sm .input-sm {
  height: 26px;
  padding: 3px 0;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 0;
}
.input-sm select.input-sm {
  height: 26px;
  line-height: 26px;
}
.input-sm textarea.input-sm,
.input-sm select[multiple].input-sm {
  height: auto;
}

.form-group-sm .form-control {
  height: 26px;
  padding: 3px 0;
  font-size: 12px;
  line-height: 1.5;
}
.form-group-sm select.form-control {
  height: 26px;
  line-height: 26px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 26px;
  min-height: 34px;
  padding: 4px 0;
  font-size: 12px;
  line-height: 1.5;
}

.input-lg .input-lg {
  height: 47px;
  padding: 9px 0;
  font-size: 20px;
  line-height: 1.3333333;
  border-radius: 0;
}
.input-lg select.input-lg {
  height: 47px;
  line-height: 47px;
}
.input-lg textarea.input-lg,
.input-lg select[multiple].input-lg {
  height: auto;
}

.form-group-lg .form-control {
  height: 47px;
  padding: 9px 0;
  font-size: 20px;
  line-height: 1.3333333;
}
.form-group-lg select.form-control {
  height: 47px;
  line-height: 47px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 47px;
  min-height: 42px;
  padding: 10px 0;
  font-size: 20px;
  line-height: 1.3333333;
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 8px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 30px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 8px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 12.9999997px;
    font-size: 20px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 4px;
    font-size: 12px;
  }
}

/* Shadows (from mdl http://www.getmdl.io/) */
:root {
  --lsYellow: #fac112;
  --lsBlue: #0d86a3;
  --corporateBgColor: #190053;
  --dividerColor: #ddd;
  --systemLinkColor: #0887C6;
  --systemLinkColorRgb: 0, 127, 173;
  --grayColor: #999999;
  --grayHoverColor: #888;
  --typographyColor: #3C4858;
  --brandSuccess: #5d9d26;
  --brandDefault: #cecece;
  --brandPrimary: #337ab7;
  --brandInfo: #5bc0de;
  --brandWarning: #f0ad4e;
  --brandDanger: #AE1409;
  --globalPaddingHorizontal: 2rem;
  --padding-small-horizontal: 1rem;
  --navbarHeight: 60px;
  --wallToggleHeight: 5rem;
}

.alert.alert-warning {
  color: black;
}

.alert-custom {
  padding: 1em;
}
.alert-custom a:not(.btn) {
  color: currentColor;
  text-decoration: underline;
}
.alert-custom a:not(.btn):hover {
  text-decoration: none;
}
.alert-custom p {
  max-width: 50ch;
}

.alert-custom-warning {
  background: var(--lsYellow);
}

.alert-custom--half {
  max-width: 60ch;
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.btn-group.open > .btn.btn-default.dropdown-toggle {
  color: #333333;
}

.btn-hover {
  opacity: 0;
}
.btn-hover:hover {
  opacity: 1;
}
.btn-hover.btn-sudo:hover {
  opacity: 0.3;
}

.btn-text-edit {
  color: #333333;
}

.btn.btn-gradient {
  --_bgColor: var(--typographyColor);
  color: white !important;
  background-color: var(--_bgColor);
  background-image: linear-gradient(195deg, var(--_bgColor), color-mix(in srgb, var(--_bgColor) 50%, black)) !important;
}
.btn.btn-gradient.btn-primary {
  --_bgColor: var(--systemLinkColor);
}
.btn.btn-gradient.btn-success {
  --_bgColor: var(--brandSuccess);
}
.btn.btn-gradient.btn-info {
  --_bgColor: var(--brandInfo);
}
.btn.btn-gradient.btn-warning {
  --_bgColor: var(--brandWarning);
}
.btn.btn-gradient.btn-danger {
  --_bgColor: var(--brandDanger);
}
.btn.btn-gradient.btn-info {
  --_bgColor: var(--brandInfo);
}
.btn.btn-gradient:hover, .btn.btn-gradient:active, .btn.btn-gradient:focus, .btn.btn-gradient:focus:active {
  background-image: none !important;
  background-color: var(--_bgColor);
}

.btn-big {
  min-height: 7rem;
  display: inline-flex;
  gap: 2rem;
  align-items: center;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.btn-big .btn__icon {
  font-size: 3rem;
}

/*! autoprefixer: off */
:root {
  --safe-area-inset-top: 0px;
  --safe-area-inset-right: 0px;
  --safe-area-inset-bottom: 0px;
  --safe-area-inset-left: 0px;
  --sticky-bottom-offset: $shortcuts-height;
}

@supports (padding-top: env(safe-area-inset-top)) {
  :root {
    --safe-area-inset-top: env(safe-area-inset-top, 0);
    --safe-area-inset-right: env(safe-area-inset-right, 0);
    --safe-area-inset-bottom: env(safe-area-inset-bottom, 0);
    --safe-area-inset-left: env(safe-area-inset-left, 0);
  }
}
html, body {
  min-height: 100vh;
  max-height: 100vh;
  padding: 0;
  margin: 0;
}

body {
  display: grid;
  grid-template-columns: 1fr minmax(150px, 230px) minmax(500px, 1070px) 1fr;
  grid-template-rows: 60px auto 1fr auto auto;
  background-color: #f0f0f0;
}

body.class-layout-t {
  grid-template-columns: 1fr minmax(150px, 230px) minmax(500px, 1070px) var(--wallToggleHeight) 1fr;
}

#content-wrapper {
  width: 100%;
  grid-column: 3;
  grid-row: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto 1fr auto;
  background-color: white;
}
#content-wrapper .top-content-message {
  grid-column: 1;
  grid-row: 1;
}
#content-wrapper > main {
  grid-column: 1;
  grid-row: 2;
  background-color: inherit;
}
#content-wrapper > footer {
  background-color: #ccc;
  grid-column: 1;
  grid-row: 3;
}

#header-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 900;
}
#header-wrapper header {
  display: grid;
  grid-template-columns: 1fr minmax(200px, 1300px) 1fr;
  grid-template-rows: 60px;
  position: relative;
  top: 0;
  transition: all 0.6s;
  background-color: white;
  box-shadow: 0 10px 20px -12px rgba(0, 0, 0, 0.42), 0 3px 20px 0px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
}
#header-wrapper header > nav {
  grid-column: 2;
}
#header-wrapper header .user-nav {
  float: right;
}

.wide-content #header-wrapper header {
  grid-template-columns: 1fr minmax(200px, 1730px) 1fr;
}

.page-header {
  grid-column: 1/span 4;
  grid-row: 2;
}

#shortcuts-row {
  grid-column: 1/span 4;
  grid-row: 4;
  background-color: white;
  visibility: hidden;
  z-index: 102;
}
#shortcuts-row > ul, #shortcuts-row > div {
  border-top: 1px solid #ccc;
}

#shortcuts-fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: auto;
  background-color: white;
  z-index: 500;
}
#shortcuts-fixed > ul, #shortcuts-fixed > div {
  border-top: 1px solid #ccc;
}
#shortcuts-fixed.visible {
  padding-bottom: var(--safe-area-inset-bottom);
}

#sidedrawer {
  background-color: rgba(255, 255, 255, 0.5);
}
#sidedrawer a {
  padding-left: 45px;
  color: black;
}
#sidedrawer a > i.fal {
  content: "";
  display: inline-block;
  margin-left: -29px;
  width: 29px;
}
#sidedrawer.is-open {
  display: block;
  position: fixed;
  z-index: 999;
  left: 0;
  bottom: 0;
  right: 0;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

#sidedrawer-bg {
  display: none;
}

.shortcuts-group {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  height: 4.5rem;
}
.shortcuts-group > div {
  display: inline-block;
  text-align: center;
}
.shortcuts-group > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.5rem;
  height: 100%;
  text-align: center;
  font-size: 2.4rem;
  color: #aaa;
  cursor: pointer;
}
.shortcuts-group > button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.5rem;
  height: 100%;
  color: #aaa;
}
.shortcuts-group .navbar-search__toggle label {
  width: auto;
  height: auto;
}
.shortcuts-group:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}
.shortcuts-group:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}
.shortcuts-group:nth-child(3) {
  grid-column: 3;
  grid-row: 1;
}
.shortcuts-group:nth-child(4) {
  grid-column: 4;
  grid-row: 1;
}
.shortcuts-group:nth-child(5) {
  grid-column: 5;
  grid-row: 1;
}
.shortcuts-group:nth-child(5) {
  grid-column: 6;
  grid-row: 1;
}

.navbar.navbar-grid {
  display: grid;
  grid-template-columns: 4rem 1fr 4rem 6rem;
  grid-template-rows: 60px;
  gap: 1rem;
  align-items: center;
}
.navbar.navbar-grid.no-user {
  grid-template-columns: 4rem 1fr 4rem auto;
}
.navbar.navbar-grid .navbar-brand {
  height: auto;
  padding: 0;
}
.navbar.navbar-grid.-tight .navbar-brand {
  width: auto;
  height: 6rem;
}
.navbar.navbar-grid.-tight .home-link {
  height: 100%;
}
.navbar.navbar-grid > .home-link {
  grid-column: 2/4;
  grid-row: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  height: 90%;
}
.navbar.navbar-grid > .home-link a {
  display: flex;
  align-items: flex-start;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 100%;
}
.navbar.navbar-grid > .home-link a img {
  display: inline-block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
@media (min-width: 759px) {
  .navbar.navbar-grid > .home-link {
    grid-column: 2;
    justify-content: flex-start;
  }
  .navbar.navbar-grid > .home-link.-centered {
    grid-column: 1/5;
    justify-content: center;
  }
}
.navbar.navbar-grid .navbar-search__toggle {
  display: none;
  grid-column: 3;
  grid-row: 1;
}
@media (min-width: 759px) {
  .navbar.navbar-grid .navbar-search__toggle {
    display: block;
  }
}
.navbar.navbar-grid > ul.navbar-right,
.navbar.navbar-grid > div.navbar-right {
  grid-column: 4;
  grid-row: 1;
  margin: 0;
  float: none;
}
.navbar.navbar-grid > ul.navbar-right .dropdown-menu,
.navbar.navbar-grid > div.navbar-right .dropdown-menu {
  right: 0;
  left: auto;
  max-width: calc(100vw - 40px);
}
.navbar.navbar-grid > ul.navbar-right .dropdown-menu .dropdown-header,
.navbar.navbar-grid > div.navbar-right .dropdown-menu .dropdown-header {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 300px;
}
.navbar.navbar-grid > ul.navbar-right .dropdown-toggle.with-image,
.navbar.navbar-grid > div.navbar-right .dropdown-toggle.with-image {
  padding: 0 !important;
}
.navbar.navbar-grid > ul.navbar-right .dropdown-toggle.with-image .img-responsive,
.navbar.navbar-grid > div.navbar-right .dropdown-toggle.with-image .img-responsive {
  display: inline-block;
  width: 4rem;
  height: 4rem;
}

.nav-toggle {
  grid-column: 1;
  grid-row: 1;
  width: 4rem;
  height: 4rem;
  padding: 0;
  margin: 0;
  position: relative;
  z-index: 30;
  border: 1px solid transparent;
  background: none;
}
.nav-toggle:before, .nav-toggle:after {
  content: "";
  display: block;
  width: 50%;
  height: 2px;
  position: absolute;
  left: 20%;
  background: currentColor;
  border-radius: 1px;
  transition: transform 0.3s;
}
.nav-toggle:before {
  top: 12px;
}
.nav-toggle:after {
  bottom: 12px;
}
.nav-toggle i {
  display: block;
  width: 50%;
  height: 2px;
  position: absolute;
  top: calc(50% - 1px);
  left: 20%;
  background: currentColor;
  border-radius: 1px;
  transition: all 0.3s;
}
.nav-toggle.is-open i {
  width: 0;
  left: 50%;
}
.nav-toggle.is-open:before {
  top: 16px;
  transform: rotate(-45deg);
}
.nav-toggle.is-open:after {
  bottom: 20px;
  transform: rotate(45deg);
}

.timeline {
  padding-bottom: 10px;
}

/* Hide some icons, which only replace the title on smaller widths */
@media (min-width: 841px) {
  .if-full-width {
    display: none !important;
  }
}
/* Special page class for corporate pages without menu */
@media (min-width: 500px) {
  body.no-sidedrawer {
    -ms-grid-columns: 1fr 0 minmax(500px, 1300px) 1fr;
    grid-template-columns: 1fr 0 minmax(500px, 1300px) 1fr;
  }
  body.no-sidedrawer.corporate.layout-centered-narrow, body.no-sidedrawer.layout-centered-narrow {
    -ms-grid-columns: 1fr 0 minmax(500px, 600px) 1fr;
    grid-template-columns: 1fr 0 minmax(500px, 600px) 1fr;
  }
  body.no-sidedrawer.corporate.layout-centered-medium, body.no-sidedrawer.layout-centered-medium {
    -ms-grid-columns: 1fr 0 minmax(600px, 800px) 1fr;
    grid-template-columns: 1fr 0 minmax(600px, 800px) 1fr;
  }
  body.no-sidedrawer #sidedrawer {
    display: none;
  }
}
/* The group home page has optionally two columns, one with
 * the selected course timeline, and one with the wall.
 */
/* WIDE CONTENT */
@media (max-width: 840px) {
  body.page-class.wide-content main > .wall {
    display: none;
  }
}
@media (min-width: 841px) and (min-width: 759px) {
  body.page-class.wide-content.class-layout-ttw main {
    grid-template-columns: 60% 40%;
  }
  body.page-class.wide-content.class-layout-tww main {
    grid-template-columns: 40% 60%;
  }
}
@media (min-width: 841px) {
  body.page-class.wide-content main {
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: 0 auto auto 1fr auto;
    padding-bottom: 0;
  }
  body.page-class.wide-content main > .timeline {
    grid-row: 4;
    grid-column: 1;
  }
  body.page-class.wide-content main > .wall {
    grid-row: 4;
    grid-column: 2;
    background: linear-gradient(to right, #f8f8f8, white 10%);
  }
  body.page-class.wide-content main > footer {
    grid-row: 5;
    grid-column: 1/3;
  }
  body.page-class.wide-content main > .alert-email {
    grid-row: 2;
    grid-column: 1/3;
    margin-bottom: 0;
  }
  body.page-class.wide-content main > .alert-archived {
    grid-row: 3;
    grid-column: 1/3;
    margin-bottom: 0;
  }
}
@media (min-width: 841px) {
  .hidden-large {
    display: none !important;
  }
}
@media (min-width: 1201px) {
  body.wide-content {
    grid-template-columns: 1fr minmax(150px, 230px) minmax(900px, 1500px) 1fr;
  }
}
@media (min-width: 760px) and (max-width: 1200px) {
  body.wide-content {
    grid-template-columns: 1fr 50px minmax(700px, 1300px) 1fr;
  }
  body.wide-content .timeline > h1 {
    font-size: 2.2em;
  }
  body.wide-content #sidedrawer a > span,
  body.wide-content #sidedrawer button > span {
    display: none;
  }
  body.wide-content #sidedrawer button {
    padding: 12px 15px;
  }
}
/* Show main nav with icons only */
@media (min-width: 760px) and (max-width: 840px) {
  body.cat-class,
  body.class-page {
    grid-template-columns: 1fr 50px minmax(500px, 1000px) 1fr;
  }
  body.cat-class #sidedrawer a > span,
  body.class-page #sidedrawer a > span {
    display: none;
  }
}
/* Show main nav */
@media (min-width: 760px) {
  body:after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    z-index: -1;
    background-size: cover;
  }
  #sidedrawer {
    grid-column: 2;
    grid-row: 3;
  }
  #sidedrawer > div {
    position: -webkit-sticky;
    position: sticky;
    padding-top: 35px;
    top: -20px;
    overflow-x: hidden;
  }
  .navbar.navbar-grid {
    grid-template-columns: 0 1fr 60px;
  }
  .navbar.navbar-grid.no-user {
    grid-template-columns: 0 1fr auto;
  }
  .shortcuts-group,
  .nav-toggle {
    display: none;
  }
}
/* TODO:
 * If the device is not high enough, then we should force the mobile menu.
 * @media (orientation:portrait/landscape) { ... }
 */
/* Show main nav as "hamburger" menu */
@media (max-width: 759px) {
  body,
  body.class-layout-t {
    grid-template-columns: 0 0 1fr 0;
    grid-template-rows: 60px auto 1fr auto;
  }
  .if-full-width {
    display: none !important;
  }
  #sidedrawer {
    display: block;
    position: fixed;
    z-index: 1000;
    top: 60px;
    width: 300px;
    left: -300px;
    bottom: 41px;
    overflow-y: auto;
    transition: 0.3s ease-in-out;
    background-color: rgba(255, 255, 255, 0.9);
  }
  #sidedrawer > div {
    max-height: calc(100vh - 60px - 41px);
    overflow-y: auto;
  }
  .nav.shortcuts-catalog {
    display: none;
  }
  body.show-shortcuts-catalog .shortcuts-catalog {
    display: flex;
    overflow-y: auto;
  }
  .scrolled-down #header-wrapper,
  .scrolled-down #header-wrapper header {
    top: -60px;
    box-shadow: none;
  }
  .scrolled-down #sidedrawer {
    top: 0;
  }
  .scrolled-down .sticky {
    top: 0;
    z-index: 101;
  }
}
body.content-blowout #content-wrapper {
  grid-template-columns: 1fr;
}
body.content-blowout #full-window {
  float: none;
  right: 10px;
  position: sticky;
  left: 0;
}

body.full-window {
  display: block;
  background-color: white !important;
  min-height: 100vh;
}
body.full-window:after {
  background: none;
}
body.full-window .backnav {
  margin: 0;
  padding-top: 10px;
}
body.full-window #header,
body.full-window #sidedrawer,
body.full-window #footer,
body.full-window #shortcuts-row,
body.full-window #shortcuts-fixed {
  display: none;
}
body.full-window #content-wrapper {
  padding-top: 0;
  display: block;
  min-height: 100vh;
}

.cards-grid {
  display: grid;
  gap: 4rem;
  width: 100%;
}
.cards-grid + h2 {
  margin-top: 6rem;
}
@media (min-width: 920px) {
  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1240px) {
  .cards-grid {
    grid-template-columns: repeat(3, 1fr);
    justify-items: stretch;
  }
}

:focus {
  outline: none;
}

a:focus {
  outline: none;
}

:focus-visible {
  outline: none;
  border: 2px solid #0096FF !important;
}

@view-transition {
  navigation: auto;
}
.sr-only {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

.sr-only-focusable:focus,
.sr-only-focusable:active {
  clip: auto !important;
  -webkit-clip-path: none !important;
  clip-path: none !important;
  height: auto !important;
  margin: auto !important;
  overflow: visible !important;
  width: auto !important;
  white-space: normal !important;
}

.skip-link {
  display: block;
  position: relative;
  z-index: 1002;
  background-color: white;
  font-size: 2rem;
  line-height: 2.6rem;
  color: #0096FF;
  text-align: center;
}

#content {
  padding-left: var(--globalPaddingHorizontal);
  padding-right: var(--globalPaddingHorizontal);
}
#content .with-unpublished {
  opacity: 0.7;
  background-color: #f0f0f0;
}
#content img {
  max-width: 100%;
}
#content .row {
  margin-left: -10px;
  margin-right: -10px;
}
#content .row .col-xs-1, #content .row .col-sm-1, #content .row .col-md-1, #content .row .col-lg-1, #content .row .col-xs-2, #content .row .col-sm-2, #content .row .col-md-2, #content .row .col-lg-2,
#content .row .col-xs-3, #content .row .col-sm-3, #content .row .col-md-3, #content .row .col-lg-3, #content .row .col-xs-4, #content .row .col-sm-4, #content .row .col-md-4, #content .row .col-lg-4,
#content .row .col-xs-5, #content .row .col-sm-5, #content .row .col-md-5, #content .row .col-lg-5, #content .row .col-xs-6, #content .row .col-sm-6, #content .row .col-md-6, #content .row .col-lg-6,
#content .row .col-xs-7, #content .row .col-sm-7, #content .row .col-md-7, #content .row .col-lg-7, #content .row .col-xs-8, #content .row .col-sm-8, #content .row .col-md-8, #content .row .col-lg-8,
#content .row .col-xs-9, #content .row .col-sm-9, #content .row .col-md-9, #content .row .col-lg-9, #content .row .col-xs-10, #content .row .col-sm-10, #content .row .col-md-10, #content .row .col-lg-10,
#content .row .col-xs-11, #content .row .col-sm-11, #content .row .col-md-11, #content .row .col-lg-11, #content .row .col-xs-12, #content .row .col-sm-12, #content .row .col-md-12, #content .row .col-lg-12 {
  padding-left: 10px;
  padding-right: 10px;
}
#content .row-fluid {
  display: flex;
  flex-wrap: wrap;
}
#content .row-fluid .span3 {
  width: 50%;
  text-align: center;
}
#content .row-fluid .span3 a {
  display: block;
  padding: 6px 0;
}
#content .row-fluid .span3 a:hover {
  text-decoration: underline;
}
@media (min-width: 500px) {
  #content .row-fluid .span3 {
    width: 25%;
  }
}

.page-class #content {
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 992px) {
  .row-valign {
    display: flex;
    align-items: center;
  }
}
.padding {
  padding: 10px;
}

.padding-vertical {
  padding: 5px;
}

.scroll-wrapper {
  max-width: 100%;
  overflow-x: auto;
}

.clickable {
  cursor: pointer;
}

@media (min-width: 600px) {
  .centered-narrow {
    width: 600px;
    max-width: 100vw;
    margin: 0 auto;
  }
}

@media (min-width: 800px) {
  .centered-medium {
    width: 800px;
    max-width: 100vw;
    margin: 0 auto;
  }
}

.body ul, .body ol {
  max-width: 100ch;
}
.body a:not(.btn) {
  text-decoration: underline;
}
.body hr {
  border-color: var(--lsYellow);
  border-width: 3px;
}

p {
  max-width: 100ch;
}

.text-small {
  font-size: 0.85em;
}

p.text-small {
  line-height: 1.2em;
}

.text-large {
  font-size: 2em;
}

.progress .bar {
  height: 100%;
  background-color: #00bcd4;
}

.center {
  text-align: center;
}
.center .img-responsive {
  margin: 0 auto;
}

img.small-rounded,
#content img.small-rounded {
  width: 20px;
  height: auto;
  border-radius: 50%;
}

.fal > .text-muted {
  font-weight: normal;
  font-family: "IBM plex Sans", "Helvetica Neue", Arial, sans-serif;
}

.tab-pane {
  padding: 5px 0;
}

@media (max-width: 400px) {
  body h1,
  body .h1 {
    font-size: 2.5em;
  }
}
ul.unstyled {
  list-style-type: none;
}

.fa {
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
}

header .navbar-right {
  margin: 0 20px 0 0;
  float: right !important;
}

pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  font-size: 0.8em;
}

.no-break {
  white-space: nowrap;
}

a.toggle .fal {
  padding: 5px 10px;
}
a.toggle.toggled .fal {
  color: white;
  background-color: #0887C6;
  border-radius: 5px;
}

.alert-error .help-block,
.alert-danger .help-block {
  color: white;
}

.alert-fancy {
  display: flex;
  gap: 0 2rem;
}
.alert-fancy .icon {
  font-size: 30px;
}

/* Give extra height to non empty text areas */
.form-group.label-floating:not(.is-empty) textarea.form-control {
  height: 6em;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 60px;
  z-index: 50;
}

.sticky-bottom {
  position: -webkit-sticky;
  position: sticky;
  bottom: var(--sticky-bottom-offset);
  z-index: 3;
}
.sticky-bottom.modal-footer {
  bottom: 0;
}

form .sticky,
form .sticky-bottom {
  background-color: rgba(255, 255, 255, 0.8);
}

#content .nav.nav-stacked .divider {
  background-color: #ccc;
}

@media (max-width: 759px) {
  .scrolled-down .sticky-top {
    top: 0;
  }
  .nav.nav-stacked .divider {
    background-color: #ccc;
  }
}
.marker-text {
  border: 1px solid #ffef5e;
  background-color: #fff9c4;
}

/* Alert dot for email and other notifications */
.alert-mail::before {
  display: none;
}

.is-alert-mail .alert-mail::before {
  display: inline;
}

.alert-dot {
  position: relative;
}
.alert-dot::before {
  position: absolute;
  content: "";
  background-color: #ff0000;
  border: 1px solid white;
  border-radius: 50%;
  opacity: 0.6;
  width: 8px;
  height: 8px;
  right: -7px;
  top: -3px;
  pointer-events: none;
}

/* location */
.location {
  margin-bottom: 1em;
}
.location .map {
  margin: 1em 0;
}

/* pages */
.do_clickable {
  cursor: pointer;
}

.cover-link:before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 20;
  background: transparent;
}
.cover-link:hover, .cover-link:active, .cover-link:focus, .cover-link:focus:active {
  text-decoration: none;
}

/* simple table layout without borders */
.table.table-simple > tbody > tr > td, .table.table-simple > tbody > tr > th, .table.table-simple > thead > tr > td, .table.table-simple > thead > tr > th {
  border: none;
  vertical-align: top;
  padding: 4px 8px 4px 0;
}
.table.table-simple > tbody > tr > td ul.list-unstyled li, .table.table-simple > tbody > tr > th ul.list-unstyled li, .table.table-simple > thead > tr > td ul.list-unstyled li, .table.table-simple > thead > tr > th ul.list-unstyled li {
  margin-bottom: 4px;
}

/* page transition */
body {
  opacity: 1;
}
body:before {
  opacity: 0;
}
body.fadeout {
  opacity: 0.3;
  transition: all 0.5s;
}
body.fadeout:before {
  content: " ";
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 0.3;
  background-color: #ccc;
  transition: all 0.5s;
  z-index: 99999;
}

/* show/hide parts on ios */
body.is-ios .if-not-ios {
  display: none !important;
}

body.is-not-ios .if-ios {
  display: none !important;
}

/* ---- or ---- */
h2.divider {
  margin: 1em 0 0 0;
  color: gray;
  border-top: 1px solid gray;
  text-align: center;
}
h2.divider > span {
  position: relative;
  top: -0.8em;
  background: white;
  padding: 0 10px;
}

#browser-warning {
  position: fixed;
  z-index: 20000;
  top: 0;
  left: 0;
  right: 0;
  height: auto;
  padding: 20px;
  background-color: #f88;
  color: white;
  box-shadow: rgba(0, 0, 0, 0.42) 0px 10px 20px -12px, rgba(0, 0, 0, 0.12) 0px 3px 20px 0px, rgba(0, 0, 0, 0.2) 0px 8px 10px -5px;
}

.color-danger {
  color: #AE1409;
}

#confetti-canvas {
  position: fixed;
  top: 0;
  left: 0;
}

/* CSS for bridge connection status */
.z-bridge-warning {
  position: fixed;
  visibility: hidden;
  bottom: 0;
  right: -999px;
  opacity: 0;
  animation: bridge-warn-display 4s;
  z-index: 2000;
}

.z-bridge-ok {
  display: none;
}

html.ui-state-bridge-disconnected .z-bridge-warning {
  visibility: visible;
  right: 5px;
  opacity: 1;
}
html.ui-state-bridge-connected .z-bridge-ok {
  display: block;
}

@keyframes bridge-warn-display {
  0% {
    opacity: 0;
    right: -999px;
  }
  25% {
    opacity: 0;
    right: -200px;
  }
  50% {
    opacity: 0.5;
    right: 5px;
  }
  100% {
    opacity: 1;
    right: 5px;
  }
}
/* Corporate pages like the home, blog, etc. */
body.corporate.no-sidedrawer {
  background-color: white;
  -ms-grid-columns: 0 0 1fr 0;
  grid-template-columns: 0 0 1fr 0;
}
body.corporate.no-sidedrawer #sidedrawer {
  display: none;
}
body.corporate.no-sidedrawer .navbar.navbar-grid {
  -ms-grid-columns: 0 1fr auto;
  grid-template-columns: 0 1fr auto;
}
body.corporate.no-sidedrawer .navbar.navbar-grid > label {
  display: none;
}
body.corporate.no-sidedrawer .shortcuts-group .nav-label {
  visibility: hidden;
}
@media (min-width: 800px) {
  body.corporate.no-sidedrawer.centered #content-wrapper main {
    width: 800px;
    max-width: 100vw;
    margin: 0 auto;
  }
}
body.corporate.home .page-header {
  padding: 5vh 20px 5vh 20px;
}
@media (min-width: 768px) {
  body.corporate.home .page-header {
    padding: 20vh 20px 20vh 20px;
  }
}
body.corporate.home .page-header h1 {
  background-color: inherit;
  line-height: 1.2;
  margin: 0 0 0.7em 0;
}
body.corporate.home .page-header h4,
body.corporate.home .page-header p {
  background-color: inherit;
}
body.corporate #sidedrawer a.active,
body.corporate #sidedrawer a:hover {
  background-color: #190053;
  color: white;
}
body.corporate #sidedrawer .divider {
  background-color: #190053;
  opacity: 0.2;
}
body.corporate.home #content {
  max-width: 1300px;
  margin: 15px auto;
}
body.corporate.home .blocks .row:nth-child(even) {
  background-color: #f5f5f5;
}
@media (min-width: 992px) {
  body.corporate.home .blocks .row .col-md-6:first-child {
    padding-right: 30px;
  }
  body.corporate.home .blocks .row .col-md-6:last-child {
    padding-left: 30px;
  }
}
body.corporate #header-wrapper header {
  background-color: white;
}
body.corporate #header-wrapper header .navbar {
  background-color: white;
  color: black;
}
body.corporate #header-wrapper header .navbar .dropdown-toggle {
  color: black;
}
body.corporate .page-content > .row {
  max-width: 1300px;
  display: flex;
}
body.corporate .blocks .row > div.block-type-text > div {
  padding: 10px 10px;
}
@media (min-width: 992px) {
  body.corporate .blocks .row > div.block-type-text > div {
    padding: 40px 10px;
  }
}
@media (max-width: 1199px) {
  body.corporate .blocks .row > div.block-type-text > div .embed-responsive {
    position: initial;
    margin: 0 -20px;
  }
  body.corporate .blocks .row > div.block-type-text > div .mx-body-media-home {
    margin: 0 -20px;
  }
}

.modal-preview .modal-overlay-close {
  display: none;
}

.preview {
  max-width: 1000px;
  margin: 0 auto;
  height: calc(100dvh - 4rem);
  overflow-y: auto;
}
.preview.-survey {
  max-width: 800px;
}
.preview .timeline-index {
  margin-bottom: 3rem;
  position: static;
  border-top: 0.5px solid #ccc;
}

.preview-error {
  display: flex;
  align-items: center;
  font-size: 1.2em;
}

.preview__nav {
  display: flex;
  align-items: center;
  padding: 0 20px;
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255, 255, 255, 0.9);
}
.preview__nav h2 {
  margin-right: auto;
}
.preview__nav .btn + .btn {
  margin-left: 10px;
}

.preview-survey {
  width: 100%;
}
.preview-survey a[id*=back_history] {
  display: none !important;
}
.preview-survey a[href*=results] {
  display: none;
}

.dragover:after {
  content: "⇪";
  position: fixed;
  display: block;
  padding-top: 40vh;
  text-align: center;
  top: 0px;
  left: 0px;
  height: 100vh;
  width: 100vw;
  background-color: rgba(255, 255, 255, 0.6);
  color: rgba(0, 0, 0, 0.5);
  font-size: 128px;
  line-height: 1;
  z-index: 10000;
}

/* Pricing table layout */
.pricing #content-wrapper main {
  max-width: 1000px !important;
}
.pricing h1 {
  text-align: center;
}
.pricing .body {
  margin: 30px 0;
}
.pricing .body > * {
  text-align: center;
  font-size: 20px;
}
.pricing .pricingtable-currency-selector {
  text-align: center;
  font-size: 3em;
  margin: 1em 0;
}
.pricing .pricingtable-currency-selector a {
  display: inline-block;
  padding: 0 10px;
}
.pricing .pricingtable-currency-selector .selected {
  font-weight: bold;
}
.pricing .block-type-text div {
  padding: 40px 10px 0 10px !important;
}
.pricing .block-type-text h2 {
  margin-top: 0;
  line-height: 1.2em;
}

.pricingtable-wrapper > * {
  padding: 20px 10px;
  text-align: center;
  border: 1px solid #e0e0e0;
  border-bottom: 0;
  margin: 0;
}
.pricingtable-wrapper > * .btn {
  width: 80%;
  min-width: 170px;
}
.pricingtable-wrapper > .pricingtable-chapeau {
  border-color: white;
  margin-bottom: 1px;
  margin-top: 20px;
  border: 0;
  padding: 10px 5px;
}
.pricingtable-wrapper > .pricingtable-header {
  background-color: #eeeeee;
  border: 0;
}
.pricingtable-wrapper .pricingtable-chapeau.c2,
.pricingtable-wrapper .pricingtable-header.c2 {
  background-color: #5d9d26;
  color: white;
}
.pricingtable-wrapper .pricingtable-header.c3 {
  background-color: #616161;
  color: white;
}
.pricingtable-wrapper > .pricingtable-description,
.pricingtable-wrapper > .pricingtable-pricing,
.pricingtable-wrapper > .pricingtable-action,
.pricingtable-wrapper > .pricingtable-action-footer {
  padding: 10px;
  border-top: 0;
  margin-bottom: 1px;
}
.pricingtable-wrapper > .pricingtable-description p.text-muted,
.pricingtable-wrapper > .pricingtable-pricing p.text-muted,
.pricingtable-wrapper > .pricingtable-action p.text-muted,
.pricingtable-wrapper > .pricingtable-action-footer p.text-muted {
  margin-top: 10px;
}
.pricingtable-wrapper > .pricingtable-action-footer {
  padding-top: 0;
}
.pricingtable-wrapper > * > table {
  width: auto;
  margin: 0 auto 0 auto;
}
.pricingtable-wrapper > * > table td {
  padding: 0 10px 4px 10px;
  text-align: left;
}
.pricingtable-wrapper > .r15 {
  border-bottom: 1px solid #e0e0e0;
}
.pricingtable-wrapper .empty {
  display: none;
}
@media (min-width: 600px) {
  .pricingtable-wrapper {
    display: -ms-grid;
    -ms-grid-columns: 1fr 1fr 1fr;
    -ms-grid-rows: auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: repeat(15, auto);
  }
  .pricingtable-wrapper .c1 {
    -ms-grid-column: 1;
    grid-column: 1;
    border-right: 0;
  }
  .pricingtable-wrapper .c2 {
    -ms-grid-column: 2;
    grid-column: 2;
  }
  .pricingtable-wrapper .c3 {
    border-left: 0;
    -ms-grid-column: 3;
    grid-column: 3;
  }
  .pricingtable-wrapper .r1 {
    -ms-grid-row: 1;
    grid-row: 1;
  }
  .pricingtable-wrapper .r2 {
    -ms-grid-row: 2;
    grid-row: 2;
  }
  .pricingtable-wrapper .r3 {
    -ms-grid-row: 3;
    grid-row: 3;
  }
  .pricingtable-wrapper .r4 {
    -ms-grid-row: 4;
    grid-row: 4;
  }
  .pricingtable-wrapper .r5 {
    -ms-grid-row: 5;
    grid-row: 5;
  }
  .pricingtable-wrapper .r6 {
    -ms-grid-row: 6;
    grid-row: 6;
  }
  .pricingtable-wrapper .r7 {
    -ms-grid-row: 7;
    grid-row: 7;
  }
  .pricingtable-wrapper .r8 {
    -ms-grid-row: 8;
    grid-row: 8;
  }
  .pricingtable-wrapper .r9 {
    -ms-grid-row: 9;
    grid-row: 9;
  }
  .pricingtable-wrapper .r10 {
    -ms-grid-row: 10;
    grid-row: 10;
  }
  .pricingtable-wrapper .r11 {
    -ms-grid-row: 11;
    grid-row: 11;
  }
  .pricingtable-wrapper .r12 {
    -ms-grid-row: 12;
    grid-row: 12;
  }
  .pricingtable-wrapper .r13 {
    -ms-grid-row: 13;
    grid-row: 13;
  }
  .pricingtable-wrapper .r14 {
    -ms-grid-row: 14;
    grid-row: 14;
  }
  .pricingtable-wrapper .r15 {
    -ms-grid-row: 15;
    grid-row: 15;
  }
  .pricingtable-wrapper .empty {
    display: block;
  }
}

.notice-wrap {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 250px;
  z-index: 9999;
}

* html .notice-wrap {
  position: absolute;
}

.notice-item {
  height: auto;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  padding: 6px 6px 0 6px;
  display: block;
  position: relative;
  margin: 0 0 12px 0;
  font-size: 11px;
}

.notice-item-close {
  position: absolute;
  font-family: Arial;
  font-size: 11px;
  font-weight: bold;
  right: 6px;
  top: 0;
  cursor: pointer;
}

.body-media-large.body-media-still,
.embed-responsive {
  overflow: hidden;
}

.media-overlay .embed-responsive {
  padding: 0 !important;
  position: relative;
  height: 100%;
  width: 100%;
}

.activity.noavatar.full-width .body-media:has(.video-still) .body-media-still {
  overflow: hidden;
  background-color: black;
}

.overlay-view video {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.video-still {
  display: block;
  position: relative;
  text-align: center;
  border: none;
  cursor: pointer;
  background: none;
}
.video-still > .icon {
  position: absolute;
  left: 50%;
  top: 50%;
  color: white;
  padding: 15px;
  font-size: 72px;
  text-shadow: 0 1px 3px rgb(0, 0, 0), 0 0 30px rgba(0, 0, 0, 0.3);
  opacity: 0.6;
  transform: translate(-50%, -50%);
}
.video-still > .caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  color: white;
  text-align: initial;
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0.7;
  padding: 5px 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.video-still:hover > span {
  opacity: 0.9;
}

.media-still,
.video-still {
  border: 0;
  padding: 0;
  padding-block-end: 0;
  padding-block-start: 0;
  background: none;
}

.body-media.body-media-small.body-media-right, .body-media.body-media-medium.body-media-right {
  float: right;
  clear: right;
  margin-left: var(--globalPaddingHorizontal);
  margin-right: 0;
  margin-bottom: 5px;
}
.body-media.body-media-small.body-media-, .body-media.body-media-small.body-media-left, .body-media.body-media-medium.body-media-, .body-media.body-media-medium.body-media-left {
  float: left;
  clear: right;
  margin-right: var(--globalPaddingHorizontal);
  margin-left: 0;
  margin-bottom: 5px;
}
.body-media.body-media-medium {
  max-width: 50%;
}
.body-media.body-media-small {
  max-width: 33%;
}
.body-media.body-media-large, .body-media.body-media-block {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 15px;
}
.body-media img {
  max-width: 100%;
  height: auto;
}

.content-margin .body-media.body-media-large.body-media-block {
  margin-left: -10px;
  margin-right: -10px;
}

figure figcaption {
  font-size: 14px;
  color: #616161;
  padding: 5px 10px;
}

.img-small-inline {
  max-height: 1.5em;
}

.table-scrolling {
  overflow-x: scroll;
}

.table-scrolling > div,
.table-sticky > div {
  border-bottom: 1px solid #ddd;
  z-index: 0;
}
.table-scrolling > div > div,
.table-sticky > div > div {
  padding: 5px;
  border-right: 1px solid #ddd;
  width: 100px;
  min-width: 100px;
  overflow: hidden;
}
.table-scrolling > div > div.popover,
.table-sticky > div > div.popover {
  width: auto;
}
.table-scrolling > div > div.narrow,
.table-sticky > div > div.narrow {
  width: 60px;
  min-width: 60px;
}
.table-scrolling > div > div.wide,
.table-sticky > div > div.wide {
  width: 200px;
  min-width: 200px;
}
.table-scrolling > div > div:hover,
.table-sticky > div > div:hover {
  background-color: #f5f5f5;
}
.table-scrolling > div > div:nth-child(1),
.table-sticky > div > div:nth-child(1) {
  position: -webkit-sticky;
  position: sticky;
  width: 200px;
  min-width: 200px;
  left: 0;
  background-color: white;
}
.table-scrolling > div:nth-child(odd),
.table-sticky > div:nth-child(odd) {
  background-color: #f9f9f9;
}
.table-scrolling .header,
.table-sticky .header {
  display: flex;
  position: -webkit-sticky;
  position: sticky;
  width: fit-content;
  top: 60px;
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid #333333;
  z-index: 10;
}
.table-scrolling .header > .th,
.table-scrolling .header > .row-name,
.table-sticky .header > .th,
.table-sticky .header > .row-name {
  font-weight: bold;
  line-height: 1.2em;
}
.table-scrolling .table-row,
.table-sticky .table-row {
  display: flex;
  width: fit-content;
}

@media (max-width: 759px) {
  .scrolled-down .table-scrolling .header,
  .scrolled-down .table-sticky .header {
    top: 0;
  }
}
.full-window .table-scrolling .header,
.full-window .table-sticky .header {
  top: 0;
}

main .calendar {
  margin-top: 30px;
  margin-bottom: 15px;
}
main .calendar .load-month {
  margin: 1em 0;
  width: 100%;
  text-align: center;
}
main .calendar .load-month a {
  display: inline-block;
  padding: 5px 10px;
}

@media (max-width: 759px) {
  .calendar.upcoming {
    display: none;
  }
  .cal-day h4 {
    border-bottom: 1px solid rgba(51, 51, 51, 0.4);
    font-weight: 500;
  }
  .cal-day h4 span.date-full {
    display: inline-block;
  }
  .cal-day h4 span.date-short {
    display: none;
  }
  .cal-day.today h4 {
    border-color: red;
    color: red;
  }
  .cal-events {
    display: flex;
    flex-wrap: wrap;
  }
  .cal-events .vevent {
    flex: 1 1 0;
    min-width: 300px;
    overflow-x: hidden;
    margin-right: 12px;
    margin-bottom: 15px;
    background: rgba(0, 0, 0, 0.05);
    padding: 5px;
  }
  .cal-events .vevent a {
    display: block;
    color: #333333;
  }
  .cal-events .vevent time:nth-of-type(1) {
    color: #333333;
  }
  .cal-events .vevent time:nth-of-type(2) {
    color: #6c757d;
  }
  .cal-events .vevent__slot {
    font-size: 0.9em;
  }
}
.cal-list .cal-day h4 {
  border-bottom: 1px solid rgba(51, 51, 51, 0.4);
  font-weight: 500;
}
.cal-list .cal-day h4 span.date-full {
  display: inline-block;
}
.cal-list .cal-day h4 span.date-short {
  display: none;
}
.cal-list .cal-day.today h4 {
  border-color: red;
  color: red;
}
.cal-list .cal-events {
  display: flex;
  flex-wrap: wrap;
}
.cal-list .cal-events .vevent {
  flex: 1 1 0;
  min-width: 300px;
  overflow-x: hidden;
  margin-right: 12px;
  margin-bottom: 15px;
  background: rgba(0, 0, 0, 0.05);
  padding: 5px;
}
.cal-list .cal-events .vevent a {
  display: block;
  color: #333333;
}
.cal-list .cal-events .vevent time:nth-of-type(1) {
  color: #333333;
}
.cal-list .cal-events .vevent time:nth-of-type(2) {
  color: #6c757d;
}
.cal-list .cal-events .vevent__slot {
  font-size: 0.9em;
}

.event-slot {
  position: relative;
}
.event-slot .btn {
  margin-top: 0;
  margin-bottom: 0;
}

.cal-events {
  list-style: none;
  padding: 0;
  margin: 0;
}
.cal-events li {
  margin-bottom: 0.5rem;
}

.cal-list h2,
.cal-grid h2 {
  display: flex;
  align-items: center;
}
.cal-list h2 a,
.cal-grid h2 a {
  margin-left: auto;
  font-size: 16px;
}

body.page-calendar .switch-view {
  display: none;
}
@media (min-width: 760px) {
  body.page-calendar .switch-view {
    display: block;
  }
}

.cal-grid .cal-day.disabled, .cal-grid .cal-day.empty {
  display: none;
}
@media (min-width: 760px) {
  .cal-grid .cal-events {
    display: block;
  }
  .cal-grid .cal-month {
    display: -ms-grid;
    -ms-grid-rows: auto auto auto auto auto auto;
    -ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
    display: grid;
    grid-template-rows: repeat(6, minmax(0, auto));
    grid-template-columns: repeat(7, 1fr);
  }
  .cal-grid .cal-month .cal-day {
    border: 1px solid #e0e0e0;
    cursor: pointer;
    min-height: 100px;
  }
  .cal-grid .cal-month .cal-day.empty {
    display: block;
  }
  .cal-grid .cal-month .cal-day.disabled {
    border-width: 0;
    background-color: inherit;
    cursor: auto;
    display: block;
  }
  .cal-grid .cal-month .cal-day.wday-6, .cal-grid .cal-month .cal-day.wday-7 {
    background-color: #f5f5f5;
  }
  .cal-grid .cal-month .cal-day h4 {
    margin: 0;
    font-size: 13px;
    line-height: 1;
    text-align: right;
    padding: 5px;
  }
  .cal-grid .cal-month .cal-day h4 span.date-full {
    display: none;
  }
  .cal-grid .cal-month .cal-day h4 span.date-short {
    display: inline-block;
  }
  .cal-grid .cal-month .cal-day.today {
    border-color: #ec0000;
  }
  .cal-grid .cal-month .cal-day.today h4 span {
    padding: 5px;
    margin: -5px;
    background-color: #ec0000;
    color: white;
  }
  .cal-grid .vevent {
    overflow: hidden;
    padding: 0 2px;
  }
  .cal-grid .vevent a {
    display: flex;
    flex-flow: column wrap;
    color: #333333;
    font-size: 12px;
    line-height: 1.2;
  }
  .cal-grid .vevent a:hover {
    text-decoration: underline;
  }
  .cal-grid .vevent .vevent__title {
    max-width: 120px;
    order: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .cal-grid .vevent .dtstart {
    order: 2;
    display: block;
    font-size: 12px;
    color: #757575;
  }
  .cal-grid .vevent__slot {
    order: 3;
    color: #333333;
  }
  .cal-grid .vevent__slot .dtstart {
    display: inline;
    color: currentColor;
  }
}

.vevent__slot {
  padding: 3px 5px;
  background: #fac112;
  color: #333333;
}

.event h2 {
  margin-top: 0;
}

.event-refers {
  display: flex;
  margin: 0 0 1em;
}
.event-refers ul {
  display: inline-block;
  list-style: none;
  margin: 0 0 0 4px;
  padding: 0;
}

/* Single activity */
.activity {
  display: grid;
  grid-template-columns: 76px 1fr auto auto;
  grid-template-rows: 21px 1fr auto auto auto auto;
  margin-bottom: 15px;
  position: relative;
  z-index: calc(60 + var(--_counter));
}
.activity.is-unpublished {
  opacity: 0.5;
}
.activity.-is-open:has(.avatar.fa-folder) > .content-title > .avatar:before {
  content: "\f07c";
}
.activity > .content-title > .avatar {
  grid-column: 1;
}
.activity > .content-title > .avatar.fal, .activity > .content-title > .avatar.fa, .activity > .content-title > .avatar.fab, .activity > .content-title > .avatar.fas, .activity > .content-title > .avatar.far {
  font-size: 42px;
}
.activity > .content-title > .avatar.avatar-1 {
  z-index: 4;
}
.activity > .content-title > .avatar.avatar-2 {
  margin-left: 13px;
  opacity: 0.9;
  z-index: 3;
}
.activity > .content-title > .avatar.avatar-3 {
  margin-left: 26px;
  opacity: 0.7;
  z-index: 2;
}
.activity > .content-title > .avatar.avatar-4 {
  margin-left: 39px;
  opacity: 0.5;
  z-index: 1;
}
.activity > .content-title > .avatar img {
  border-radius: 50%;
  width: 70px;
  height: auto;
}
.activity .content-title:has(.avatar) {
  grid-column: 1/4;
  display: grid;
  grid-template-columns: 76px calc(100% - 76px - 50px) 50px;
  align-items: center;
  padding: 10px 0 0;
}
.activity .content-title:has(.avatar) h2 {
  grid-column: 2;
}
.activity .content-title:has(time):has(.avatar) {
  grid-template-rows: 25px auto;
  align-items: start;
}
.activity .content-title:has(time):has(.avatar) > .avatar {
  grid-row: 1/2;
}
.activity .content-title:has(time):has(.avatar) time {
  grid-row: 1;
}
.activity .content-title:has(time):has(.avatar) h2 {
  grid-row: 2;
}
.activity .content-title:has(time):has(.avatar):has(.display-header) {
  grid-template-rows: auto auto;
}
.activity .content-title:has(time):has(.avatar):has(.display-header) time {
  align-self: center;
}
.activity > .edit {
  grid-row: 1;
  grid-column: 3;
  margin-top: 0;
  z-index: 55;
}
.activity > .edit > a {
  padding: 2px 2px 2px 12px;
  text-shadow: 0 0 4px white;
}
@media (max-width: 450px) {
  .activity {
    grid-template-columns: 56px 1fr 50px;
  }
  .activity > .content-title > .avatar.fal, .activity > .content-title > .avatar.fa, .activity > .content-title > .avatar.fab, .activity > .content-title > .avatar.far {
    font-size: 35px;
  }
  .activity > .content-title > .avatar img {
    width: 50px;
  }
}
@media (min-width: 1050px) {
  .activity {
    grid-template-columns: 82px 1fr 50px;
  }
}
.activity .activity {
  z-index: calc(10 + var(--_counter));
}
.activity .activity > .content-title > .avatar.fal {
  font-size: 35px;
}
.activity .activity > .content-title > .avatar img {
  width: 50px;
}
@media (max-width: 450px) {
  .activity .activity {
    grid-template-columns: 41px 1fr;
  }
  .activity .activity > .content-title > .avatar.fal {
    font-size: 28px;
  }
  .activity .activity > .content-title > .avatar img {
    width: 35px;
  }
}
.activity > .fn {
  display: block;
  grid-row: 1;
  grid-column: 2;
  color: #333333;
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.activity > .content-title > time {
  display: block;
  grid-column: 2;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.activity > .content-title {
  display: block;
  grid-row: 1;
  grid-column: 2/3;
}
.activity .content-title + .content {
  margin-top: 2rem;
}
.activity > .content {
  display: block;
  grid-row: 3;
  grid-column: 1/4;
  overflow: hidden;
}
.activity > .content a:not(.btn) {
  text-decoration: underline;
}
.activity > .content .chapeau {
  color: #999999;
  margin-bottom: 0;
  font-size: 14px;
}
.activity > .content h4 {
  margin-top: 0;
  margin-bottom: 6px;
}
.activity > .content h5 {
  margin: 0;
}
.activity > .content .body-media {
  margin-bottom: 6px;
}
.activity > .content img {
  max-width: 100%;
  max-height: 1600px;
}
.activity > .content .body-media-document.body-media-small {
  width: 25%;
}
.activity > .content > .summary-content {
  display: block;
  font-weight: 300;
  font-size: var(--paragraphSize);
}
.activity > .content > .full-content {
  display: none;
  height: 0;
}
.activity > .content > .full-content .toggle-full-content {
  width: 100%;
  text-align: right;
}
.activity > .content.-is-open > .summary-content {
  display: none;
}
.activity > .content.-is-open > .full-content {
  display: block;
  height: auto;
}
.activity > .content .toggle-full-content {
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  font-size: var(--paragraphSize);
  color: #0887C6;
  font-weight: 400;
}
.activity.no-title > .content {
  grid-row: 2;
}
.activity.noavatar.full-width > .content-title {
  grid-column: 1/4;
  grid-row: 1;
  padding: 10px 0 0;
  margin-left: 0;
  margin-right: 0;
}
.activity.noavatar.full-width > .content-title h1 {
  margin-left: 10px;
  margin-right: 10px;
}
.activity.noavatar.full-width > .content {
  grid-column: 1/4;
}
.activity.noavatar.full-width > .content .full-content .body-media.body-media-large,
.activity.noavatar.full-width > .content .full-content .embed-responsive {
  margin-left: -10px;
  margin-right: -10px;
}
.activity.noavatar.full-width > .content .full-content .block-type-text .body-media.body-media-large,
.activity.noavatar.full-width > .content .full-content .block-type-text .embed-responsive {
  margin-left: 0;
  margin-right: 0;
}
.activity.noavatar.full-width > .content .full-content .row > .col-md-12 {
  padding-left: 10px;
  padding-right: 10px;
}
.activity > .likes {
  display: block;
  grid-row: 4;
  grid-column: 2/3;
}
.activity > .comments {
  grid-row: 5;
  grid-column: 2/3;
}
.activity > .comments .activity:nth-of-type(1) {
  border-top: 1px solid #ddd;
  margin-top: 15px;
  padding-top: 15px;
}
.activity > .comments .comment-wrapper {
  overflow: hidden;
}
.activity > .comments .comment-wrapper .first-hidden {
  position: relative;
  margin-top: -22px;
  cursor: pointer;
}
.activity > .comments .comment-wrapper .first-hidden:after {
  position: absolute;
  content: "";
  left: 0;
  top: 20px;
  bottom: 0;
  right: 0;
  background: linear-gradient(rgb(255, 255, 255), rgba(255, 255, 255, 0));
}
.activity > .comments .comments-previous {
  border-bottom: 1px solid #ddd;
  background-color: rgba(255, 255, 255, 0.1);
  z-index: 1;
}
.activity > .content.form {
  grid-row: 1/8;
  margin-top: -15px;
}
.activity > .actions {
  grid-row: 5;
  grid-column: 2/3;
  text-align: right;
}
.activity > .actions a {
  margin-top: 0;
}
.activity.discussion > .content {
  grid-row: 2;
  grid-column: 2/3;
}
.activity.discussion > .content-body {
  grid-row: 3;
  grid-column: 2/3;
}
.activity.discussion > .likes {
  grid-row: 4;
  grid-column: 2/3;
}
.activity.discussion > .comments {
  grid-row: 5;
  grid-column: 2/3;
}
@media (max-width: 759px) {
  .activity.discussion > .content {
    grid-row: 2;
    grid-column: 2/3;
  }
  .activity.discussion > .content-body {
    grid-row: 3;
    grid-column: 1/3;
  }
  .activity.discussion > .likes {
    grid-row: 4;
    grid-column: 1/3;
  }
  .activity.discussion > .comments {
    grid-row: 5;
    grid-column: 1/3;
  }
}

/* Files in the content of an activity */
.file-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 200px 200px;
  grid-gap: 1px;
}
@media (max-width: 759px) {
  .file-grid {
    grid-template-rows: 133px 133px;
  }
}
@media (max-width: 450px) {
  .file-grid {
    grid-template-rows: 100px 100px;
  }
}
.file-grid.count-1 > a:nth-of-type(1) {
  display: block;
  grid-row: 1/3;
  grid-column: 1/3;
}
.file-grid.count-2 > a:nth-of-type(1) {
  display: block;
  grid-row: 1/3;
  grid-column: 1;
}
.file-grid.count-2 > a:nth-of-type(2) {
  display: block;
  grid-row: 1/3;
  grid-column: 2;
}
.file-grid.count-3 {
  grid-template-columns: 1.6fr 1fr;
}
.file-grid.count-3 > a:nth-of-type(1) {
  display: block;
  grid-row: 1/3;
  grid-column: 1;
}
.file-grid.count-3 > a:nth-of-type(2) {
  display: block;
  grid-row: 1;
  grid-column: 2;
}
.file-grid.count-3 > a:nth-of-type(3) {
  display: block;
  grid-row: 2;
  grid-column: 2;
}
.file-grid img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}
.file-grid img.docs {
  object-fit: contain;
}
.file-grid.docs img {
  object-fit: contain;
}

.block-type-text__content.-bg-preset {
  padding: 1rem;
  background-color: color-mix(in srgb, var(--_color) 15%, white);
}
.block-type-text__content.-bg {
  padding: var(--globalPaddingHorizontal);
  background-color: var(--_color);
}
.block-type-text__content p:last-child {
  margin-bottom: 0;
}

.activity-container.-activity-markers {
  display: grid;
  grid-template-columns: 5rem auto;
  align-items: start;
  position: relative;
}
.activity-container.-activity-markers:before {
  content: "";
  width: 2px;
  height: calc(100% + var(--globalPaddingHorizontal));
  position: absolute;
  top: 0;
  left: 24px;
  background: var(--grayColor);
}
.activity-container.-activity-markers.-last:after {
  content: "";
  width: 20px;
  height: 2px;
  position: absolute;
  top: calc(100% + var(--globalPaddingHorizontal));
  left: 15px;
  background: var(--grayColor);
}
.activity-container.-activity-markers .activity {
  margin-top: 0;
  grid-column: 2;
  grid-row: 1;
}
.activity-container.-activity-markers .activity.foldable {
  margin-top: 0;
}
.activity-container.-activity-markers .activity.progress-marker {
  grid-row: 2;
}

.activity-container.-activity-markers:has(+ .display-margin):before {
  height: calc(100% + var(--globalPaddingHorizontal) + var(--_display-margin));
}

.activity-marker__item {
  grid-row: 1;
  grid-column: 1;
  display: flex;
  align-items: center;
  justify-content: start;
  width: 40px;
  height: 40px;
  padding: 0;
  position: absolute;
  top: 10px;
  left: 26px;
  border: none;
  background: none;
}
.activity-marker__item:before {
  content: "";
  width: 40%;
  height: 2px;
  background: var(--grayColor);
}

.scrolled-down .activity-marker__item.-marker {
  top: 4rem;
}
@media (min-width: 759px) {
  .scrolled-down .activity-marker__item.-marker {
    top: 10rem;
  }
}

.activity-marker__item.-marker {
  display: block;
  width: 25px;
  height: 25px;
  position: sticky;
  top: 10rem;
  left: 0;
  background: white;
  border-radius: 50%;
  border: 2px solid var(--brandSuccess);
  transform: translateX(50%);
}
.activity-marker__item.-marker.-in-progress {
  background: color-mix(in srgb, var(--brandSuccess), #fff 80%);
}
.activity-marker__item.-marker.-done {
  background: var(--brandSuccess);
  border-color: var(--brandSuccess);
}
.activity-marker__item.-marker.-done:before {
  content: "";
  width: 8px;
  height: 2px;
  position: absolute;
  top: 12px;
  left: 3px;
  background: white;
  transform: rotate(40deg);
}
.activity-marker__item.-marker.-done:after {
  content: "";
  width: 13px;
  height: 2px;
  position: absolute;
  top: 10px;
  left: 7px;
  background: white;
  transform: rotate(-50deg);
  border-radius: 0;
  border: none;
}
.activity-marker__item.-marker i {
  position: absolute;
  top: 50%;
  left: 50%;
  color: white;
  font-size: 18px;
  transform: translate(-50%, -50%);
}
.activity-marker__item.-marker:hover, .activity-marker__item.-marker:active {
  background: color-mix(in srgb, var(--brandSuccess), #fff 50%);
  border-color: var(--brandSuccess);
}

.timeline {
  --paragraphSize: 1.5rem;
  --paragraphWeight: 400;
  --paragraphLine: 1.5;
  --bigBodySize: calc(var(--paragraphSize) * 1.2);
  --headingFamily: "IBM Plex Sans", Arial, sans-serif;
  --paragraphFamily: "IBM Plex Sans", Arial, sans-serif;
  --headingWeight: 400;
  --headingCaps: normal;
  --headingShadow: 0 2px 5px rgba(33, 33, 33, 0.5);
  --headingStyle: normal;
  --headingAlign: center;
  --heading4Size: 1.3em;
  --heading3Size: 1.7em;
  --heading2Size: 2.2em;
  --heading1Size: 3.2em;
  --titleSize: 1.3em;
  --_display-margin: 64px;
  margin-top: 0;
  margin-bottom: 15px;
  font-family: var(--paragraphFamily);
  font-size: var(--paragraphSize);
  line-height: var(--paragraphLine);
}
.timeline .summary {
  font-size: var(--paragraphSize);
  font-weight: var(----paragraphWeight);
}
.timeline p.body-large {
  font-size: var(--bigBodySize);
}
.timeline p.body-extra-large {
  font-size: calc(1.2 * var(--bigBodySize));
}
.timeline h1, .timeline .h1,
.timeline h2, .timeline .h2,
.timeline h3, .timeline .h3,
.timeline h4, .timeline .h4 {
  font-family: var(--headingFamily);
  font-weight: var(--headingWeight);
  font-style: var(--headingStyle);
  line-height: 1.15;
}
.timeline h1, .timeline .h1 {
  font-size: var(--heading1Size);
  text-shadow: var(--headingShadow);
  text-transform: var(--headingCaps);
  padding: 0 var(--globalPaddingHorizontal);
}
.timeline h2, .timeline .h2 {
  font-size: var(--heading2Size);
  text-shadow: none;
  text-transform: none;
}
.timeline h3, .timeline .h3 {
  font-size: var(--heading3Size);
  text-shadow: none;
  text-transform: none;
}
.timeline h4, .timeline .h4 {
  font-size: var(--heading4Size);
  text-shadow: none;
  text-transform: none;
  line-height: 1.5;
}
.timeline h1.h3 {
  margin-top: 0;
}
.timeline h1.h3 span {
  opacity: 0.5;
}
.timeline .body h1, .timeline .body h2, .timeline .body h3, .timeline .body h4 {
  margin-top: 0;
}
.timeline.has-timeline-index .activity.foldable > .content-title,
.timeline.has-timeline-index .activity.foldable > .avatar {
  top: 92px;
}
@media (max-width: 759px) {
  .scrolled-down .timeline.has-timeline-index .activity.foldable > .content-title,
  .scrolled-down .timeline.has-timeline-index .activity.foldable > .avatar {
    top: 32px;
  }
}
.timeline.-h-large .activity > .content-title h2 {
  margin-top: 0;
}
.timeline .row {
  margin-bottom: 1em;
}
.timeline .activity {
  grid-template-rows: auto;
  width: 100%;
  padding: 0 var(--globalPaddingHorizontal);
  position: relative;
  scroll-margin-top: 20rem;
}
.timeline .activity.-bg-color {
  --_color: #333;
  background-color: color-mix(in srgb, var(--_color) 15%, white);
}
.timeline .activity.-bg-color > .content-title {
  background-color: color-mix(in srgb, var(--_color) 15%, white);
}
.timeline .activity .activity {
  grid-template-columns: auto 1fr auto;
}
.timeline .activity .avatar {
  margin-right: 2rem;
}
.timeline .activity > .content-title {
  min-height: 3rem;
}
.timeline .activity > .content-title h2 {
  margin: 0;
  font-size: var(--titleSize);
  text-shadow: none;
}
@media (max-width: 759px) {
  .timeline .activity > .content-title {
    hyphens: auto;
  }
}
.timeline .activity .content h4 {
  font-weight: 400;
}
.timeline .activity > .content .display-header,
.timeline .activity > .content-title .display-header {
  display: grid;
  grid-template-rows: minmax(2em, auto);
  grid-template-columns: 1fr;
  align-items: center;
  overflow: hidden;
  grid-column: 2/4;
  grid-row: 1;
}
.timeline .activity > .content .display-header.with-maxheight img,
.timeline .activity > .content-title .display-header.with-maxheight img {
  width: auto;
  max-height: 200px;
}
.timeline .activity > .content .display-header.with-stretch,
.timeline .activity > .content-title .display-header.with-stretch {
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 992px) {
  .timeline .activity > .content .display-header.with-stretch,
  .timeline .activity > .content-title .display-header.with-stretch {
    background-size: 100% 100%;
  }
}
.timeline .activity > .content .display-header.without-title.with-stretch,
.timeline .activity > .content-title .display-header.without-title.with-stretch {
  min-height: 6rem;
}
.timeline .activity > .content .display-header.with-rounded-borders-10,
.timeline .activity > .content-title .display-header.with-rounded-borders-10 {
  border-radius: 1rem;
}
.timeline .activity > .content .display-header.with-rounded-borders-50,
.timeline .activity > .content-title .display-header.with-rounded-borders-50 {
  border-radius: 5rem;
}
.timeline .activity > .content .display-header > .display-header__title,
.timeline .activity > .content-title .display-header > .display-header__title {
  grid-row: 1;
  grid-column: 1;
  z-index: 10;
  padding: 10px;
  margin: 0;
  text-align: var(--headingAlign);
  font-size: var(--heading2Size);
  text-transform: var(--headingCaps);
}
.timeline .activity > .content .display-header > img,
.timeline .activity > .content-title .display-header > img {
  grid-row: 1;
  grid-column: 1;
  margin: 0 auto;
  display: block;
  max-height: none;
  max-width: 100%;
  height: auto;
}
.timeline .activity .content-title:has(.display-header) {
  padding-top: 0;
}
.timeline .activity > .content-title:has(time) .display-header {
  grid-row: 2;
}
.timeline .activity.progress-marker {
  padding: 0 0 15px 30px;
  margin-bottom: 15px;
}
.timeline .activity.progress-marker > a {
  grid-row: 2;
  grid-column: 1/4;
  display: flex;
  align-items: center;
  line-height: 1.2;
  color: #333333;
}
.timeline .activity.progress-marker > a:hover {
  text-decoration: none;
  color: #0887C6;
}
.timeline .activity.progress-marker > a .far {
  display: inline-block;
  color: #5d9d26;
  font-size: 1.3em;
  padding-right: 10px;
  vertical-align: middle;
}
.timeline .activity.progress-marker > a.teacher-only .far {
  color: #9e9e9e;
}
.timeline .activity .edit {
  grid-row: 1;
  grid-column: 3;
  align-self: start;
  justify-self: right;
  margin-top: 0;
}
.timeline .activity .edit > a {
  padding: 12px 2px 12px 12px;
}
.timeline .activity .edit > a i.fal {
  display: inline-block;
  width: 29px;
}
.timeline .activity .edit > a i.fal:before {
  border-radius: 15px;
  background-color: rgba(255, 255, 255, 0.3);
  padding: 5px 10px;
  display: inline-block;
  text-align: center;
}
.timeline .activity .edit > a:hover i.fal:before {
  background-color: rgba(255, 255, 255, 0.7);
}
.timeline .activity .progress-loader {
  position: absolute;
  bottom: 0;
  height: 1px;
}
.timeline .activity .resource-list > * {
  margin-bottom: 1em;
}
.timeline .activity .resource-list > .document {
  display: grid;
  grid-template-columns: 1fr 2fr;
  border: 1px solid #eeeeee;
}
.timeline .activity .resource-list > .document img {
  grid-column: 1;
  align-self: center;
  justify-self: center;
  max-height: 150px;
}
.timeline .activity .resource-list > .document p {
  grid-column: 2;
  padding: var(--globalPaddingHorizontal);
  align-self: center;
  color: #333333;
}
.timeline .activity .resource-list > .resource {
  border: 1px solid #eeeeee;
  padding: var(--globalPaddingHorizontal);
}
.timeline .activity .resource-list > .resource .file-grid {
  margin-top: -var(--globalPaddingHorizontal)1;
  margin-left: -var(--globalPaddingHorizontal)1;
  margin-right: -var(--globalPaddingHorizontal)1;
  padding-bottom: 0;
}
.timeline .activity .resource-list > .resource .resource-list {
  margin-left: -var(--globalPaddingHorizontal)1;
  margin-right: -var(--globalPaddingHorizontal)1;
}
.timeline .activity .resource-list > .resource .resource-list > * {
  border-top: none;
}
.timeline .activity > time {
  grid-column: 2;
}
.timeline .activity.foldable {
  background-color: #eeeeee;
  margin: var(--globalPaddingHorizontal) 0;
  padding: 10px var(--globalPaddingHorizontal) 0 var(--globalPaddingHorizontal);
}
.timeline .activity.foldable > .avatar,
.timeline .activity.foldable > .content-title {
  position: sticky;
  top: 60px;
  background: #eeeeee;
}
@media (max-width: 759px) {
  .scrolled-down .timeline .activity.foldable > .avatar,
  .scrolled-down .timeline .activity.foldable > .content-title {
    top: 0;
  }
  .scrolled-down .has-timeline-index .timeline .activity.foldable > .avatar,
  .scrolled-down .has-timeline-index .timeline .activity.foldable > .content-title {
    top: 32px;
  }
}
.timeline .activity.foldable > .content-title {
  cursor: pointer;
  z-index: 51;
}
.timeline .activity.foldable:has(.activity) .content-title h2 {
  margin: 0;
}
.timeline .activity.foldable > .avatar {
  z-index: 51;
}
.timeline .activity.foldable > .edit {
  margin-right: -10px;
}
.timeline .activity > .comments {
  grid-column: 1/4;
  margin-top: var(--globalPaddingHorizontal);
}
.timeline .activity > .comments .activity:nth-of-type(1) {
  border: none;
  margin-top: 0;
}
.timeline .activity > .comments .activity.noavatar.media:nth-of-type(1) {
  margin-top: 0;
}
.timeline .activity > .comments > .activities {
  height: 0;
  opacity: 0;
  overflow: hidden;
  background-color: white;
}
.timeline .activity > .comments > .activities > * {
  display: none;
}
.timeline .activity > .comments > .activities > .activity {
  display: grid;
}
.timeline .activity:has(+ .progress-marker) {
  padding-bottom: 15px;
  margin-bottom: 0;
}
.timeline .display-margin {
  margin: var(--_display-margin) 0;
}

.comments .activity-container:has(.activity.-bg-color) .activity:last-child {
  margin-bottom: 0;
}

.comments-toggle {
  display: block;
  width: 100%;
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: transparent;
  color: inherit;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  border: 1px solid transparent;
  top: 0px;
  z-index: 51;
}
.comments-toggle i {
  margin-right: 0.5rem;
}
.comments-toggle:hover {
  background-color: color-mix(in srgb, #6c757d 50%, white);
}

.activity.-is-open .comments-toggle {
  background-color: color-mix(in srgb, #6c757d 50%, white);
}

.activity.-bg-color .comments-toggle {
  background-color: transparent;
}
.activity.-bg-color .comments-toggle:hover {
  background-color: color-mix(in srgb, var(--_color) 30%, white);
}
.activity.-bg-color.foldable {
  background-color: color-mix(in srgb, var(--_color) 15%, white);
}
.activity.-bg-color.foldable > .avatar,
.activity.-bg-color.foldable > .content-title {
  background-color: color-mix(in srgb, var(--_color) 15%, white);
}

.activity.-bg-color.-is-open .comments-toggle {
  background-color: color-mix(in srgb, var(--_color) 30%, white);
}

.comments-toggle__close {
  display: none;
}

.activity.-is-open > .comments > .activities {
  height: auto;
  opacity: 1;
  margin-bottom: 15px;
  overflow: visible;
}
.activity.-is-open > .comments > .activities > * {
  display: block;
}
.activity.-is-open .comments-toggle__close {
  display: block;
}
.activity.-is-open .comments-toggle__open {
  display: none;
}

.progress-marker-report-wrapper {
  font-size: 85%;
  margin-bottom: 15px;
}
.progress-marker-report-wrapper.report-style-click .report-value > div {
  visibility: hidden;
}
.progress-marker-report-wrapper > div.header > .th {
  cursor: pointer;
}
.progress-marker-report-wrapper > div.header span {
  color: #6c757d;
  font-weight: 400;
}
.progress-marker-report-wrapper > div:hover {
  border-bottom: 1px solid #9e9e9e;
}
.progress-marker-report-wrapper > div:hover > .row-name {
  background-color: #e0e0e0;
}
.progress-marker-report-wrapper button {
  position: static;
  will-change: auto;
}
.progress-marker-report-wrapper button .files-shown {
  display: none;
}
.progress-marker-report-wrapper button .files-hidden {
  display: inline-block;
}
.progress-marker-report-wrapper .personal-files .expanded {
  display: none;
}
.progress-marker-report-wrapper.files-shown button .files-shown {
  display: inline-block;
}
.progress-marker-report-wrapper.files-shown button .files-hidden {
  display: none;
}
.progress-marker-report-wrapper.files-shown .personal-files .expanded {
  display: block;
}
.progress-marker-report-wrapper .progress-marker {
  cursor: pointer;
}
.progress-marker-report-wrapper .progress-marker.answered {
  background-color: #b3e5fc;
}
.progress-marker-report-wrapper .progress-marker.answered:hover {
  background-color: #4fc3f7;
}
.progress-marker-report-wrapper .progress-marker.unanswered {
  background-color: #f5f5f5;
}
.progress-marker-report-wrapper .progress-marker.unanswered:hover {
  background-color: #e0e0e0;
}
.progress-marker-report-wrapper .progress-marker .report-value > div {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.progress-marker-report-wrapper .progress-marker.personal-files {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.progress-marker-report-wrapper .progress-marker.personal-files li {
  margin: 4px 0;
}
.progress-marker-report-wrapper .progress-marker.personal-files .date {
  font-size: 14px;
}
.progress-marker-report-wrapper .progress-marker.personal-files img {
  vertical-align: middle;
  width: 16px;
  height: auto;
}

.timeline--empty {
  padding: 0 2rem;
}
.timeline--empty h1 {
  padding: 0;
  margin-bottom: 0.5em;
  text-shadow: none;
}

.timeline__new {
  margin: 5rem 0;
  container-type: inline-size;
  container-name: btn-group-square;
}

.timeline__new__btns {
  display: grid;
  column-gap: 2rem;
  padding: 0;
  margin: 0;
  list-style-type: " ";
}
.timeline__new__btns .btn {
  width: 100%;
}
@media (min-width: 992px) {
  .timeline__new__btns {
    grid-template-columns: 1fr 1fr;
  }
}

.timeline-index-table a {
  display: flex;
  align-items: center;
  padding: 0 1rem 0 3.5rem;
  color: var(--typographyColor);
}
.timeline-index-table a span {
  font-weight: normal;
  display: block;
  font-size: 12px;
}
.timeline-index-table .unpublished a {
  color: #6c757d;
}

.timeline-index-table__marker {
  flex-shrink: 0;
  display: inline-block;
  width: 18px;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  background: var(--grayColor);
}
.timeline-index-table__marker.-marker {
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 12px;
  left: 1px;
  background: white;
  border-radius: 50%;
  border: 1px solid var(--brandSuccess);
  transform: translate(-50%, -50%);
}
.timeline-index-table__marker.-in-progress {
  background: color-mix(in srgb, var(--brandSuccess), #fff 80%);
}
.timeline-index-table__marker.-done {
  background: var(--brandSuccess);
  border-color: var(--brandSuccess);
}
.timeline-index-table__marker.-done:before {
  content: "";
  width: 6px;
  height: 2px;
  position: absolute;
  top: 10px;
  left: 4px;
  background: white;
  transform: rotate(40deg);
}
.timeline-index-table__marker.-done:after {
  content: "";
  width: 7px;
  height: 2px;
  position: absolute;
  top: 8px;
  left: 8px;
  background: white;
  transform: rotate(-50deg);
}

.timeline-index-table__marker.-marker + .timeline-index-table__marker {
  display: none;
}

.timeline-index-table__list {
  padding: 0;
  margin: 0;
  position: relative;
  list-style: none;
}
.timeline-index-table__list:before {
  content: "";
  width: 2px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--grayColor);
}
.timeline-index-table__list:after {
  content: "";
  width: 20px;
  height: 2px;
  position: absolute;
  bottom: 0;
  left: -9px;
  background: var(--grayColor);
}
.timeline-index-table__list li {
  position: relative;
}

.timeline-index-table__list.-partly:after {
  display: none;
}

.timeline-index-level-0 {
  margin-bottom: 1rem;
  font-size: 1.6rem;
}

.timeline-index-level-0:has(+ .timeline-index-level-1) {
  border-bottom: 0;
}

.timeline-index-level-1,
.timeline-index-level-2 {
  min-height: 2rem;
  margin: 0 0 4px 6rem;
  font-size: 1.4rem;
}
.timeline-index-level-1 a,
.timeline-index-level-2 a {
  padding-bottom: 6px;
  border-bottom: 1px dotted var(--dividerColor);
}
.timeline-index-level-1 .timeline-index-table__marker.-marker,
.timeline-index-level-2 .timeline-index-table__marker.-marker {
  scale: 0.8;
}

.timeline-index {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  height: 32px;
  position: sticky;
  z-index: 700;
  top: 60px;
  background-color: white;
  opacity: 0.95;
  overflow: hidden;
}
.timeline-index ul {
  display: flex;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  overflow-x: auto;
}
.timeline-index ul::-webkit-scrollbar {
  display: none;
}
.timeline-index li {
  flex-grow: 1;
  min-width: 4.5rem;
}
.timeline-index a {
  display: block;
  height: 100%;
  border-bottom: 0.5px solid #ccc;
  border-right: 0.5px solid #ccc;
  background-color: #eee;
}
.timeline-index a:hover, .timeline-index a.active {
  color: white;
  background-color: #190053;
}
.timeline-index > a:first-child {
  flex-shrink: 0;
  padding: 0.5rem 1rem;
  background-color: white;
}
.timeline-index > a:first-child:hover {
  color: white;
  background-color: #190053;
}
.timeline-index li:last-child a {
  border-right: none;
}
.timeline-index a.timeline-index__pm {
  background-color: white;
}
.timeline-index a.timeline-index__pm:hover, .timeline-index a.timeline-index__pm.active {
  background-color: #190053;
}
.timeline-index a.timeline-index__pm.timeline-index__pm-done {
  background-color: var(--brandSuccess);
}
.timeline-index a.timeline-index__pm.timeline-index__pm-done.active, .timeline-index a.timeline-index__pm.timeline-index__pm-done:hover {
  background-color: color-mix(in srgb, var(--brandSuccess) 50%, black);
}
.timeline-index a.timeline-index__pm.timeline-index__pm-progress {
  background-color: color-mix(in srgb, var(--brandSuccess), #fff 50%);
}
.timeline-index a.timeline-index__pm.timeline-index__pm-progress.active, .timeline-index a.timeline-index__pm.timeline-index__pm-progress:hover {
  background-color: color-mix(in srgb, var(--brandSuccess) 50%, black);
}
.timeline-index a.timeline-index__pm-hidden {
  display: none !important;
}
@media (max-width: 759px) {
  .scrolled-down .timeline-index {
    top: 0;
  }
}
@media (min-width: 841px) {
  .timeline-index {
    overflow: initial;
  }
  .timeline-index li {
    min-width: 0;
  }
}

.timeline-nav + .activities {
  clear: both;
}

.timeline-nav {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
  padding: 0 var(--globalPaddingHorizontal);
  position: relative;
  z-index: 300;
}
.timeline-nav .btn-group {
  margin: 0;
}

.effectmonitor-fill .modal-overlay-close {
  display: none;
}
.effectmonitor-fill .effectmonitor {
  display: grid;
  grid-template-rows: auto 1fr;
  height: 100%;
}
.effectmonitor-fill .effectmonitor .effectmonitor__control {
  grid-row: 1;
  padding: 0 10px 10px 0;
  text-align: right;
}
.effectmonitor-fill .effectmonitor .effectmonitor__monitor {
  grid-row: 2;
}
.effectmonitor-fill .effectmonitor .effectmonitor__monitor iframe {
  border: none;
  height: 100%;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.timeline .activity .effectmonitor .effectmonitor__text {
  padding-right: 10px;
}
.timeline .activity .effectmonitor .effectmonitor__text .effectmonitor__text__button {
  text-align: center;
}
.timeline .activity .effectmonitor .effectmonitor__image {
  padding-bottom: 10px;
}
@media (min-width: 992px) {
  .class-layout-t .timeline .activity .effectmonitor {
    display: grid;
    grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr);
  }
  .class-layout-t .timeline .activity .effectmonitor .effectmonitor__text {
    grid-column: 1;
  }
  .class-layout-t .timeline .activity .effectmonitor .effectmonitor__image {
    grid-column: 2;
  }
}
@media (min-width: 1200px) {
  .class-layout-tw .timeline .activity .effectmonitor, .class-layout-ttw .timeline .activity .effectmonitor {
    display: grid;
    grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr);
  }
  .class-layout-tw .timeline .activity .effectmonitor .effectmonitor__text, .class-layout-ttw .timeline .activity .effectmonitor .effectmonitor__text {
    grid-column: 1;
  }
  .class-layout-tw .timeline .activity .effectmonitor .effectmonitor__image, .class-layout-ttw .timeline .activity .effectmonitor .effectmonitor__image {
    grid-column: 2;
  }
}

body.no-sidedrawer.page-survey-fill {
  -ms-grid-columns: 0 0 1fr 0;
  grid-template-columns: 0 0 1fr 0;
  -ms-grid-rows: 60px 15px auto auto;
  grid-template-rows: 60px 15px auto auto;
}
@media (min-width: 800px) {
  body.no-sidedrawer.page-survey-fill {
    -ms-grid-columns: 1fr 0 800px 1fr;
    grid-template-columns: 1fr 0 800px 1fr;
  }
}
body.no-sidedrawer.page-survey-fill #shortcuts-fixed,
body.no-sidedrawer.page-survey-fill .no-auth {
  display: none;
}
body.no-sidedrawer.page-survey-fill .survey-fill-footer {
  padding: 5px 10px;
  text-align: right;
  font-size: 14px;
}
body.no-sidedrawer.page-survey-fill .survey-fill-footer a {
  opacity: 0.7;
}
body.no-sidedrawer.page-survey-fill .survey-fill-footer a:hover {
  opacity: 1;
}

.survey-is-correct:after {
  color: green;
  font-weight: 900;
  content: " √";
  font-size: 1.3em;
}

.survey-is-not-correct:after {
  color: red;
  font-weight: bold;
  content: " X";
}

.survey-test-feedback-icon {
  text-indent: 0;
  display: inline-block;
  vertical-align: middle;
}

.survey-q-ok .survey-test-feedback-icon {
  color: green !important;
}

.survey-q-not-ok .survey-test-feedback-icon {
  color: red !important;
}

.do_survey_test_feedback .survey-test-feedback-answer,
.do_survey_test_feedback .survey-test-feedback-correct,
.do_survey_test_feedback .survey-test-feedback-wrong {
  display: none;
}

.do_survey_test_feedback.survey-test-correct .survey-test-feedback-correct {
  display: block;
}

.do_survey_test_feedback.survey-test-wrong .survey-test-feedback-wrong {
  display: block;
}

#signup_logon_box #signup_services,
.signup-overlay #signup_services {
  margin-left: 0;
  padding-left: 0;
  display: flex;
  list-style-type: none;
}

.is-empty .select2-container.select2-container--default .select2-selection,
.has-error .select2-container.select2-container--default .select2-selection {
  border-bottom: 2px solid red;
}

.select2-container.select2-container--default {
  width: 314px !important;
  max-width: 100% !important;
}
.select2-container.select2-container--default .select2-selection {
  border: none;
  border-bottom: 1px solid rgb(85, 85, 85);
  border-radius: 0;
  background-color: rgba(200, 200, 200, 0.1);
  height: 36px;
  padding-top: 5px;
}
.select2-container.select2-container--default .select2-selection .select2-selection__arrow {
  top: 6px;
}

/* --------------------------- SURVEYS ------------------------- */
#survey-question .form-group label.control-label,
.survey-question .form-group label.control-label {
  font-size: 16px;
}

#survey-question .control-label {
  font-size: 16px;
  font-family: inherit;
  line-height: 1.1;
  font-weight: bold;
}
#survey-question label {
  font-size: 16px;
  color: #333333;
}
#survey-question label.radio, #survey-question label.checkbox {
  margin-bottom: 12px;
  margin-left: 30px;
  text-indent: -30px;
}
#survey-question label.radio input[type=radio],
#survey-question label.radio input[type=checkbox], #survey-question label.checkbox input[type=radio],
#survey-question label.checkbox input[type=checkbox] {
  margin-left: 6px;
  margin-right: 6px;
}
#survey-question label input[type=radio],
#survey-question label input[type=checkbox] {
  transform: scale(1.5);
}
#survey-question .survey-likert label.radio {
  margin-left: 6px;
  margin-right: 6px;
  text-indent: 0;
}
#survey-question .survey-likert.has-error label.radio {
  color: #AE1409;
}
#survey-question .form-group {
  margin: 0 0 30px 0;
  padding-bottom: 0;
}
#survey-question .form-actions {
  margin: 0 0 15px 0;
}
#survey-question hr {
  margin: 15px 0;
}
#survey-question p.survey-narrative {
  margin: 0;
}
#survey-question .help-block {
  font-size: 16px;
  color: #333333;
}

/* --------------------------- SURVEY RESULT ------------------------- */
.survey-results .survey-result {
  border: 1px solid #eee;
  padding: 10px;
  margin: 1em 0;
  border-radius: 10px;
}

/* --------------------------- ACCOUNT PAGE ------------------------- */
.button-description-list li .btn {
  min-width: 250px;
}
.button-description-list li div {
  display: inline-block;
  vertical-align: middle;
  padding-left: 10px;
}

.fas.-warning,
.fal.-warning {
  color: var(--brandWarning);
}
.fas.-success,
.fal.-success {
  color: var(--brandSuccess);
}
.fas.-info,
.fal.-info {
  color: var(--brandInfo);
}
.fas.-primary,
.fal.-primary {
  color: var(--systemLinkColor);
}

.graph {
  display: flex;
  gap: 4rem;
}

.graph__pie {
  flex-shrink: 0;
}

.graph__results {
  width: 100%;
}
.graph__results strong {
  width: 100%;
  padding: 0.5rem 0;
}
.graph__results li {
  display: flex;
  align-items: stretch;
  gap: 1rem;
  border-top: 1px solid #999;
}
.graph__results li:last-child {
  border-bottom: 1px solid #999;
}
.graph__results span {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 10%;
  aspect-ratio: 1/1;
  padding: 1rem;
  background: #ccc;
  margin-left: auto;
}

.column-browser {
  display: flex;
  overflow-x: scroll;
  max-height: 600px;
  height: 90vh;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.column-browser > * {
  flex-grow: 0;
  width: auto;
  overflow-y: scroll;
  overflow-x: hidden;
  height: 100%;
  min-width: 200px;
  border-right: 1px solid #ddd;
}
.column-browser > * .loading {
  padding: 10px;
  text-align: center;
}
.column-browser > * .text-muted {
  padding: 10px;
}
.column-browser .column-school {
  min-width: 314px;
}
.column-browser .column-resource-detail {
  min-width: 314px;
  width: 314px;
  border-right: none;
}
.column-browser h3 {
  background: #190053;
  margin: 0 0 1rem;
  color: white;
  padding: 1rem;
  font-size: 1.8rem;
}

.wall {
  padding: 30px 10px 10px;
  background: white;
  word-break: break-word;
}
.wall .wall-form .wall-msg-options {
  display: inline-block;
  vertical-align: bottom;
}
.wall .wall-form .wall-msg-options label {
  width: auto;
}
.wall #wall-list .more {
  text-align: center;
}
.wall > p.text-right {
  max-width: 100%;
}
.wall textarea {
  padding: 5px;
}
.wall .form-group {
  margin-top: 1rem;
}
.wall .form-group.label-floating label.control-label {
  left: 5px;
  top: -12px;
}
.wall .form-group.label-floating.is-focused label.control-label,
.wall .form-group.label-floating:not(.is-empty) label.control-label {
  left: 0;
  top: -35px;
}

.wall.is-sticky {
  width: min(70ch, 100% - var(--wallToggleHeight));
  height: 100%;
  padding-top: calc(var(--navbarHeight) + 2rem);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 700;
  transform: translateX(100%);
  transition: transform 0.3s;
}
.wall.is-sticky:before {
  content: "";
  width: 10px;
  height: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  transform: translateX(-100%);
  opacity: 0;
  transition: opacity 0.3s;
}
.wall.is-sticky.is-open {
  transform: translateX(0);
}
.wall.is-sticky.is-open:before {
  opacity: 1;
}
.wall.is-sticky.is-closed {
  transform: translateX(100%);
}
@media (min-width: 2800px) {
  .wall.is-sticky {
    transform: translateX(0);
  }
  .wall.is-sticky:before {
    opacity: 1;
  }
}

.sticky-wall__content {
  height: 100%;
  overflow-y: auto;
}

.wall-toggle {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  height: var(--wallToggleHeight);
  padding: 0 1em;
  position: fixed;
  left: 0;
  bottom: 4.5rem;
  z-index: 20;
  border: none;
  background: var(--corporateBgColor);
  color: white;
  font-size: 1.2em;
  cursor: pointer;
  transform: rotate(-90deg);
  transform-origin: bottom left;
  test-transform: uppercase;
  cursor: pointer;
}
@media only screen and (min-width: 759px) {
  .wall-toggle {
    top: 20vh;
    bottom: auto;
  }
}

.sidedrawer-wall-toggle {
  display: flex !important;
  align-items: center;
}
.sidedrawer-wall-toggle .wall-toggle__notifications {
  margin-left: 1rem;
}

.wall-toggle__notifications {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3ch;
  height: 3ch;
  border-radius: 50%;
  font-size: 0.7em;
  background: color-mix(in srgb, var(--brandDanger), white 10%);
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.wall-post {
  display: grid;
  grid-template-columns: 50px calc(100% - 50px - 20px);
  column-gap: 2rem;
  align-items: start;
}
.wall-post .avatar {
  grid-column: 1;
}
.wall-post .fn {
  display: block;
  color: #333333;
  font-weight: bold;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wall-post time {
  display: block;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wall-post.is-comment .avatar {
  text-align: center;
}
.wall-post.is-comment .avatar img {
  width: 40px;
  margin-top: 10px;
}
.wall-post .comments {
  padding: 2rem 0 0 0;
  margin: 2rem 0 0 0;
  border-top: 1px solid #ddd;
}

.wall-post + .wall-post {
  margin-top: 2rem;
}

.wall-post__content {
  grid-column: 2;
}

.wall-post__title-row {
  display: flex;
  align-items: center;
}
.wall-post__title-row time {
  margin: 0 2rem 0 auto;
}

.wall-form__options {
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.wall-form.is-clicked .wall-form__options {
  transition: opacity 0.5s;
  opacity: 1;
  height: auto;
}

.discussions {
  margin-left: -10px;
  margin-right: -10px;
}
.discussions.show-content .discussion-nav {
  display: none;
}
.discussions.show-nav .discussion-content {
  display: none;
}
.discussions .body {
  overflow: hidden;
}
@media (min-width: 841px) {
  .discussions {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
  }
  .discussions.show-content {
    grid-template-columns: 250px minmax(0, 1fr);
  }
  .discussions.show-content .discussion-nav {
    display: block;
  }
  .discussions.show-nav .discussion-content {
    display: block;
  }
}

.discussion-nav__group-list {
  padding: 0;
  margin: 1rem 0 0 15px;
  list-style: none;
  font-size: 14px;
}
.discussion-nav__group-list li {
  margin-bottom: 0.2rem;
  width: 95%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-edit-menu > a,
.reply__content__header__edit > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  transform: translateY(-50%);
}

.modal-dialog-new .btn {
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.discussion-nav {
  grid-column: 1;
  grid-row: 1;
}

.discussion-content {
  margin-left: 15px;
  margin-right: 15px;
  min-width: 0px;
}
.discussion-content .more-actions-menu {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 2rem;
}
.discussion-content .more-actions-menu .btn-success {
  margin: 0;
}

.discussion__header {
  display: grid;
  grid-template-columns: 7rem auto 4rem;
  align-items: center;
  gap: 15px;
  margin-bottom: 15px;
}
.discussion__header .discussion-avatar {
  grid-column: 1;
  grid-row: 1;
}
.discussion__header h1 {
  grid-column: 1/4;
  grid-row: 2;
  margin-top: 0;
}

.discussion__header__meta {
  grid-column: 2;
  grid-row: 1;
}
.discussion__header__meta .member-info {
  display: block;
}

.discussion__header__edit {
  grid-column: 3;
  grid-row: 1;
}

.discussion-avatar {
  flex-shrink: 0;
  display: block;
  width: 7rem;
  height: 7rem;
  margin-right: 15px;
  background: #ddd;
  border-radius: 50%;
}

.discussion__footer {
  display: flex;
  align-items: flex-start;
  text-align: left;
}
.discussion__footer > * + * {
  margin-left: 15px;
}

.discussion__form {
  display: flex;
  align-items: flex-start;
}
.discussion__form .discussion__form__error {
  display: none;
}
.discussion__form .discussion-avatar {
  width: 4rem;
  height: 4rem;
}
.discussion__form .z_form_invalid .discussion__form__error {
  display: block;
}
.discussion__form .form-actions {
  display: grid;
}
.discussion__form .form-actions .discussion__form__error {
  grid-column: 1/4;
  grid-row: 1;
}
.discussion__form .form-actions .btn-default {
  grid-column: 8;
  grid-row: 2;
}
.discussion__form .form-actions .btn-success {
  grid-column: 1;
  grid-row: 2;
}
.discussion__form .form-actions .helper-text {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  grid-column: 5/9;
  grid-row: 1;
  text-align: right;
}
.discussion__form.-new .form-actions .btn-success {
  grid-column: 8;
}
.discussion__form.-new .form-actions .btn-default {
  grid-column: 1;
}
@media (min-width: 841px) {
  .discussion__form .discussion-avatar {
    width: 6rem;
    height: 6rem;
  }
}

.discussion__form__content {
  width: 100%;
}
.discussion__form__content .form-group {
  margin-top: 0;
}
.discussion__form__content input[type=text] {
  text-indent: 1rem;
}

.discussion-replies__list {
  margin-top: 4rem;
}

.reply {
  display: grid;
  grid-template-columns: 4rem auto 4rem;
  gap: 15px;
  margin-bottom: 15px;
  position: relative;
}
.reply h3 {
  margin: 0;
}
.reply .reply__avatar {
  grid-column: 1;
  grid-row: 1;
}
.reply .reply__meta {
  grid-column: 2;
  grid-row: 1;
}
.reply .reply__title {
  grid-column: 1/4;
  grid-row: 2;
}
.reply .reply__content__header__edit {
  grid-column: 4;
  grid-row: 1;
}
.reply .reply__content__text {
  grid-column: 1/4;
  grid-row: 3;
}
.reply .reply__content__footer {
  grid-column: 1/4;
  grid-row: 4;
  padding-top: 0;
}
.reply .reply__replys {
  grid-column: 1/4;
  grid-row: 5;
}
.reply .discussion-avatar {
  width: 4rem;
  height: 4rem;
}
@media (min-width: 841px) {
  .reply {
    grid-template-columns: 7rem auto 4rem;
  }
  .reply .reply__avatar {
    grid-column: 1;
    grid-row: 1/3;
  }
  .reply .repy__title {
    grid-column: 2/4;
    grid-row: 2;
  }
  .reply .discussion-avatar {
    width: 7rem;
    height: 7rem;
  }
}

.reply__meta time {
  display: block;
}
@media (min-width: 841px) {
  .reply__meta time {
    display: inline-block;
  }
}

.reply-level-1 .reply__title,
.reply-level-1 .reply__content__text,
.reply-level-1 .reply__content__footer,
.reply-level-1 .reply__replys {
  grid-column-start: 2;
}

.reply-level-2 .reply__title,
.reply-level-2 .reply__content__text,
.reply-level-2 .reply__content__footer,
.reply-level-2 .reply__replys {
  grid-column-start: 1;
}
.reply-level-2 .reply__content__text {
  grid-row: 2;
}
.reply-level-2 .reply__content__footer {
  grid-row: 3;
}
@media (min-width: 841px) {
  .reply-level-2 {
    grid-template-columns: 6rem auto 4rem;
  }
  .reply-level-2 .discussion-avatar {
    width: 6rem;
    height: 6rem;
  }
  .reply-level-2 .reply__content__text,
  .reply-level-2 .reply__content__footer,
  .reply-level-2 .reply__replys {
    grid-column-start: 2;
  }
}

.reply-level-1.-has-replies {
  position: relative;
}
.reply-level-1.-has-replies:before {
  content: "";
  width: 2px;
  position: absolute;
  top: 0;
  left: 2rem;
  bottom: 2.2rem;
  background: currentColor;
  z-index: 0;
}
.reply-level-1.-has-replies:after {
  content: "";
  width: 1rem;
  height: 2px;
  position: absolute;
  bottom: 2.2rem;
  left: 2.1rem;
  background: currentColor;
}
@media (min-width: 841px) {
  .reply-level-1.-has-replies:before {
    left: 3.5rem;
  }
  .reply-level-1.-has-replies:after {
    left: 3.6rem;
  }
}

.reply__avatar {
  position: relative;
}

.reply__content {
  width: 100%;
  position: relative;
}

.reply__content__header__edit {
  flex-shrink: 0;
  top: 0;
  right: 0;
}

.btn-group.reply__content__header__edit {
  position: absolute;
}

.reply__content__footer {
  clear: both;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  border-bottom: 1px solid #ddd;
}

.reply__content__text {
  overflow: hidden;
}

.reply__content__text__replyto {
  float: left;
  margin-right: 0.5rem;
}

.discussion-list__item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 2.5rem;
  position: relative;
}
.discussion-list__item h3 {
  margin-top: 0;
}

.discussion-list__item__avatar {
  flex-shrink: 0;
}

.discussion-list__item__content {
  width: 100%;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ddd;
}
.discussion-list__item__content > div {
  position: relative;
}

.discussion-list__item__content__meta {
  font-size: 14px;
}

.discussion__content .document-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
@media (min-width: 841px) {
  .discussion__content .document-list {
    grid-template-columns: repeat(6, 1fr);
  }
}

#content .discussion__content .document-list > * {
  margin-bottom: 0;
  overflow: hidden;
}

#content .discussion__content .document-list > .document {
  display: block;
  position: relative;
  border: none;
}
#content .discussion__content .document-list > .document p {
  display: none;
}

.discussion-toggle-text button {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  height: 3.5rem;
  padding-bottom: 0.3em;
  position: absolute;
  bottom: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #f0f0f0 77%);
  border: none;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
}

.discussion-toggle-text__less .body *:last-child {
  margin-bottom: 0;
}

.discussion-toggle-text__less,
.discussion-toggle-text__more {
  position: relative;
}

.discussion-toggle-text__more {
  display: none;
  padding-bottom: 7rem;
}
.discussion-toggle-text__more button {
  align-items: center;
  height: 5rem;
  padding-bottom: 0;
  margin-bottom: 15px;
  background: #f0f0f0;
}

.page-discussion .modal .form__is_published {
  display: none;
}
.page-discussion .nav-pills:not(.nav-pills-icons) > li > a {
  border-radius: 4px;
}
.page-discussion .nav-pills > li {
  margin-right: 15px;
}
.page-discussion .nav-pills > li > a {
  min-width: 0;
  padding: 0 15px;
  box-shadow: 0;
}
.page-discussion .nav-pills > li.active > a,
.page-discussion .nav-pills > li.active > a:focus,
.page-discussion .nav-pills > li.active > a:hover {
  border-style: none none solid none;
  border-width: 2px;
  border-bottom-color: #00C853;
  color: #555;
  background: none;
  box-shadow: none;
  border-radius: 0;
}

.discussions .body .body-media-small {
  max-width: 25%;
}
.discussions .body .body-media-document {
  border: 2px solid #eee;
}
.discussions .body .body-media-document img {
  max-height: none;
}

.header .nav-tabs > li > a {
  background: none !important;
}

.header .nav-tabs > li > a,
.header .nav-tabs > li > a:hover,
.header .nav-tabs > li > a:focus {
  padding: 5px 15px;
  border-radius: 0;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  border-bottom: 2px solid white !important;
}

.member,
.author {
  margin: 30px 0;
}
.member .avatar,
.author .avatar {
  display: -ms-grid;
  -ms-grid-columns: 82px 1fr;
  display: grid;
  grid-template-columns: 82px 1fr;
}
.member .avatar > img,
.author .avatar > img {
  -ms-grid-column: 1;
  grid-column: 1;
  border-radius: 50%;
  width: 70px;
  height: auto;
}
.member .avatar > .fn,
.author .avatar > .fn {
  display: block;
  -ms-grid-row-align: center;
  -ms-grid-column: 2;
  grid-column: 2;
  align-self: center;
}

@media (min-width: 760px) {
  .cat-person .panels {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto auto auto;
  }
}
.cat-person .panels > .panel .content {
  padding: 6px 12px;
}
.cat-person .panels .avatar {
  grid-column: 1;
  grid-row: 1;
}
.cat-person .panels .about {
  grid-column: 2/4;
  grid-row: 1;
}

.email-status-unsubscribed {
  color: #555555;
  font-size: 14px;
}

img.img-avatar-inline {
  border-radius: 50%;
  display: inline-block;
  max-height: 1.2em;
}

@media (min-width: 841px) {
  .messages {
    display: -ms-grid;
    -ms-grid-columns: minmax(100px, 300px) 1fr;
    -ms-grid-rows: 1fr;
    display: grid;
    grid-template-columns: minmax(100px, 30ch) 1fr;
    grid-template-rows: 1fr;
  }
  .msg-folders {
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    grid-column: 1;
    grid-row: 1;
  }
  .msg-folders .nav {
    overflow-y: auto;
    max-height: 100vh;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 200px;
  }
  .msg-messages {
    -ms-grid-column: 2;
    -ms-grid-row: 1;
    grid-column: 2;
    grid-row: 1;
  }
  .msg-folders-toggle {
    display: none;
  }
}
@media (max-width: 840px) {
  .msg-folders {
    display: none;
  }
  .msg-folders.show {
    position: fixed;
  }
  .modal-overlay .msg-folders {
    display: -ms-grid;
    -ms-grid-columns: 1fr;
    -ms-grid-rows: auto auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    height: 100%;
    max-height: 100%;
    padding: 15px;
  }
  .modal-overlay .msg-folders > h3 {
    -ms-grid-column: 1;
    -ms-grid-row: 1;
    grid-column: 1;
    grid-row: 1;
  }
  .modal-overlay .msg-folders > .msg-folders-list {
    -ms-grid-column: 1;
    -ms-grid-row: 2;
    grid-column: 1;
    grid-row: 2;
    max-height: 100%;
    overflow-y: scroll;
  }
  .modal-overlay .msg-folders > .msg-folders-list .nav {
    max-height: auto;
    -webkit-overflow-scrolling: touch;
  }
  .toggle-folders {
    padding-top: 15px;
  }
}
.compose-recipients {
  display: -ms-grid;
  -ms-grid-rows: 48px auto 1fr;
  -ms-grid-columns: 1fr minmax(300px, 1200px) 1fr;
  display: grid;
  grid-template-rows: 48px auto 1fr;
  grid-template-columns: 1fr minmax(300px, 1200px) 1fr;
  width: 100%;
  height: 100%;
}
.compose-recipients .compose-recipients-school-selector {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-row: 2;
  grid-column: 2;
}
.compose-recipients #compose-recipients-tabs {
  -ms-grid-row: 3;
  -ms-grid-column: 2;
  grid-row: 3;
  grid-column: 2;
  display: -ms-grid;
  -ms-grid-columns: 1fr;
  -ms-grid-rows: auto 1fr;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  max-height: 100%;
  overflow: hidden;
}
.compose-recipients #compose-recipients-tabs .nav-tabs {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-row: 1;
  grid-column: 1;
}
.compose-recipients #compose-recipients-tabs .tab-content {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-row: 2;
  grid-column: 1;
  align-self: stretch;
  height: auto;
  max-height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
.compose-recipients #multi-classes tbody tr:hover {
  color: #333333;
}
.compose-recipients .multiple-recipients .disabled {
  color: #c8e6c9;
}
.compose-recipients .multiple-recipients .disabled:after {
  content: " √";
}
.compose-recipients .disabled {
  opacity: 0.7;
}

.msg-folders {
  padding-right: 15px;
}
.msg-folders h3 {
  margin-top: 0;
}
.msg-folders li small {
  display: block;
}

.msg-messages > .sticky {
  display: -ms-grid;
  -ms-grid-columns: 1fr auto;
  -ms-grid-rows: auto auto;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  background-color: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid white;
}
.msg-messages > .sticky .actions {
  -ms-grid-column: 2;
  -ms-grid-row: 2;
  grid-column: 2;
  grid-row: 2;
  padding-top: 7px;
}
.msg-messages > .sticky .actions .btn-group {
  margin: 0;
}
.msg-messages > .sticky .actions a {
  padding: 5px 10px;
  margin: 0;
}
.msg-messages > .sticky .actions .dropdown-menu {
  max-height: calc(100vh - 200px);
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
.msg-messages > .sticky h3 {
  -ms-grid-column: 1;
  -ms-grid-row: 2;
  grid-column: 1;
  grid-row: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 0;
}
.msg-messages > .sticky .toggle-folders {
  -ms-grid-column: 1/3;
  -ms-grid-row: 1;
  grid-column: 1/3;
  grid-row: 1;
}
.msg-messages .if-not-selecting {
  display: inline-block;
}
.msg-messages .if-selecting {
  display: none;
}
.msg-messages.selecting .msg {
  -ms-grid-columns: 24px 24px 1fr auto;
  grid-template-columns: 24px 24px 1fr auto;
}
.msg-messages.selecting .msg .msg-select {
  display: block;
}
.msg-messages.selecting .if-not-selecting {
  display: none;
}
.msg-messages.selecting .if-selecting {
  display: inline-block;
}
.msg-messages.selecting .sticky {
  background-color: #fff9c4;
  border-bottom: 1px solid #ffee58;
  margin-left: -10px;
  margin-right: -10px;
}
.msg-messages.selecting .sticky h3,
.msg-messages.selecting .sticky .toggle-folders {
  display: none;
}

.msg {
  display: -ms-grid;
  -ms-grid-columns: 0 24px 1fr auto;
  -ms-grid-rows: auto auto auto auto;
  display: grid;
  grid-template-columns: 0 24px 1fr auto;
  grid-template-rows: auto auto auto auto;
  margin-bottom: 15px;
  cursor: pointer;
}
.msg.is-read > .flags > .fa-circle {
  display: none;
}
.msg.is-no-attachment > .flags > .fa-paperclip {
  display: none;
}
.msg .sender {
  display: block;
  grid-column: 3;
  grid-row: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #333333;
  font-weight: 500;
}
.msg .sender span {
  padding-left: 10px;
  font-weight: 400;
}
.msg time {
  display: block;
  -ms-grid-column: 4;
  -ms-grid-row: 1;
  grid-column: 4;
  grid-row: 1;
  color: #6c757d;
}
.msg h4 {
  -ms-grid-column: 3;
  -ms-grid-column-span: 3;
  -ms-grid-row: 2;
  grid-column: 3/6;
  grid-row: 2;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 16px;
}
.msg p {
  grid-column: 3/6;
  grid-row: 4;
  padding-bottom: 15px;
  font-size: 14px;
  border-bottom: 1px solid #e0e0e0;
  margin: 0;
  overflow: hidden;
  max-width: 100%;
}
.msg .recipients {
  display: block;
  -ms-grid-column: 3;
  -ms-grid-column-span: 3;
  -ms-grid-row: 3;
  grid-column: 3/6;
  grid-row: 3;
}
.msg .msg-select {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 6;
  grid-column: 1;
  grid-row: 1/7;
  display: none;
}
.msg .flags {
  display: block;
  -ms-grid-column: 2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 6;
  grid-column: 2;
  grid-row: 1/7;
}
.msg .flags .fa-circle {
  color: #f88;
}
.msg .flags .fa-paperclip {
  color: #6c757d;
}

.msg-overlay-wrap {
  display: -ms-grid;
  -ms-grid-columns: 1fr;
  -ms-grid-rows: 64px 1fr;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 64px 1fr;
  height: 100%;
  width: 100%;
}
.msg-overlay-wrap .msg-container {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-column: 1;
  grid-row: 1/3;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding-top: 64px;
}

.msg-controls {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  padding: 0 10px;
  z-index: 1050;
  background-color: rgba(255, 255, 255, 0.5);
}
.msg-controls > button {
  margin-top: 20px;
}

.theme-dark .msg-controls a {
  color: #0887C6;
}
.theme-dark .msg-controls a.btn {
  color: white;
}

.msg-compose {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 10px;
}
.msg-compose > h3 {
  margin-top: 0;
}
.msg-compose .mail-attachments .btn {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-attachments li {
  margin-bottom: 5px;
  padding-bottom: 5px;
  border-bottom: 1px solid #eeeeee;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mail-attachments li img {
  height: 50px;
  display: inline-block;
  border: 1px solid #eeeeee;
}

.msg-recipients {
  padding: 0 10px;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
}
.msg-recipients .recipient {
  display: block;
  background-color: #bbdefb;
  padding: 5px 10px;
  margin: 0 10px 5px 0;
  border-radius: 6px;
}
.msg-recipients .recipient .text-muted {
  font-size: 14px;
}
.msg-recipients #add-recipients {
  margin: 0 10px 5px 0;
}

.recipients-wrapper {
  margin-bottom: 15px;
}

.msg-view {
  max-width: 800px;
  margin: 0 auto;
}
.msg-view > .msg-sender {
  padding: 0 10px;
}
.msg-view > .msg-sender .text-muted {
  font-size: 14px;
}
.msg-view > .msg-subject {
  border-top: 1px solid #e0e0e0;
  margin: 15px 0 0;
  padding: 15px 10px 0;
  color: #0887C6;
  overflow: hidden;
}
.msg-view > .msg-attachments {
  border-top: 1px solid #e0e0e0;
  margin: 15px 0 0;
  padding: 15px 10px 0;
  border-top: 1px solid #e0e0e0;
}
.msg-view > .msg-attachments .file-browser.file-files {
  -ms-grid-columns: 0 1fr;
  grid-template-columns: 0 1fr;
}
.msg-view > time {
  color: #757575;
  font-size: 14px;
  padding: 0 10px;
}
.msg-view > .msg-wrapper {
  border-top: 1px solid #e0e0e0;
  overflow-x: auto;
  max-width: 100%;
  margin: 15px 0;
  padding: 15px 15px;
}
.msg-view > .msg-wrapper .msg-body img {
  max-width: 100%;
}
.msg-view > .msg-link {
  text-align: center;
  margin: 15px 0;
}
.msg-view > .msg-footer {
  margin: 15px 0;
  padding: 15px 15px;
  color: #6c757d;
}

.z_invalid {
  display: none;
}

.z_form_invalid .z_invalid {
  display: block;
}
.z_form_invalid .checkbox .z_invalid {
  display: inline-block;
}

.form-group.has-error .z_invalid {
  display: block;
}
.form-group.has-error .checkbox .z_invalid {
  display: inline-block;
}

.label-floating label {
  color: #6c757d;
}

textarea.z_editor {
  width: 100% !important;
  max-width: 100% !important;
}

form .form-control,
form .form-group .form-control {
  background-color: rgba(200, 200, 200, 0.1);
}

form.form-inline .form-group {
  margin: 0;
}
form.form-inline .form-group .form-control {
  margin-bottom: 0;
}

form.form-compact .form-group,
.form-compact .form-group {
  margin-top: 0;
}
form.form-compact .form-group.label-floating,
.form-compact .form-group.label-floating {
  margin-top: 1em;
}

.edit-depiction img {
  border: 1px solid #eeeeee;
}

.z_validation_message.z_invalid {
  color: #AE1409;
}

input.has-error, input.invalid, input.form-field-error,
select.has-error,
select.invalid,
select.form-field-error,
textarea.has-error,
textarea.invalid,
textarea.form-field-error {
  background-position: center bottom, center calc(100% - 1px) !important;
  background-image: linear-gradient(red, red), linear-gradient(red, red) !important;
  background-size: 0 2px, 100% 2px !important;
  background-repeat: no-repeat !important;
}
input.has-error::placeholder, input.has-error + label, input.invalid::placeholder, input.invalid + label, input.form-field-error::placeholder, input.form-field-error + label,
select.has-error::placeholder,
select.has-error + label,
select.invalid::placeholder,
select.invalid + label,
select.form-field-error::placeholder,
select.form-field-error + label,
textarea.has-error::placeholder,
textarea.has-error + label,
textarea.invalid::placeholder,
textarea.invalid + label,
textarea.form-field-error::placeholder,
textarea.form-field-error + label {
  color: #AE1409;
}

label.has-error, label.invalid {
  color: #AE1409 !important;
}

.form-field-error {
  background-image: linear-gradient(red, red), linear-gradient(red, red) !important;
}

label.checkbox,
label.radio {
  font-weight: normal;
}
label.checkbox input[type=checkbox],
label.checkbox input[type=radio],
label.radio input[type=checkbox],
label.radio input[type=radio] {
  margin-right: 4px;
}

.options .form-group {
  width: 40rem;
}

.form-group select {
  appearance: auto !important;
}

.form-group-flexed {
  display: flex;
  align-items: baseline;
  gap: 1rem;
  max-width: 50rem;
}
.form-group-flexed label {
  flex-shrink: 0;
}

/* -------------------------------- FILE UPLOAD --------------------------- */
body .fileinput .thumbnail > img {
  max-height: 300px;
}
@media (max-height: 600px) {
  body .fileinput .thumbnail > img {
    max-height: 50vh;
  }
}

.fileinput .btn {
  margin: 0;
}

/* -------------------------------- SURVEY FORMS --------------------------- */
.form-control.inline {
  width: auto;
  display: inline-block;
  margin: 0;
}
.form-control.input-mini {
  max-width: 10ch;
}
.form-control.input-small {
  max-width: 20ch;
}
.form-control.input-medium {
  max-width: 40ch;
}

.input-block-level {
  width: 100%;
}

label.inline {
  display: inline-block;
}
label.inline + .inline {
  margin-left: 10px;
}

.inline label {
  display: inline-block;
  margin-right: 10px;
}

.clearfix.inline > * {
  display: inline-block;
  margin-right: 10px;
}

/* -------------------------------- DATE PICKER --------------------------- */
input.do_datepicker {
  background-color: #fff;
  width: 80px;
  margin-right: 10px;
  cursor: pointer;
}

input.do_timepicker {
  cursor: pointer;
}

.ui-datepicker-header {
  background: none repeat scroll 0 0 #FFFFFF;
  border: 1px solid #D6D6D6;
  padding: 10px;
  overflow: hidden;
}

.ui-datepicker-title {
  position: relative;
  top: -2px;
}

.ui-datepicker-prev {
  margin-right: 5px;
}

/* -------------------------------- Color Picker --------------------------- */
.color-picker .form-group {
  display: inline-block;
}
.color-picker .form-group input.minicolors-input {
  display: inline-block;
}

input.minicolors-input {
  max-width: 130px !important;
  padding-right: 5px;
  height: 35px;
  border: 1px solid #eeeeee;
  display: inline-block;
}

/* -------------------------------- TINYMCE --------------------------- */
.tox.tox-tinymce-aux {
  grid-column: 3;
  grid-row: 1;
  height: 0;
}

span.mceEditor {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}

table.mceLayout .mceToolbar table {
  max-width: 100%;
}
table.mceLayout .mce-btn-group .mce-btn {
  float: left;
}

.mce-window.mce-in {
  max-width: 100% !important;
  overflow-x: auto;
}

.footer {
  padding-left: 15px;
  padding-right: 15px;
  margin-top: 2em;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.footer ul {
  display: inline-block;
  margin: 0 15px;
}
.footer ul li {
  display: block;
  text-align: left;
}
.footer ul li a {
  font-size: 14px;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 400;
  text-transform: none;
}
.footer ul.footer-nav li a {
  opacity: 0.6;
}
.footer ul.footer-nav li a:hover {
  opacity: 1;
}
@media (max-width: 991px) {
  .footer ul.footer-nav-help {
    margin-top: 15px;
  }
  .footer ul li {
    text-align: center;
  }
}
.footer .admin-link {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 5px 10px;
  font-size: 14px;
  opacity: 0.6;
  color: white;
}
.footer .admin-link a {
  opacity: 0.6;
}
.footer .admin-link a:hover {
  opacity: 1;
}

.minicolors {
  position: relative;
}

.minicolors-sprite {
  background-image: url("/lib/images/jquery.minicolors.png");
}

.minicolors-swatch {
  position: absolute;
  vertical-align: middle;
  background-position: -80px 0;
  border: solid 1px #ccc;
  cursor: text;
  padding: 0;
  margin: 0;
  display: inline-block;
}

.minicolors-swatch-color {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.minicolors input[type=hidden] + .minicolors-swatch {
  width: 28px;
  position: static;
  cursor: pointer;
}

.minicolors input[type=hidden][disabled] + .minicolors-swatch {
  cursor: default;
}

/* Panel */
.minicolors-panel {
  position: absolute;
  width: 173px;
  background: white;
  border: solid 1px #CCC;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  z-index: 99999;
  box-sizing: content-box;
  display: none;
}

.minicolors-panel.minicolors-visible {
  display: block;
}

/* Panel positioning */
.minicolors-position-top .minicolors-panel {
  top: -154px;
}

.minicolors-position-right .minicolors-panel {
  right: 0;
}

.minicolors-position-bottom .minicolors-panel {
  top: auto;
}

.minicolors-position-left .minicolors-panel {
  left: 0;
}

.minicolors-with-opacity .minicolors-panel {
  width: 194px;
}

.minicolors .minicolors-grid {
  position: relative;
  top: 1px;
  left: 1px; /* LTR */
  width: 150px;
  height: 150px;
  margin-bottom: 2px;
  background-position: -120px 0;
  cursor: crosshair;
}

[dir=rtl] .minicolors .minicolors-grid {
  right: 1px;
}

.minicolors .minicolors-grid-inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 150px;
  height: 150px;
}

.minicolors-slider-saturation .minicolors-grid {
  background-position: -420px 0;
}

.minicolors-slider-saturation .minicolors-grid-inner {
  background-position: -270px 0;
  background-image: inherit;
}

.minicolors-slider-brightness .minicolors-grid {
  background-position: -570px 0;
}

.minicolors-slider-brightness .minicolors-grid-inner {
  background-color: black;
}

.minicolors-slider-wheel .minicolors-grid {
  background-position: -720px 0;
}

.minicolors-slider,
.minicolors-opacity-slider {
  position: absolute;
  top: 1px;
  left: 152px; /* LTR */
  width: 20px;
  height: 150px;
  background-color: white;
  background-position: 0 0;
  cursor: row-resize;
}

[dir=rtl] .minicolors-slider,
[dir=rtl] .minicolors-opacity-slider {
  right: 152px;
}

.minicolors-slider-saturation .minicolors-slider {
  background-position: -60px 0;
}

.minicolors-slider-brightness .minicolors-slider {
  background-position: -20px 0;
}

.minicolors-slider-wheel .minicolors-slider {
  background-position: -20px 0;
}

.minicolors-opacity-slider {
  left: 173px; /* LTR */
  background-position: -40px 0;
  display: none;
}

[dir=rtl] .minicolors-opacity-slider {
  right: 173px;
}

.minicolors-with-opacity .minicolors-opacity-slider {
  display: block;
}

/* Pickers */
.minicolors-grid .minicolors-picker {
  position: absolute;
  top: 70px;
  left: 70px;
  width: 12px;
  height: 12px;
  border: solid 1px black;
  border-radius: 10px;
  margin-top: -6px;
  margin-left: -6px;
  background: none;
}

.minicolors-grid .minicolors-picker > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  border: solid 2px white;
  box-sizing: content-box;
}

.minicolors-picker {
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 2px;
  background: white;
  border: solid 1px black;
  margin-top: -2px;
  box-sizing: content-box;
}

/* Swatches */
.minicolors-swatches,
.minicolors-swatches li {
  margin: 5px 0 3px 5px; /* LTR */
  padding: 0;
  list-style: none;
  overflow: hidden;
}

[dir=rtl] .minicolors-swatches,
[dir=rtl] .minicolors-swatches li {
  margin: 5px 5px 3px 0;
}

.minicolors-swatches .minicolors-swatch {
  position: relative;
  float: left; /* LTR */
  cursor: pointer;
  margin: 0 4px 0 0; /* LTR */
}

[dir=rtl] .minicolors-swatches .minicolors-swatch {
  float: right;
  margin: 0 0 0 4px;
}

.minicolors-with-opacity .minicolors-swatches .minicolors-swatch {
  margin-right: 7px; /* LTR */
}

[dir=rtl] .minicolors-with-opacity .minicolors-swatches .minicolors-swatch {
  margin-right: 0;
  margin-left: 7px;
}

.minicolors-swatch.selected {
  border-color: #000;
}

/* Inline controls */
.minicolors-inline {
  display: inline-block;
}

.minicolors-inline .minicolors-input {
  display: none !important;
}

.minicolors-inline .minicolors-panel {
  position: relative;
  top: auto;
  left: auto; /* LTR */
  box-shadow: none;
  z-index: auto;
  display: inline-block;
}

[dir=rtl] .minicolors-inline .minicolors-panel {
  right: auto;
}

/* Default theme */
.minicolors-theme-default .minicolors-swatch {
  top: 5px;
  left: 5px; /* LTR */
  width: 18px;
  height: 18px;
}

[dir=rtl] .minicolors-theme-default .minicolors-swatch {
  right: 5px;
}

.minicolors-theme-default .minicolors-swatches .minicolors-swatch {
  margin-bottom: 2px;
  top: 0;
  left: 0; /* LTR */
  width: 18px;
  height: 18px;
}

[dir=rtl] .minicolors-theme-default .minicolors-swatches .minicolors-swatch {
  right: 0;
}

.minicolors-theme-default.minicolors-position-right .minicolors-swatch {
  left: auto; /* LTR */
  right: 5px; /* LTR */
}

[dir=rtl] .minicolors-theme-default.minicolors-position-left .minicolors-swatch {
  right: auto;
  left: 5px;
}

.minicolors-theme-default.minicolors {
  width: auto;
  display: inline-block;
}

.minicolors-theme-default .minicolors-input {
  height: 20px;
  width: auto;
  display: inline-block;
  padding-left: 26px; /* LTR */
}

[dir=rtl] .minicolors-theme-default .minicolors-input {
  text-align: right;
  unicode-bidi: plaintext;
  padding-left: 1px;
  padding-right: 26px;
}

.minicolors-theme-default.minicolors-position-right .minicolors-input {
  padding-right: 26px; /* LTR */
  padding-left: inherit; /* LTR */
}

[dir=rtl] .minicolors-theme-default.minicolors-position-left .minicolors-input {
  padding-right: inherit;
  padding-left: 26px;
}

/* Bootstrap theme */
.minicolors-theme-bootstrap .minicolors-swatch {
  z-index: 2;
  top: 3px;
  left: 3px; /* LTR */
  width: 28px;
  height: 28px;
  border-radius: 3px;
}

[dir=rtl] .minicolors-theme-bootstrap .minicolors-swatch {
  right: 3px;
}

.minicolors-theme-bootstrap .minicolors-swatches .minicolors-swatch {
  margin-bottom: 2px;
  top: 0;
  left: 0; /* LTR */
  width: 20px;
  height: 20px;
}

[dir=rtl] .minicolors-theme-bootstrap .minicolors-swatches .minicolors-swatch {
  right: 0;
}

.minicolors-theme-bootstrap .minicolors-swatch-color {
  border-radius: inherit;
}

.minicolors-theme-bootstrap.minicolors-position-right > .minicolors-swatch {
  left: auto; /* LTR */
  right: 3px; /* LTR */
}

[dir=rtl] .minicolors-theme-bootstrap.minicolors-position-left > .minicolors-swatch {
  right: auto;
  left: 3px;
}

.minicolors-theme-bootstrap .minicolors-input {
  float: none;
  padding-left: 44px; /* LTR */
}

[dir=rtl] .minicolors-theme-bootstrap .minicolors-input {
  text-align: right;
  unicode-bidi: plaintext;
  padding-left: 12px;
  padding-right: 44px;
}

.minicolors-theme-bootstrap.minicolors-position-right .minicolors-input {
  padding-right: 44px; /* LTR */
  padding-left: 12px; /* LTR */
}

[dir=rtl] .minicolors-theme-bootstrap.minicolors-position-left .minicolors-input {
  padding-right: 12px;
  padding-left: 44px;
}

.minicolors-theme-bootstrap .minicolors-input.input-lg + .minicolors-swatch {
  top: 4px;
  left: 4px; /* LTR */
  width: 37px;
  height: 37px;
  border-radius: 5px;
}

[dir=rtl] .minicolors-theme-bootstrap .minicolors-input.input-lg + .minicolors-swatch {
  right: 4px;
}

.minicolors-theme-bootstrap .minicolors-input.input-sm + .minicolors-swatch {
  width: 24px;
  height: 24px;
}

.minicolors-theme-bootstrap .minicolors-input.input-xs + .minicolors-swatch {
  width: 18px;
  height: 18px;
}

.input-group .minicolors-theme-bootstrap:not(:first-child) .minicolors-input {
  border-top-left-radius: 0; /* LTR */
  border-bottom-left-radius: 0; /* LTR */
}

[dir=rtl] .input-group .minicolors-theme-bootstrap .minicolors-input {
  border-radius: 4px;
}

[dir=rtl] .input-group .minicolors-theme-bootstrap:not(:first-child) .minicolors-input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

[dir=rtl] .input-group .minicolors-theme-bootstrap:not(:last-child) .minicolors-input {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* bootstrap input-group rtl override */
[dir=rtl] .input-group .form-control,
[dir=rtl] .input-group-addon,
[dir=rtl] .input-group-btn > .btn,
[dir=rtl] .input-group-btn > .btn-group > .btn,
[dir=rtl] .input-group-btn > .dropdown-toggle {
  border: 1px solid #ccc;
  border-radius: 4px;
}

[dir=rtl] .input-group .form-control:first-child,
[dir=rtl] .input-group-addon:first-child,
[dir=rtl] .input-group-btn:first-child > .btn,
[dir=rtl] .input-group-btn:first-child > .btn-group > .btn,
[dir=rtl] .input-group-btn:first-child > .dropdown-toggle,
[dir=rtl] .input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
[dir=rtl] .input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 0;
}

[dir=rtl] .input-group .form-control:last-child,
[dir=rtl] .input-group-addon:last-child,
[dir=rtl] .input-group-btn:last-child > .btn,
[dir=rtl] .input-group-btn:last-child > .btn-group > .btn,
[dir=rtl] .input-group-btn:last-child > .dropdown-toggle,
[dir=rtl] .input-group-btn:first-child > .btn:not(:first-child),
[dir=rtl] .input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/* Semantic Ui theme */
.minicolors-theme-semanticui .minicolors-swatch {
  top: 0;
  left: 0; /* LTR */
  padding: 18px;
}

[dir=rtl] .minicolors-theme-semanticui .minicolors-swatch {
  right: 0;
}

.minicolors-theme-semanticui input {
  text-indent: 30px;
}

#content {
  position: relative;
}

.more-actions-menu {
  display: flex;
  gap: 1.5rem;
}
.more-actions-menu .dropdown-menu {
  width: auto;
  max-width: 90vw;
}
.more-actions-menu .dropdown-menu li > a {
  display: flex;
  gap: 1rem;
  padding-left: 10px;
  align-items: baseline;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}

.page-class #content .timeline {
  position: relative;
}
@media (max-width: 840px) {
  .page-class #content .timeline .more-actions-menu {
    margin-top: 0;
  }
}

.page-class .alert {
  margin-bottom: 0;
}

a.btn-icon {
  display: inline-block;
  text-align: center;
  font-size: 24px;
  line-height: 24px;
  padding: 5px 10px;
  color: #0887C6;
  cursor: pointer;
  margin: 15px 15px 0 0;
}

/* Backnav on top of page */
@media (min-width: 760px) {
  .school-page .backnav {
    display: none;
  }
}
.backnav {
  font-size: 14px;
  margin-left: -5px;
  margin: 15px 0;
  color: #555555;
}
.backnav > * {
  display: inline-block;
}
.backnav > span {
  color: #6c757d;
  padding: 0 5px;
}
.backnav > a {
  color: inherit;
}
.backnav > a:last-child {
  font-weight: 500;
}
.backnav > a:hover {
  color: inherit;
  text-decoration: underline;
}
.backnav > a img {
  width: 2.5em;
  height: 2.5em;
  display: inline-block;
  margin-top: -4px;
  margin-right: 5px;
}

/* Main navigation styling */
.nav {
  font-size: 15px;
}
.nav.nav-stacked .divider {
  margin: 5px 0;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.4);
}
.nav.nav-stacked .header a {
  color: rgb(60, 72, 88);
  font-weight: 400;
}
.nav > li > a.active {
  /* Copied from :hover styling in bs3 _navs.scss */
  text-decoration: none;
  background-color: #eeeeee;
}

.nav-stacked .active ~ .nav-stacked,
.nav-stacked .open ~ .nav-stacked {
  display: block;
}
.nav-stacked .nav-stacked {
  display: none;
  background-color: rgba(255, 255, 255, 0.4);
}
.nav-stacked span.fal {
  margin: 4px 10px 0 0;
}
.nav-stacked > li > a > img {
  max-width: 100%;
}
.nav-stacked > li > a > img.avatar {
  display: block;
}
.nav-stacked li.menu-add-home {
  display: none;
}
.nav-stacked li.menu-add-home span.fal {
  float: none !important;
}

body .menu-add-home {
  display: none;
}

body.has-install-prompt .nav-stacked li.menu-add-home {
  display: block;
}
body.has-install-prompt .menu-add-home {
  display: block;
}
body.has-install-prompt .menu-add-home.if-is-pwa-unsupported {
  display: none;
}
body.has-install-prompt.is-pwa-unsupported .nav-stacked li.menu-add-home {
  display: none;
}
body.has-install-prompt.is-pwa-unsupported .menu-add-home {
  display: none;
}
body.has-install-prompt.is-pwa-unsupported .menu-add-home.if-is-pwa-unsupported {
  display: block;
}

body.is-standalone .menu-add-home {
  display: none !important;
}

.shortcuts-catalog {
  display: flex;
  flex-wrap: wrap;
  font-size: 14px;
}
.shortcuts-catalog .my-catalog > a {
  color: white;
  background-color: #616161;
}
.shortcuts-catalog .my-catalog > a:hover {
  background-color: #190053;
}
.shortcuts-catalog .is-school > a {
  font-weight: bold;
  border-left: 1px solid #bdbdbd;
}
.shortcuts-catalog li a {
  padding: 10px 10px;
  color: #333333;
  max-width: 23ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.shortcuts-catalog li a:hover {
  color: white;
  background-color: #190053;
}
.shortcuts-catalog li.active a {
  color: white;
  background-color: #190053;
}

.navbar-search {
  display: none;
  width: 100%;
}
.navbar-search input[type=search] {
  width: 100%;
  max-width: 80rem;
  height: 4rem;
  padding: 0 1.5rem;
  position: absolute;
  top: 6rem;
  right: 0;
  z-index: 10;
  background: #fff;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.4);
  border-bottom: 1px solid rgba(0, 0, 0, 0.4);
  font-size: 1.6rem;
  transition: top 0.3s, opacity 0.3s;
  opacity: 0;
}
.navbar-search input[type=search]::placeholder {
  padding-left: 1rem;
}
@media (min-width: 992px) {
  .navbar-search input[type=search] {
    right: 7rem;
    border: 1px solid rgba(0, 0, 0, 0.4);
  }
}
.navbar-search.is-active {
  display: block;
  position: absolute;
  top: 0;
}
.navbar-search.is-active .navbar-search__box {
  display: flex;
  top: 10rem;
  opacity: 1;
}
.navbar-search.is-active input[type=search] {
  display: block;
  top: 6rem;
  opacity: 1;
}

.navbar-search button[type=submit],
.navbar-search__toggle label {
  display: inline-flex;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  margin: 0;
  border: 1px solid transparent;
  background: transparent;
  font-size: 2rem;
}

.navbar-search__toggle {
  background: none;
  border: 1px solid transparent;
}

.navbar-search__box {
  display: none;
  width: 100%;
  max-width: 80rem;
  position: absolute;
  top: -100%;
  right: 0;
  background: #fff;
  box-shadow: 0 0px 5px rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(0, 0, 0, 0.4);
  border-top: 0;
  z-index: -1;
  opacity: 0;
  transition: top 0.4s, opacity 0.2s;
}
@media (min-width: 992px) {
  .navbar-search__box {
    right: 7rem;
  }
}
.navbar-search__box .loader {
  display: none;
}
.navbar-search__box .navbar-search__box__results.loading ~ .loader {
  display: block;
  position: absolute;
  top: 16px;
  right: 16px;
}

.navbar-search__box__filters {
  display: flex;
  flex-flow: column nowrap;
  flex-shrink: 0;
  width: 30%;
  max-width: 20rem;
  list-style: none;
  padding: 1rem;
  margin: 0;
  background: rgba(0, 0, 0, 0.1);
}
.navbar-search__box__filters input {
  display: none;
}
.navbar-search__box__filters button,
.navbar-search__box__filters label {
  display: flex;
  align-items: center;
  width: 100%;
  height: 3.5rem;
  padding: 2px 6px 3px;
  margin: 0;
  border: none;
  background: none;
  font-size: 1.4rem;
  color: inherit;
  font-weight: 300;
  cursor: pointer;
}
.navbar-search__box__filters button:hover, .navbar-search__box__filters button.active,
.navbar-search__box__filters label:hover,
.navbar-search__box__filters label.active {
  background: rgba(0, 0, 0, 0.1);
}
@media (min-width: 992px) {
  .navbar-search__box__filters button,
  .navbar-search__box__filters label {
    font-size: 1.6rem;
    height: 4.5rem;
  }
}
.navbar-search__box__filters span {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}
.navbar-search__box__filters i {
  flex-shrink: 0;
  display: block;
  width: 2rem;
  text-align: left;
}
@media (min-width: 992px) {
  .navbar-search__box__filters i {
    width: 3rem;
  }
}

.navbar-search__box__results {
  width: 100%;
  height: 50vh;
  overflow-y: scroll;
}
.navbar-search__box__results ul {
  padding: 1rem 1px;
  margin: 0;
  list-style: none;
}
.navbar-search__box__results li:first-child {
  display: flex;
  align-items: center;
  height: 3.5rem;
  padding-left: 2rem;
  font-size: 1.4rem;
}
.navbar-search__box__results div {
  position: relative;
}
.navbar-search__box__results li + li {
  border-top: 1px solid rgba(102, 102, 102, 0.1);
}
.navbar-search__box__results ul li .no-results {
  display: none;
}
.navbar-search__box__results ul li .has-results {
  display: inline;
}
.navbar-search__box__results ul li:last-child .no-results {
  display: inline;
}
.navbar-search__box__results ul li:last-child .has-results {
  display: none;
}
.navbar-search__box__results > div {
  padding: 1rem 2rem 1rem 2rem;
}
.navbar-search__box__results a {
  display: flex;
  align-items: flex-start;
  padding: 1rem 2rem 1rem 2rem;
  color: black;
}
.navbar-search__box__results a:hover {
  background: rgba(102, 102, 102, 0.1);
}
.navbar-search__box__results h4 {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.3;
  word-break: break-all;
}

.navbar-search__result__meta,
.navbar-search__result__cat {
  display: flex;
  align-items: center;
  font-size: 0.85em;
  opacity: 0.8;
}
.navbar-search__result__meta *,
.navbar-search__result__cat * {
  margin-right: 0.5rem;
}

.navbar-search__result__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  margin-right: 2rem;
  position: relative;
  top: 0.5rem;
  font-size: 2rem;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.1);
}
.navbar-search__result__icon img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
}

.navbar-search__result__summary {
  margin: 0.5rem 0 0.2rem;
  font-size: 0.9em;
  line-height: 1.2;
}

.navbar-search__result__avatar {
  font-size: 0.8em;
}
.navbar-search__result__avatar img {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
}

body:before {
  transition: opacity 0.3s;
}

body.is-search-active:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 99;
  background: rgba(0, 0, 0, 0.4);
  opacity: 1;
}

body .page-header {
  height: auto;
  padding: 5vh 0 5vh 0;
  text-align: center;
  color: white;
  text-shadow: 0 1px 3px rgb(0, 0, 0), 0 0 30px rgba(0, 0, 0, 0.3);
}
body .page-header h1 {
  font-size: 2em;
  font-family: "Open Sans", "Helvetica", "Arial", sans-serif;
  line-height: 1.6;
  color: #fff;
  letter-spacing: 1px;
  font-weight: 400;
  margin: 0 0 0.3em 0;
}
body .page-header h1 span {
  background-color: rgba(0, 0, 0, 0.05);
  padding: 0 20px 10px 20px;
}
@media (min-width: 768px) {
  body .page-header h1 {
    font-size: 4em;
  }
}
body .page-header h4,
body .page-header p {
  text-align: center;
  max-width: 100%;
}

#content .page-header-content-spacing {
  margin: 2em 0;
}
#content .media-detail {
  margin-left: -10px;
  margin-right: -10px;
  margin-bottom: 15px;
}
#content .text-content .body-media-large,
#content .text-content .embed-responsive {
  margin-bottom: var(--globalPaddingHorizontal);
  margin-left: 0;
  margin-right: 0;
}
#content .text-content .body-media-large img,
#content .text-content .embed-responsive img {
  max-width: 100%;
  width: 100%;
}
#content .text-content div:not([class]) > .body-media-large,
#content .text-content div:not([class]) > .embed-responsive {
  margin-left: calc(var(--globalPaddingHorizontal) * -1);
  margin-right: calc(var(--globalPaddingHorizontal) * -1);
}
#content > .edit {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
#content > .edit > a {
  padding: 0 10px;
}
#content > .edit a > i.fa-ellipsis-v-alt {
  display: inline-block;
  width: 29px;
}
#content > .edit a > i.fa-ellipsis-v-alt:before {
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.3);
  padding: 5px 10px;
  display: inline-block;
  text-align: center;
}
#content > .edit a:hover > i.fa-ellipsis-v-alt:before {
  background-color: rgba(255, 255, 255, 0.7);
}
#content .chapeau {
  font-size: 14px;
  text-transform: uppercase;
  font-weight: 300;
  margin-bottom: 0;
  margin-top: 10px;
}
#content .media {
  overflow: visible;
}
#content .document-list > * {
  margin-bottom: 1em;
}
#content .document-list > .document {
  display: -ms-grid;
  -ms-grid-columns: 1fr 2fr;
  display: grid;
  grid-template-columns: 1fr 2fr;
  border: 1px solid #eeeeee;
}
#content .document-list > .document img {
  -ms-grid-column: 1;
  grid-column: 1;
  align-self: center;
  justify-self: center;
  max-height: 150px;
}
#content .document-list > .document p {
  -ms-grid-column: 2;
  grid-column: 2;
  padding: 10px;
  align-self: center;
  color: #333333;
}
#content .block-type-text.table-responsive {
  padding: 0;
}
@media screen and (min-width: 768px) {
  #content .block-type-text.table-responsive table {
    width: auto;
  }
  #content .block-type-text.table-responsive table td > :first-child, #content .block-type-text.table-responsive table th > :first-child {
    margin-top: 0;
  }
}
#content table {
  margin: 20px 0;
}
#content table tr {
  border-bottom: 1px solid #ddd;
}
#content table tr.highlight {
  background-color: #ffc;
}
#content table td, #content table th {
  vertical-align: top;
  padding: 12px 8px;
}

.summary {
  font-size: 20px;
  font-weight: normal;
}

body.cat-other .body-large,
body.cat-text .body-large {
  font-size: 2.4rem;
  line-height: 1.4;
}

.media-preview {
  position: relative;
  max-height: 70vh;
  margin-left: -10px;
  margin-right: -10px;
}
.media-preview > .preview-label {
  position: absolute;
  text-align: center;
  margin: 2px;
  left: 0;
  right: 0;
  z-index: 10;
  pointer-events: none;
}
.media-preview .media-preview-iframe {
  width: 100%;
  height: 70vh;
  border: 0;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
}
.media-preview .media-docx {
  max-height: 70vh;
  overflow: scroll;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
}

@media screen and (min-width: 841px) {
  .help-page-content:has(.help-chat) {
    display: grid;
    grid-template-areas: "title title title" "text text help";
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5em;
  }
  .help-page-content:has(.help-chat) .text-content {
    grid-area: title;
  }
  .help-page-content:has(.help-chat) .page-blocks {
    grid-area: text;
  }
}

.help-chat {
  margin-top: 1em;
}
@media screen and (min-width: 841px) {
  .help-chat {
    margin-top: 0;
    grid-area: help;
  }
}

.help-chat__bot {
  width: 100%;
  height: 100vh;
  max-height: 550px;
  position: sticky;
  top: var(--navbarHeight);
}
.help-chat__bot:after {
  content: "";
  width: 100%;
  height: 40px;
  background: white;
  position: absolute;
  bottom: 0;
  left: 0;
  border-top: 1px solid rgb(243, 244, 246);
}

.cards {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start;
  justify-content: flex-start;
  gap: 2rem;
}
.cards .card.card-member {
  display: grid;
  grid-template-columns: minmax(30px, 80px) 10px 1fr auto;
  margin-bottom: 10px;
  width: min(300px, 100%);
  cursor: pointer;
}
.cards .card.card-member > .fn {
  display: block;
  grid-column: 3;
  grid-row: 1;
  padding: 10px 0 0 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cards .card.card-member > .fn a {
  color: #333333;
}
.cards .card.card-member > .email-status-flag {
  display: block;
  grid-column: 3;
  grid-row: 2;
  font-size: 14px;
}
.cards .card.card-member > .email-status-unsubscribed {
  display: block;
  grid-column: 3;
  grid-row: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0;
}
.cards .card.card-member > .member-status {
  display: block;
  grid-column: 3;
  grid-row: 4;
  align-self: end;
  font-size: 14px;
  color: white;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  white-space: nowrap;
  opacity: 0.5;
  z-index: 1;
}
.cards .card.card-member > .member-status > span {
  display: inline-block;
  padding: 0 10px;
  background-color: #555555;
  border-radius: 0 0 6px 0;
}
.cards .card.card-member > .member-status.text-warning > span {
  background-color: #ff3d00;
}
.cards .card.card-member > .member-autoarchive {
  display: block;
  grid-column: 3;
  grid-row: 5;
  font-size: 14px;
  text-align: left;
  color: #555555;
}
.cards .card.card-member > .tags {
  display: block;
  grid-column: 3;
  grid-row: 4;
  padding-bottom: 5px;
}
.cards .card.card-member > img {
  grid-column: 1;
  grid-row: 1/5;
  align-self: stretch;
  object-fit: cover;
  border-radius: 6px 0 0 6px;
}
.cards.cards-small li {
  width: 100%;
  max-width: 500px;
}
.cards.cards-small .card {
  grid-template-columns: 50px 10px 1fr auto;
  grid-template-rows: auto auto auto auto;
  max-width: 100%;
}
.cards.cards-small .card.card-member {
  min-width: 180px;
  width: 100%;
}
.cards.cards-small .card:hover {
  background-color: #f8f8f8;
}

@media (max-width: 640px) {
  .membersorter .families-wrapper .card.card-member {
    grid-template-columns: 30px 10px 1fr auto;
    min-width: 120px;
  }
}

.person-select .cards .card.card-member {
  min-width: 120px;
}

ul.cards {
  flex-direction: column;
}
ul.cards li.selected .card {
  background-color: #c8e6c9;
}
ul.cards li.selected .card:hover {
  background-color: #a5d6a7;
}

.recipient-select .cards {
  justify-content: inherit;
}
.recipient-select .cards .card.card-member {
  grid-template-columns: 30px 10px 1fr auto;
  margin-right: 10px;
  min-width: 120px;
  max-width: 280px;
}

.family {
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
  margin-left: -10px;
  margin-right: -10px;
  margin-bottom: 15px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
  justify-items: stretch;
}
.family .parents {
  align-self: stretch;
}
@media (min-width: 700px) and (max-width: 1299px) {
  .family .parents,
  .family .pupils {
    width: 50%;
  }
}
@media (min-width: 1300px) {
  .family .pupils {
    width: 33%;
  }
  .family .parents {
    width: 67%;
  }
  .family .parents .card {
    max-width: 45%;
  }
}
.family .parents {
  background-color: #eeeeee;
}
.family .card {
  margin: 10px;
}
@media (min-width: 700px) and (max-width: 1299px) {
  .family .card {
    max-width: 45%;
  }
}
@media (min-width: 1300px) {
  .family .card {
    max-width: 450px;
  }
}

.card {
  margin-bottom: 0;
}

.card__header {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  overflow: hidden;
  clip-path: polygon(0% 0%, 100% 0%, 100% 90%, 0% 100%);
  border-top: 5px solid #fac112;
}

.card.-survey .card__header {
  border-top: 5px solid #0d86a3;
}

.card__content {
  flex: 1;
  display: flex;
  flex-flow: column wrap;
  align-items: start;
  padding: 10px;
}

.card__title {
  font-size: 1.1em;
  font-weight: 600;
  margin: 0 0 0.5rem;
}

.card__footer {
  display: flex;
  justify-content: space-between;
  padding: 0 10px;
}

.card.card-mx {
  display: flex;
  flex-flow: column wrap;
}
.card.card-mx .card__header {
  height: 16rem;
}

.card__price {
  display: inline-flex;
  padding: 0.5em 1em;
  margin-top: auto;
  background: #fac112;
  color: black;
  font-size: 0.9em;
  line-height: 1;
}
.card__price.-premium {
  background: #0d86a3;
  color: white;
}

.card.card-blog .card-image {
  height: auto;
}

.file-browser {
  display: -ms-grid;
  -ms-grid-columns: 1fr 0;
  -ms-grid-rows: 1fr;
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr;
  margin-left: -10px;
  margin-right: -10px;
}
.file-browser.file-files {
  -ms-grid-columns: 0 1fr;
  grid-template-columns: 0 1fr;
}
.file-browser.file-files .locations {
  display: none;
}
.file-browser.file-locations .files {
  display: none;
}
.file-browser .locations {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  grid-column: 1;
  grid-row: 1;
}
.file-browser .locations a {
  color: #333333;
}
.file-browser .locations a.active span.fal {
  display: inline-block;
}

.file-list .file-actions {
  display: none;
}

.file-browser .files,
.file-list {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
  grid-column: 2;
  grid-row: 1;
  margin-left: 10px;
  margin-right: 10px;
}
.file-browser .files .if-selecting,
.file-list .if-selecting {
  display: none;
}
.file-browser .files.selecting .if-not-selecting,
.file-list.selecting .if-not-selecting {
  display: none;
}
.file-browser .files.selecting .if-selecting,
.file-list.selecting .if-selecting {
  display: block;
}
.file-browser .files.selecting .col-three.if-selecting,
.file-list.selecting .col-three.if-selecting {
  display: -ms-grid;
  display: grid;
}
.file-browser .files.selecting .select,
.file-list.selecting .select {
  font-weight: bold;
}
.file-browser .files.selecting .listing div.file input,
.file-list.selecting .listing div.file input {
  display: block;
}
.file-browser .files.selecting .listing div.file input:checked + img,
.file-list.selecting .listing div.file input:checked + img {
  opacity: 0.5;
}
.file-browser .files .listing,
.file-list .listing {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.file-browser .files .listing.file-dragging,
.file-list .listing.file-dragging {
  background-color: rgb(240, 240, 255);
}
.file-browser .files .listing > .text-muted,
.file-browser .files .listing > h2,
.file-list .listing > .text-muted,
.file-list .listing > h2 {
  margin: 15px 0;
  text-align: center;
  width: 100%;
  max-width: 100%;
}
.file-browser .files .listing > .family,
.file-list .listing > .family {
  border-top: 0;
  margin: 15px 0;
  width: 100%;
  max-width: 100%;
}
.file-browser .files .listing div.file,
.file-list .listing div.file {
  flex-grow: 1;
  flex-basis: 150px;
  position: relative;
  display: -ms-grid;
  -ms-grid-rows: auto 1fr auto auto;
  -ms-grid-columns: 1fr;
  display: grid;
  grid-template-rows: auto 1fr auto auto;
  grid-template-columns: 1fr;
  max-width: 250px;
  margin-right: 15px;
  margin-bottom: 15px;
}
.file-browser .files .listing div.file:hover,
.file-list .listing div.file:hover {
  background-color: #fbfbfb;
}
.file-browser .files .listing div.file .file-grid,
.file-list .listing div.file .file-grid {
  grid-template-rows: 1fr 1fr;
}
.file-browser .files .listing div.file.person,
.file-list .listing div.file.person {
  width: 150px;
  max-width: 150px;
  flex-basis: 150px;
}
.file-browser .files .listing div.file.person img,
.file-list .listing div.file.person img {
  width: 140px;
  height: auto;
}
.file-browser .files .listing div.file input,
.file-list .listing div.file input {
  grid-row: 1;
  grid-column: 1;
  display: none;
  margin-left: 10px;
  margin-top: 5px;
  z-index: 1;
}
.file-browser .files .listing div.file > img,
.file-list .listing div.file > img {
  display: block;
  grid-row: 1/3;
  grid-column: 1;
  width: 100%;
  object-fit: cover;
}
.file-browser .files .listing div.file > img.docs,
.file-list .listing div.file > img.docs {
  object-fit: contain;
  max-height: 300px;
}
.file-browser .files .listing div.file .file-preview,
.file-list .listing div.file .file-preview {
  grid-row: 1/3;
  grid-column: 1;
  text-align: center;
  align-self: center;
  overflow: hidden;
}
.file-browser .files .listing div.file .file-preview.file-grid,
.file-list .listing div.file .file-preview.file-grid {
  border: 1px solid #eeeeee;
}
.file-browser .files .listing div.file .file-preview .fal,
.file-list .listing div.file .file-preview .fal {
  font-size: 100px;
}
.file-browser .files .listing div.file .caption,
.file-list .listing div.file .caption {
  display: block;
  grid-row: 3;
  grid-column: 1;
  align-self: start;
  padding: 5px 10px 0 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #333333;
  text-align: center;
  font-size: 14px;
}
.file-browser .files .listing div.file .caption a,
.file-list .listing div.file .caption a {
  display: block;
}
.file-browser .files .listing div.file .caption .file-actions,
.file-list .listing div.file .caption .file-actions {
  position: absolute;
  right: 0;
  top: -10px;
}
.file-browser .files .listing div.file .caption .file-actions > a,
.file-list .listing div.file .caption .file-actions > a {
  background-color: rgba(8, 135, 198, 0.5);
  padding: 4px 10px;
  border: 1px solid #e8e8e8;
  color: white;
}
.file-browser .files .listing div.file .caption .file-actions > a:hover,
.file-list .listing div.file .caption .file-actions > a:hover {
  border: 1px solid gray;
  background-color: #0887C6;
}
.file-browser .files .listing div.file .caption .file-actions ul a,
.file-list .listing div.file .caption .file-actions ul a {
  display: block;
  float: none !important;
}
.file-browser .files .listing div.file .meta,
.file-list .listing div.file .meta {
  display: block;
  grid-row: 4;
  grid-column: 1;
  color: #6c757d;
  padding: 0 10px 5px 10px;
  text-align: center;
  font-size: 14px;
}
.file-browser .files .listing div.file .meta .creator,
.file-browser .files .listing div.file .meta .filesize,
.file-browser .files .listing div.file .meta .likes-count,
.file-browser .files .listing div.file .meta .comment-count,
.file-list .listing div.file .meta .creator,
.file-list .listing div.file .meta .filesize,
.file-list .listing div.file .meta .likes-count,
.file-list .listing div.file .meta .comment-count {
  display: none;
}
.file-browser .files .listing div.file .listing,
.file-list .listing div.file .listing {
  display: block;
  grid-row: 3;
  grid-column: 1;
  padding: 0 10px 5px 10px;
}
.file-browser .files .listing div.file .expanded,
.file-list .listing div.file .expanded {
  display: none;
}
.file-browser .files .listing.as-list, .file-browser .files .listing.as-list-detail,
.file-list .listing.as-list,
.file-list .listing.as-list-detail {
  display: block;
}
.file-browser .files .listing.as-list div.file, .file-browser .files .listing.as-list-detail div.file,
.file-list .listing.as-list div.file,
.file-list .listing.as-list-detail div.file {
  grid-template-rows: auto auto;
  grid-template-columns: auto 40px 1fr;
  border-bottom: 1px solid #eeeeee;
  margin-bottom: 5px;
  max-width: 100%;
  width: 100%;
}
.file-browser .files .listing.as-list div.file .file-grid, .file-browser .files .listing.as-list-detail div.file .file-grid,
.file-list .listing.as-list div.file .file-grid,
.file-list .listing.as-list-detail div.file .file-grid {
  grid-row: 1/3;
  grid-column: 2;
  grid-template-rows: 20px 20px;
  grid-template-columns: 20px 20px;
}
.file-browser .files .listing.as-list div.file .file-actions, .file-browser .files .listing.as-list-detail div.file .file-actions,
.file-list .listing.as-list div.file .file-actions,
.file-list .listing.as-list-detail div.file .file-actions {
  top: -7px;
}
.file-browser .files .listing.as-list div.file .file-preview, .file-browser .files .listing.as-list-detail div.file .file-preview,
.file-list .listing.as-list div.file .file-preview,
.file-list .listing.as-list-detail div.file .file-preview {
  grid-row: 1/3;
  grid-column: 2;
  text-align: center;
  align-self: center;
  overflow: hidden;
}
.file-browser .files .listing.as-list div.file .file-preview .fal, .file-browser .files .listing.as-list-detail div.file .file-preview .fal,
.file-list .listing.as-list div.file .file-preview .fal,
.file-list .listing.as-list-detail div.file .file-preview .fal {
  font-size: 32px;
}
.file-browser .files .listing.as-list div.file input, .file-browser .files .listing.as-list-detail div.file input,
.file-list .listing.as-list div.file input,
.file-list .listing.as-list-detail div.file input {
  grid-row: 1/3;
  grid-column: 1;
  margin: 5px 10px 5px 0;
  align-self: center;
}
.file-browser .files .listing.as-list div.file img, .file-browser .files .listing.as-list-detail div.file img,
.file-list .listing.as-list div.file img,
.file-list .listing.as-list-detail div.file img {
  grid-row: 1/3;
  grid-column: 2;
  overflow: hidden;
  max-width: 100%;
  align-self: center;
}
.file-browser .files .listing.as-list div.file .caption, .file-browser .files .listing.as-list-detail div.file .caption,
.file-list .listing.as-list div.file .caption,
.file-list .listing.as-list-detail div.file .caption {
  padding: 0 0 0 10px;
  display: block;
  grid-row: 1;
  grid-column: 3;
  text-align: left;
  align-self: end;
}
.file-browser .files .listing.as-list div.file .caption a, .file-browser .files .listing.as-list-detail div.file .caption a,
.file-list .listing.as-list div.file .caption a,
.file-list .listing.as-list-detail div.file .caption a {
  display: inline-block;
}
.file-browser .files .listing.as-list div.file .caption .file__download, .file-browser .files .listing.as-list-detail div.file .caption .file__download,
.file-list .listing.as-list div.file .caption .file__download,
.file-list .listing.as-list-detail div.file .caption .file__download {
  float: right;
}
.file-browser .files .listing.as-list div.file .meta, .file-browser .files .listing.as-list-detail div.file .meta,
.file-list .listing.as-list div.file .meta,
.file-list .listing.as-list-detail div.file .meta {
  padding: 0 0 0 10px;
  display: block;
  grid-row: 2;
  grid-column: 3;
  text-align: left;
  align-self: start;
}
.file-browser .files .listing.as-list div.file .meta .creator,
.file-browser .files .listing.as-list div.file .meta .filesize,
.file-browser .files .listing.as-list div.file .meta .likes-count,
.file-browser .files .listing.as-list div.file .meta .comment-count, .file-browser .files .listing.as-list-detail div.file .meta .creator,
.file-browser .files .listing.as-list-detail div.file .meta .filesize,
.file-browser .files .listing.as-list-detail div.file .meta .likes-count,
.file-browser .files .listing.as-list-detail div.file .meta .comment-count,
.file-list .listing.as-list div.file .meta .creator,
.file-list .listing.as-list div.file .meta .filesize,
.file-list .listing.as-list div.file .meta .likes-count,
.file-list .listing.as-list div.file .meta .comment-count,
.file-list .listing.as-list-detail div.file .meta .creator,
.file-list .listing.as-list-detail div.file .meta .filesize,
.file-list .listing.as-list-detail div.file .meta .likes-count,
.file-list .listing.as-list-detail div.file .meta .comment-count {
  display: inline;
}
.file-browser .files .listing.as-list div.file .comment-count,
.file-browser .files .listing.as-list div.file .likes-count, .file-browser .files .listing.as-list-detail div.file .comment-count,
.file-browser .files .listing.as-list-detail div.file .likes-count,
.file-list .listing.as-list div.file .comment-count,
.file-list .listing.as-list div.file .likes-count,
.file-list .listing.as-list-detail div.file .comment-count,
.file-list .listing.as-list-detail div.file .likes-count {
  padding-left: 10px;
}
.file-browser .files .listing.as-list div.file .comment-count, .file-browser .files .listing.as-list-detail div.file .comment-count,
.file-list .listing.as-list div.file .comment-count,
.file-list .listing.as-list-detail div.file .comment-count {
  color: #333333;
}
.file-browser .files .listing.as-list.as-list-detail div.file .expanded, .file-browser .files .listing.as-list-detail.as-list-detail div.file .expanded,
.file-list .listing.as-list.as-list-detail div.file .expanded,
.file-list .listing.as-list-detail.as-list-detail div.file .expanded {
  display: block;
  grid-row: 3;
  grid-column: 3;
  padding: 5px 10px;
}
.file-browser .files .listing.as-list.as-list-detail div.file .expanded .mediaclass-micro-square,
.file-browser .files .listing.as-list.as-list-detail div.file .expanded .fa-folder, .file-browser .files .listing.as-list-detail.as-list-detail div.file .expanded .mediaclass-micro-square,
.file-browser .files .listing.as-list-detail.as-list-detail div.file .expanded .fa-folder,
.file-list .listing.as-list.as-list-detail div.file .expanded .mediaclass-micro-square,
.file-list .listing.as-list.as-list-detail div.file .expanded .fa-folder,
.file-list .listing.as-list-detail.as-list-detail div.file .expanded .mediaclass-micro-square,
.file-list .listing.as-list-detail.as-list-detail div.file .expanded .fa-folder {
  width: 14px;
  height: auto;
  margin-right: 6px;
  display: inline-block;
}
.file-browser .files .listing.as-list.as-list-detail div.file .expanded a, .file-browser .files .listing.as-list-detail.as-list-detail div.file .expanded a,
.file-list .listing.as-list.as-list-detail div.file .expanded a,
.file-list .listing.as-list-detail.as-list-detail div.file .expanded a {
  color: inherit;
}
.file-browser .files .listing.as-list.as-list-detail div.file .expanded .clickable:hover, .file-browser .files .listing.as-list-detail.as-list-detail div.file .expanded .clickable:hover,
.file-list .listing.as-list.as-list-detail div.file .expanded .clickable:hover,
.file-list .listing.as-list-detail.as-list-detail div.file .expanded .clickable:hover {
  text-decoration: underline;
}
.file-browser .files .listing.as-list.as-list-detail div.file li.file, .file-browser .files .listing.as-list-detail.as-list-detail div.file li.file,
.file-list .listing.as-list.as-list-detail div.file li.file,
.file-list .listing.as-list-detail.as-list-detail div.file li.file {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.file-browser .files .listing.as-list.as-list-detail div.file li.file a, .file-browser .files .listing.as-list-detail.as-list-detail div.file li.file a,
.file-list .listing.as-list.as-list-detail div.file li.file a,
.file-list .listing.as-list-detail.as-list-detail div.file li.file a {
  text-decoration: inherit;
  vertical-align: middle;
  display: inline-block;
  max-width: calc(100% - 200px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.file-browser .files .listing.as-list.as-list-detail div.file li.file .likes-count,
.file-browser .files .listing.as-list.as-list-detail div.file li.file .comment-count, .file-browser .files .listing.as-list-detail.as-list-detail div.file li.file .likes-count,
.file-browser .files .listing.as-list-detail.as-list-detail div.file li.file .comment-count,
.file-list .listing.as-list.as-list-detail div.file li.file .likes-count,
.file-list .listing.as-list.as-list-detail div.file li.file .comment-count,
.file-list .listing.as-list-detail.as-list-detail div.file li.file .likes-count,
.file-list .listing.as-list-detail.as-list-detail div.file li.file .comment-count {
  font-size: 14px;
}
.file-browser .files .listing.as-list.as-list-detail div.file li.file .date, .file-browser .files .listing.as-list-detail.as-list-detail div.file li.file .date,
.file-list .listing.as-list.as-list-detail div.file li.file .date,
.file-list .listing.as-list-detail.as-list-detail div.file li.file .date {
  padding-left: 10px;
}
.file-browser .files .listing div.file.dummy,
.file-list .listing div.file.dummy {
  border-bottom: none;
}
.file-browser .files .listing div.file.dummy:hover,
.file-list .listing div.file.dummy:hover {
  background-color: inherit !important;
}

.file-browser .actions {
  display: -ms-grid;
  -ms-grid-columns: auto auto auto 1fr;
  -ms-grid-rows: auto;
  display: grid;
  grid-template-columns: auto auto auto 1fr;
  grid-template-rows: auto;
  background-color: #fff9c4;
  border-bottom: 1px solid #ffee58;
  padding-right: 10px;
  padding-left: 10px;
  margin-left: -10px;
  margin-right: -10px;
}
.file-browser .actions > * {
  align-self: center;
}
.file-browser .actions > #select-all {
  display: block;
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  grid-column: 1;
  grid-row: 1;
  margin-right: 30px;
}
.file-browser .actions > .with-selected {
  display: block;
  -ms-grid-column: 2;
  -ms-grid-row: 1;
  grid-column: 2;
  grid-row: 1;
  margin-right: 30px;
}
.file-browser .actions > .select {
  display: block;
  -ms-grid-column: 3;
  -ms-grid-row: 1;
  grid-column: 3;
  grid-row: 1;
}
.file-browser .actions .inline a {
  padding: 4px 6px;
  margin-right: 4px;
}
.file-browser .actions > .select {
  padding: 4px 6px;
  margin-right: 4px;
}
.file-browser .col-three {
  display: -ms-grid;
  -ms-grid-columns: minmax(100px, 1fr) auto minmax(100px, 1fr);
  display: grid;
  grid-template-columns: minmax(100px, 1fr) auto minmax(100px, 1fr);
  background-color: white;
  margin-left: -10px;
  margin-right: -10px;
  padding: 0 10px;
}
.file-browser .col-three.sticky {
  padding: 10px 10px;
}
.file-browser .col-three > * {
  align-self: center;
  justify-self: stretch;
}
.file-browser .col-three > * a {
  white-space: nowrap;
}
.file-browser .col-three > span {
  margin: 0;
  padding: 0 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: bold;
}
.file-browser .col-three > :nth-child(1) {
  display: block;
  -ms-grid-column: 1;
  grid-column: 1;
  text-align: left;
}
.file-browser .col-three > :nth-child(1).up {
  overflow: hidden;
  text-overflow: ellipsis;
}
.file-browser .col-three > :nth-child(2) {
  display: block;
  -ms-grid-column: 2;
  grid-column: 2;
  text-align: center;
}
.file-browser .col-three > :nth-child(3) {
  display: block;
  -ms-grid-column: 3;
  grid-column: 3;
  text-align: right;
}
.file-browser .col-three .with-selected {
  margin: 0 15px;
}
.file-browser .more {
  text-align: center;
}

#rights {
  text-align: right;
  font-size: 14px;
}
#rights > em:after {
  content: "/";
  padding: 0 5px;
}
#rights a {
  color: #333333;
}

@media (min-width: 841px) {
  .file-browser {
    -ms-grid-columns: 250px 1fr;
    grid-template-columns: 250px 1fr;
  }
  .file-browser.file-files {
    -ms-grid-columns: 250px 1fr;
    grid-template-columns: 250px 1fr;
  }
  .file-browser.file-files .locations {
    display: block;
  }
  .file-browser.file-locations .files {
    display: block;
  }
}
@media (min-width: 841px) and (pointer: fine) {
  .file-browser .locations a:hover span.fal {
    display: inline-block;
  }
}
@media (min-width: 841px) {
  .file-browser .files div.file {
    flex-basis: 200px;
    max-width: 350px;
  }
}
.catalog-list {
  opacity: 0;
}
.catalog-list.-active {
  animation: 0.1s forwards fadein;
}

.classlist {
  margin-top: 15px;
  position: relative;
  z-index: 10;
}
.classlist h2 {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.classlist details summary {
  padding: 10px 16px;
  margin: 0 0 2px;
}
.classlist details summary:before {
  color: inherit;
}
.classlist details summary img {
  max-height: 1.3em;
  margin-right: 10px;
}
.classlist details:has(.classes.archived) > div {
  padding-bottom: 1rem;
}
.classlist details > div {
  padding-bottom: 2rem;
  margin-bottom: 15px;
}
.classlist details > div > .school-pages {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  margin-bottom: 15px;
}
.classlist details > div > .school-pages a {
  color: #757575;
}
.classlist details > div > .school-pages a:hover {
  text-decoration: underline;
}
.classlist details > div > .school-pages a.public-pages {
  border-left: 1px solid #333333;
  padding-left: 1rem;
  color: #333333;
}
.classlist details > div > .license {
  max-width: 100%;
  font-size: 14px;
  float: right;
}

.switch-view {
  display: flex;
  align-items: center;
}
.switch-view span {
  margin-right: 1rem;
}

.class h3, .class h5 {
  line-height: 1.2;
}
.class .btn-group {
  margin: 0;
}
.class .user__note {
  display: none;
}
@media (min-width: 759px) {
  .class .user__note {
    display: block;
  }
}

.class__more-info {
  grid-column: 2;
  grid-row: 2;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  margin: 1rem 0 0;
  position: relative;
  z-index: 20;
  font-size: 2rem;
}
.class__more-info .fav-icon {
  margin-right: auto;
}
.class__more-info .btn-group {
  display: none;
}
.class__more-info:has(.open) {
  z-index: 30;
}
@media (min-width: 759px) {
  .class__more-info {
    font-size: 1.6rem;
  }
  .class__more-info .btn-group {
    display: block;
  }
}

.class__img.-manager {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #d7d7d7;
}

.class.-row {
  display: grid;
  grid-template-columns: 150px 1fr;
  grid-template-rows: 1fr auto auto;
  padding: 12px 0;
  position: relative;
  border-bottom: 1px solid #f0f0f0;
}
.class.-row.class-info-panel > .class__img {
  margin: 6px 0 0 0;
}
.class.-row .class__img {
  grid-column: 1;
  grid-row: 1/5;
  max-width: 100%;
  margin-right: 24px;
}
.class.-row .class__img .fal {
  font-size: 40px;
}
.class.-row .class__info {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  align-self: center;
}
.class.-row .class__note {
  grid-column: 2;
  grid-row: 2;
}
.class.-row .btn-group {
  grid-column: 3;
  grid-row: 1/4;
  align-self: center;
  margin-left: 1rem;
}
.class.-row .user__note {
  grid-column: 3;
  grid-row: 3;
}
@media (max-width: 759px) {
  .class.-row {
    grid-template-columns: 80px 1fr auto;
  }
}

.class.-compact {
  display: grid;
  grid-template-columns: 1fr auto;
  padding: 12px;
  gap: 1rem;
  position: relative;
}
.class.-compact h3, .class.-compact h5 {
  font-size: 1.6rem;
}
.class.-compact .class__img {
  display: none;
}
.class.-compact:nth-child(even) {
  background: #f0f0f0;
}
.class.-compact .btn {
  padding: 5px 12px;
}
.class.-compact .btn-i {
  margin-right: 1rem;
}
.class.-compact .class__more-info {
  grid-column: 1;
}
@media (min-width: 759px) {
  .class.-compact .class__more-info {
    grid-column: 2;
    grid-row: 1;
  }
}
.class.-compact .btn-group {
  display: block;
}

.user__note {
  font-size: 14px;
  color: #6c757d;
}

.class__note {
  font-size: 14px;
  color: #AE1409;
}

.class__info h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1.1em;
}
.class__info h3 a {
  color: currentColor;
}

.classlist.-cards {
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 3.5rem;
}
@media (min-width: 920px) {
  .classlist.-cards {
    display: grid;
    grid-template-columns: repeat(2, 302px);
  }
}
@media (min-width: 1240px) {
  .classlist.-cards {
    display: grid;
    grid-template-columns: repeat(3, 302px);
    justify-items: stretch;
  }
}

.class.-card {
  display: flex;
  flex-flow: column wrap;
  width: 302px;
  position: relative;
  background: white;
  border-radius: 4px;
  box-shadow: 0 0 3px #ddd;
  border: 1px solid #ddd;
}
.class.-card h5 {
  height: 6.8rem;
  margin-bottom: 1rem;
}
.class.-card p {
  margin: 0;
  line-height: 1.2;
}
.class.-card .class__img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 15rem;
  overflow: hidden;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
}
.class.-card .class__img .fal {
  font-size: 80px;
}
.class.-card .class__img img {
  display: block;
  max-height: 100%;
}
.class.-card:hover {
  background: #f0f0f0;
}
.class.-card .class__more-info {
  padding: 1rem;
  margin: auto 0 0 0;
}
.class.-card .class__info,
.class.-card .actions {
  padding: 10px;
}
.class.-card .btn-group {
  margin-top: 1rem;
}

@media (max-width: 640px) {
  .membersorter .families-wrapper {
    margin: 0 -10px;
  }
}
.membersorter .disclaimer {
  font-size: 85%;
  margin-bottom: 15px;
}
.membersorter .row h3 {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.membersorter .row h3 span {
  display: inline;
  color: #6c757d;
  font-weight: normal;
}
.membersorter .row h3 span:before {
  content: " — ";
}
.membersorter .row h3 span:after {
  content: "";
}
.membersorter .table thead th {
  padding-top: 0;
}
.membersorter .table > tbody > tr > td {
  vertical-align: top;
}
.membersorter .drop-target.hover {
  background-color: #fff9c4;
}
.membersorter .ui-draggable-dragging {
  opacity: 0.8;
  max-width: 300px !important;
}
.membersorter .ui-droppable {
  cursor: pointer;
}
.membersorter .ui-droppable:hover {
  background-color: #fff9c4;
}
.membersorter .cards {
  min-height: 32px;
}
.membersorter .cards .card-member {
  width: min(300px, 100%);
}
.membersorter .cards .card-member.drag-member, .membersorter .cards .card-member.selected-member {
  background-color: #c8e6c9;
}
.membersorter .cards .card-member.ui-state-disabled {
  opacity: 100;
  filter: alpha(opacity=100);
}
.membersorter .cards .card-member .member-status.auth-external {
  opacity: 0.9 !important;
}
.membersorter .new-members,
.membersorter .teachers,
.membersorter .managers,
.membersorter .removed,
.membersorter .widget {
  margin-bottom: 30px;
}
.membersorter .btn.add-member {
  padding-top: 0;
  margin-top: 0;
}
.membersorter .sticky {
  background-color: rgba(255, 255, 255, 0.9);
}
.membersorter .fill-class .select-multiple {
  display: none;
}
.membersorter .fill-class.select-mode .teachers h3,
.membersorter .fill-class.select-mode .managers h3,
.membersorter .fill-class.select-mode .families > div.ui-droppable > h3,
.membersorter .fill-class.select-mode table th h3 {
  cursor: pointer;
  padding: 4px 2px;
}
.membersorter .fill-class.select-mode .teachers h3:before,
.membersorter .fill-class.select-mode .managers h3:before,
.membersorter .fill-class.select-mode .families > div.ui-droppable > h3:before,
.membersorter .fill-class.select-mode table th h3:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f358";
  font-size: 24px;
  margin-right: 10px;
  vertical-align: middle;
  color: #66bb6a;
}
.membersorter .fill-class.select-mode .teachers h3.selected:before,
.membersorter .fill-class.select-mode .managers h3.selected:before,
.membersorter .fill-class.select-mode .families > div.ui-droppable > h3.selected:before,
.membersorter .fill-class.select-mode table th h3.selected:before {
  content: "\f35b";
}
.membersorter .fill-class.select-mode .select-multiple {
  display: block;
  margin-left: -30px;
  position: absolute;
  z-index: 2;
}
.membersorter .fill-class.select-mode .select-multiple.family-row:before {
  font-family: "Font Awesome 5 Pro";
  content: "\f35a";
  font-size: 24px;
  color: #66bb6a;
}
.membersorter .fill-class.select-mode .present-member {
  opacity: 0.5;
}
.membersorter .fill-class.select-mode .card-member.selected {
  background-color: #c8e6c9;
}
.membersorter .fill-class.select-mode .add-member,
.membersorter .fill-class.select-mode .new-members,
.membersorter .fill-class.select-mode .add-tagged-members,
.membersorter .fill-class.select-mode .disclaimer,
.membersorter .fill-class.select-mode .help-fill-class,
.membersorter .fill-class.select-mode .removed {
  display: none;
}

.scroller {
  max-height: 50vh;
  overflow-y: auto;
  overflow-x: hidden;
  border-bottom: 1px solid #6c757d;
  margin-bottom: 12px;
}
.scroller .sticky {
  top: 0;
  background-color: white;
}
.scroller.members .member {
  display: block;
  position: relative;
  padding-left: 35px;
  margin: 0 0 10px 0;
  cursor: pointer;
}
.scroller.members .member img {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
}
.scroller.members .member:hover {
  background-color: #fff9c4;
}

.member-info .username {
  display: block;
  font-size: 0.8em;
  color: #6c757d;
}

.membersort__text {
  padding-block-start: 1em;
  border-top: 5px solid #fac112;
}
@media (min-width: 759px) {
  .membersort__text {
    padding-inline: 3em;
  }
  .membersort__text .row {
    display: flex;
    justify-content: space-between;
    gap: 3em;
  }
}

.membersort__text__link {
  display: flex;
  justify-content: end;
}

.tags .fa-times {
  display: none;
}
.tags .label {
  display: inline-block;
  margin-right: 4px;
}
.tags.remove-tags .label {
  cursor: pointer;
}
.tags.remove-tags .label .fa-times {
  display: inline;
  color: #c62828;
  font-size: 1.2em;
  padding-right: 4px;
}

details summary {
  font-size: 1.2em;
  line-height: 1.2;
  font-weight: 500;
  margin: 15px 0;
  cursor: pointer;
}
details summary::-webkit-details-marker {
  display: none;
}
details summary:before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  color: #696f7c;
  margin-right: 5px;
  content: "\f0da";
}
details[open] summary:before {
  content: "\f0d7";
}
details > div {
  padding: 6px 12px;
  border-radius: 6px;
  color: rgba(0,0,0, 0.87);
  background: #fff;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.settings-accordion {
  margin-bottom: 3em;
}

.loadmask {
  z-index: 2000;
  position: fixed;
  top: 0;
  left: 0;
  /*-moz-opacity: 0.5;
  opacity: 0.50;
  filter: alpha(opacity=50);
  background-color: #fff; */
  width: 100%;
  height: 100%;
  zoom: 1;
}

.loadmask-msg {
  z-index: 20001;
  position: fixed;
  top: 0;
  left: 0;
  padding: 2px;
}

.loadmask-msg div {
  padding: 10px 10px 5px 40px;
  background: url("/lib/images/spinner.gif") no-repeat 5px 5px;
  height: 20px;
  color: #222;
  font: normal 11px tahoma, arial, helvetica, sans-serif;
  cursor: wait;
}

.loadmask-progress {
  position: absolute;
  top: 40%;
  left: 25%;
  width: 50%;
  height: 12px;
  z-index: 20002;
  background-color: white;
  padding: 1px;
  border: 1px solid #222;
}

.loadmask-progress .ui-progressbar-value {
  background-color: #222;
  height: 100%;
}

.masked {
  overflow: hidden !important;
  -moz-opacity: 0.6;
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.masked-relative {
  position: relative !important;
}

.masked-hidden {
  visibility: hidden !important;
}

#ui-datepicker-div {
  display: none;
}

/* states and images */
.ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}

/* Component containers
----------------------------------*/
.ui-datepicker .ui-widget {
  font-family: Verdana, Arial, sans-serif;
  font-size: 1em;
}

.ui-datepicker .ui-widget input, .ui-datepicker .ui-widget select, .ui-datepicker .ui-widget textarea, .ui-datepicker .ui-widget button {
  font-family: Verdana, Arial, sans-serif;
  font-size: 1em;
}

.ui-datepicker .ui-widget-content {
  border: 1px solid #aaaaaa;
  background: #ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
  color: #222222;
}

.ui-datepicker .ui-widget-content a {
  color: #222222;
}

.ui-datepicker .ui-widget-header {
  border: 1px solid #aaaaaa;
  background: #cccccc url(../images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
  color: #222222;
  font-weight: bold;
}

.ui-datepicker .ui-widget-header a {
  color: #222222;
}

/* Interaction states
----------------------------------*/
.ui-datepicker .ui-state-default, .ui-datepicker .ui-widget-content .ui-datepicker .ui-state-default {
  border: 1px solid #d3d3d3;
  background: #e6e6e6 url(../images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
  font-weight: normal;
  color: #555555;
  outline: none;
}

.ui-datepicker .ui-state-default a, .ui-datepicker .ui-state-default a:link, .ui-datepicker .ui-state-default a:visited {
  color: #555555;
  text-decoration: none;
  outline: none;
}

.ui-datepicker .ui-state-hover, .ui-datepicker .ui-widget-content .ui-state-hover, .ui-datepicker .ui-state-focus, .ui-datepicker .ui-widget-content .ui-state-focus {
  border: 1px solid #999999;
  background: #dadada url(../images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
  font-weight: normal;
  color: #212121;
  outline: none;
}

.ui-datepicker .ui-state-hover a, .ui-datepicker .ui-state-hover a:hover {
  color: #212121;
  text-decoration: none;
  outline: none;
}

.ui-datepicker .ui-state-active, .ui-datepicker .ui-widget-content .ui-state-active {
  border: 1px solid #aaaaaa;
  background: #ffffff url(../images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
  font-weight: normal;
  color: #212121;
  outline: none;
}

.ui-datepicker .ui-state-active a, .ui-datepicker .ui-state-active a:link, .ui-datepicker .ui-state-active a:visited {
  color: #212121;
  outline: none;
  text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-datepicker .ui-state-highlight,
.ui-widget-content .ui-state-highlight {
  border: 1px solid #322;
  background: #322;
  color: white;
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a {
  color: #363636;
}

.ui-state-error, .ui-widget-content .ui-state-error {
  border: 1px solid #cd0a0a;
  background: #fef1ec url(../images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
  color: #cd0a0a;
}

.ui-state-error a, .ui-widget-content .ui-state-error a {
  color: #cd0a0a;
}

.ui-state-error-text, .ui-widget-content .ui-state-error-text {
  color: #cd0a0a;
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35);
  background-image: none;
}

.ui-priority-primary, .ui-widget-content .ui-priority-primary {
  font-weight: bold;
}

.ui-priority-secondary, .ui-widget-content .ui-priority-secondary {
  opacity: 0.7;
  filter: Alpha(Opacity=70);
  font-weight: normal;
}

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px;
  background-image: url(../images/ui-icons_222222_256x240.png);
}

.ui-widget-content .ui-icon {
  background-image: url(../images/ui-icons_222222_256x240.png);
}

.ui-widget-header .ui-icon {
  background-image: url(../images/ui-icons_222222_256x240.png);
}

.ui-state-default .ui-icon {
  background-image: url(../images/ui-icons_888888_256x240.png);
}

.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {
  background-image: url(../images/ui-icons_454545_256x240.png);
}

.ui-state-active .ui-icon {
  background-image: url(../images/ui-icons_454545_256x240.png);
}

.ui-state-highlight .ui-icon {
  background-image: url(../images/ui-icons_2e83ff_256x240.png);
}

.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {
  background-image: url(../images/ui-icons_cd0a0a_256x240.png);
}

/* positioning */
.ui-icon-carat-1-n {
  background-position: 0 0;
}

.ui-icon-carat-1-ne {
  background-position: -16px 0;
}

.ui-icon-carat-1-e {
  background-position: -32px 0;
}

.ui-icon-carat-1-se {
  background-position: -48px 0;
}

.ui-icon-carat-1-s {
  background-position: -64px 0;
}

.ui-icon-carat-1-sw {
  background-position: -80px 0;
}

.ui-icon-carat-1-w {
  background-position: -96px 0;
}

.ui-icon-carat-1-nw {
  background-position: -112px 0;
}

.ui-icon-carat-2-n-s {
  background-position: -128px 0;
}

.ui-icon-carat-2-e-w {
  background-position: -144px 0;
}

.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}

.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}

.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}

.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}

.ui-icon-triangle-1-s {
  background-position: -64px -16px;
}

.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}

.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}

.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}

.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}

.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}

.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}

.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}

.ui-icon-arrow-1-s {
  background-position: -64px -32px;
}

.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}

.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}

.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}

.ui-icon-arrowthick-1-n {
  background-position: 0 -48px;
}

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}

.ui-icon-arrow-4 {
  background-position: 0 -80px;
}

.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}

.ui-icon-extlink {
  background-position: -32px -80px;
}

.ui-icon-newwin {
  background-position: -48px -80px;
}

.ui-icon-refresh {
  background-position: -64px -80px;
}

.ui-icon-shuffle {
  background-position: -80px -80px;
}

.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}

.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}

.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}

.ui-icon-folder-open {
  background-position: -16px -96px;
}

.ui-icon-document {
  background-position: -32px -96px;
}

.ui-icon-document-b {
  background-position: -48px -96px;
}

.ui-icon-note {
  background-position: -64px -96px;
}

.ui-icon-mail-closed {
  background-position: -80px -96px;
}

.ui-icon-mail-open {
  background-position: -96px -96px;
}

.ui-icon-suitcase {
  background-position: -112px -96px;
}

.ui-icon-comment {
  background-position: -128px -96px;
}

.ui-icon-person {
  background-position: -144px -96px;
}

.ui-icon-print {
  background-position: -160px -96px;
}

.ui-icon-trash {
  background-position: -176px -96px;
}

.ui-icon-locked {
  background-position: -192px -96px;
}

.ui-icon-unlocked {
  background-position: -208px -96px;
}

.ui-icon-bookmark {
  background-position: -224px -96px;
}

.ui-icon-tag {
  background-position: -240px -96px;
}

.ui-icon-home {
  background-position: 0 -112px;
}

.ui-icon-flag {
  background-position: -16px -112px;
}

.ui-icon-calendar {
  background-position: -32px -112px;
}

.ui-icon-cart {
  background-position: -48px -112px;
}

.ui-icon-pencil {
  background-position: -64px -112px;
}

.ui-icon-clock {
  background-position: -80px -112px;
}

.ui-icon-disk {
  background-position: -96px -112px;
}

.ui-icon-calculator {
  background-position: -112px -112px;
}

.ui-icon-zoomin {
  background-position: -128px -112px;
}

.ui-icon-zoomout {
  background-position: -144px -112px;
}

.ui-icon-search {
  background-position: -160px -112px;
}

.ui-icon-wrench {
  background-position: -176px -112px;
}

.ui-icon-gear {
  background-position: -192px -112px;
}

.ui-icon-heart {
  background-position: -208px -112px;
}

.ui-icon-star {
  background-position: -224px -112px;
}

.ui-icon-link {
  background-position: -240px -112px;
}

.ui-icon-cancel {
  background-position: 0 -128px;
}

.ui-icon-plus {
  background-position: -16px -128px;
}

.ui-icon-plusthick {
  background-position: -32px -128px;
}

.ui-icon-minus {
  background-position: -48px -128px;
}

.ui-icon-minusthick {
  background-position: -64px -128px;
}

.ui-icon-close {
  background-position: -80px -128px;
}

.ui-icon-closethick {
  background-position: -96px -128px;
}

.ui-icon-key {
  background-position: -112px -128px;
}

.ui-icon-lightbulb {
  background-position: -128px -128px;
}

.ui-icon-scissors {
  background-position: -144px -128px;
}

.ui-icon-clipboard {
  background-position: -160px -128px;
}

.ui-icon-copy {
  background-position: -176px -128px;
}

.ui-icon-contact {
  background-position: -192px -128px;
}

.ui-icon-image {
  background-position: -208px -128px;
}

.ui-icon-video {
  background-position: -224px -128px;
}

.ui-icon-script {
  background-position: -240px -128px;
}

.ui-icon-alert {
  background-position: 0 -144px;
}

.ui-icon-info {
  background-position: -16px -144px;
}

.ui-icon-notice {
  background-position: -32px -144px;
}

.ui-icon-help {
  background-position: -48px -144px;
}

.ui-icon-check {
  background-position: -64px -144px;
}

.ui-icon-bullet {
  background-position: -80px -144px;
}

.ui-icon-radio-off {
  background-position: -96px -144px;
}

.ui-icon-radio-on {
  background-position: -112px -144px;
}

.ui-icon-pin-w {
  background-position: -128px -144px;
}

.ui-icon-pin-s {
  background-position: -144px -144px;
}

.ui-icon-play {
  background-position: 0 -160px;
}

.ui-icon-pause {
  background-position: -16px -160px;
}

.ui-icon-seek-next {
  background-position: -32px -160px;
}

.ui-icon-seek-prev {
  background-position: -48px -160px;
}

.ui-icon-seek-end {
  background-position: -64px -160px;
}

.ui-icon-seek-first {
  background-position: -80px -160px;
}

.ui-icon-stop {
  background-position: -96px -160px;
}

.ui-icon-eject {
  background-position: -112px -160px;
}

.ui-icon-volume-off {
  background-position: -128px -160px;
}

.ui-icon-volume-on {
  background-position: -144px -160px;
}

.ui-icon-power {
  background-position: 0 -176px;
}

.ui-icon-signal-diag {
  background-position: -16px -176px;
}

.ui-icon-signal {
  background-position: -32px -176px;
}

.ui-icon-battery-0 {
  background-position: -48px -176px;
}

.ui-icon-battery-1 {
  background-position: -64px -176px;
}

.ui-icon-battery-2 {
  background-position: -80px -176px;
}

.ui-icon-battery-3 {
  background-position: -96px -176px;
}

.ui-icon-circle-plus {
  background-position: 0 -192px;
}

.ui-icon-circle-minus {
  background-position: -16px -192px;
}

.ui-icon-circle-close {
  background-position: -32px -192px;
}

.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}

.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}

.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}

.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}

.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}

.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}

.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}

.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}

.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}

.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}

.ui-icon-circle-check {
  background-position: -208px -192px;
}

.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}

.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}

.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}

.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}

.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}

.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}

/* Misc visuals
----------------------------------*/
.ui-datepicker {
  width: 20em;
  padding: 0.2em 0.2em 0;
  border: 1px solid #aaaaaa;
  background: #ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
  color: #222222;
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}

.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
  top: 1px;
}

.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}

.ui-datepicker .ui-datepicker-next {
  right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px;
}

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px;
}

.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}

.ui-datepicker .ui-datepicker-title select {
  float: left;
  font-size: 1em;
  margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month-year {
  width: 100%;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 49%;
}

.ui-datepicker .ui-datepicker-title select.ui-datepicker-year {
  float: right;
}

.ui-datepicker table {
  width: 100%;
  font-size: 1em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}

.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}

.ui-datepicker td {
  border: 0;
  padding: 1px;
}

.ui-datepicker td span, .ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: center;
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
}

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Design for logon, password reminder etc. */
body.err403 {
  background-color: #e8e8e8;
}
body.err403 .z-logon-box {
  background-color: white;
  padding: 20px 10px;
}

.z-logon-prompt {
  text-align: center;
  max-width: 400px;
  margin: 40px auto;
}

.z-logon-back {
  float: left;
  margin: 40px 20px;
}

.z-logon-box {
  float: none;
  margin: 15px auto;
  width: 400px;
  max-width: 100%;
  /* Extra login options */
  /* Supporting options */
  /* Sign up specific*/
}
.z-logon-box img.loading {
  display: block;
  margin: 0 auto;
  opacity: 0.5;
  height: 16px;
}
.z-logon-box ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.z-logon-box p {
  margin-bottom: 10px;
}
.z-logon-box .z-logon-title {
  display: none;
}
.z-logon-box h2:first-of-type, .z-logon-box h3:first-of-type, .z-logon-box h4:first-of-type {
  margin-top: 0;
}
.z-logon-box .z-logon-form {
  margin: 15px auto 0 auto;
}
.z-logon-box .z-logon-extra li {
  margin: 0 0 10px 0;
}
.z-logon-box .z-logon-extra .z-btn-social {
  display: block;
  text-align: center;
  text-decoration: none;
}
.z-logon-box .z-logon-extra .z-logon-extra-separator {
  margin: 2em 0 1em 0;
  color: gray;
  border-top: 1px solid gray;
  text-align: center;
  font-size: 3rem;
}
.z-logon-box .z-logon-extra .z-logon-extra-separator > span {
  position: relative;
  top: -0.35em;
  background: white;
  padding: 0 10px;
}
@media (max-width: 759px) {
  .z-logon-box .z-logon-extra .z-logon-extra-separator {
    margin: 1em 0 1em 0;
    font-size: 1.5em;
  }
}
.z-logon-box .z-logon-extra .z-logon-extra-separator:first-child {
  display: none;
}
.z-logon-box .z-logon-extra .menu-add-home + .z-logon-extra-separator {
  display: none;
}
.z-logon-box .z-logon-extra li.menu-add-home {
  margin-bottom: 24px;
}
.z-logon-box .z-logon-support {
  margin: 15px 0 0 0;
  padding: 15px 0 0 0;
}
.z-logon-box .z-logon-support:empty {
  display: none;
}
.z-logon-box .alert :first-child {
  margin-top: 0;
}
.z-logon-box .alert :last-child {
  margin-bottom: 0;
}
.z-logon-box.z-logon-box-boxed .z-logon-form {
  margin: 15px 0;
  padding: 15px 20px;
  background-color: #f2f2f2;
}
.z-logon-box.z-logon-box-boxed .z-logon-extra .z-logon-extra-separator {
  margin-left: -20px;
  margin-right: -20px;
}
.z-logon-box.z-logon-box-boxed .z-logon-extra .z-logon-extra-separator:before {
  background-color: #f2f2f2;
}
.z-logon-box.z-logon-box-boxed .z-logon-support {
  margin-left: -20px;
  margin-right: -20px;
  padding-left: 20px;
  padding-right: 20px;
  border-top: 1px solid #ddd;
}
.z-logon-box.z-logon-box-boxed .z-logon-support p:last-child {
  margin-bottom: 0;
}
.z-logon-box #signup_verify {
  display: none;
}
.z-logon-box input#surprefix {
  width: 50px;
}
.z-logon-box #signup_error_tos_agree,
.z-logon-box #signup_error_duplicate_username,
.z-logon-box #signup_error_duplicate_identity {
  display: none;
}
.z-logon-box .error_tos_agree #signup_error_tos_agree,
.z-logon-box .error_duplicate_username #signup_error_duplicate_username,
.z-logon-box .error_duplicate_identity #signup_error_duplicate_identity,
.z-logon-box .error_custom_1 #signup_error_custom_1,
.z-logon-box .error_custom_2 #signup_error_custom_2 {
  display: block;
}
.z-logon-box .z_validation_message {
  display: block;
  margin: 5px 0 0 0;
}

.claim-user__signup-services ul:not(:has(li)) {
  display: none;
}

/* -------------------------------- ZOTONIC OVERRULES --------------------------- */
.page-logon {
  /* logon form #70 - overwrite standard zotonic module, refactor html later? */
}
.page-logon #footer,
.page-logon #header-wrapper {
  display: none;
}
@media (max-width: 759px) {
  .page-logon {
    -ms-grid-columns: 0 0 1fr 0;
    -ms-grid-rows: 0 auto 1fr auto;
    grid-template-columns: 0 0 1fr 0;
    grid-template-rows: 0 auto 1fr auto;
  }
}
.page-logon p {
  max-width: 100%;
}
.page-logon #logon_box {
  text-align: left;
  width: 100%;
  max-width: 400px;
  padding: 0;
  margin: 5vh auto 0 auto;
}
.page-logon #logon_box > h2 {
  margin: 2em 0 0 0;
  color: gray;
  border-top: 1px solid gray;
  text-align: center;
}
.page-logon #logon_box > h2 > span {
  position: relative;
  top: -0.8em;
  background: white;
  padding: 0 10px;
}
@media (max-width: 759px) {
  .page-logon #logon_box > h2 {
    margin: 1em 0 0 0;
    font-size: 1.5em;
  }
}
.page-logon #logon_box form .z_validation_message {
  position: absolute;
  padding-left: 4px;
  color: red;
}
.page-logon #logon_box form div.buttons {
  margin-top: 30px;
}
.page-logon #logon_box form div.buttons p {
  margin-top: 9px;
}
.page-logon #logon_box form .form-field-error,
.page-logon #logon_box form .form-field-error:focus {
  border-color: red;
}
.page-logon #logon_box .error {
  display: block;
}
.page-logon #logon_box div#logon_outer {
  margin-top: 1em;
}
.page-logon #logon_box .logon_message,
.page-logon #logon_box form#logon_form,
.page-logon #logon_box form#password_reminder,
.page-logon #logon_box form#password_reset,
.page-logon #logon_box form#password_expired {
  padding: 0 20px 20px 20px;
  margin: 0;
  width: auto;
}
.page-logon #logon_box h1.logon_header {
  margin-top: 0;
  line-height: 1.3;
}
.page-logon #logon_box #logon_dialog {
  float: none !important;
  margin: 0 auto;
  width: 342px;
}
.page-logon #logon_box #logon_form_box {
  margin-left: -20px;
}
.page-logon #logon_box .btn {
  margin: 10px 10px 10px 0;
}
.page-logon #logon_box .checkbox {
  clear: left;
  margin: 10px 0;
}
.page-logon div.logon_bottom {
  text-align: center;
  margin-top: 20px;
  margin-bottom: 100px;
}
.page-logon p#logon_reason {
  margin-bottom: 30px;
}
.page-logon ul#logon_methods {
  margin: 0;
  padding-left: 15px;
  padding-right: 15px;
}
.page-logon ul#logon_methods li a {
  width: 100%;
}
.page-logon #logonTarget {
  padding: 0 10px;
}
.page-logon div#logon_error {
  margin-left: 0;
  margin-right: 0;
}
.page-logon div#logon_button {
  text-align: center;
}
.page-logon p.logon_link {
  margin: 0;
}
.page-logon #logon_methods {
  list-style-type: none;
}
.page-logon #logon_methods img {
  float: none;
}
@media (min-width: 980px) {
  .page-logon div#logon_box .logon-body {
    position: absolute;
    margin-left: 410px;
    width: 230px;
  }
}
.page-logon #logon_form h1 {
  font-size: 22px;
}
.page-logon #logon_form h1 span {
  display: inline;
  font-size: inherit;
}

.modal-overlay.modal-overlay-level-1 {
  z-index: 1032;
}

.modal-overlay.modal-overlay-level-2 {
  z-index: 1033;
}

.modal-overlay.modal-overlay-level-3 {
  z-index: 1034;
}

/* modal overlay - full screen dialog - below normal dialog */
.modal-overlay {
  position: fixed;
  z-index: 1031;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  overflow: hidden;
  padding: 12px;
  background-color: black;
  background-color: rgba(0, 0, 0, 0.3);
}
.modal-overlay > div {
  background-color: rgba(255, 255, 255, 0.97);
  border-radius: 10px;
}
.modal-overlay.theme-dark > div, .modal-overlay.dark > div {
  background-color: black;
  background-color: rgba(0, 0, 0, 0.9);
  color: white;
}
.modal-overlay.theme-dark .form-control, .modal-overlay.dark .form-control {
  color: white;
}
.modal-overlay.theme-dark a:not(.btn), .modal-overlay.dark a:not(.btn) {
  color: #bdbdbd;
}
.modal-overlay.theme-dark a:not(.btn):hover, .modal-overlay.dark a:not(.btn):hover {
  color: white;
}
.modal-overlay.theme-dark .nav > li > a:hover,
.modal-overlay.theme-dark .nav > li > a.active, .modal-overlay.dark .nav > li > a:hover,
.modal-overlay.dark .nav > li > a.active {
  color: #333333;
}
.modal-overlay.theme-dark .media-overlay .caption, .modal-overlay.dark .media-overlay .caption {
  color: #e0e0e0;
}
.modal-overlay.theme-dark select option, .modal-overlay.dark select option {
  background-color: white;
  color: #333333;
}
.modal-overlay.theme-dark .help-block, .modal-overlay.dark .help-block {
  color: #ddd;
}
.modal-overlay.theme-dark .modal-overlay-close, .modal-overlay.dark .modal-overlay-close {
  background-color: rgba(0, 0, 0, 0.5);
}
.modal-overlay.scrollable {
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 0;
}
.modal-overlay .survey-overlay-close,
.modal-overlay .modal-overlay-close {
  position: fixed;
  z-index: 2033;
  right: 10px;
  top: 10px;
  height: 53px;
  width: 53px;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  padding: 0 0 4px 0;
  font-size: 48px;
  font-weight: 100;
  line-height: 1;
  text-align: center;
  cursor: pointer;
}
.modal-overlay .survey-overlay-close:hover,
.modal-overlay .modal-overlay-close:hover {
  text-decoration: none;
}
.modal-overlay .survey-overlay-close {
  position: absolute;
}
.modal-overlay.hide-close .modal-overlay-close {
  display: none;
}
.modal-overlay .help-overlay {
  max-width: 100%;
  width: 800px;
  margin: 0 auto 12px;
}
.modal-overlay .help-overlay .content {
  max-width: 80rem;
  margin: 0 auto;
  padding-bottom: 12px;
  overflow: hidden;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.modal-overlay .help-overlay .content h1 {
  margin-top: 0;
  padding: 12px;
}
.modal-overlay .help-overlay .content p {
  padding: 0 2rem;
}
.modal-overlay .help-overlay .content h2,
.modal-overlay .help-overlay .content h3,
.modal-overlay .help-overlay .content h4 {
  padding: 0 2rem;
}
.modal-overlay .help-overlay .help-actions {
  text-align: center;
  background-color: rgba(255, 255, 255, 0.5);
  margin-bottom: -12px;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.modal-overlay .media-overlay {
  height: 100%;
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto 0;
  grid-template-rows: auto 1fr 2.2em 0;
}
@media (min-width: 800px) {
  .modal-overlay .media-overlay.show-comments {
    grid-template-columns: auto 1fr auto minmax(200px, 300px);
  }
  .modal-overlay .media-overlay.show-comments .comments {
    grid-column: 4;
    grid-row: 2;
  }
}
@media (max-width: 799px) {
  .modal-overlay .media-overlay.show-comments {
    grid-template-rows: auto 1fr 2.2em 1fr;
  }
  .modal-overlay .media-overlay.show-comments .comments {
    grid-column: 1/7;
    grid-row: 4;
  }
}
.modal-overlay .media-overlay.show-comments .comments {
  display: block;
}
.modal-overlay .media-overlay .media {
  text-align: center;
  grid-column: 2;
  grid-row: 2;
  overflow: hidden;
  max-width: 100%;
  max-height: 100%;
  position: relative;
}
.modal-overlay .media-overlay .media > img,
.modal-overlay .media-overlay .media > a > img {
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
  height: auto;
}
.modal-overlay .media-overlay .media > .preview-label {
  position: absolute;
  text-align: center;
  margin: 2px;
  left: 0;
  right: 0;
  z-index: 10;
  pointer-events: none;
}
.modal-overlay .media-overlay .media .media-preview-iframe {
  width: 100%;
  height: 100%;
}
.modal-overlay .media-overlay .media .media-docx {
  max-height: 100%;
  overflow: scroll;
}
.modal-overlay .media-overlay .media .media-doc {
  height: 100%;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr auto 1fr;
}
.modal-overlay .media-overlay .media .media-doc .media-doc-img {
  grid-column: 1;
  grid-row: 2;
  text-align: right;
}
.modal-overlay .media-overlay .media .media-doc .media-doc-img > img,
.modal-overlay .media-overlay .media .media-doc .media-doc-img > a > img {
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}
.modal-overlay .media-overlay .media .media-doc .media-doc-info {
  grid-column: 2;
  grid-row: 2;
  self-align: middle;
  padding: 6px 12px;
}
@media (max-width: 600px) {
  .modal-overlay .media-overlay .media .media-doc {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }
  .modal-overlay .media-overlay .media .media-doc .media-doc-img {
    grid-column: 1;
    grid-row: 1;
    text-align: center;
  }
  .modal-overlay .media-overlay .media .media-doc .media-doc-img > img,
  .modal-overlay .media-overlay .media .media-doc .media-doc-img > a > img {
    max-height: 30vh;
  }
  .modal-overlay .media-overlay .media .media-doc .media-doc-info {
    grid-column: 1;
    grid-row: 2;
  }
}
.modal-overlay .media-overlay .caption {
  display: block;
  grid-column: 1/7;
  grid-row: 3;
  padding: 6px 12px;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.modal-overlay .media-overlay .controls {
  grid-column: 1/5;
  grid-row: 1;
  padding: 6px 48px 6px 10px;
  text-align: center;
}
.modal-overlay .media-overlay .controls > a,
.modal-overlay .media-overlay .controls > .likes {
  display: inline-block;
  font-size: 10px;
  padding: 5px 5px;
  margin-left: 0;
  white-space: nowrap;
}
.modal-overlay .media-overlay .controls > a span.fal,
.modal-overlay .media-overlay .controls > a span.icon,
.modal-overlay .media-overlay .controls > .likes span.fal,
.modal-overlay .media-overlay .controls > .likes span.icon {
  display: block;
  text-align: center;
  font-size: 18px;
}
@media (min-width: 410px) {
  .modal-overlay .media-overlay .controls > a,
  .modal-overlay .media-overlay .controls > .likes {
    font-size: 14px;
  }
  .modal-overlay .media-overlay .controls > a span.fal,
  .modal-overlay .media-overlay .controls > a span.icon,
  .modal-overlay .media-overlay .controls > .likes span.fal,
  .modal-overlay .media-overlay .controls > .likes span.icon {
    font-size: 22px;
  }
}
@media (min-width: 480px) {
  .modal-overlay .media-overlay .controls > a,
  .modal-overlay .media-overlay .controls > .likes {
    margin-left: 15px;
  }
}
.modal-overlay .media-overlay .controls > a .likes__title,
.modal-overlay .media-overlay .controls > .likes .likes__title {
  display: inline !important;
}
.modal-overlay .media-overlay .comments {
  grid-column: 4;
  grid-row: 2;
  display: none;
  overflow-y: auto;
  padding: 15px 5px;
}
.modal-overlay .media-overlay .next, .modal-overlay .media-overlay .prev {
  display: table;
  font-size: 45px;
  height: 100%;
  width: 2ch;
  cursor: pointer;
}
.modal-overlay .media-overlay .next span, .modal-overlay .media-overlay .prev span {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
.modal-overlay .media-overlay .next {
  grid-column: 3;
  grid-row: 2;
}
.modal-overlay .media-overlay .prev {
  grid-column: 1;
  grid-row: 2;
}
.modal-overlay .signup-overlay,
.modal-overlay .survey-overlay {
  max-width: 800px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.modal-overlay .signup-overlay .modal-footer,
.modal-overlay .survey-overlay .modal-footer {
  border-top: none;
}
.modal-overlay .signup-overlay > div,
.modal-overlay .survey-overlay > div {
  background-color: white;
}
.modal-overlay .overlay-content-wrapper.survey-overlay .overlay-content {
  padding-top: 3rem;
}
.modal-overlay .sticky {
  top: 0;
  z-index: 1032;
}
.modal-overlay .sticky-bottom {
  bottom: 0;
  z-index: 1032;
}
.modal-overlay .overlay-content-wrapper {
  max-height: 100%;
  overflow-y: auto;
}
.modal-overlay .overlay-content-wrapper .overlay-content {
  padding: 6px 15px;
}

body.overlay-open,
body.modal-open {
  overflow: hidden;
}

.modal-content .tab-content {
  margin-top: 2em;
}

.modal-content .form-group {
  padding: 0;
  margin: 0;
}
.modal-content .form-group .checkbox {
  margin: 0;
}
.modal-content .form-group.label-floating {
  margin-bottom: 2em;
}
.modal-content .form-group.label-floating label {
  display: none;
}
.modal-content .form-group input[type=file] {
  opacity: 1;
  position: static;
}
.modal-content .form-group .btn-file input[type=file] {
  opacity: 0;
  position: absolute;
}

div[id*=tab-upload] p {
  display: none;
}

.modal.file-upload input[type=file] {
  opacity: 0;
  position: absolute;
}

.modal-content .modal-footer button + button {
  margin-bottom: 10px;
}

.thumbnail {
  max-width: 100%;
}

.modal-overlay .btn-print {
  position: absolute;
  top: 0.5rem;
  left: 1.5rem;
}

/* Overrule some unwanted defaults in material css */
body .modal-body .radio label,
body .modal-body .checkbox label {
  color: inherit;
}
body .modal-body .row .radio label {
  padding-left: 0;
}
body .modal-content .modal-footer button + button {
  margin-bottom: 0;
}
body .modal-content .modal-body .modal-footer {
  padding-left: 0;
  padding-right: 0;
}
body .modal-footer {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1rem;
  justify-content: end;
  width: 100%;
}
body .modal-footer .btn {
  margin-bottom: 0;
}
body .modal-footer:before, body .modal-footer:after {
  display: none;
}
body .modal-footer.-flex-space-between {
  justify-content: space-between;
  align-items: end;
}
body .modal-chat .modal-dialog {
  width: 99%;
  max-width: 850px;
}

/* fav toggle */
.fav-icon {
  color: #9e9e9e;
}
.fav-icon.starred {
  color: #5d9d26;
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
}

.likes {
  display: flex;
  gap: 1rem;
}
.likes .fal, .likes .fas {
  font-size: 1.2em;
}

.likes__thumb,
.likes__count {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 4.5rem;
  height: 4.5rem;
  border: none;
  background: none;
  cursor: pointer;
  color: currentColor;
}

.modal-overlay .media-overlay .controls .likes__count {
  height: 0.5rem;
}

.likes__count {
  min-width: 2rem;
}
.likes__count:hover {
  text-decoration: underline;
}

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

.likes-list__person {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  position: relative;
}
.likes-list__person img {
  width: 3.5rem;
  height: 3.5rem;
}

.panel.panel-marker-text {
  border: 1px solid #ffef5e;
  padding: 6px 12px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  background-color: #fff9c4;
}
.panel.panel-marker-text .panel-heading .panel-title {
  font-size: 1.7em;
}

/* Extra styling for license order page */
#content .payment-logos {
  overflow: hidden;
  margin: 20px 0;
}
#content .payment-logos img {
  float: left;
  height: 60px;
  width: auto;
  padding: 5px 20px 5px 0;
}

/* Styles for the 'poweradmin' pages and dialogs */
.hide-state-active tr[data-state=active] {
  display: none !important;
}

.hide-state-archived tr[data-state=archived] {
  display: none !important;
}

#content table.table-datalist {
  margin-top: 10px;
}
#content table.table-datalist thead tr {
  border: none;
}
#content table.table-datalist thead tr th {
  border: none;
}
#content table.table-datalist tbody select {
  padding-top: 0;
  margin: 0;
  height: auto;
  border: red;
}
#content table.table-datalist th, #content table.table-datalist td {
  padding: 5px !important;
}
#content table.table-datalist .form-group {
  margin-top: 0;
}
#content table.table-datalist .is-deleted {
  text-decoration: line-through;
}
#content table.table-datalist .is-deleted select {
  display: none;
}

div.modal div.tab-content {
  overflow: visible;
}
div.modal .nav.nav-pills {
  border-style: none none solid none;
  border-width: 1px;
  border-color: #ccc;
  margin: 0;
}
div.modal .nav.nav-pills > li {
  margin-bottom: -1px;
}
div.modal .nav.nav-pills > li > a,
div.modal .nav.nav-pills li.active > a {
  margin-right: 0;
  border: none;
  border-radius: 0;
  background: none;
  padding-top: 8px;
  padding-bottom: 2px;
  border-style: none none solid none;
  border-width: 2px;
  border-color: transparent;
  box-shadow: none;
}
div.modal .nav.nav-pills > li > a {
  background-color: transparent;
}
div.modal .nav.nav-pills > li:not(.disabled) > a {
  color: #333333;
  opacity: 0.8;
}
div.modal .nav.nav-pills > li.disabled > a, div.modal .nav.nav-pills > li.disabled > a:hover, div.modal .nav.nav-pills > li.disabled > a:focus {
  color: #333333;
  opacity: 0.5;
}
div.modal .nav.nav-pills li.active > a, div.modal .nav.nav-pills li.active > a:focus, div.modal .nav.nav-pills li.active > a:hover {
  border-style: none none solid none;
  border-width: 2px;
  border-bottom-color: #190053;
  background: none;
  opacity: 1;
}
div.modal .nav.nav-pills.nav-justified {
  border-bottom: 1px solid #190053;
}
div.modal .nav.nav-pills.nav-justified > li > a {
  margin-bottom: -1px;
}

.connect-results {
  max-height: 400px;
  margin-top: 15px;
  padding: 10px 0;
  overflow-x: hidden;
  overflow-y: auto;
}
.connect-results .row {
  margin-left: -5px;
  margin-right: -5px;
}
.connect-results.thumbnails,
.connect-results .thumbnails {
  list-style: none;
  padding: 0;
  clear: both;
}
.connect-results.thumbnails [class*=col-],
.connect-results .thumbnails [class*=col-] {
  padding-left: 5px;
  padding-right: 5px;
}
.connect-results.thumbnails .thumbnail,
.connect-results .thumbnails .thumbnail {
  min-height: 72px;
  max-height: 72px;
  overflow: hidden;
  cursor: pointer;
  margin-bottom: 10px;
  padding: 5px;
  font-size: 12px;
  line-height: 1.1em;
  position: relative;
  transition-duration: 0;
  background-color: inherit;
  border: 0.5px solid #666;
}
.connect-results.thumbnails .thumbnail,
.connect-results.thumbnails .thumbnail a:link,
.connect-results.thumbnails .thumbnail a:visited,
.connect-results .thumbnails .thumbnail,
.connect-results .thumbnails .thumbnail a:link,
.connect-results .thumbnails .thumbnail a:visited {
  color: #333;
}
.connect-results.thumbnails .thumbnail:hover,
.connect-results .thumbnails .thumbnail:hover {
  border-color: #333;
}
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction),
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) {
  background-color: #eee;
}
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction),
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) h5, .connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) h6,
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) a:link,
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) a:visited,
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction),
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) h5,
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) h6,
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) a:link,
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) a:visited {
  color: #999;
}
.connect-results.thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) img,
.connect-results .thumbnails .thumbnail.thumbnail-connected:not(.thumbnail-depiction) img {
  opacity: 0.3;
}
.connect-results.thumbnails .thumbnail .z-thumbnail-text,
.connect-results .thumbnails .thumbnail .z-thumbnail-text {
  position: absolute;
  left: 5px;
  top: 5px;
  margin-right: 5px;
  height: 60px;
  max-height: 60px;
  overflow: hidden;
}
.connect-results.thumbnails .thumbnail img + .z-thumbnail-text,
.connect-results .thumbnails .thumbnail img + .z-thumbnail-text {
  left: 92px;
}
.connect-results.thumbnails .thumbnail img,
.connect-results .thumbnails .thumbnail img {
  padding: 0;
  margin: 0 7px 0 0;
}
.connect-results.thumbnails .thumbnail h5, .connect-results.thumbnails .thumbnail h6, .connect-results.thumbnails .thumbnail p,
.connect-results .thumbnails .thumbnail h5,
.connect-results .thumbnails .thumbnail h6,
.connect-results .thumbnails .thumbnail p {
  font-size: 12px;
  line-height: 1.1em;
  font-weight: normal;
  margin: 0;
}
.connect-results.thumbnails .thumbnail h5, .connect-results.thumbnails .thumbnail h6,
.connect-results .thumbnails .thumbnail h5,
.connect-results .thumbnails .thumbnail h6 {
  word-break: break-all;
}
.connect-results.thumbnails .thumbnail h5,
.connect-results .thumbnails .thumbnail h5 {
  font-weight: bold;
  margin-bottom: 2px;
}
.connect-results.thumbnails .thumbnail h6,
.connect-results .thumbnails .thumbnail h6 {
  text-transform: lowercase;
}
.connect-results.thumbnails .thumbnail p,
.connect-results .thumbnails .thumbnail p {
  max-height: 2.2em;
  overflow: hidden;
}

.modal #dialog-new-rsc-tab {
  margin: -15px;
}

#dialog-new-rsc-tab .modal-footer {
  border-top: 0;
}
#dialog-new-rsc-tab .new-find-cols {
  display: -ms-grid;
  -ms-grid-columns: 3fr 2fr;
  -ms-grid-rows: minmax(300px, 70vh);
  display: grid;
  grid-template-columns: 3fr 2fr;
  grid-template-rows: minmax(300px, 70vh);
}
#dialog-new-rsc-tab .new-find-cols .modal-footer {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.8);
}
#dialog-new-rsc-tab .new-find-cols > .form-panel {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  grid-column: 1;
  grid-row: 1;
  background-color: white;
  padding: 10px 15px 0 15px;
  max-height: 100%;
  overflow-y: auto;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  grid-column: 1;
  grid-row: 1;
  position: relative;
  background-color: white;
  z-index: 1051;
  padding: 10px 15px 0 15px;
  max-height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper .rsc-preview h1 {
  font-size: 1.5em;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper .rsc-preview h2 {
  font-size: 1.2em;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper .rsc-preview h3 {
  font-size: 1.2em;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper .rsc-preview img {
  max-width: 100%;
  height: auto;
  margin: 15px 0;
}
#dialog-new-rsc-tab .new-find-cols > .rsc-preview-panel-wrapper .rsc-preview-action .action-edit {
  display: none;
}
#dialog-new-rsc-tab .new-find-cols > .new-find-results {
  -ms-grid-column: 2;
  -ms-grid-row: 1;
  grid-column: 2;
  grid-row: 1;
  display: -ms-grid;
  -ms-grid-columns: 1fr;
  -ms-grid-rows: auto 1fr;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  max-height: 100%;
  padding: 10px 0 0 14px;
  margin-left: 0;
  border-left: 1px solid #f0f0f0;
  background: linear-gradient(to right, #f8f8f8, white, white);
}
#dialog-new-rsc-tab .new-find-cols > .new-find-results > .new-find-results-header {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
  grid-column: 1;
  grid-row: 1;
  padding-right: 15px;
  padding-bottom: 10px;
}
#dialog-new-rsc-tab .new-find-cols > .new-find-results > #dialog-rsc-new-found {
  -ms-grid-column: 1;
  -ms-grid-row: 2;
  grid-column: 1;
  grid-row: 2;
  max-height: 100%;
  padding-right: 15px;
  overflow-x: hidden;
  overflow-y: scroll;
}
#dialog-new-rsc-tab .new-find-cols > .new-find-results > #dialog-rsc-new-found .item {
  background-color: white;
}
#dialog-new-rsc-tab .new-find-cols > .new-find-results #dialog_new_rsc_results {
  margin-top: 0;
}

#dialog_new_rsc_results {
  margin-top: 10px;
  @_item_gutter : 6px;
}
#dialog_new_rsc_results .items {
  padding: 0;
}
#dialog_new_rsc_results .items .item {
  min-height: 72px;
  overflow: hidden;
  border-radius: 2px;
  cursor: pointer;
  margin-bottom: 10px;
  padding: 5px;
  font-size: 12px;
  line-height: 1.1em;
  position: relative;
  transition-duration: 0;
  border: 0.5px solid #666;
}
#dialog_new_rsc_results .items .item:hover {
  border-color: #333;
}
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) {
  background-color: #eee;
}
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction),
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) h5, #dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) h6,
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) a:link,
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) a:visited {
  color: #999;
}
#dialog_new_rsc_results .items .item.item-connected:not(.item-depiction) img {
  opacity: 0.3;
}
#dialog_new_rsc_results .items .item .z-item-text {
  left: 5px;
  top: 5px;
  margin-right: 5px;
}
#dialog_new_rsc_results .items .item img + .z-item-text {
  left: 92px;
}
#dialog_new_rsc_results .items .item img {
  padding: 0;
  margin: 0 7px 0 0;
}
#dialog_new_rsc_results .items .item h5, #dialog_new_rsc_results .items .item h6, #dialog_new_rsc_results .items .item p {
  font-size: 12px;
  line-height: 1.1em;
  font-weight: normal;
  margin: 0;
}
#dialog_new_rsc_results .items .item h5, #dialog_new_rsc_results .items .item h6 {
  word-break: break-all;
}
#dialog_new_rsc_results .items .item h5 {
  font-weight: bold;
  margin-bottom: 2px;
}
#dialog_new_rsc_results .items .item h6 {
  text-transform: lowercase;
  color: #ccc;
}
#dialog_new_rsc_results .items .item .rsc-actions {
  text-align: right;
}

#ios-pwa-prompt-overlay {
  background-color: rgba(0, 0, 0, 0.6);
  left: 0;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.2s ease-in;
  width: 100vw;
  z-index: 999999;
  display: none;
}
#ios-pwa-prompt-overlay.visible {
  opacity: 1;
  display: block;
}
@media (prefers-color-scheme: dark) {
  #ios-pwa-prompt-overlay {
    background: rgba(0, 0, 0, 0.6);
    color: rgba(235, 235, 245, 0.6);
  }
}

#ios-pwa-prompt {
  bottom: 10px;
  color: black;
  filter: brightness(1.1);
  left: 0;
  right: 0;
  overflow: hidden;
  position: fixed;
  transform: translateY(calc(100% + 10px));
  transition: transform 0.4s cubic-bezier(0.4, 0.24, 0.3, 1);
  z-index: 999999;
  display: none;
}
#ios-pwa-prompt.visible {
  transform: translateY(0);
  display: block;
}
#ios-pwa-prompt > div {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  width: calc(100vw - 16px);
  max-width: 400px;
  margin: 0 auto;
  padding: 8px 8px 10px;
  background-color: rgba(250, 250, 250, 0.8);
  border-radius: 10px;
}
@media (prefers-color-scheme: dark) {
  #ios-pwa-prompt {
    background: rgba(120, 120, 128, 0.32);
  }
}

body.is-ipados #ios-pwa-prompt {
  top: 10px;
  bottom: auto;
}
body.is-ipados #ios-pwa-prompt > div {
  margin: 0 10px 0 auto;
}

.ios-header {
  align-items: center;
  border-bottom: 1px solid rgba(60, 60, 67, 0.29);
  border-width: 0.5px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 13px 16px;
}
@media (prefers-color-scheme: dark) {
  .ios-header {
    border-color: rgba(84, 84, 88, 0.6);
  }
}
.ios-header > span {
  color: rgb(0, 0, 0);
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.125;
  margin: 0;
  padding: 0;
}
@media (prefers-color-scheme: dark) {
  .ios-header > span {
    color: rgb(255, 255, 255);
  }
}
.ios-header > a {
  color: rgb(0, 122, 255);
  font-size: 16px;
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
}
@media (prefers-color-scheme: dark) {
  .ios-header > a {
    color: rgb(9, 132, 255);
  }
}

.ios-text {
  border-bottom: 1px solid rgba(60, 60, 67, 0.29);
  border-width: 0.5px;
  color: rgba(60, 60, 67, 0.6);
  margin: 0 16px;
  padding: 16px;
  font-size: 13px;
  line-height: 17px;
  text-align: center;
}
@media (prefers-color-scheme: dark) {
  .ios-text {
    border-color: rgba(84, 84, 88, 0.6);
    color: rgba(235, 235, 245, 0.6);
  }
}

.ios-instruction {
  color: rgba(60, 60, 67, 0.6);
  margin: 0 16px;
  padding: 16px;
  font-size: 13px;
  line-height: 17px;
}
.ios-instruction > div {
  align-items: center;
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  text-align: left;
  margin-bottom: 16px;
}
.ios-instruction > div:last-of-type {
  margin-bottom: 0;
}
.ios-instruction b {
  font-weight: 600;
}
.ios-instruction .ios-icon {
  flex: 0 0 auto;
  height: 30px;
  margin-right: 32px;
  width: 25px;
}
.ios-instruction .ios-icon-home {
  color: black;
  fill: black;
}
@media (prefers-color-scheme: dark) {
  .ios-instruction .ios-icon-home {
    color: white;
    fill: white;
  }
}
.ios-instruction .ios-icon-share {
  color: rgb(0, 122, 255);
  fill: rgb(0, 122, 255);
}
@media (prefers-color-scheme: dark) {
  .ios-instruction .ios-icon-share {
    color: rgb(9, 132, 255);
    fill: rgb(0, 122, 255);
  }
}

.geomap-static img {
  z-index: 0 !important;
}

table[cellpadding] td {
  padding: 10px;
}

table[cellpadding="0"] td {
  padding: 0;
}

.geomap-static-wrapper {
  max-width: 100%;
  overflow: hidden;
  text-align: center;
}

.cat-helptext #content table {
  max-width: 100%;
}

.bg {
  padding: 1rem;
}

.block-type-text.bg {
  padding: 1rem 2rem !important;
  margin: 0 0 1em;
}
.block-type-text.bg p:last-child {
  margin-bottom: 0;
}

.bg.-bg-white {
  background-color: #FFF;
}

.bg.-bg-light_grey {
  background-color: #F2F1F0;
}

.bg.-bg-dark_grey {
  background-color: #232323;
  color: #fff;
}

.bg.-bg-blue {
  background-color: #0d86a3;
  color: #fff;
}

.bg.-bg-yellow {
  background-color: #fac112;
}

.color-red {
  color: red;
}

.t-content-store #content-wrapper > main {
  background: rgba(200, 200, 200, 0.1);
}

@media print {
  #shortcuts-fixed,
  #header-wrapper,
  #sidedrawer,
  #footer,
  .top-content-message,
  .no-print,
  .activity .edit.btn-group,
  #timeline-index,
  .timeline-nav,
  .timeline .activity > .comments > label,
  .activity > .show-summary:checked ~ .content > .summary-content,
  .activity > .content > .full-content > .show-summary-content,
  .summary-content {
    display: none;
  }
  .survey-result {
    break-inside: avoid;
  }
  .timeline .activity > .comments > .activities {
    height: auto;
    opacity: 1;
  }
  .timeline .activity > .comments > .activities > *,
  .full-content {
    display: block;
  }
}
