* {
  margin: 0;
  /* padding: 0; */
}
html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
hr {
  width: calc(100% - 4rem);
  position: relative;
  left: 1rem;
}
h1, h2, h3, .h1 {
  margin-top: 3rem !important;
  font-weight: 500;
}
h1, .h1 {
  font-size: 2em;
  margin-bottom: 0.5rem;
}
body {
  --global-max-width: 62rem;
  margin: 0 auto;
  font-family: 'Roboto', sans-serif;
  color: #333;
  line-height: 1.4;
  word-break: break-word;
  /* background: #F8F8F8; */
}
a {
  text-decoration-color: #8590ce;
  color: #3949AB;
}
pre {
  /* font-family: "Droid Sans Mono", monospace; */
  font-size: inherit;
  white-space: pre-wrap;
  overflow: hidden;
  max-height: 60em;
}
main > * > *,
header > *,
footer > * {
  max-width: var(--global-max-width);
  margin-left: auto;
  margin-right: auto;
}
main > * > *,
.wrapper > * {
  margin: 2rem auto 1rem auto;
  padding: 0 1rem;
}
main > aside {
  padding: 0 1em;
}
.wrapper {
  padding: 0 1em;
}
.wrapper > * {
  padding: 0;
}
main > ul {
  --global-max-width: 60em;
  padding-left: 2.5em;
}
.class-detail > *:not(.markdown-body) {
  display: none;
}
header,
footer {
  margin: 0;
  padding: 1em;
  margin-bottom: em;
}
header {
  padding-bottom: 0;
}
header > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: thin solid #e0e0e0;
  padding-bottom: 1em;
}
header > div > div {
  display: flex;
}
header > div > div + div {
  flex-grow: 1;
  justify-content: flex-end;
  align-items: center;
}
footer {
  margin-bottom: 0;
  margin-top: 2em;
}
footer > ul {
  border-top: thin solid #e0e0e0;
  padding-left: 0em;
  padding-top: 2em;
  margin-bottom: 2em;
  list-style: none;
}
footer li {
  margin-top: 0.5em;
}
footer li svg {
  margin-right: 0.3em;
}
main {
  margin: 0;
  min-height: 32em;
}
main > aside > .status__window {
  text-align: center;
  /* box-sizing: border-box; */
  margin: 0 auto;
  padding: 1em 0 0em;
  border-bottom: thin solid #e0e0e0;
}
main > aside > .status__window li {
  list-style-type: none;
  margin-top: 0.25em;
}
main > aside .button__wrapper {
  margin: 1em 0;
  display: block;
  min-height: 2em;
}
.button__wrapper {
  z-index: 10;
}
h1 + p,
.h1 + p,
h1 + div,
h2 + div,
h1 + blockquote {
  color: #757575;
  font-size: 1.2em;
}
.wrapper {
}
.wrapper h1 + blockquote,
.desc > p {
  max-width: 37rem;
}
.wrapper > blockquote,
.wrapper > p {
  max-width: 45rem;
  margin: 0.5em 0;
}
/********************************/
.group-select {
  display: inline-flex;
  margin-left: 0.25em;
}
.group-select select {
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  font-size: inherit;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: inherit;
  color: #757575;
  border-bottom: thin solid gray;
}
.group-select:not(.disabled) select {
  background: url('https://cdn1.iconfinder.com/data/icons/iconoir-vol-3/24/nav-arrow-down-128.png') no-repeat;
  background-size: 1em;
  background-position: right 0.1em;
  padding-right: 1em;
  outline-color: #E0E0E0;
}
.group-select.disabled {
  display: none;
}
.group-select.disabled select {
  pointer-events: none;
}
/********************************/
main > .project-navig {
  margin-bottom: 0;
}
main > .project-navig > p {
  border-top: thin solid #e0e0e0;
  padding-top: 2.5em;
  margin-top: 3em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
main > .project-navig a {
  margin-right: 0.5em;
  margin-top: 0.5em;
}
main > .project-navig .button--origin[href] svg {
  color: #1976d2;
}
main > .project-navig .button--origin:not([href]) {
  border-color: #E0E0E0;
}
main > .project-navig a:last-child svg {
  margin-right: 0;
  margin-left: 0.5em;
}
/********************************/
main > aside[data-id] p {
  margin-top: 2em;
  padding: 0 1em;
}
main > aside[data-id] p .badge svg {
  display: none;
}
main > aside[data-id] p .badge {
  margin-left: 0;
}
/*pre > code,*/
form textarea.code {
  display: none;
}
form .placeholder {
  display: block;
  border: none;
  pointer-events: none;
  padding-top: 0.4em;
  padding-left: 5em;
  padding-bottom: 1.65em;
  background: #f3f3f3;
  width: 100%;
  height: 100%;
  font-size: 0.9em;
  font-family: "Droid Sans Mono", "monospace", monospace, "Droid Sans Fallback";
  line-height: 1.325;
  white-space: pre;
  overflow: hidden;
  max-height: 27.1em;
}
.file-gitlab {
  display: flex;
  align-items: center;
  margin-top: 1em;
  margin-left:  0.5em;
}
.file-gitlab svg {
  font-size: 1.5em;
  margin-right: 0.35em;
}
.code-na,
code,
.output {
  font-family: "Droid Sans Mono", monospace;
  font-size: 0.88rem;
}
.output {
  line-height: 1.3;
}
pre code.hljs {
  line-height: 1.5;
  font-size: 0.85rem !important;
}
main > pre code.hljs {
  /* border-left: thick solid #ECEFF1; */
  padding-left: 2em;
}
.codeform ul {
  list-style: none;
  text-align: right;
  padding-left: 0;
  flex-wrap: wrap;
  align-items: flex-end;
  padding-right: 0.9em;
  justify-content: flex-end;
  display: flex;
  flex-direction: column;
}
@media (min-width: 32em) {
  .codeform ul {
    flex-direction: row;
    align-items: center;
  }
}
.codeform ul li {
  margin-top: 0.5em;
}
main .not-assigned {
  font-size: 1.5em;
  margin: 1.5em auto;
}
main .code-na {
  display: block;
}
main .code-na > span {
  background: #F5F5F5;
  display: block;
  padding: 5rem 1rem 6rem 1rem;
  max-width: 60rem;
  text-align: center;
  margin-top: 0;
}
main .code-na > span span:first-child {
  font-size: 1.5em;
  display: block;
  margin-bottom: 0.5em;
}
hr {
  margin: 2rem 0;
}
hr + form ul {
  margin-left: 2em;
}
hr + form ul li {
  margin: 0.5rem 0;
}
.button,
button {
  padding: 0;
  font-size: 1rem;
  cursor: pointer;
  border-radius: 10em;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #ddd;
  transition: .3s ease-out;
  background: none;
  color: #000;
}
button svg {
  margin-right: 0.5rem;
}
button.test,
button.run,
.codeform .button {
  margin: 0.5em 0 0.5em 0.75em !important;
}
.codeform a.button {
  padding: 0.475em 1em;
  text-decoration: none;
}
.codeform a.button svg {
  color: #0d47a1;
}
button.reset {
  --svg-color: #c8321c;
}
button.save,
button.switch {
  --svg-color: #4f2ffe;
}
button svg {
  color: var(--svg-color);
}
button:hover,
button:active,
button:focus {
  /* background: var(--active-bg); */
}
button:disabled svg {
  color: #757575;
}
button:disabled {
  color: #757575;
}
select {
  padding: 0.25rem 0.5rem;
  font-size: 1rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.codeform > div {
  position: relative;
}
.fa-spinner {
  color: #3d8110;
}
button:not(.active) .fa-spinner {
  display: none;
}
button.active > svg:first-child {
  display: none;
}
.monaco,
.output,
.monaco-diff {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0.25rem;
  max-width: 100% !important;
}
.monaco {
  padding-bottom: 0;
  padding-top: 0;
  overflow-y: hidden;
}
.monaco > * {
  position: relative;
  top: 0.25rem;
}
.codeform ul {
  margin: 0 !important;
  /* border-top: thin solid #ddf; */
  width: 100%;
}
.codeform ul li {
  margin-top: 0;
}
.codeform ul li > * {
  margin: 0.7rem 0.5rem 0.7rem 1rem;
  display: inline-block;
}
.codeform ul li .gitlab svg {
  margin-right: 0.35em;
  vertical-align: -0.25em;
}
.markdown-body h1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
  padding-bottom: 0.5em;
}
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4 {
  border: none;
}
.markdown-body > details summary h1,
.markdown-body > details summary h2,
.markdown-body > details summary h3,
.markdown-body > details summary h4 {
    display: inline-block;
    margin-bottom: 0;
}
.markdown-body > p:empty {
    margin: 0;
}
.markdown-body .output {
  white-space: break-spaces;
  height: 21em;
  color: #616161;
  padding: 0.5rem 1rem;
  overflow-y: auto;
  border-top: thin solid #ddf;
}
.markdown-body .output:empty {
  padding: 0;
  height: 0;
  border: 0;
}
.markdown-body svg a:hover {
  text-decoration: none;
}
.out-cmd {
  display: inline-block;
  /* margin: 0.5rem 0; */
  color: #000;
}
.out-cmd-failed,
.out-diff-rm {
  color: #c8321c;
}
.out-cmd-ok,
.out-diff-add {
  color: #3d8110;
}
.reference-solution > div,
.reference-solution > details,
.codeform > details {
  border: thin solid #ddf;
  margin-top: 1em;
  border-radius: 0.2em;
  box-shadow: 0 .1em .1em 0 rgba(0,0,0,.14) , 0 .15em .05em -.1em rgba(0,0,0,.12) , 0 .05em .25em 0 rgba(0,0,0,.2);
}
main .reference-solution {
  /* padding: 0 1em; */
}
.codeform__group {
  border-color: #bbb;
}
.reference-solution p:first-child,
.reference-solution summary,
.codeform summary {
  font-size: 1.25rem;
  border-bottom: thin solid #ddf;
  padding: 0.5rem 1rem;
  font-weight: 400;
  color: #56569b;
  margin: 0 !important;
}
.codeform summary,
.reference-solution summary {
  border: none;
}
details summary::-webkit-details-marker,
details summary::marker {
  display: inline-block;
}
.editor .fa-compress,
.editor .fa-collapse {
  cursor: pointer;
}
.editor .fa-compress {
  display: none;
}
.editor.fullscreen .fa-compress {
  display: initial;
}
.editor.fullscreen .fa-expand {
  display: none;
}
body.fullscreen {
  overflow: hidden;
}
.editor.fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100000;
  width: 100vw;
  height: 100vh;
  background: #fff;
}
.editor.fullscreen > details {
  width: 100%;
  height: 100%;
  margin: 0;
  box-shadow: none;
  border: none;
}
.editor.fullscreen > details summary {display: block;cursor: default;}
.editor.fullscreen > details summary + div {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  height: calc(100% - 3em);
}
.editor.fullscreen > details summary + div > div:first-child {
    flex-grow: 1;
}
.editor.fullscreen > details .monaco {
  height: 100%;
}
.editor.fullscreen summary > span {
  width: 100%;
}
.codeform .passed summary span {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
}
.codeform .passed summary > span span:after {
  content: 'passed';
  padding: 0.1em 0.5em;
  border-radius: 0.25em;
  font-size: 1rem;
  margin-left: 0.5em;
  color: #ffffff;
  background: #388E3C;
}
.codeform details[open] summary,
.reference-solution details[open] summary {
  /* border-bottom: thin solid #ddf; */
}
.codeform summary > span {
  display: inline-flex;
  align-items: baseline;
  flex-wrap: wrap;
  width: calc(100% - 1.2em);
  justify-content: flex-end;
}
.codeform summary span:first-child {
  flex-grow: 1;
}
.codeform summary label {
  font-size: 1rem;
  display: none;
}
.codeform details[open] summary label {
  display: block;
}
.codeform details .resize {
  padding-left: 1em;
}
.codeform details .resize svg {
  font-size: 0.9em;
}
.codeform__group {
  padding-top: 0;
  position: relative;
}
.output {
  border-color: #BDBDBD;
  border-top-color: #E0E0E0;
}
.monaco:not(.shown),
.monaco-diff:not(.shown) {
  display: none;
}
form label {
  cursor: pointer;
}
.toggle,
.toggle + svg + svg,
.toggle:checked + svg {
  display: none;
}
.toggle:checked + svg + svg {
  display: initial;
}
.toggle + svg,
.toggle + svg + svg {
  color: #3F51B5;
}
.fa-toggle-off,
.fa-toggle-on {
  font-size: 1.2rem;
  vertical-align: -0.22rem;
  margin-right: 0.25rem;
}
.fa-toggle-off .fa-secondary {
  fill: #6a6a6a;
  opacity: 1;
}
.fa-toggle-off .fa-primary {
  fill: white;
}
.fa-toggle-on .fa-secondary {
  fill: white;
}
.fa-toggle-on .fa-primary {
  fill: #068000;
}
span[class^="fa"] {
  display: inline-block;
  width: 1.25rem;
  height: 1rem;
}
.toggle[disabled] ~ svg.fa-toggle-off .fa-secondary,
.toggle[disabled] ~ svg.fa-toggle-on .fa-primary  {
  fill: #9E9E9E !important;
}
.button {
  display: inline-block;
  padding: 0.75em 1.5em;
  background: #1976d2;
  text-decoration: none;
  border-radius: 15em;
  color: white;
  height: 100%;
}
.card .button {
  position: relative;
  z-index: 1;
}
aside .button {
  margin: 0.25em;
}
.button.button--disabled,
.button[disabled],
.button:not([href]):not(button) {
  color: #424242;
  background: #eeeeee;
  cursor: initial;
}
.button--origin[disabled],
.button--origin:not([href]) {
  background: none !important;
}
.button.button--disabled svg,
.button[disabled] svg,
.button:not([href]):not(button) svg{
  color: #616161 !important;
}
.button--ico {
  padding-left: 1.4em;
}
.button--ico span[class^="fa"],
.button--ico svg {
  font-size: 1.5rem;
  vertical-align: -0.25em;
  margin-right: 0.5em;
  color: #fff;
}
.button--ico-single {
  padding: 0.5em;
  border-radius: 50%;
}
.button--ico-single svg {
  margin-right: 0;
}
.button--origin {
  background: none;
  color: #0D47A1;
  border: thin solid;
}
.button:not([disabled])[href]:hover,
.button:not([disabled])[href]:active,
.button:not([disabled])[href]:focus {
  background: #2196F3;
}
.button--origin:not([disabled])[href]:hover,
.button--origin:not([disabled])[href]:active,
.button--origin:not([disabled])[href]:focus {
  background: #E3F2FD;
}
.button--distribute *:nth-child(2) {
  display: none;
}
.button--distribute[disabled] > *:nth-child(2) {
  display: initial;
}
.button--distribute[disabled] > *:nth-child(1) {
  display: none;
}
.pending {
  display: block;
  padding: 0.75em 0;
}
.pending svg {
  font-size: 1.25em;
  vertical-align: -0.15em;
  margin-right: 0.25em;
  color: #4339f2;
}
.button[disabled] {
  cursor: auto;
  pointer-events: none;
}
.badge {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  border-radius: 0.25em;
  text-decoration: none;
  border: none;
  cursor: pointer;
  position: relative;
  margin-left: 1.3rem;
  border: thin solid transparent;
}
.badge[data-name="age"] {
  background: linear-gradient(89deg, #1976d2 var(--scale), #666666 100%);
  order: 1
}
.badge[data-name="merge"] {
  background: linear-gradient(89deg, #666666 var(--scale), #D32F2F 100%);
}
.badge[data-name="status"] {
  background: linear-gradient(90deg, #138d18 var(--scale), #666666 100%);
  order: -10;
}
.badge--fresh {
  animation: badge-heat 20s;
}
@keyframes badge-heat {
  1% {
    border-color: yellow;
    box-shadow: 0 0 0.3em yellow;
    border-color: #fab1b1;
    box-shadow: 0 0 0.3em red;
    color: yellow;
  }
  5% {
    color: white;
  }
}
.badge > svg.fa-fw {
  position: absolute;
  left: -1.25rem;
  top: -0.25em;
  color: #bdbdbd;
  height: 1.25rem;
  padding: 0.2em;
  padding-left: 0;
}
.class-detail .badge > .fa-fw {
  display: none !important;
}
.class-detail .badge {
  margin-left: 0;
  cursor: initial;
}
.card .badge.sort--desc > svg,
.card .badge.sort--asc > svg {
  color: #212121;
}
.badge > *:nth-child(2),
.badge > *:nth-child(3) {
  display: none;
}
.card .badge.sort--desc > svg:nth-child(3) {
  display: initial;
}
.card .badge.sort--asc > svg:nth-child(2) {
  display: initial;
}
.card .badge.sort--desc > svg:nth-child(1),
.card .badge.sort--asc > svg:nth-child(1) {
  display: none;
}
/*
.card .badge > span:first-child {
  display: none;
}
@media (min-width: 42em) {
 .layout-row .card .badge > span:first-child {
    display: initial;
  }
}
*/
.tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-left: 0;
}
.tags .filter {
  margin-right: 1em;
  border: none;
}
.tags .classfilter {
  margin-bottom: 0.5em;
}
.groupfilter {
  display: none;
}
.filter svg + svg {
  display: none;
}
/**********************/
a[href="#"] {
  text-decoration: none;
}
/**********************/
main .col {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0;
  margin: 4em auto;
  max-width: none;
}
.card {
  width: calc(var(--card-width, 34em) - 2em);
  min-width: 13em;
  list-style: none;
  margin: 0;
  max-width: calc(100% - 2em);
  padding: 2em 1em;
  display: flex;
  flex-direction: column;
  background: white;
  overflow: hidden;
}
.col--fixed .card {
  max-width: none;
}
.card li {
  white-space: nowrap;
  /* overflow: hidden; */
  display: flex;
  align-items: baseline;
  position: relative;
  margin-top: 0.25em;
}
.col:not(.layoutswitch--wrap) .card li:after {
  content: "";
  width: 1.25rem;
  position: absolute;
  right: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff);
  height: 100%;
}
.card li:last-child div > * {
  margin-left: 0.75em;
  margin-top: 0.5em;
  display: inline-block;
}
.card li:last-child {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  flex-grow: 1;
}
.card__heading {
  font-size: 1.5em;
  font-weight: 500;
  margin: 1rem 0;
  color: #212121;
  display: flex;
  align-items: center;
}
h1, .card__meta, .card__heading {
  position: relative;
  padding-left: 2.1em;
  box-sizing: border-box;
}
h1 svg, h1 img, .card__meta img, .card__meta svg, .card__heading svg, .card__heading img {
  width: 2em;
  margin-right: 0.4em;
  margin-top: -0.25em;
  border-radius: 50%;
  height: 2em;
  position: absolute;
  left: -0.3em;
}
section > h1 {
  padding-left: 2.75em;
  max-width: 64rem;
}
section > h1 svg,
section > h1 img {
  left: 0.5rem;
}
@media (min-width: 66em) {
  section > h1 {
    padding-left: 2.1em;
    max-width: 63rem;
  }
  section > h1 svg,
  section > h1 img {
    left: -0.2em;
  }
}
h1 svg[class*="fa-graduation-cap"] {
  top: 0em;
  background: #E3F2FD;
  color: #1976d2;
  padding: 0.45em 0.35em;
  font-size: 1.1em;
}
.card__heading a {
  display: flex;
  align-items: center;
  color: inherit;
  text-decoration: none;
}
h1 span {
  color: #757575;
  font-weight: normal;
}
.col .card__desc {
  margin-left: 0.5em;
}
.card__desc,
.card__updated {
  color: #757575;
}
.card__desc {margin: 1em 0;}
.card__header {
  display: flex;
  align-items: baseline;
}
.card .badges__wrapper {
  flex-wrap: nowrap;
}
.card .badges__wrapper img,
.card .badges__wrapper svg {
  padding-right: 0.5em;
}
.badges__wrapper .fa-spin {
  padding: 0 !important;
  margin: 0.5em;
  position: relative;
  top: -0.1em;
}
.markdown-body .badges__wrapper .fa-spin {
  margin: 0.2em;
}
.card .badges__wrapper .badge svg {
  padding-right: 0;
}
.card .class__info {
  text-align: center;
  display: block;
  /* padding-top:0.5em; */
}
.card .class__option {
  text-align: center;
  display: block;
  padding-bottom: 1.5em;
}
@media (min-width: 34em) {
  .card {
    box-shadow: 0 .1em .1em 0 rgba(0,0,0,.14) , 0 .15em .05em -.1em rgba(0,0,0,.12) , 0 .05em .25em 0 rgba(0,0,0,.2);
    margin: .5em;
    border-radius: 0.75em;
    padding: 1em 1.5em 1.5em;
    order: 1000;
    overflow: hidden;
  }
  .card:not(:last-child) {
    border-bottom: none;
  }
  .col.layoutswitch--no-wrap .card li {
    clip-path: inset( 0 0 0 -0.5em);
  }
}
@media (min-width: 59em) {
  .col:not(.layoutswitch--no-wrap) .card li {
    white-space: normal;
  }
  .col:not(.layoutswitch--no-wrap) .card li .card__header,
  .col:not(.layoutswitch--no-wrap) .card li .badges__wrapper {
    flex-wrap: wrap;
  }
}
.col.layoutswitch--wrap .card li {
  white-space: normal;
  flex-wrap: wrap;
  margin-top: 0.25em;
}
.col.layoutswitch--wrap .card li .card__header,
.col.layoutswitch--wrap .card li .badges__wrapper {
  flex-wrap: wrap;
}
.col.layoutswitch--wrap .card__desc {
  margin-top: 0.25em;
  margin-left: 0;
  width: 100%;
}
main .view:not(:empty) > *:nth-last-child(2),
main .settings > *:nth-last-child(2) {
  border-bottom: thin solid #ddd;
  padding-bottom: 2em;
}
.card__heading .filter,
.filter {
  font-weight: normal;
  position: relative;
}
.card .card__meta {
  display: block;
  text-align: center;
  padding: 1em 0 1.5em 0;
  margin-bottom: 1em;
  border-bottom: thin solid #ddd;
}
.classfilter, .filter {
    border-radius: 0.5em;
    display: inline-block;
}
.view__active .filter:not([href]) {
  border-color: #5C6BC0 !important;
}
a.avatar img,
a.avatar svg {
  width: 2em;
  height: 2em;
  border-radius: 50%;
  position: relative;
  top: 0.5em;
  margin-right: 0.25em;
}
.view--user .filter {
  color: #212121;
}
.filter--user .filter {
  margin-top: 0;
  margin-bottom: 0;
}
.view > *,
.settings > * {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  /* margin-top: 0em; */
  margin-bottom: 1em;
  padding: 0;
}
.view,
.settings {
  position: relative;
}
.view--hidden,
.settings--hidden {
  display: none;
}
.view dt,
.settings dt {
  margin-right: 0.5em;
}
.view li,
.settings dd {
  margin-right: 1em;
}
.view--class dd,
.view--user dd {
  margin-right: 1em;
}
.settings a,
.view label,
.settings label {
  cursor: pointer;
  color: inherit;
}
.settings svg {
  position: relative;
  top: 0.05em;
  margin-right: 0.1em;
}
.settings svg:nth-child(2) {
  display: none;
}
.settings *[class$='--active'] svg:nth-child(2) {
  display: initial;
}
.settings *[class$='--active'] svg:nth-child(1) {
  display: none;
}
.badgestoggle--hide .badges__wrapper {
  display: none;
}
input[type=range] {
  -webkit-appearance: none;
  background-color: #E0E0E0;
  width: 10em;
  height: 0.5em;
  border-radius: 10em;
  cursor: pointer;
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  background-color: #757575;
  width: 1.25em;
  height: 1.25em;
  border-radius: 10em;
  box-shadow: 0 .1em .1em 0 rgba(0,0,0,.14) , 0 .15em .05em -.1em rgba(0,0,0,.12) , 0 .05em .25em 0 rgba(0,0,0,.2);
}
#range {
  margin-left: 0.5em;
}
.settings-hidden {
  visibility: hidden;
}
details > summary {
  cursor: pointer;
}
/**********************/
.breadcrumb,
.userform {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}
.breadcrumb li {
  padding-right: 0.5em;
}
.breadcrumb li + li:before {
  content: "\203a";
  font-size: 1.5em;
  line-height: 0;
  position: relative;
  top: 0.05em;
  padding-right: 0.5rem;
}
/**********************/
.tag {/* cursor: pointer; */}
.filter[href=""],
.tag[href=""] {
  cursor: initial;
  pointer-events: none;
}
.reset:not(.reset--visible),
.filter--hidden {
  display: none;
}
.reset {
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  color: #616161;
  margin-left: 0.25em;
  order: 1;
}
/**********************/
main div.merge {
  background: #ffeb3b;
  padding: 0.2em 1em;
  min-height: 2.4em;
  line-height: 2.4em;
}
.merge a {
  margin-right: 0.5em;
}
.merge a:first-child {
}
.merge-form {
  display: inline-block;
}
.dialog:empty {
  display: none;
}
.dialog {
  position: fixed;
  bottom: 1em;
  left: 1rem;
  z-index: 1;
}
.dialog ul {
  padding: 0;
  list-style: none;
  width: calc(100vw - 3em);
}
.dialog li {
  /* width: 100%; */
  box-sizing: border-box;
  display: block;
  background: #000000cf;
  width: 34em;
  max-width: 100%;
  box-shadow: 0 .4em .5em 0 rgba(0,0,0,.14) , 0 .1em 1em 0 rgba(0,0,0,.12) , 0 .2em .4em -.1em rgba(0,0,0,.3);
  border-radius: 0.25em;
  padding: 1.5em 8em 1.5em 1.5em;
  margin: 0.5em 0;
  color: #fff;
  position: relative;
}
.dialog li > span {
  display: block;
  padding-right: 4em;
}
.dialog .message--info {
  border-color: #5C6BC0;
}
.dialog .message--success {
  border-color: #66bb6a;
}
.dialog .message--fail {
  border-color: #ef5350;
}
.dialog a {
  color: #ffffff;
  text-decoration-color: #cdcdcd;
  margin-right: 0.25em;
}
.status {
  position: relative;
}
.status .button {
  margin: 0 0 0 0.5em;
}
.dialog li .button {
  background: none;
  padding: 0.75em 1.5em;
  cursor: pointer;
  color: #ffffff;
  position: absolute;
  top: 0.8rem;
  right: 0.3rem;
  height: auto;
  border-radius: 10em;
}
.dialog li .button__close {
  font-size: 1.5em;
  padding: 0.25em 0.7em;
}
.dialog li span .button {
  right: 2.85em;
}
.dialog li .button__refresh {
  right: 2.85em;
  background: none;
  color: #64B5F6;
}
.dialog li .button:hover,
.dialog li .button:focus,
.dialog li .button:active {
  background: #4c4c4c !important;

}
main > aside .status--reset:not(:empty) {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
/**********************/
header > div {
  position: relative;
}
header details summary {
  list-style: none;
}
header details summary::-webkit-details-marker {
  display: none;
}
header details summary img {
  border-radius: 100%;
  position: relative;
  top: 0.2em;
  width: 2em;
  height: 2em;
}
header details {
  position: relative;
  order: 1;
  margin-left: 0.75em !important;
  z-index: 1;
}
.breadcrumb + header details {
  flex-grow: 1;
  text-align: right;
}
.tag img {
  border-radius: 50%;
  position: relative;
  top: 0.1em;
}
header .tag img {
  cursor: pointer;
}
header details--hidden ul {
  display: none;
}
header details ul {
  position: absolute;
  top: 3em;
  right: 0;
  background: #fff;
  list-style: none;
  width: 9em;
  max-width: 100vw;
  text-align: center;
  border-radius: 0.25em;
  box-shadow: 0 .1em .1em 0 rgba(0,0,0,.14) , 0 .15em .05em -.1em rgba(0,0,0,.12) , 0 .05em .25em 0 rgba(0,0,0,.2);
  padding: 0;
}
header details ul li {
  padding: 0.5em;
  position: relative;
}
header details ul li svg {
  position: absolute;
  top: 0.7em;
  padding-left: 0.25em;
  color: #3F51B5;
}
header details ul li + li {
  border-top: thin solid #f0f0f0;
}
header details + div {
  right: 2em;
  top: 0;
  flex-grow: 1000;
  text-align: right;
  /* border-right: thin solid #ddd; */
  padding-right: 0.25em;
}
a[href^="/auth"] + div {
  order: -1;
  margin-right: 0.5em;
}
.userform {
  order: 1;
  flex-grow: 1;
  justify-content: flex-end;
}
.userform li + li {
  border-left: thin solid #ddd;
  padding-left: 0.5em;
}
.userform li {
  margin-left: 0.75em;
  height: 2.25em;
  line-height: 1.75em;
}
header .button {
  height: 1.75rem;
  padding-top: 0.25em;
  padding-bottom: 00.25em;
  display: inline-flex;
  align-items: center;
}
.userform + .span {
  position: static;
}
.toggle__close {
  position: absolute;
  top: -0.9em;
  right: 1rem;
  font-size: 1.5em;
  margin: 0;
  cursor: pointer;
  padding: 0.5em;
  line-height: 0;
}
.toggle__view svg,
.toggle__settings svg {
  font-size: 1.6em;
  cursor: pointer;
  color: #616161;
}
.toggle__view {
  margin-right: 0.5em;
}
.toggle__view > span,
.toggle__settings > span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2rem;
  height: 2rem;
  padding: 0.25em;
  cursor: pointer;
  position: relative;
  top: 0.1em;
}
.toggle__view > span,
.toggle__settings > span {
  border-radius: 50%;
  /* border-bottom: medium solid transparent; */
}
.toggle__view .toggle--active,
.toggle__settings .toggle--active {
  /* border-color: #d0d0d0; */
  background: #e5e4e4;
}
@media (hover: hover) and (pointer: fine) {
  .toggle__view > span:hover,
  .toggle__settings > span:hover {
    background: #e5e4e4;
  }
}
ol.breadcrumb {
  width: 100%;
  order: 0;
  padding-left: 0;
}
@media (min-width: 40em) {
  .breadcrumb {
    width: auto;
    order: initial;
  }
}
/*******************/
.iga .button {
  background: linear-gradient(to right,#5542e4 0%,#2dd3aa 100%,#2dd3aa 100%,#2dd3aa 100%);
  --button--active-bg: linear-gradient(to right,#6d5bf4 0%,#69e6c7 100%,#69e6c7 100%,#69e6c7 100%);
}
.iga .button:not([disabled]):hover,
.iga .button:not([disabled]):active,
.iga .button:not([disabled]):focus {
  background: linear-gradient(to right,#6d5bf4 0%,#69e6c7 100%,#69e6c7 100%,#69e6c7 100%);
}
.iga p {
  margin: 1em 0;
}
.iga > h2 {
  padding-top: 2em;
  border-top: thin solid #e0e0e0;
}
/*******************/
.markdown-body > details:first-child {
  color: #757575;
}
.markdown-body > details {
  margin-bottom: 0;
  position: relative;
  top: 2em;
}
.markdown-body > details summary {
  margin-bottom: 1em;
}
.markdown-body details > pre {
  margin-bottom: 0;
}
video {
  max-width: 100%;
}
button .fa-save {
  font-size: 1.3em;
  vertical-align: -0.2em;
}
.file-upload-wrapper {
  display: inline-flex;
  position: relative;
  flex-direction: column;
  width: max-content;
  max-width: 100%;
  box-shadow: 0 0.1em 0.1em 0 rgb(0 0 0 / 14%), 0 0.15em 0.05em -0.1em rgb(0 0 0 / 12%), 0 0.05em 0.25em 0 rgb(0 0 0 / 20%);
  border: thin solid #ddf;
  margin-bottom: 2em;
  border-radius: 0 0 0.5em 0.5em;
}
.file-upload-wrapper.dragover > img,
.file-upload-wrapper.dragover > video,
.file-upload-wrapper.dragover div > .button {
  opacity: 0;
  transition: none;
}
.file-upload-wrapper.dragover {
  outline: medium dashed #1976d2;
}
.file-upload-wrapper .file-upload div > svg {
  display: none;
}
.file-upload-wrapper.dragover .file-upload  div > svg {
  display: initial;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: 0;
  bottom: 0;
  color: #BDBDBD;
  pointer-events: none;
}
.file-upload-wrapper + .file-gitlab {
  margin-top: -1em;
  margin-bottom: 2em;
}
.file-upload-wrapper a {
  display: flex !important;
}
.file-upload button {
  width: 100%;
  padding: 0.5em 0;
  border-radius: 0 0 .5em .5em;
}
.file-upload button svg {
  font-size: 1em;
  vertical-align: -0.1em;
}
.file-upload button:after {
  content: "Upload";
  padding-left: 0.5em;
}
.file-upload button img {
  background: none;
}
.file-upload input {
  display: none;
}
.noclass {
  font-size: 2em;
  color: #bdbdbd;
  font-weight: 600;
}
.class-list h1 {
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.clone__http,
.clone__ssh {
  margin-left: 0.5em;
  text-decoration: none;
}
.clone__http svg,
.clone__ssh svg {
  margin-right: 0.1em;
}
.clone__ssh ~ span {
  margin-left: 0.5em;
}
.clone__ssh ~ span svg {
  margin-right: 0;
}
a:not(.button) .fa-gitlab {
  font-size: 1.2em;
  vertical-align: -0.2em;
  width: 1.25rem;
}
.clone__http.disabled,
.clone__ssh.disabled {
  pointer-events: none;
  color: #777;
}
.overlayWidgets {
  display: none !important;
}
