@charset "UTF-8";
@-ms-viewport {
  min-width: 480px;
  max-width: device-width;
}
@-o-viewport {
  min-width: 480px;
  max-width: device-width;
}
@viewport {
  min-width: 480px;
  max-width: device-width;
}
a {
  color: #1958c1;
}
a:hover {
  color: #0645ad;
}
a:active {
  color: #0838c9;
}

img {
  max-width: 100%;
}

.full {
  width: 100%;
}

table.sortable thead {
  background-color: #eee;
  color: #666;
  font-weight: bold;
  cursor: default;
}

th.tablesorter-headerAsc:after {
  content: " ▴";
}
th.tablesorter-headerDesc:after {
  content: " ▾";
}

div.tablesorter-header-inner {
  display: inline;
}

pre {
  white-space: pre-wrap;
}

hr {
  display: block;
  height: 0;
  border: 0;
  font-style: italic;
  border-bottom: 1px solid #babae5;
  padding: 0;
}

.dashed {
  border-bottom: 1px dashed #babae5;
}

th {
  vertical-align: middle;
}

.form-area {
  display: inline-block;
  background: #f8f8f8;
  padding: 5px 10px 10px;
  border-radius: 4px;
  border: 1px solid #babae5;
}

div.info-float {
  float: right;
  padding: 10px;
}

footer {
  color: #babae5;
  display: block;
  width: 100%;
  position: absolute;
  bottom: 0;
}

body {
  position: relative;
  min-height: 100%;
  margin: 0 auto;
  max-width: 107em;
  font-size: 14px;
  line-height: 1.231;
  background: #f8f8f8;
  font-family: "Segoe UI", "Lucida Grande", Arial, sans-serif;
  color: #000;
  height: 100%;
}

.unselectable {
  cursor: default;
}

h1 {
  font-size: 5em;
  letter-spacing: -2px;
  margin: 0;
  padding: 0;
  line-height: 1em;
}

b {
  font-weight: bold;
}

h2 {
  font-weight: 400;
  font-size: 2em;
  border-radius: 4px;
  padding: 0;
  margin: 0;
}

h3 {
  font-weight: 400;
  font-size: 1.4em;
  border-radius: 4px;
  padding: 0;
  margin: 0;
}

h4 {
  font-size: 1.1em;
  padding: 0;
  margin: 0;
}

hr {
  color: rgba(0, 0, 0, 0.2);
}

#content {
  margin: 52px auto auto;
  width: 90%;
  height: 100%;
  min-height: 25em;
  display: block;
}
#content .title {
  color: #3737b4;
}

footer {
  text-align: center;
  height: 40px;
  border-top: 1px solid #babae5;
  background: #eee;
}

html {
  position: relative;
  height: 100%;
}

a {
  text-decoration: none;
  display: inline;
}

noscript #noscript {
  font-family: Arial, sans-serif;
  font-size: 111%;
  color: white;
  font-weight: bold;
  background: #ae0000;
  text-align: center;
  padding: 5px 0;
  left: 0;
  right: 0;
  position: fixed;
  z-index: 100;
}

#announcement {
  font-family: Arial, sans-serif;
  font-size: 111%;
  color: white;
  font-weight: bold;
  background: #ae0000;
  text-align: center;
  max-width: 30%;
  position: fixed;
  border-radius: 4px;
  z-index: 100;
  bottom: -4px;
  right: -4px;
  padding: 5px 6px 6px 5px;
}
#announcement a {
  color: orange;
}

.time {
  color: #3737b4;
}

.toggle {
  font-weight: bold;
}
.toggle .fa {
  -moz-transition: transform 0.4s, -moz-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -moz-transform 0.4s;
}
.toggle.open .fa {
  -moz-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
       transform: rotate(90deg);
}

#form-errors, .form-errors {
  background: rgba(255, 0, 0, 0.3);
  border: 3px solid red;
  border-radius: 4px;
  padding: 0 1em 0.1em 1em;
  margin: 0.3em 0 0.5em 0;
}

#contest-info {
  font-size: 1.25em;
  border: 5px solid #7070f4;
  border-left: 5px dotted white;
  border-radius: 0 4px 4px 0;
  background: rgba(0, 0, 0, 0.77);
  z-index: 100000;
  padding: 10px 12px;
  color: white;
  cursor: move;
  position: fixed;
  left: 20px;
  top: 90%;
  display: none;
}
#contest-info a {
  height: 1.4em;
  padding: 0;
  margin: 0;
  color: white;
  display: block;
}

#contest-time-remaining {
  display: inline-block;
}

#page-container {
  min-height: 100%;
  position: relative;
  margin: 0 auto;
  border-right: 1px solid #babae5;
  border-left: 1px solid #babae5;
  background: #fff;
}

#content-body {
  padding-bottom: 4em;
}

.title-line-action {
  float: right;
  margin-top: 1.2em;
}

math {
  font-size: 1.155em;
}

.MathJax:focus {
  outline: none;
}

@media (max-width: 1498px) {
  #page-container {
    border-left: none;
    border-right: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}
@media (max-width: 760px) {
  #content {
    width: auto;
    padding: 0 5px;
  }
}
#user-links {
  top: 0;
  right: 0;
  position: absolute;
  height: 100%;
}
#user-links .anon {
  padding-right: 10px;
  display: -moz-inline-box;
  display: inline-flex;
  min-height: 100%;
  -moz-box-align: center;
       align-items: center;
  white-space: nowrap;
  color: #8484ba;
}
#user-links .anon a {
  color: #FFF;
}
#user-links li {
  text-transform: none;
}
#user-links > ul {
  display: block;
  margin: 0;
}
#user-links > ul > li > a {
  display: block;
  padding: 0;
  height: 100%;
}
#user-links > ul > li > a > span {
  font-size: 13px;
  padding: 10px 10px;
  display: block;
  white-space: nowrap;
}
#user-links > ul > li > a > span > img {
  vertical-align: middle;
  border-radius: 4px;
  margin-right: 6px;
}
#user-links > ul > li > a > span > span {
  vertical-align: middle;
  color: #eee;
}
#user-links > ul > li > ul {
  left: 0;
}

#nav-shadow {
  height: 3px;
  background: -moz-linear-gradient(rgba(0, 0, 0, 0.5), transparent);
  background: linear-gradient(rgba(0, 0, 0, 0.5), transparent);
}

#nav-container {
  background: #3737b4;
  height: 100%;
}

nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 500;
}
nav ul {
  margin: 0 0 0 -5px;
  padding: 0 0 0 1%;
  display: block;
}
nav ul li {
  display: inline-block;
  color: #FFF;
  text-transform: uppercase;
  position: relative;
}
nav ul li.home-nav-element a {
  padding: 0;
  height: 44px;
}
nav ul li.home-nav-element a:hover {
  border-bottom: none;
  padding-top: 0;
  padding-bottom: 0;
}
nav ul li a, nav ul li button {
  display: inline-block;
  text-decoration: none;
  vertical-align: middle;
  color: #FFF;
  padding: 13px 7px;
  height: 18px;
}
nav ul li a:link, nav ul li button:link {
  color: #FFF;
}
nav ul li a:hover, nav ul li button:hover {
  color: #FFF;
  background: rgba(255, 255, 255, 0.25);
  margin: 0;
}
nav ul li a.active, nav ul li button.active {
  color: #FFF;
  background: #7070f4;
}
nav ul li a .nav-expand, nav ul li button .nav-expand {
  display: none;
}
nav ul li ul {
  padding: 0;
  position: absolute;
  left: 5px;
  display: none;
  color: #fff;
  background: #3737b4;
  margin: 0 !important;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
}
nav ul li ul li:first-child a.active {
  border-top: 1px solid #3737b4;
}
nav ul li ul li {
  display: block;
}
nav ul li ul li a, nav ul li ul li button {
  padding: 8px 20px 8px 8px !important;
  font-size: 0.8em;
  line-height: 18px;
  display: block;
  border-left: 4px solid #7070f4;
  white-space: nowrap;
}
nav ul li button {
  background: none;
  text-align: left;
  border: none;
  width: 100%;
  border-radius: 0;
  height: auto;
}
nav ul li:hover > ul, nav ul li:active > ul, nav ul li:focus > ul {
  display: block !important;
}
nav ul li.home-nav-element a:hover {
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  background: transparent;
}
nav .nav-divider {
  width: 1px;
  vertical-align: middle;
  padding-left: 3px;
  display: inline-block;
  height: 32px;
  margin-right: 1px;
  border-right: 3px solid rgba(255, 255, 255, 0.15);
}

#navicon {
  display: none;
}

