* {
  box-sizing: border-box;
}

a,
a:active,
a:visited {
  color: #397ade;
}

body {
  width: calc(100% - 1rem);
}
body > * {
  margin: 0rem auto;
}
body header,
body footer {
  text-align: center;
}
body header {
  margin: 0rem auto;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  width: 840px;
  min-height: 0;
  gap: 0.75rem;
  padding: 0.5rem 0.75rem;
  background-color: #d0c0e0;
}
body header.header--home {
  background-color: #fff;
}
body header:not(.header--home) {
  justify-content: flex-start;
}
body header:not(.header--home) div.header__brand {
  flex: 0 0 auto;
}
body header:not(.header--home) nav.header__nav {
  flex: 0 0 auto;
  justify-content: flex-start;
  margin-left: 1.5rem;
}
body header:not(.header--home) div.header__user {
  margin-left: auto;
}
body header div.header__brand {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
  flex: 1 1 0;
  min-width: 0;
}
body header div.header__brand div.header__text {
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.125rem;
  text-align: left;
}
body header div.header__brand div.header__text > * {
  margin: 0rem;
}
body header div.header__brand div.header__text h3 {
  color: red;
}
body header form.header__login,
body header div.header__login.active__user,
body header form.header__search {
  flex: 1 1 0;
  min-width: 0;
}
body header form.header__search {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
  align-items: center;
  margin: 0rem;
}
body header form.header__search div.form__inputs {
  margin: 0rem;
  padding: 0rem;
  display: flex;
  flex-flow: row nowrap;
  gap: 0.25rem;
}
body header form.header__search input[type=text] {
  width: 150px;
  padding: 0.125rem;
}
body header form.header__login {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  margin: 0rem;
}
body header form.header__login div.header__login__top {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
body header form.header__login div.header__login__fields {
  display: flex;
  flex-flow: column nowrap;
  gap: 0.125rem;
}
body header form.header__login div.header__login__field {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
  align-items: center;
  gap: 0.25rem;
}
body header form.header__login div.header__login__field label {
  font-size: 0.75rem;
  font-weight: bold;
  min-width: 2.25rem;
  text-align: right;
}
body header form.header__login div.header__login__field input[type=text],
body header form.header__login div.header__login__field input[type=password] {
  width: 110px;
  padding: 0.125rem;
}
body header form.header__login input[type=submit] {
  padding: 0.125rem 0.5rem;
  white-space: nowrap;
}
body header form.header__login div.header__login__links {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}
body header form.header__login div.header__login__links a {
  font-size: 0.75rem;
  white-space: nowrap;
}
body header div.header__login.active__user {
  display: flex;
  justify-content: center;
  align-items: center;
}
body header div.header__login.active__user p {
  margin: 0rem;
  text-align: center;
}
body header img {
  height: 40px;
}
body header nav.header__nav {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
}
body header nav.header__nav a,
body header nav.header__nav a:active,
body header nav.header__nav a:visited {
  color: #000;
}
body header div.header__user {
  flex: 1 1 0;
  min-width: 0;
  text-align: right;
}
body header div.header__user p {
  margin: 0rem;
}
body main {
  margin: 0rem auto;
  width: 840px;
  padding: 0rem;
  background-color: #d0d5df;
  text-align: center;
}
body main p {
  margin: 0rem auto;
}
body main > p,
body main > div > p {
  margin: 0.125rem;
}
body main div.gallery {
  display: flex;
  flex-flow: row wrap;
  background-color: #b0c0d0;
  margin: 0rem;
  padding: 0rem;
  min-width: 100%;
}
body main div.gallery div.gallery__item {
  width: 16.6666666667%;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  padding: 0.125rem;
  margin: 0rem;
  gap: 0.25rem;
}
body main div.gallery div.gallery__item p {
  color: #c00000;
  font-weight: bold;
}
body main div.gallery__item.gallery__item--file p {
  color: #000080;
}
body main div.gallery.gallery--image {
  flex-flow: column nowrap;
  padding: 0.5rem;
}
body main div.gallery.gallery--image > * {
  max-width: 100%;
}
body main div.member__layout {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  background-color: #b0c0d0;
}
body main div.member__layout > aside.member__links {
  flex: 0 0 14rem;
  max-width: 14rem;
  box-sizing: border-box;
  background-color: #d0c0e0;
  padding: 0.5rem;
  text-align: left;
  border-right: 1px solid #8090a0;
}
body main div.member__layout > aside.member__links h3.member__links__title {
  margin: 0 0 0.25rem 0;
  font-size: 0.875rem;
  text-align: center;
}
body main div.member__layout > aside.member__links p.member__links__empty {
  margin: 0.25rem 0;
  font-size: 0.75rem;
  color: #555;
  text-align: center;
}
body main div.member__layout > aside.member__links ul.member__links__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
body main div.member__layout > aside.member__links ul.member__links__list li.member__links__item {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: 0.25rem;
  padding: 0.125rem 0;
  font-size: 0.8125rem;
  word-break: break-word;
}
body main div.member__layout > aside.member__links ul.member__links__list li.member__links__item a {
  flex: 1 1 auto;
  min-width: 0;
  overflow-wrap: anywhere;
}
body main div.member__layout > aside.member__links ul.member__links__list li.member__links__item button.bs-delete-link-btn {
  flex: 0 0 auto;
  padding: 0 0.3125rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #c00000;
  background: #f0d0d0;
  border: 1px solid #c00000;
  cursor: pointer;
}
body main div.member__layout > div.gallery {
  flex: 1 1 0;
  min-width: 0 !important;
  width: auto;
}
body main div.page__nav {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0.25rem 0.5rem;
}
body main div.page__nav .page__nav__left {
  text-align: left;
  min-width: 20%;
}
body main div.page__nav .page__nav__center {
  flex: 1;
  text-align: center;
}
body main div.page__nav .page__nav__right {
  text-align: right;
  min-width: 20%;
}
body main div.stats {
  text-align: center;
  padding: 0.25rem;
}
body main div.stats table {
  border-collapse: collapse;
  background-color: #e0e0e0;
  margin: 0.25rem auto;
}
body main div.stats table td {
  border: 1px solid #000;
  padding: 0.25rem 0.5rem;
}
body main form.searches {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem;
  width: 100%;
}
body main form.searches .form__inputs {
  display: flex;
  flex-flow: row nowrap;
  gap: 0.25rem;
}
body p {
  margin: 0rem 0.125rem;
  word-wrap: break-word;
}
body div.stats {
  text-align: center;
  padding: 0.25rem;
  max-width: 840px;
  margin: 0rem auto;
}
body div.stats table {
  border-collapse: collapse;
  background-color: #e0e0e0;
  margin: 0.25rem auto;
}
body div.stats table td {
  border: 1px solid #000;
  padding: 0.25rem 0.5rem;
}
body div.page__nav {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0.25rem 0.5rem;
  max-width: 840px;
  margin: 0rem auto;
}
body div.page__nav .page__nav__left {
  text-align: left;
  min-width: 20%;
}
body div.page__nav .page__nav__center {
  flex: 1;
  text-align: center;
}
body div.page__nav .page__nav__right {
  text-align: right;
  min-width: 20%;
}
body div.upload__section {
  display: flex;
  flex-flow: row wrap;
  gap: 2rem;
  justify-content: center;
  align-items: flex-start;
  margin: 0rem auto;
  padding: 0.5rem 0rem;
  max-width: 840px;
  background-color: #d0d5df;
}
body div.upload__section form {
  border: 1px solid #808080;
  padding: 0.5rem;
  background-color: #f0f0f0;
  border-radius: 4px;
  width: 45%;
  box-sizing: border-box;
  margin: 0.25rem;
  flex: 0 0 auto;
}
body div.upload__section div.upload__multifile {
  flex: 1 1 auto;
  min-width: 0;
  border: 1px solid #808080;
  padding: 0.5rem;
  background-color: #f0f0f0;
  border-radius: 4px;
  margin: 0.25rem;
  display: flex;
  flex-flow: column nowrap;
  gap: 0.25rem;
}
body div.upload__section div.upload__multifile div.upload__add_area {
  border: 2px dashed #bbb;
  border-radius: 3px;
  padding: 0.375rem 0.5rem;
  text-align: center;
}
body div.upload__section div.upload__multifile div.upload__add_area.upload__add_area--active {
  border-color: #4caf50;
  background-color: #efffef;
}
body div.upload__section div.upload__multifile div#bs_file_list {
  display: flex;
  flex-flow: column nowrap;
  gap: 0.25rem;
}
body div.upload__section div.upload__multifile div#bs_file_list.upload__list--drop-active {
  outline: 2px dashed #4caf50;
  background-color: #f5fff5;
  border-radius: 3px;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry {
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 0.25rem;
  background: #fff;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
  gap: 0.25rem;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row div.upload__entry__file {
  flex: 0 0 auto;
  width: 130px;
  display: flex;
  flex-flow: column nowrap;
  padding-top: 0.125rem;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row div.upload__entry__file span.upload__entry__filename {
  font-size: 0.7rem;
  font-weight: bold;
  word-break: break-all;
  line-height: 1.2;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row div.upload__entry__file span.upload__entry__filesize {
  font-size: 0.65rem;
  color: #888;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row div.upload__entry__inputs {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-flow: column nowrap;
  gap: 0.125rem;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row div.upload__entry__inputs input {
  width: 100%;
  padding: 0.125rem;
  font-size: 0.7rem;
  box-sizing: border-box;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__row button.upload__entry__remove {
  flex: 0 0 auto;
  padding: 0 0.25rem;
  font-size: 0.875rem;
  line-height: 1.4;
  cursor: pointer;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__progress {
  flex-flow: row nowrap;
  align-items: center;
  gap: 0.25rem;
  margin-top: 0.125rem;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__progress div.upload__entry__progress_track {
  flex: 1 1 auto;
  height: 8px;
  background: #ddd;
  border-radius: 4px;
  overflow: hidden;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__progress div.upload__entry__progress_track div.upload__entry__progress_bar {
  height: 100%;
  background: #4caf50;
  width: 0%;
  transition: width 0.1s linear;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry div.upload__entry__progress span.upload__entry__progress_text {
  flex: 0 0 auto;
  font-size: 0.65rem;
}
body div.upload__section div.upload__multifile div#bs_file_list div.upload__entry p.upload__entry__error {
  font-size: 0.7rem;
  color: #c00000;
  margin: 0.125rem 0 0;
}
body .bs-editable-desc {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: pointer;
}
body footer {
  margin: 1rem auto;
  width: 480px;
}
body footer p {
  margin: 0.25rem 0rem;
  font-size: 0.75rem;
}
body footer a,
body footer a:visited {
  color: black;
}
body div#lower {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: flex-start;
  align-content: stretch;
  margin: 1rem auto;
  padding: 0rem;
  max-width: 840px;
}
body div#lower div {
  width: 50%;
  margin: 0rem;
}
body div#lower div div#partners {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin: 1rem auto;
  padding: 0rem;
  min-width: 100%;
}
body div#lower div div#partners a {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  max-width: 240px;
  color: black;
  text-decoration: none;
}
body div#lower div div#partners a p {
  text-align: center;
  margin: 0rem;
}
body div#lower div#tags p {
  text-align: center;
  margin: 0rem auto 0.75rem auto;
  width: 50% !important;
}
body div#lower div#tags div#tags__list {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
}
body div.active__user p {
  margin: 0rem;
  text-align: center;
}
body div.login__info {
  font-weight: bold;
}
@media (max-width: 900px) {
  body header,
  body main,
  body div#lower,
  body div#partners {
    width: 100%;
  }
  body header {
    flex-flow: row wrap;
    justify-content: center;
  }
  body header div.header__brand {
    flex: 1 1 100%;
    justify-content: center;
  }
  body header div.header__brand div.header__text {
    align-items: left;
  }
  body header form.header__login,
  body header div.header__login.active__user,
  body header form.header__search {
    flex: 1 1 100%;
    justify-content: center;
  }
  body header nav.header__nav {
    flex: 1 1 100%;
    justify-content: center;
  }
  body header div.header__user {
    flex: 1 1 100%;
    text-align: center;
  }
  body header form.header__search input[type=text] {
    width: 160px;
  }
  body header form.header__login {
    align-items: center;
  }
  body header form.header__login div.header__login__top {
    flex-flow: row wrap;
    justify-content: center;
  }
  body header form.header__login div.header__login__links {
    justify-content: center;
    flex-flow: row wrap;
  }
}