@media (max-width: 760px) {
  #navigation {
    height: 36px;
  }
  #navicon {
    -moz-transition-duration: 0.25s;
         transition-duration: 0.25s;
    display: block;
    line-height: 26px;
    font-size: 2em;
    color: #FFF;
    padding: 0 0.25em;
    margin: 4px 0.25em;
    white-space: nowrap;
    float: left;
  }
  #navicon.hover {
    color: #4db7fe;
    text-shadow: 0 0 5px #7070f4;
    -moz-transition-duration: 0.25s;
         transition-duration: 0.25s;
  }
  #nav-list {
    display: none;
    padding: 0;
    margin: 0;
    position: fixed;
    top: 36px;
    background: #3737b4;
    bottom: 0;
    width: 8em;
    left: 0;
  }
  #nav-list.show-list {
    display: block;
  }
  #nav-list li {
    display: block;
  }
  #nav-list li a {
    display: block;
  }
  #nav-list li a .nav-expand {
    float: right;
    display: block;
    height: inherit;
    margin: -13px -7px;
    padding: inherit;
  }
  #nav-list li ul {
    left: 8em;
    top: 0px;
  }
  #nav-list li ul.show-list {
    display: block;
  }
  #nav-list li.home-nav-element {
    display: none;
  }
  #user-links > ul > li > a > span {
    padding: 6px 8px;
  }
}
@media not all and (max-width: 760px) {
  #nav-list li.home-menu-item {
    display: none;
  }
  #nav-list li:not(:hover) > ul {
    display: none !important;
  }
  #nav-list li ul {
    left: 0 !important;
  }
}
code { /* Comment */
  /* Error */
  /* Keyword */
  /* Operator */
  /* Comment.Multiline */
  /* Comment.Preproc */
  /* Comment.Single */
  /* Comment.Special */
  /* Generic.Deleted */
  /* Generic.Emph */
  /* Generic.Error */
  /* Generic.Heading */
  /* Generic.Inserted */
  /* Generic.Output */
  /* Generic.Prompt */
  /* Generic.Strong */
  /* Generic.Subheading */
  /* Generic.Traceback */
  /* Keyword.Constant */
  /* Keyword.Declaration */
  /* Keyword.Namespace */
  /* Keyword.Pseudo */
  /* Keyword.Reserved */
  /* Keyword.Type */
  /* Literal.Number */
  /* Literal.String */
  /* Name.Attribute */
  /* Name.Builtin */
  /* Name.Class */
  /* Name.Constant */
  /* Name.Decorator */
  /* Name.Entity */
  /* Name.Exception */
  /* Name.Function */
  /* Name.Label */
  /* Name.Namespace */
  /* Name.Tag */
  /* Name.Variable */
  /* Operator.Word */
  /* Text.Whitespace */
  /* Literal.Number.Float */
  /* Literal.Number.Hex */
  /* Literal.Number.Integer */
  /* Literal.Number.Oct */
  /* Literal.String.Backtick */
  /* Literal.String.Char */
  /* Literal.String.Doc */
  /* Literal.String.Double */
  /* Literal.String.Escape */
  /* Literal.String.Heredoc */
  /* Literal.String.Interpol */
  /* Literal.String.Other */
  /* Literal.String.Regex */
  /* Literal.String.Single */
  /* Literal.String.Symbol */
  /* Name.Builtin.Pseudo */
  /* Name.Variable.Class */
  /* Name.Variable.Global */
  /* Name.Variable.Instance */
  /* Literal.Number.Integer.Long */
}
code .hll {
  background-color: #ffffcc;
}
code .c {
  color: #999988;
  font-style: italic;
}
code .err {
  color: #a61717;
  background-color: #e3d2d2;
}
code .k {
  color: #000000;
  font-weight: bold;
}
code .o {
  color: #000000;
  font-weight: bold;
}
code .cm {
  color: #999988;
  font-style: italic;
}
code .cp {
  color: #999999;
  font-weight: bold;
  font-style: italic;
}
code .c1 {
  color: #999988;
  font-style: italic;
}
code .cs {
  color: #999999;
  font-weight: bold;
  font-style: italic;
}
code .gd {
  color: #000000;
  background-color: #ffdddd;
}
code .ge {
  color: #000000;
  font-style: italic;
}
code .gr {
  color: #aa0000;
}
code .gh {
  color: #999999;
}
code .gi {
  color: #000000;
  background-color: #ddffdd;
}
code .go {
  color: #888888;
}
code .gp {
  color: #555555;
}
code .gs {
  font-weight: bold;
}
code .gu {
  color: #aaaaaa;
}
code .gt {
  color: #aa0000;
}
code .kc {
  color: #000000;
  font-weight: bold;
}
code .kd {
  color: #000000;
  font-weight: bold;
}
code .kn {
  color: #000000;
  font-weight: bold;
}
code .kp {
  color: #000000;
  font-weight: bold;
}
code .kr {
  color: #000000;
  font-weight: bold;
}
code .kt {
  color: #445588;
  font-weight: bold;
}
code .m {
  color: #009999;
}
code .s {
  color: #d01040;
}
code .na {
  color: #008080;
}
code .nb {
  color: #0086B3;
}
code .nc {
  color: #445588;
  font-weight: bold;
}
code .no {
  color: #008080;
}
code .nd {
  color: #3c5d5d;
  font-weight: bold;
}
code .ni {
  color: #800080;
}
code .ne {
  color: #990000;
  font-weight: bold;
}
code .nf {
  color: #990000;
  font-weight: bold;
}
code .nl {
  color: #990000;
  font-weight: bold;
}
code .nn {
  color: #555555;
}
code .nt {
  color: #000080;
}
code .nv {
  color: #008080;
}
code .ow {
  color: #000000;
  font-weight: bold;
}
code .w {
  color: #bbbbbb;
}
code .mf {
  color: #009999;
}
code .mh {
  color: #009999;
}
code .mi {
  color: #009999;
}
code .mo {
  color: #009999;
}
code .sb {
  color: #d01040;
}
code .sc {
  color: #d01040;
}
code .sd {
  color: #d01040;
}
code .s2 {
  color: #d01040;
}
code .se {
  color: #d01040;
}
code .sh {
  color: #d01040;
}
code .si {
  color: #d01040;
}
code .sx {
  color: #d01040;
}
code .sr {
  color: #009926;
}
code .s1 {
  color: #d01040;
}
code .ss {
  color: #990073;
}
code .bp {
  color: #999999;
}
code .vc {
  color: #008080;
}
code .vg {
  color: #008080;
}
code .vi {
  color: #008080;
}
code .il {
  color: #009999;
}

.h-scrollable-table {
  overflow-x: auto;
}

.table {
  border-spacing: 0;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.5em;
  background: rgba(0, 0, 0, 0.01);
}
.table th {
  height: 2em;
  color: #fff;
  background-color: #3737b4;
  border-color: #babae5;
  border-width: 0 1px 1px 0;
  border-style: solid;
  padding: 4px 10px;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
  font-weight: 600;
  font-size: 1.1em;
}
.table td {
  border-color: #babae5;
  border-width: 0 1px 1px 0;
  border-style: solid;
  padding: 7px 5px;
  vertical-align: middle;
  text-align: center;
}
.table th:first-child, .table td:first-child {
  border-left-width: 1px;
}
.table tr:first-child th, .table tr:first-child td {
  border-top-width: 1px;
}
.table tr:first-child th:first-child {
  border-top-left-radius: 6px;
}
.table tr:first-child th:last-child {
  border-top-right-radius: 6px;
}
.table tbody tr:last-child th:first-child {
  border-bottom-left-radius: 6px;
}

.striped tr:nth-child(even) {
  background: rgba(0, 0, 0, 0.03);
}

.mwe-math-mathml-inline {
  display: inline !important;
}

.mwe-math-mathml-display {
  display: block !important;
  margin-left: auto;
  margin-right: auto;
}

.mwe-math-mathml-a11y {
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.mwe-math-fallback-image-inline {
  display: inline-block;
  vertical-align: middle;
}

.mwe-math-fallback-image-display {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
}

@font-face {
  font-family: "Latin Modern Math";
  src: url("./libs/latinmodernmath/latinmodern-math.b7b56b02ecf6.eot"); /* IE9 Compat Modes */
  src: local("Latin Modern Math"), local("LatinModernMath-Regular"), url("./libs/latinmodernmath/latinmodern-math.b7b56b02ecf6.eot?#iefix") format("embedded-opentype"), url("./libs/latinmodernmath/latinmodern-math.bcba1a30b7bb.woff2") format("woff2"), url("./libs/latinmodernmath/latinmodern-math.b40f611758be.woff") format("woff"), url("./libs/latinmodernmath/latinmodern-math.91a52117e179.ttf") format("truetype"); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: normal;
}
math {
  font-family: "Latin Modern Math";
}

img.inline-math {
  display: inline;
}

.AB {
  background-color: #CCC;
  color: black;
}

.AC {
  background-color: #53f23f;
  color: green;
}

._AC {
  background-color: #DFFF00;
  color: green;
}

.WA {
  background-color: #CCC;
  color: #ef1b53;
}

.TLE, .MLE {
  background-color: #CCC;
  color: black;
}

.OLE, .IR, .RTE, .OTH {
  background-color: #FAB623;
  color: black;
}

.CE {
  background-color: #CCC;
  color: black;
}

.IE {
  background-color: red;
  color: black;
}

.QU, .G {
  background: white;
  color: black;
}

.blog-content {
  padding-right: 0em;
  -moz-box-flex: 73.5%;
       flex: 73.5%;
  vertical-align: top;
}
.blog-content .post {
  border-bottom: 2px solid #babae5;
  margin: 0.5em 1.4em;
}
.blog-content .post:first-child {
  margin-top: 1.1em;
}
.blog-content .post:last-child {
  border-bottom: none;
}
.blog-content .post .title {
  font-weight: 600;
  font-size: 1.7em;
}
.blog-content .post .title a {
  color: #5b80b9;
}
.blog-content .post .title a:hover {
  color: #0645ad;
}
.blog-content .post .title a:active {
  color: #0838c9;
}
.blog-content .post .comment-count-link {
  color: #3737b4;
}
.blog-content .post .comment-icon {
  padding: 0 0.2em 0 0.5em;
}

.blog-sidebar {
  -moz-box-flex: 26.5%;
       flex: 26.5%;
}

.blog-sidebox ul {
  list-style: none;
  padding-left: 1em;
  padding-right: 0.5em;
}
.blog-sidebox ul li {
  margin-bottom: 0.75em;
}
.blog-sidebox .contest {
  padding: 1.25em 0 1.5em 0;
  text-align: center;
  border-bottom: 1px solid #babae5;
}
.blog-sidebox .contest:last-child {
  border-bottom: none;
}
.blog-sidebox .sidebox-ongoing-contest {
  overflow-y: auto;
  max-height: 23em;
}

@media (min-width: 800px) {
  .blog-content, .blog-sidebar {
    display: block !important;
  }
  .blog-content {
    margin-right: 1em;
  }
  #mobile.tabs {
    display: none;
  }
  #blog-container {
    display: -moz-box;
    display: flex;
  }
}
#mobile.tabs {
  margin: 0 0 1em;
}

.rssatom {
  text-align: right;
  margin: 0.25em;
  display: block;
}
.rssatom span {
  width: 1em;
  height: 1em;
  padding: 0.1em;
  font-size: 0.8em;
  color: white;
  border-radius: 0.2em;
  display: inline-block;
  margin-right: 0.2em;
  border: 1px solid rgb(201, 90, 18);
  background: #fb9e39;
  background: -moz-linear-gradient(315deg, #e46d27 0, #fb9e39 47%, #e46d27 100%);
  background: linear-gradient(135deg, #e46d27 0, #fb9e39 47%, #e46d27 100%);
}
.rssatom span i {
  text-align: center;
  display: block;
}

.open-tickets .object {
  margin-left: 1em;
  font-style: italic;
}
.open-tickets .author {
  margin-left: 1em;
}

.no-clarifications-message {
  font-style: italic;
  text-align: center;
}

#problem-table td.problem, #problem-table td.category, #problem-table td.types, #problem-table th.problem, #problem-table th.category, #problem-table th.types {
  text-align: left;
  padding: 0 1rem;
}
#problem-table td.solved, #problem-table td.points, #problem-table td.ac-rate, #problem-table td.editorial, #problem-table td.users, #problem-table th.solved, #problem-table th.points, #problem-table th.ac-rate, #problem-table th.editorial, #problem-table th.users {
  padding: 0 10px;
}
#problem-table td.problem, #problem-table th.problem {
  width: 100%;
}
#problem-table th a {
  color: inherit;
}
#problem-table tr {
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
}
#problem-table tr:hover {
  background: rgba(0, 0, 0, 0.05);
}

#filter-form {
  vertical-align: top;
  margin-bottom: 0.5em;
  margin-top: 0.75em;
}
#filter-form a {
  margin-right: 5px;
  display: inline-block;
  padding: 3px 10px;
  vertical-align: middle;
}
#filter-form input {
  vertical-align: middle;
  margin-bottom: 0.5em;
}
#filter-form label {
  vertical-align: middle;
}
#filter-form .filter-form-group {
  margin-top: 5px;
}

#content-right.problems {
  max-width: unset;
  padding-top: 0;
}

#content-left.problems {
  -moz-box-flex: 3;
       flex: 3;
}

#search {
  width: 100%;
  height: 2.3em;
}

label[for=category], label[for=type] {
  padding-bottom: 0.25em;
  display: block;
}

#category {
  margin-top: 0.5em;
  width: 100%;
}

#types {
  width: 100%;
}

span.type-tag {
  white-space: nowrap;
}

ul.problem-list {
  list-style: none;
  padding-left: 1em;
  padding-right: 0.5em;
}
ul.problem-list li {
  margin-bottom: 0.5em;
}

.pi-name {
  font-weight: bold;
}

.pi-name:after {
  content: " ";
}

.authors-value, .judges-value {
  padding-left: 1.5em;
}

.lang-name:after {
  content: ": ";
}

.lang-limit {
  margin-left: 1.5em;
}

.solved-problem-color {
  color: #44AD41;
}

.unsolved-problem-color {
  color: #DE2121;
}

.attempted-problem-color {
  color: orange;
}

.has-editorial-color {
  color: #44AD41;
}

.no-editorial-color {
  color: #DE2121;
}

.submissions-left {
  color: #000;
  font-weight: 600;
  text-align: center;
  margin-top: 0.5em;
}

.no-submissions-left {
  color: red;
}

.organization-tags {
  padding-left: 0.75em;
  vertical-align: middle;
}

.organization-tag {
  box-shadow: inset 0 -0.1em 0 rgba(0, 0, 0, 0.12);
  padding: 0.15em 0.3em;
  border-radius: 0.15em;
  font-weight: 600;
  margin-right: 0.45em;
  position: relative;
  background-color: #babae5;
  -moz-transform: translateY(35%);
   -ms-transform: translateY(35%);
       transform: translateY(35%);
  display: inline-block;
}

.organization-tag a {
  color: #000;
}

.pdf-icon {
  position: relative;
  display: inline-block;
  font-size: 1.5em;
}
.pdf-icon .pdf-icon-logo {
  color: #d40e13;
}
.pdf-icon .pdf-icon-bar {
  height: 0.2em;
  display: block;
  position: absolute;
  top: 0.3em;
  background: #d40e13;
  width: 0.6em;
  margin-left: -0.15em;
}

.license {
  float: left;
  font-size: 0.85em;
}
.license a {
  color: #babae5;
  text-decoration: none;
}

.clarify {
  float: right;
}

#problem_submit {
  width: 100%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
#problem_submit .button {
  display: inline-block !important;
  padding: 6px 12px;
}
#problem_submit .submit-bar {
  float: right;
}
#problem_submit #submit-wrapper {
  margin-top: 0.7em;
}
#problem_submit #submit-wrapper #editor, #problem_submit #submit-wrapper #language {
  margin-top: 4px;
}
#problem_submit #submit-wrapper #id_language {
  width: 100%;
}

#language-select2.select2-dropdown--above {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: reverse;
       flex-direction: column-reverse;
}
#language-select2 .select2-results__message {
  white-space: nowrap;
}
#language-select2 .select2-results__option {
  color: #757575 !important;
  background: #fff !important;
}
#language-select2 .select2-results__option--highlighted {
  text-decoration: underline;
}
#language-select2 .select2-results__option[aria-selected=true] {
  font-weight: bold;
  color: #000 !important;
}
#language-select2 .select2-results__option {
  padding: 4px 0px;
}
#language-select2 .select2-results__options {
  overflow-y: visible !important;
}
#language-select2 .select2-results__option {
  -webkit-column-break-inside: avoid;
          break-inside: avoid-column;
}
#language-select2 .select2-results {
  -webkit-columns: 10 7em;
  -moz-columns: 10 7em;
  columns: 10 7em;
  padding-left: 1.5em;
  padding-top: 0.5em;
}
#language-select2 #result-version-info {
  border-bottom: 1px solid #babae5;
  margin: 0px 1em;
  color: #757575;
  font-weight: 600;
  padding: 0.2em 0;
  text-align: right;
}

@media (max-width: 550px) {
  #problem-table tr .users {
    display: none;
  }
}
@media (max-width: 450px) {
  #problem-table tr .ac-rate {
    display: none;
  }
}
@media (max-width: 350px) {
  #problem-table tr .category {
    display: none;
  }
}
#category, #types {
  visibility: hidden;
}

#filter-form .form-label {
  margin-top: 0.5em;
  font-style: italic;
}

#point-slider {
  margin: 30px 15px 10px;
  height: 10px;
}
#point-slider .noUi-handle {
  height: 20px;
  width: 16px;
  left: -8px;
}
#point-slider .noUi-handle:before, #point-slider .noUi-handle:after {
  top: 3px;
  height: 12px;
}
#point-slider .noUi-handle:before {
  left: 5px;
}
#point-slider .noUi-handle:after {
  left: 8px;
}
#point-slider .noUi-tooltip {
  height: 17px;
  line-height: 13px;
  padding: 0 3px;
  font-size: 13px;
}

.problem-vote-container {
  margin: 1em;
  min-width: 25em;
}

.problem-vote-form-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: end;
       align-items: flex-end;
  border-bottom: 1px solid #aaa;
}

.problem-vote-form-title {
  font-size: 2em;
  margin-right: 0.5em;
}

.problem-vote-date {
  font-style: italic;
}

.problem-vote-form-info {
  font-size: 1.2em;
  margin-right: 0.5em;
}

#problem-vote-form textarea {
  margin-top: 0.5em;
  width: 100%;
  font-size: 14px;
}

.problem-voting-form-error {
  font-size: 1.2em;
  color: red;
}

.problem-vote-submits {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-orient: horizontal;
  -moz-box-direction: reverse;
       flex-direction: row-reverse;
}

.problem-vote-stats-bar {
  font-size: 1.2em;
  font-weight: 500;
  margin: 0.6em 0;
  display: -moz-box;
  display: flex;
  justify-content: space-around;
}

.problem-vote-stats-bar span {
  margin: 0 0.6em;
}

form#ticket-form {
  display: block;
  margin: 0 auto;
  max-width: 800px;
  padding-top: 1em;
}
form#ticket-form #id_title {
  width: 100%;
}

#ticket-list .fa-check-circle-o {
  color: #44AD41;
}
#ticket-list .fa-exclamation-circle {
  color: #DE2121;
}

@media (min-width: 600px) {
  #ticket-list-container {
    display: -moz-box;
    display: flex;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
         flex-direction: row-reverse;
  }
  #ticket-list-container > main {
    -moz-box-flex: 1;
         flex: 1;
  }
  #ticket-list-container > aside {
    -moz-box-flex: 1;
         flex: 1;
    max-width: 200px;
    margin-left: 1em;
  }
  #ticket-list-container > aside > div {
    position: -webkit-sticky;
    position: sticky;
    top: 60px;
  }
}
div.ticket-title {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -webkit-column-gap: 0.3em;
     -moz-column-gap: 0.3em;
          column-gap: 0.3em;
}
div.ticket-title .fa-check-circle-o {
  color: #44AD41;
}
div.ticket-title .fa-exclamation-circle {
  color: #DE2121;
}
div.ticket-title small {
  color: #babae5;
  font-size: 0.9em;
}

.ticket-container {
  width: 100%;
  margin: 0 auto;
  display: -moz-box;
  display: flex;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
       flex-direction: row;
  flex-wrap: wrap-reverse;
  max-width: 1200px;
}

.ticket-sidebar {
  -moz-box-flex: 1;
       flex: 1;
  padding: 10px 0 0 10px;
  min-width: 150px;
  max-width: 200px;
}

.ticket-info {
  position: -webkit-sticky;
  position: sticky;
  top: 60px;
}

.ticket-messages {
  -moz-box-flex: 1;
       flex: 1;
}

.info-box {
  margin: 5px 0 10px;
  border: 1px #babae5 solid;
  border-radius: 5px;
}
.info-box a.edit-notes {
  float: right;
}
.info-box .fa {
  color: #babae5;
}

.info-title {
  padding: 2px 5px;
  font-weight: 600;
  border-bottom: 1px #babae5 solid;
  background: #eee;
  border-radius: 5px 5px 0 0;
}

.info-data {
  padding: 2px 5px;
}

.info-empty {
  color: #babae5;
  font-style: italic;
}

.close-ticket {
  display: block;
  width: 100%;
  background: -moz-linear-gradient(top, #4bad00 0%, #278811 100%);
  background: linear-gradient(to bottom, #4bad00 0%, #278811 100%);
  border-color: #24710e;
  font-weight: 600;
}
.close-ticket:hover {
  background: #24710e;
}

.open-ticket {
  display: block;
  width: 100%;
  background: -moz-linear-gradient(top, #ff130f, #b03d17);
  background: linear-gradient(to bottom, #ff130f, #b03d17);
  border-color: #853011;
  font-weight: 600;
}
.open-ticket:hover {
  background: #853011;
}

#ticket-notes .info-real :first-child {
  margin-top: 0;
}

#ticket-notes .info-real :last-child {
  margin-bottom: 0;
}

.ticket-message {
  display: -moz-box;
  display: flex;
  padding-top: 15px;
}
.ticket-message .info {
  width: 130px;
}
.ticket-message img.user-gravatar {
  margin: 0 auto;
}
.ticket-message .detail {
  border: 1px #babae5 solid;
  border-radius: 5px;
  -moz-box-flex: 1;
       flex: 1;
  min-width: 300px;
}
.ticket-message .header {
  background: #eee;
  border-bottom: 1px solid #babae5;
  border-radius: 5px 5px 0 0;
  padding: 2px 5px;
  text-align: right;
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-pack: justify;
       justify-content: space-between;
}
.ticket-message .operation {
  -moz-box-flex: 1;
       flex: auto;
}
.ticket-message .operation .fa {
  color: #babae5;
}
.ticket-message .content {
  padding: 7px;
}
.ticket-message .content > :first-child {
  margin-top: 0;
}
.ticket-message .content > :last-child {
  margin-bottom: 0;
}

.ticket-body {
  word-wrap: break-word;
  word-break: break-word;
}

.new-message .detail {
  padding: 8px 10px;
}

.new-message .submit, #edit-notes .submit {
  margin: 10px 0 0 auto;
}

.admin a, .admin {
  color: #000 !important;
  font-weight: bold !important;
}

.deleted-user, .deleted-user a {
  color: #999;
  font-weight: normal;
  -webkit-text-decoration: line-through #000;
          text-decoration: line-through #000;
}

svg.rate-box {
  width: 1.2em;
}
svg.rate-box circle {
  fill: none;
  stroke-width: 2px;
}
svg.rate-box.rate-none {
  visibility: hidden;
}
svg.rate-box.rate-primary0 circle {
  stroke: #fff;
}
svg.rate-box.rate-primary0 path {
  fill: #fff;
}
svg.rate-box.rate-newbie circle {
  stroke: #999;
}
svg.rate-box.rate-newbie path {
  fill: #999;
}
svg.rate-box.rate-amateur circle {
  stroke: #00a900;
}
svg.rate-box.rate-amateur path {
  fill: #00a900;
}
svg.rate-box.rate-expert circle {
  stroke: blue;
}
svg.rate-box.rate-expert path {
  fill: blue;
}
svg.rate-box.rate-candidate-master circle {
  stroke: purple;
}
svg.rate-box.rate-candidate-master path {
  fill: purple;
}
svg.rate-box.rate-master circle {
  stroke: #ffb100;
}
svg.rate-box.rate-master path {
  fill: #ffb100;
}
svg.rate-box.rate-grandmaster circle, svg.rate-box.rate-target circle {
  stroke: #e00;
}
svg.rate-box.rate-grandmaster path, svg.rate-box.rate-target path {
  fill: #e00;
}
svg.rate-box.rate-target circle:last-child {
  stroke: none;
  fill: #e00;
}

.rating {
  font-weight: bold;
}
.rating a {
  display: inline-block;
}

.rate-none, .rate-none a {
  color: #999;
  font-weight: normal;
}

.rate-newbie, .rate-newbie a {
  color: #999;
}

.rate-amateur, .rate-amateur a {
  color: #00a900;
}

.rate-expert, .rate-expert a {
  color: blue;
}

.rate-candidate-master, .rate-candidate-master a {
  color: purple;
}

.rate-master, .rate-master a {
  color: #ffb100;
}

.rate-grandmaster, .rate-grandmaster a, .rate-target, .rate-target a {
  color: #e00;
}

.rate-target a::first-letter {
  color: #700;
}

.rate-group {
  white-space: nowrap;
  display: inline-block;
  color: black;
}
.rate-group .rating {
  display: inline-block;
  vertical-align: middle;
}
.rate-group .rate-box {
  margin-right: 0.2em;
  vertical-align: middle;
}

.alumnus a, .alumnus {
  color: #009acd !important;
  font-weight: bold !important;
}

.president a, .president {
  color: #bc0000 !important;
  font-weight: bold !important;
}

td.user-name {
  padding-left: 2em;
  text-align: left;
}

tr:target {
  background: rgba(8, 56, 201, 0.2);
}

#search-handle {
  width: 100%;
  height: 2.3em;
}

.user-search-image, .user-search-name {
  vertical-align: middle;
}

.user-search-name {
  padding-left: 0.5em;
}

.users-table th.rank, .users-table th.points, .users-table th.problems, .users-table th.username {
  white-space: nowrap;
}
.users-table th.rank, .users-table th.rate {
  padding-left: 5px;
  padding-right: 5px;
}
.users-table th.rate, .users-table td.rate {
  border-right: none;
  text-align: left;
}
.users-table th.username {
  width: 100%;
}
.users-table tr {
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
}
.users-table tr:hover {
  background: rgba(0, 0, 0, 0.05);
}
.users-table tr.highlight {
  background: rgba(8, 56, 201, 0.2);
}
.users-table th a {
  color: #fff;
}
.users-table th a:link, .users-table th a:visited {
  color: #fff;
}

#search-form {
  display: inline-block;
  vertical-align: top;
  width: 225px;
}
#search-form .select2-selection__arrow {
  display: none;
}
#search-form .select2-selection__rendered {
  cursor: text;
}

.user-problem-group h3 {
  font-weight: 600;
  font-size: 1.25em;
  margin-bottom: -10px;
  max-height: 20%;
  line-height: 2.5em;
}

.hide-solved-problems {
  text-align: right;
  overflow: hidden;
}

.hide-solved-problems > span {
  position: relative;
  display: inline-block;
}

.hide-solved-problems > span:before {
  content: "";
  position: absolute;
  top: 50%;
  width: 100000px;
  height: 1px;
  background: #babae5;
  right: 100%;
  margin-right: 5px;
}

.user-info-page {
  display: -moz-box;
  display: flex;
}

.user-sidebar {
  width: 150px;
  padding-left: 15px;
}

img.user-gravatar {
  display: block;
  border-radius: 6px;
  background-color: white;
}

.user-content {
  -moz-box-flex: 1;
       flex: 1 1;
  overflow: hidden;
  word-wrap: break-word;
}

@media not all and (min-width: 600px) {
  .user-info-page {
    display: block;
  }
  .user-sidebar {
    margin: 0 auto;
  }
  .user-content {
    overflow: visible;
  }
}
.pp-table .pp {
  font-weight: 600;
  font-size: 1.4em;
}
.pp-table .pp-weighted {
  color: #babae5;
}
.pp-table div.sub-pp {
  text-align: right;
  min-width: unset;
  width: unset;
  border-left: none;
}

#pp-load-link-wrapper {
  text-align: center;
  border: 1px solid #babae5;
}

#pp-load-more-link {
  display: block;
  padding: 0.5em 0;
}

.pp-breakdown-header {
  font-weight: 600;
  font-size: 1.25em;
  margin-bottom: 0.2em;
}

#rating-chart {
  height: 400px;
  margin-top: 1em;
}

#rating-tooltip {
  display: none;
  position: absolute;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 3px;
  border-radius: 3px;
  -moz-transition: all 0.1s ease;
  transition: all 0.1s ease;
  pointer-events: none;
  -moz-transform: translate(-50%, 0);
   -ms-transform: translate(-50%, 0);
       transform: translate(-50%, 0);
}
#rating-tooltip .rate-group {
  color: white;
}

#submission-activity #submission-activity-actions {
  text-align: center;
}
#submission-activity #submission-activity-actions #prev-year-action, #submission-activity #submission-activity-actions #next-year-action {
  font-size: 1.75em;
}
#submission-activity #submission-activity-actions #year {
  font-size: 1.25em;
  color: #3737b4;
}
#submission-activity #submission-activity-display {
  border: 1px solid #babae5;
  border-radius: 6px;
}
#submission-activity #submission-activity-display .info-bar {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
}
#submission-activity #submission-activity-display .info-bar .info-table {
  width: 15%;
  min-width: 130px;
}
#submission-activity #submission-activity-display .info-bar .info-table .info-table-text {
  width: 8%;
}
#submission-activity #submission-activity-display .info-text {
  font-size: 0.75em;
  line-height: 1;
  font-weight: 100;
  color: #3737b4;
}
#submission-activity #submission-activity-display #submission-total-count {
  align-self: center;
  padding-left: 8%;
  font-size: 0.85em;
}
@media (max-width: 1000px) {
  #submission-activity #submission-activity-display #submission-total-count {
    padding-left: 5px;
  }
}
#submission-activity #submission-activity-display table {
  width: 100%;
  padding: 5px;
}
#submission-activity #submission-activity-display table th.submission-date-col {
  width: 8%;
}
@media (max-width: 1000px) {
  #submission-activity #submission-activity-display table th.submission-date-col {
    display: none;
  }
}
#submission-activity #submission-activity-display table td {
  border-radius: 20%;
}
#submission-activity #submission-activity-display table td div {
  margin-top: 100%;
}
#submission-activity #submission-activity-display table td.activity-label {
  position: relative;
  white-space: nowrap;
}
#submission-activity #submission-activity-display table td.activity-blank {
  background-color: #fff;
}
#submission-activity #submission-activity-display table td.activity-0 {
  background-color: #ddd;
}
#submission-activity #submission-activity-display table td.activity-1 {
  background-color: #9be9a8;
}
#submission-activity #submission-activity-display table td.activity-2 {
  background-color: #40c463;
}
#submission-activity #submission-activity-display table td.activity-3 {
  background-color: #2f9c4c;
}
#submission-activity #submission-activity-display table td.activity-4 {
  background-color: #216e39;
}

.content-description {
  line-height: 1.5em;
  font-size: 1em;
  font-family: "Segoe UI", "Lucida Grande", Arial, sans-serif;
}
.content-description p {
  margin: 1em 0 !important;
  padding: 0 !important;
}
.content-description img {
  max-width: 100%;
  height: auto;
}
.content-description h1, .content-description h2, .content-description h3, .content-description h4, .content-description h5, .content-description h6 {
  font-weight: normal;
  color: #1F3EB1;
  margin-bottom: 0.75em;
  padding: 0;
  background: 0;
}
.content-description h3, .content-description h4, .content-description h5, .content-description h6 {
  font-weight: bold;
}
.content-description h1 {
  font-size: 2.5em;
}
.content-description h2 {
  font-size: 2em;
}
.content-description h3 {
  font-size: 1.6em;
  margin: 0;
  padding: 0;
}
.content-description h4 {
  font-size: 1.4em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  line-height: 1.225;
  padding-bottom: 0.3em;
  padding-top: 0.5em;
}
.content-description h5 {
  font-size: 1.15em;
  margin-top: 0;
}
.content-description h6 {
  font-size: 0.9em;
}
.content-description blockquote {
  color: #babae5;
  margin: 0;
  padding-left: 1.5em;
  border-left: 0.5em #eee solid;
}
.content-description hr {
  display: block;
  height: 0;
  border: 0;
  font-style: italic;
  border-bottom: 1px solid #babae5;
  margin: 25px 0 20px 0;
  padding: 0;
}
.content-description pre, .content-description code, .content-description kbd, .content-description samp, .content-description span.code {
  color: #000;
  page-break-inside: avoid;
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
  font-size: 0.98em;
}
.content-description code, .content-description span.code {
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace !important;
  margin: 0 2px;
  padding: 0 5px;
  border: 1px solid #babae5;
  background-color: #f8f8f8;
  border-radius: 4px;
  font-size: 0.95em;
  color: #3737b4;
}
.content-description pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  margin: 1.5em 0 1.5em 0;
  padding: 1em;
  border: 1px solid #babae5;
  background-color: #f8f8f8;
  color: #000;
  border-radius: 4px;
}
.content-description pre code, .content-description pre div.code {
  border: 0;
  line-height: 1em;
  margin: 0;
  padding: 0;
  background: transparent;
  font-size: 1em;
  color: #000;
}
.content-description b, .content-description strong {
  font-weight: bold;
}
.content-description dfn {
  font-style: italic;
}
.content-description ins {
  background: #ff9;
  color: #000;
  text-decoration: none;
}
.content-description mark {
  background: #ff0;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
.content-description sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
.content-description sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}
.content-description sub {
  bottom: -0.25em;
}
.content-description ul, .content-description ol {
  padding: 0 0 0 2em;
}
.content-description li p:last-child {
  margin: 0;
}
.content-description dd {
  margin: 0 0 0 2em;
}
.content-description img {
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: middle;
}
.content-description td {
  vertical-align: top;
}

.display-math {
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 700px) {
  #common-content {
    display: -moz-box;
    display: flex;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
         flex-direction: row-reverse;
  }
  #content-left {
    -moz-box-flex: 5;
         flex: 5;
    width: 100%;
  }
  #content-left.split-common-content {
    width: 70%;
  }
  #content-left .content-description {
    width: 100%;
  }
  #content-right {
    -moz-box-flex: 1;
         flex: 1;
    max-width: 12.5em;
    padding-left: 1.5em;
    padding-top: 1em;
  }
  #content-right .info-float {
    float: none;
    padding: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    width: 100%;
  }
}
@media not all and (min-width: 700px) {
  #content-right .info-float {
    float: none;
    width: 100% !important;
    position: static !important;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
}
a.view-pdf {
  padding-top: 0.6em;
  display: inline-block;
}

.problem-title {
  display: -moz-box;
  display: flex;
}
.problem-title .spacer {
  display: inline-block;
  -moz-box-flex: 1;
       flex: 1 1 1px;
}

.info-float .fa {
  color: #000;
  padding-right: 0.2em;
}

#problem-types .toggled, #allowed-langs .toggled {
  margin-left: 1.3em;
}

form .martor-preview {
  line-height: 1.5em;
  font-size: 1em;
  font-family: "Segoe UI", "Lucida Grande", Arial, sans-serif;
  min-height: 400px;
}
form .martor-preview p {
  margin: 1em 0 !important;
  padding: 0 !important;
}
form .martor-preview img {
  max-width: 100%;
  height: auto;
}
form .martor-preview h1, form .martor-preview h2, form .martor-preview h3, form .martor-preview h4, form .martor-preview h5, form .martor-preview h6 {
  font-weight: normal;
  color: #1F3EB1;
  margin-bottom: 0.75em;
  padding: 0;
  background: 0;
}
form .martor-preview h3, form .martor-preview h4, form .martor-preview h5, form .martor-preview h6 {
  font-weight: bold;
}
form .martor-preview h1 {
  font-size: 2.5em;
}
form .martor-preview h2 {
  font-size: 2em;
}
form .martor-preview h3 {
  font-size: 1.6em;
  margin: 0;
  padding: 0;
}
form .martor-preview h4 {
  font-size: 1.4em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  line-height: 1.225;
  padding-bottom: 0.3em;
  padding-top: 0.5em;
}
form .martor-preview h5 {
  font-size: 1.15em;
  margin-top: 0;
}
form .martor-preview h6 {
  font-size: 0.9em;
}
form .martor-preview blockquote {
  color: #babae5;
  margin: 0;
  padding-left: 1.5em;
  border-left: 0.5em #eee solid;
}
form .martor-preview hr {
  display: block;
  height: 0;
  border: 0;
  font-style: italic;
  border-bottom: 1px solid #babae5;
  margin: 25px 0 20px 0;
  padding: 0;
}
form .martor-preview pre, form .martor-preview code, form .martor-preview kbd, form .martor-preview samp, form .martor-preview span.code {
  color: #000;
  page-break-inside: avoid;
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
  font-size: 0.98em;
}
form .martor-preview code, form .martor-preview span.code {
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace !important;
  margin: 0 2px;
  padding: 0 5px;
  border: 1px solid #babae5;
  background-color: #f8f8f8;
  border-radius: 4px;
  font-size: 0.95em;
  color: #3737b4;
}
form .martor-preview pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  margin: 1.5em 0 1.5em 0;
  padding: 1em;
  border: 1px solid #babae5;
  background-color: #f8f8f8;
  color: #000;
  border-radius: 4px;
}
form .martor-preview pre code, form .martor-preview pre div.code {
  border: 0;
  line-height: 1em;
  margin: 0;
  padding: 0;
  background: transparent;
  font-size: 1em;
  color: #000;
}
form .martor-preview b, form .martor-preview strong {
  font-weight: bold;
}
form .martor-preview dfn {
  font-style: italic;
}
form .martor-preview ins {
  background: #ff9;
  color: #000;
  text-decoration: none;
}
form .martor-preview mark {
  background: #ff0;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
form .martor-preview sub {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
form .martor-preview sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}
form .martor-preview sub {
  bottom: -0.25em;
}
form .martor-preview ul, form .martor-preview ol {
  padding: 0 0 0 2em;
}
form .martor-preview li p:last-child {
  margin: 0;
}
form .martor-preview dd {
  margin: 0 0 0 2em;
}
form .martor-preview img {
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: middle;
}
form .martor-preview td {
  vertical-align: top;
}
form .martor-preview ul li {
  list-style: unset !important;
}
form .martor-preview ul, form .martor-preview ol {
  margin-left: 0 !important;
}
form .martor-preview h5 {
  text-transform: none !important;
}

.main-martor-fullscreen {
  z-index: 99999 !important;
}

.section-martor {
  /* Hacks for dark mode only */
  /* Scroll bar */
}
.section-martor div[data-tab^=editor-tab-] {
  padding: 0;
}
.section-martor .markdown-selector.markdown-emoji {
  display: none !important;
}
.section-martor .tab-martor-menu a.item {
  font-size: 0.8rem;
}
.section-martor .martor-toolbar {
  -moz-box-flex: 0 !important;
       flex: 0 1 auto !important;
  overflow-x: auto;
  overflow-y: hidden;
}
.section-martor .martor-field {
  height: 400px;
}
.section-martor .ui.tabular.menu + .attached:not(.top).segment,
.section-martor .ui.tabular.menu + .attached:not(.top).segment + .attached:not(.top).segment {
  width: auto !important;
}
.section-martor .resizable .resizable-b {
  background: #e8e8e8 !important;
}
.section-martor .ui.basic.inverted.buttons .button, .section-martor .ui.basic.inverted.button {
  box-shadow: 0px 0px 0px 0px #fff inset !important;
}
.section-martor .ui.attached.inverted.menu {
  border-bottom: 2px solid #aaa !important;
}
.section-martor ::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  background-color: #f8f8f8;
}
.section-martor ::-webkit-scrollbar {
  height: 6px;
  width: 6px;
  background-color: #f8f8f8;
}
.section-martor ::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #555;
}

.ace_scrollbar-v {
  cursor: ns-resize;
}

.main-martor {
  overflow: hidden;
}

.martor-toolbar {
  padding: 0 0.85714286em !important;
  padding-bottom: 4px !important;
}
.martor-toolbar .ui.icon .markdown-image-upload {
  position: relative;
  overflow: hidden;
}
.martor-toolbar .ui.icon .markdown-image-upload input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  min-width: 100%;
  min-height: 100%;
  font-size: 25px;
  padding: 0;
  padding-left: 35px;
  text-align: right;
  filter: alpha(opacity=0);
  opacity: 0;
  outline: none;
  cursor: inherit;
  display: block;
}

.emoji-loader-init {
  min-height: 200px !important;
}

.insert-emoji {
  cursor: pointer;
}

/* Full Screen Mode */
.main-martor-fullscreen {
  background: #fff;
  position: fixed;
  z-index: 999;
  max-height: 100%;
  height: 100%;
  width: 100%;
  margin: 0;
  left: 0;
  top: 0;
}
.main-martor-fullscreen .fields.martor-toolbar {
  border-bottom: 1px solid #eee;
  margin: 0;
}
.main-martor-fullscreen .section-martor {
  height: 90%;
  position: relative;
}

.marked-emoji {
  max-width: 20px;
}

.martor {
  height: 500px;
  max-height: 500px;
}

.martor-field {
  width: 100%;
  height: 250px;
  min-height: 100px;
}

form .martor-preview-stale {
  background: -moz-repeating-linear-gradient(135deg, #fff, #fff 10px, #f8f8f8 10px, #f8f8f8 20px) !important;
  background: repeating-linear-gradient(-45deg, #fff, #fff 10px, #f8f8f8 10px, #f8f8f8 20px) !important;
}

.icon.expand-editor {
  position: absolute;
  bottom: 0.8em;
  right: 0;
}

.no-border {
  border: none !important;
}

/* Live Preview */
form .enable-living .martor-preview {
  display: block !important;
}
form .enable-living .tab-martor-menu a.item {
  display: none !important;
}

/* Django Admin */
.submit-row a {
  -moz-box-sizing: content-box;
       box-sizing: content-box;
}

body.overflow {
  overflow: hidden !important;
}

.button, input[type=submit], input[type=button], .submit-row input, a.button {
  padding: 5px 15px;
}

.social i {
  display: inline;
  font-size: 1.9em;
}

.facebook-this, .tweet-this {
  display: inline;
}

.tweet-this i {
  color: #55ACEE;
}

.facebook-this i {
  color: #133783;
}

.social {
  font-size: 1.3em;
  float: right;
}

.button, button, input[type=submit] {
  color: white !important;
  text-decoration: none !important;
  cursor: pointer;
  vertical-align: middle;
  white-space: nowrap;
  font-weight: 400;
  line-height: 1.4;
  background: rgb(51, 122, 183) none repeat scroll 0 0%/auto padding-box border-box;
  background: -moz-linear-gradient(top, #4547c8 0, #293095 100%) repeat-x;
  background: linear-gradient(to bottom, #4547c8 0, #293095 100%) repeat-x;
  border-radius: 4px;
  padding: 6px 12px;
  display: block;
  border: 1px solid #333ba8;
  text-align: center;
  font-size: 14px;
}
.button:hover, button:hover, input[type=submit]:hover {
  background: #3038a8;
}
.button:active, button:active, input[type=submit]:active {
  border-color: #4547c8;
  background: #3038a8;
}
.button.full, button.full, input[type=submit].full {
  padding: 6px 0;
}
.button.disabled, button.disabled, input[type=submit].disabled {
  background: -moz-linear-gradient(top, darkgray 0, gray 100%) repeat-x !important;
  background: linear-gradient(to bottom, darkgray 0, gray 100%) repeat-x !important;
  border-color: grey !important;
  cursor: not-allowed;
}

.inline-button {
  display: inline;
  vertical-align: top;
  padding: 3px 6px;
}

input[type=text], input[type=password], input[type=email], input[type=number] {
  padding: 4px 8px;
  color: #3737b4;
  background: #fff none;
  border: 1px solid #babae5;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
  -moz-transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  font-size: 14px;
}
input[type=text]:hover, input[type=password]:hover, input[type=email]:hover, input[type=number]:hover {
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px rgba(82, 168, 236, 0.6);
}
input[type=text]:focus, input[type=password]:focus, input[type=email]:focus, input[type=number]:focus {
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  outline: 0;
}
input[type=number] {
  padding: 2px 0 2px 5px;
}
input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  vertical-align: middle;
  border: 1px solid #babae5;
  background: #fff;
  border-radius: 2px;
  width: 0.95em;
  height: 0.95em;
  cursor: pointer;
}
input[type=checkbox]:checked {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
  accent-color: #7070f4;
}

textarea {
  padding: 4px 8px;
  color: #3737b4;
  background: #fff none;
  border: 1px solid #babae5;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
  -moz-transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

textarea:hover {
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 4px rgba(82, 168, 236, 0.6);
}

textarea:focus {
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  outline: 0;
}

.btn-clipboard {
  top: 0;
  right: 0;
  display: block;
  font-size: 12px;
  color: #babae5;
  cursor: pointer;
  background-color: #fff;
  border: 1px solid #babae5;
  border-radius: 0 4px;
  position: absolute;
  padding: 5px 8px;
}

.copy-clipboard {
  position: relative;
  margin-top: 1.5em;
}

.ul_tab_a_active, .tabs > ul > li.active > a:focus, .tabs > ul > li.active > span:focus, .tabs > ul > li.active > a:hover, .tabs > ul > li.active > span:hover, .tabs > ul > li.active > a, .tabs > ul > li.active > span {
  color: #000;
  background: #fff;
  cursor: default;
  border: 1px solid #babae5;
  border-bottom-color: #fff;
  -moz-border-image: none;
    -o-border-image: none;
       border-image: none;
}

.tabs {
  border-bottom: 1px solid #babae5;
  margin: 0 0 8px;
  width: 100%;
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  flex-wrap: wrap;
}
.tabs .tab .tab-icon {
  padding-right: 0.3em;
  color: #babae5;
}
.tabs .tab a, .tabs .tab span {
  border-top-width: 3px !important;
}
.tabs .tab.active a, .tabs .tab.active span {
  border-top-color: #7070f4 !important;
}
.tabs .tab.active .tab-icon {
  color: #000;
}
.tabs h2 {
  color: #3737b4;
}
.tabs > ul {
  margin: 0;
  margin-bottom: -1px;
  padding: 0;
  list-style: outside none none;
  display: -moz-box;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
}
.tabs > ul > li {
  position: relative;
  display: block;
}
.tabs > ul > li > a, .tabs > ul > li > span {
  margin-right: 2px;
  line-height: 1.42857;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
  position: relative;
  display: block;
  padding: 10px 15px;
  color: #555;
  text-decoration: none;
  white-space: nowrap;
}

ul.pagination a:hover {
  background: rgba(55, 55, 180, 0.55);
}

ul.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 0;
}
ul.pagination > li {
  display: inline;
}
ul.pagination > li:first-child > a, ul.pagination > li:first-child > span {
  margin-left: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
ul.pagination > li:last-child > a, ul.pagination > li:last-child > span {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
ul.pagination > li > a, ul.pagination > li > span {
  position: relative;
  float: left;
  padding: 4px 12px;
  line-height: 1.42857;
  text-decoration: none;
  color: #fff;
  background-color: #3737b4;
  border: 1px solid #babae5;
  margin-left: -1px;
}
ul.pagination > .disabled-page > a, ul.pagination > .disabled-page > span {
  color: #babae5;
}
ul.pagination > .active-page > a, ul.pagination > .active-page > span {
  z-index: 2;
  color: #FFF;
  background-color: #7070f4;
  border-color: transparent;
  cursor: default;
}

.top-pagination-bar {
  margin: 11px 0 7px;
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  flex-wrap: wrap;
}

.bottom-pagination-bar {
  margin-top: 10px;
}

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}

.alert-info {
  color: #368;
  background-color: #def;
  border-color: #bdf;
}

.alert-warning {
  color: #863;
  background-color: #ffd;
  border-color: #feb;
}

.alert-danger {
  color: #944;
  background-color: #edd;
  border-color: #dbb;
}

.alert-dismissable, .alert-dismissible {
  padding-right: 35px;
}

.alert-dismissable .close, .alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.close {
  float: right;
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
  color: #000;
  filter: alpha(opacity=20);
  opacity: 0.2;
}

a.close {
  text-decoration: none !important;
  font-size: 18px !important;
  line-height: 1;
}
a.close:hover {
  color: #000;
}

.close:focus, .close:hover {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  filter: alpha(opacity=50);
  opacity: 0.5;
}

.badge {
  min-width: 10px;
  padding: 0 7px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #e84848;
  border-radius: 10px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

.form-submit-group {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin-top: 0.8em;
  padding-top: 0.5em;
  text-align: right;
}

.sidebox h3 {
  margin: 0 -5px;
  background: #3737b4;
  border-radius: 4px 4px 0 0;
  color: #fff;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 7px;
  font-size: 1.3em;
}

.sidebox h3 .fa {
  color: #fff;
  float: right;
  margin: 0.2em 0.4em 0 0;
}

.sidebox-content {
  border: 1px solid #babae5;
  border-top: none;
  margin: 0 -5px;
  padding: 1px 0.5em 3px;
}
.sidebox-content.sidebox-table {
  border: none;
  padding: 0;
}
.sidebox-content.sidebox-table .table {
  margin: 0 !important;
}

.sidebox {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  padding: 0 5px !important;
  padding-bottom: 1.5em !important;
}

.ws-closed {
  position: -webkit-sticky;
  position: sticky;
  top: 42px;
  background: #ae0000;
  border-radius: 5px 5px 0 0;
  display: none;
}

.ws-closed a {
  display: block;
  padding: 7px 0;
  text-align: center;
  color: white;
  font-weight: 600;
}

.semibold {
  font-weight: 600;
}

.messages {
  list-style-type: none;
  padding: 0;
}
.messages li {
  padding: 1em 1.5em;
  margin-bottom: 1em;
  border: 1px solid transparent;
  border-radius: 5px;
}
.messages li.debug {
  color: #3737b4;
  background-color: #eee;
  border-color: #babae5;
}
.messages li.info {
  color: #368;
  background-color: #def;
  border-color: #bdf;
}
.messages li.success {
  color: #173;
  background-color: #ded;
  border-color: #adb;
}
.messages li.warning {
  color: #863;
  background-color: #ffd;
  border-color: #feb;
}
.messages li.error {
  color: #944;
  background-color: #edd;
  border-color: #dbb;
}

details {
  border: 1px solid #babae5;
  background: #f8f8f8;
  padding: 5px 10px;
  border-radius: 4px;
}

.featherlight {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
  background: #333;
}
.featherlight:last-of-type {
  background: rgba(0, 0, 0, 0.8);
}
.featherlight:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.featherlight .featherlight-content {
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  overflow: auto;
  padding: 10px 15px;
  border: 1px solid #babae5;
  border-radius: 10px;
  margin-left: 5%;
  margin-right: 5%;
  max-height: 85%;
  background: #fff;
  cursor: auto;
  white-space: normal;
}
@media (max-width: 1024px) {
  .featherlight .featherlight-content {
    padding: 10px;
    margin-left: 0;
    margin-right: 0;
    max-height: 98%;
  }
}
.featherlight .featherlight-inner {
  display: block;
}
.featherlight script.featherlight-inner, .featherlight link.featherlight-inner, .featherlight style.featherlight-inner {
  display: none;
}
.featherlight .featherlight-close-icon {
  position: absolute;
  z-index: 9999;
  top: 0;
  right: 0;
  line-height: 25px;
  width: 25px;
  cursor: pointer;
  text-align: center;
  background: rgba(255, 255, 255, 0.5);
  color: #000;
  border: none;
  padding: 0;
}
.featherlight .featherlight-close-icon::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.featherlight .featherlight-image {
  width: 100%;
}
.featherlight iframe {
  border: none;
}

.featherlight-iframe .featherlight-content {
  border-bottom: 0;
  padding: 0;
  -webkit-overflow-scrolling: touch;
}

.comment-score {
  font-weight: bold;
  text-align: center;
}

a.upvote-link, a.downvote-link {
  color: #000;
}
a.voted {
  text-shadow: 0 0 4px #000, 0 0 9px blue;
}

.no-comments-message {
  margin: 10px 0 15px 2.75em;
}

.comment-header-space {
  height: 20px;
}

.comment-lock {
  margin: 0 0 5px;
}

.comments.top-level-comments {
  padding: 0;
  margin: 0 0 5px;
}

.comment-spacer {
  -moz-box-flex: 1;
       flex: 1;
}

.comment-edits:not(:empty) {
  padding-right: 2px;
  color: #3737b4;
}

.comment-operation {
  -moz-box-flex: 1;
       flex: auto;
}
.comment-operation .fa {
  color: #3737b4;
}
.comment-operation a + a {
  padding-left: 2px;
}

.form-area.comment-submit {
  padding-left: 15px;
  padding-right: 15px;
  width: 100%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

.comment-edit-form {
  min-width: 60em;
}

.comment {
  list-style: none none;
  border-radius: 4px;
  margin: 0 0 5px;
}
.comment:before {
  display: block;
  content: " ";
  margin-top: -50px;
  height: 50px;
  visibility: hidden;
}

.reply-comment {
  margin: 0 0 5px;
}

.comment-body {
  word-wrap: break-word;
  word-break: break-word;
}

.previous-revision, .next-revision {
  color: #3737b4;
}

.new-comments .comment-display {
  display: -moz-box;
  display: flex;
  padding-left: 1em;
  padding-top: 0.5em !important;
  border: 1px solid #babae5;
  background: #f8f8f8;
  border-radius: 4px;
}
.new-comments .comment .detail {
  margin: 0px 15px 0px;
  width: 100%;
}
.new-comments .comment .detail .header {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-pack: justify;
       justify-content: space-between;
  padding: 2px 0px;
  font-weight: normal;
  border-bottom: 1px #babae5 solid;
  color: #babae5;
  text-align: right;
}
.new-comments .comment:target > .comment-display {
  border: 1px solid #7070f4;
  border-left: 10px solid #7070f4;
  padding-left: 5px;
}
.new-comments .comment-edits {
  padding-right: 0.75em;
}
.new-comments .header i {
  color: #babae5 !important;
}
.new-comments .info {
  padding-top: 0.4em;
  display: -moz-box;
  display: flex;
}
.new-comments .gravatar-mobile {
  display: none;
}
.new-comments .gravatar-main {
  display: unset;
}
.new-comments .vote {
  margin-right: 1em;
  height: 75px;
  padding-top: 0.4em;
}
@media (max-width: 760px) {
  .new-comments img.user-gravatar {
    display: inline-block;
    border-radius: 2px;
  }
  .new-comments .gravatar-mobile {
    display: unset;
  }
  .new-comments .gravatar-main {
    display: none;
  }
  .new-comments .vote {
    margin-right: 0em;
  }
}

.bad-comment {
  opacity: 0.3;
}
.bad-comment:hover {
  opacity: 1;
  /* This is necessary to prevent random flickering */
  -moz-transform: translatez(0);
   -ms-transform: translatez(0);
       transform: translatez(0);
}

.info-float {
  position: -webkit-sticky;
  position: sticky;
  top: 60px;
  width: 20%;
}

#submissions-table {
  background: rgba(0, 0, 0, 0.01);
}

.submissions-status-table {
  border-spacing: 0;
}

.submission-row {
  display: -moz-box;
  display: flex;
  border-top: #babae5 1px solid;
  border-left: #babae5 1px solid;
  border-right: #babae5 1px solid;
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
}
.submission-row:hover {
  background: #eee;
}
.submission-row:not(:empty) ~ .submission-row {
  border-top: none;
}
.submission-row > div {
  padding: 7px 5px;
  vertical-align: middle;
  border-bottom: #babae5 1px solid;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-pack: center;
       justify-content: center;
}
.submission-row .sub-result {
  min-width: 80px;
  width: 80px;
  text-align: center;
  border-bottom-color: #fff;
  border-right: #babae5 1px solid;
}
.submission-row .sub-result .state {
  font-size: 0.7em;
  font-weight: bold;
  padding-top: 0.5em;
}
.submission-row .sub-result .score {
  font-size: 1.3em;
  color: #000;
}
.submission-row .sub-result .score .grading-spinner {
  color: #000;
}
.submission-row .sub-main {
  display: -moz-box;
  display: flex;
  -moz-box-flex: 1;
       flex: 1;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
       flex-direction: row;
  place-items: center;
  -moz-box-pack: justify;
       justify-content: space-between;
  padding-left: 20px;
}
.submission-row .sub-main .sub-info {
  -moz-box-flex: 1;
       flex: 1;
  word-break: break-word;
}
.submission-row .sub-main .sub-info .name {
  font-weight: 700;
  font-size: 1.2em;
}
.submission-row .sub-main .sub-testcase {
  color: #babae5;
  white-space: nowrap;
  padding-right: 5px;
}
.submission-row .sub-main .sub-prop a {
  white-space: nowrap;
}
.submission-row .sub-usage {
  min-width: 70px;
  width: 70px;
  white-space: nowrap;
  text-align: center;
  border-left: #babae5 1px solid;
}
.submission-row .sub-usage .time {
  font-weight: bold;
}

.sub-prop .fa {
  display: none;
}

.sub-prop .grey-label {
  color: #babae5;
  font-style: italic;
}

.sub-prop .grey-icon {
  color: #babae5;
}

label[for=language], label[for=status] {
  padding-bottom: 0.25em;
  display: block;
}

#language {
  margin-top: 0.5em;
  width: 100%;
}

#status {
  width: 100%;
}

#statistics-table tr:not(:first-child) td {
  border-top: 1px solid white !important;
}

#statistics-table tr:not(:last-child) td:not(:last-child) {
  border-right: 1px solid white;
}

#content-right.submission {
  max-width: 100%;
  padding-top: 0;
}

@media (max-width: 700px) {
  .sub-main {
    padding-left: 10px !important;
    -moz-box-orient: vertical !important;
    -moz-box-direction: normal !important;
         flex-direction: column !important;
    place-items: flex-start !important;
  }
  .sub-prop .label {
    display: none;
  }
  .sub-prop .fa {
    display: inline-block;
  }
  #content-right.submission {
    display: none;
  }
}
.submission-contest {
  color: #3737b4;
}

.source-ln {
  color: #babae5;
  border-right: 1px solid #babae5;
  padding-right: 5px;
  text-align: right;
}
.source-ln a {
  color: #babae5;
  display: block;
}
.source-ln a:hover {
  text-decoration: underline;
}
.source-ln a::before {
  display: block;
  content: " ";
  margin-top: -50px;
  height: 50px;
  visibility: hidden;
}

.source-code pre, .source-ln pre {
  margin: 0;
  padding: 0;
  white-space: pre;
}

.source-code {
  padding-left: 15px;
}

.source-wrap {
  overflow-x: auto;
}

.statistics-table .status {
  font-weight: bold;
  text-align: left;
}
.statistics-table .count {
  color: black;
}

#test-cases .toggle .fa {
  margin-left: -1.28571em;
}
#test-cases .batch-cases {
  margin: 0;
  padding-left: 1em;
  padding-bottom: 3px;
  padding-top: 3px;
  display: inline-block;
}
#test-cases .batch-cases .case-row td b {
  font-weight: 500;
}
#test-cases .case-row td:nth-child(3) {
  padding-right: 0;
  text-align: right;
}
#test-cases .case-row td:nth-child(3) span {
  float: right;
}
#test-cases .case-row td:nth-child(4) {
  text-align: right;
}
#test-cases .case-info {
  margin: 0;
  padding-left: 1em;
  padding-bottom: 3px;
  padding-top: 3px;
  border: 1px solid #2980b9;
  border-left-width: 0.5em;
  border-radius: 4px;
  color: #3737b4;
}
#test-cases .case-output {
  margin: 0;
  margin-right: 1em;
}
#test-cases table td {
  margin: 0;
  padding: 0 5px 0 0;
}
#test-cases .toggle {
  font-weight: normal;
}
#test-cases .case-feedback {
  vertical-align: top;
}
#test-cases td.case-output + td.case-ext-feedback {
  width: 50%;
}
#test-cases .case-output {
  word-wrap: anywhere;
}

.case-AC {
  color: green;
  font-weight: bold;
}

.case-_AC {
  color: #BBCC00;
  font-weight: bold;
}

.case-WA {
  color: red;
  font-weight: bold;
}

.case-TLE, .case-SC {
  color: gray;
  font-weight: bold;
}

.case-MLE, .case-OLE, .case-RTE, .case-IR {
  color: orange;
  font-weight: bold;
}

.case-bad {
  text-decoration: underline;
}

.half-hr {
  float: left;
  width: 30%;
}

.source-wrap .line {
  position: relative;
}
.source-wrap .highlighter {
  position: absolute;
  width: 9999px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.source-wrap a:active .line .highlighter {
  background: rgba(255, 212, 0, 0.48);
}

.submission-info {
  text-align: right;
  float: right;
}
.submission-info .submission-date {
  color: #babae5;
}

#contest-calendar {
  border-collapse: collapse;
  width: 100%;
}
#contest-calendar th {
  border: 1px solid #babae5;
  background: #f8f8f8;
}
#contest-calendar td {
  height: 110px;
  width: 170px;
  vertical-align: top;
  border: 1px solid #babae5;
  -moz-transition-duration: 0.2s;
       transition-duration: 0.2s;
}
#contest-calendar td .num {
  text-align: right;
  font-weight: bold;
  display: block;
  border-bottom: 1px dashed #babae5;
  padding-right: 0.2em;
  margin-bottom: 0.4em;
}
#contest-calendar td ul {
  font-size: 0.75em;
  padding: 0;
  margin: 0;
}
#contest-calendar td ul li {
  margin: 0 0 0.2em 17px;
}
#contest-calendar td ul li i.fa {
  color: #0838c9;
}
#contest-calendar td ul li a {
  color: #3737b4;
}
#contest-calendar td ul li a:hover {
  text-decoration: underline;
}
#contest-calendar td:hover {
  background: rgba(6, 69, 173, 0.2);
}
#contest-calendar .noday {
  background: #eee;
}
#contest-calendar .today {
  background: rgba(8, 56, 201, 0.2);
}

#banner {
  border-bottom: 1px solid #babae5;
  padding-bottom: 1em;
  color: #3737b4;
  font-size: 14px;
}
#banner a.date {
  display: block;
  text-decoration: none;
  text-align: center;
  line-height: 1.3;
  font-size: 2.3em;
  padding-bottom: 0.15em;
  color: #5b80b9;
}
#banner a.date:hover {
  color: #0645ad;
}
#banner a.date:active {
  color: #0838c9;
}
#banner #time {
  text-align: center;
  display: block;
}
#banner div#details ul {
  margin-bottom: 0;
  list-style: none;
}
#banner div#details ul p {
  margin: 0;
}

.contest-list td {
  vertical-align: middle !important;
}
.contest-list td:nth-child(2) {
  min-width: 4em;
}
.contest-list td:nth-child(3) {
  min-width: 6em;
}
.contest-list tbody tr {
  height: 4em;
}
.contest-list .time-left {
  text-align: left;
  color: #babae5;
  padding-top: 0.5em;
}
.contest-list .contest-tags {
  padding-left: 0.75em;
  vertical-align: top;
}
.contest-list .participate-button {
  display: inline-block;
  width: 90px;
}
.contest-list .contest-block {
  text-align: left;
  padding: 0.5em 0.5em 0.5em 1em;
}
.contest-list a.contest-sort-link {
  color: #fff;
}

.contest-tag {
  box-shadow: inset 0 -0.1em 0 rgba(0, 0, 0, 0.12);
  padding: 0.15em 0.3em;
  border-radius: 0.15em;
  font-weight: 600;
  margin-right: 0.45em;
  position: relative;
}

.contest-list-title {
  font-size: 18px;
  font-weight: 600;
}

form.contest-join-pseudotab {
  display: inline;
  padding: 6px 8px !important;
  line-height: 1.7em;
  margin-left: 0.5em;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
form.contest-join-pseudotab input {
  display: inline;
  border: none;
  padding: 0;
  background: none;
  font-weight: 600;
}

.contest-participation-operation {
  float: right;
  padding: 0 5px;
}
.contest-participation-operation .fa {
  color: #3737b4;
}
.contest-participation-operation a + a {
  padding-left: 1px;
}

#ranking-table {
  /* Make problem table headers green on hover */
}
#ranking-table .user-name {
  min-width: 20em;
  position: relative;
}
#ranking-table .userinfo a, #ranking-table .user-name a, #ranking-table .user-name form {
  display: inline-block !important;
}
#ranking-table .rating-column {
  min-width: 3em;
}
#ranking-table td {
  height: 2.5em;
}
#ranking-table td a:hover {
  text-decoration: underline;
}
#ranking-table a {
  display: block;
}
#ranking-table th a:hover {
  color: #0F0;
}
#ranking-table .rank {
  min-width: 2.5em;
}
#ranking-table .points {
  min-width: 4em;
}
#ranking-table .disqualified {
  background-color: #ffa8a8 !important;
}
#ranking-table .full-score, #ranking-table .full-score a {
  font-weight: bold;
  color: green;
}
#ranking-table .partial-score, #ranking-table .partial-score a {
  color: green;
}
#ranking-table .failed-score, #ranking-table .failed-score a {
  font-weight: bold;
  color: red;
}
#ranking-table .pretest-full-score, #ranking-table .pretest-full-score a {
  font-weight: bold;
  color: #2980b9;
}
#ranking-table .pretest-partial-score, #ranking-table .pretest-partial-score a {
  color: #2980b9;
}
#ranking-table .pretest-failed-score, #ranking-table .pretest-failed-score a {
  font-weight: bold;
  color: red;
}
#ranking-table .user-points, #ranking-table .user-points a {
  font-weight: bold;
  color: #000;
}
#ranking-table .solving-time {
  color: #babae5;
  font-weight: normal;
  font-size: 0.75em;
  padding-bottom: -0.75em;
}
#ranking-table .point-denominator {
  border-top: 1px solid #babae5;
  font-size: 0.7em;
}
#ranking-table .start-time {
  display: none;
}
#ranking-table .organization-column {
  display: none;
  text-align: left !important;
  border-right: none !important;
}
#ranking-table .organization-column a {
  color: #babae5;
  font-weight: 600;
}

#judge-versions .version {
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
}
#judge-versions .version-blank {
  background: #eee;
}
#judge-versions .version-latest {
  background: rgba(170, 255, 51, 0.8);
  color: black;
}
#judge-versions .version-outdated {
  background: rgba(255, 0, 0, 0.8);
  color: white;
}
#judge-versions tr:first-child {
  position: -webkit-sticky;
  position: sticky;
  top: 43px;
}

.django-as-table {
  text-align: left;
}
.django-as-table th {
  vertical-align: top;
  padding-top: 4px;
}

.centered-form {
  max-width: 800px;
  margin: auto;
}
.centered-form .submit-bar {
  float: right;
}

@media (min-width: 700px) {
  .xs-br {
    display: none;
  }
}
.auth-flow-form {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-flow: column wrap;
  -moz-box-pack: center;
       justify-content: center;
  align-content: center;
  padding-top: 5%;
}

.grayed {
  color: #3737b4;
}

/* Hack to make dropdown background follow theming */
.select2-dropdown {
  background-color: #fff !important;
  border: 1px solid #aaa !important;
  color: #000 !important;
}

.select2-container--dmoj .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
}
.select2-container--dmoj .select2-selection--single .select2-selection__rendered {
  color: #3737b4;
  line-height: 28px;
}
.select2-container--dmoj .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
}
.select2-container--dmoj .select2-selection--single .select2-selection__placeholder {
  color: #babae5;
}
.select2-container--dmoj .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}
.select2-container--dmoj .select2-selection--single .select2-selection__arrow b {
  border-color: #babae5 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}
.select2-container--dmoj[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}
.select2-container--dmoj[dir=rtl] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}
.select2-container--dmoj.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}
.select2-container--dmoj.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}
.select2-container--dmoj.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #babae5 transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--dmoj .select2-selection--multiple {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__rendered {
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0 5px;
  width: 100%;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__rendered li {
  list-style: none;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__placeholder {
  color: #babae5;
  margin-top: 5px;
  float: left;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-top: 5px;
  margin-right: 10px;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__choice {
  background-color: #eee;
  color: #000;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__choice__remove {
  color: #babae5;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px;
}
.select2-container--dmoj .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #3737b4;
}
.select2-container--dmoj[dir=rtl] .select2-selection--multiple .select2-selection__choice, .select2-container--dmoj[dir=rtl] .select2-selection--multiple .select2-selection__placeholder, .select2-container--dmoj[dir=rtl] .select2-selection--multiple .select2-search--inline {
  float: right;
}
.select2-container--dmoj[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}
.select2-container--dmoj[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}
.select2-container--dmoj.select2-container--focus .select2-selection--multiple {
  border: solid #000 1px;
  outline: 0;
}
.select2-container--dmoj.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}
.select2-container--dmoj.select2-container--disabled .select2-selection__choice__remove {
  display: none;
}
.select2-container--dmoj.select2-container--open.select2-container--above .select2-selection--single, .select2-container--dmoj.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-container--dmoj.select2-container--open.select2-container--below .select2-selection--single, .select2-container--dmoj.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--dmoj .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  background-color: #fff;
  color: #000;
}
.select2-container--dmoj .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  color: #000;
  -webkit-appearance: textfield;
}
.select2-container--dmoj .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
  color: #000;
}
.select2-container--dmoj .select2-results__option[role=group] {
  padding: 0;
}
.select2-container--dmoj .select2-results__option[aria-disabled=true] {
  color: #babae5;
}
.select2-container--dmoj .select2-results__option[aria-selected=true] {
  background-color: #babae5;
}
.select2-container--dmoj .select2-results__option .select2-results__option {
  padding-left: 1em;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}
.select2-container--dmoj .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}
.select2-container--dmoj .select2-results__option--highlighted[aria-selected] {
  background-color: #7070f4;
  color: white;
}
.select2-container--dmoj .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.django-ace-widget {
  display: inline-block;
  position: relative;
  /* Scroll bar */
}
.django-ace-widget > div {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.django-ace-widget.loading {
  display: none;
}
.django-ace-widget ::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  background-color: #f8f8f8;
}
.django-ace-widget ::-webkit-scrollbar {
  height: 6px;
  width: 6px;
  background-color: #f8f8f8;
}
.django-ace-widget ::-webkit-scrollbar-thumb {
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #555;
}

.django-ace-toolbar {
  font-size: 12px;
  text-align: left;
  color: #555;
  text-shadow: 0 1px 0 #fff;
  border-bottom: 1px solid #babae5;
  background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), #eee);
  background-image: linear-gradient(rgba(0, 0, 0, 0), #eee);
  background-repeat: repeat-x;
  clear: both;
  overflow: hidden;
}

.django-ace-max_min {
  float: right;
  padding: 5px;
  background: url("./ace/img/expand.277a72142b6f.png") no-repeat 5px 5px;
  display: block;
  height: 16px;
  width: 16px;
}

.django-ace-editor {
  position: relative;
}

.django-ace-editor-fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1000;
}
.django-ace-editor-fullscreen .django-ace-max_min {
  background-image: url("./ace/img/contract.d591b6b7f25c.png");
}

