@charset "UTF-8";
@-ms-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: #9c3706;
}

img {
  max-width: 100%;
}

* {
  -webkit-tap-highlight-color: transparent;
}

.full {
  width: 100% !important;
}

.action-btn {
  background: -moz-linear-gradient(315deg, #9c3706 0%, rgb(195.2888888889, 68.8518518519, 7.5111111111) 100%);
  background: linear-gradient(135deg, #9c3706 0%, rgb(195.2888888889, 68.8518518519, 7.5111111111) 100%);
  color: white;
  border: none;
  border-radius: 10px;
  padding: 0.8em 1.4em;
  font-size: 1em;
  font-weight: 600;
  text-decoration: none;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.6em;
  box-shadow: 0 3px 10px rgba(156, 55, 6, 0.25);
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.action-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(left, transparent, rgba(255, 255, 255, 0.15), transparent);
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
  -moz-transition: left 0.5s ease;
  transition: left 0.5s ease;
}
.action-btn:hover {
  background: -moz-linear-gradient(315deg, rgb(180.5555555556, 63.6574074074, 6.9444444444) 0%, rgb(214.9333333333, 75.7777777778, 8.2666666667) 100%);
  background: linear-gradient(135deg, rgb(180.5555555556, 63.6574074074, 6.9444444444) 0%, rgb(214.9333333333, 75.7777777778, 8.2666666667) 100%);
  color: white;
  text-decoration: none;
  -moz-transform: translateY(-1px);
       transform: translateY(-1px);
  box-shadow: 0 5px 15px rgba(156, 55, 6, 0.35);
}
.action-btn:hover::before {
  left: 100%;
}
.action-btn:active {
  -moz-transform: translateY(0);
       transform: translateY(0);
  box-shadow: 0 3px 8px rgba(156, 55, 6, 0.3);
}
.action-btn i.fa {
  font-size: 1em;
  opacity: 0.9;
}
.action-btn:disabled, .action-btn.disabled {
  background: -moz-linear-gradient(315deg, darkgray 0%, gray 100%) !important;
  background: linear-gradient(135deg, darkgray 0%, gray 100%) !important;
  color: #f1efef !important;
  cursor: not-allowed;
  -moz-transform: none !important;
       transform: none !important;
  box-shadow: 0 2px 6px rgba(128, 128, 128, 0.25) !important;
}
.action-btn:disabled::before, .action-btn.disabled::before {
  display: none;
}
.action-btn:disabled:hover, .action-btn.disabled:hover {
  background: -moz-linear-gradient(315deg, darkgray 0%, gray 100%) !important;
  background: linear-gradient(135deg, darkgray 0%, gray 100%) !important;
  -moz-transform: none !important;
       transform: none !important;
  box-shadow: 0 2px 6px rgba(128, 128, 128, 0.25) !important;
}
.action-btn:disabled:active, .action-btn.disabled:active {
  -moz-transform: none !important;
       transform: none !important;
  box-shadow: 0 2px 6px rgba(128, 128, 128, 0.25) !important;
}

.action-btn.background-green {
  background: -moz-linear-gradient(315deg, #28a745 0%, rgb(47.884057971, 199.915942029, 82.6) 100%);
  background: linear-gradient(135deg, #28a745 0%, rgb(47.884057971, 199.915942029, 82.6) 100%);
  box-shadow: 0 3px 10px rgba(40, 167, 69, 0.25);
}
.action-btn.background-green:hover {
  background: -moz-linear-gradient(315deg, rgb(44.9275362319, 187.5724637681, 77.5) 0%, rgb(59.9246376812, 208.2753623188, 93.8) 100%);
  background: linear-gradient(135deg, rgb(44.9275362319, 187.5724637681, 77.5) 0%, rgb(59.9246376812, 208.2753623188, 93.8) 100%);
  box-shadow: 0 5px 15px rgba(40, 167, 69, 0.35);
}
.action-btn.background-green:active {
  box-shadow: 0 3px 8px rgba(40, 167, 69, 0.3);
}

.action-btn.background-red {
  background: -moz-linear-gradient(315deg, #ae0000 0%, rgb(214.8, 0, 0) 100%);
  background: linear-gradient(135deg, #ae0000 0%, rgb(214.8, 0, 0) 100%);
  box-shadow: 0 3px 10px rgba(174, 0, 0, 0.25);
}
.action-btn.background-red:hover {
  background: -moz-linear-gradient(315deg, rgb(199.5, 0, 0) 0%, rgb(235.2, 0, 0) 100%);
  background: linear-gradient(135deg, rgb(199.5, 0, 0) 0%, rgb(235.2, 0, 0) 100%);
  box-shadow: 0 5px 15px rgba(174, 0, 0, 0.35);
}
.action-btn.background-red:active {
  box-shadow: 0 3px 8px rgba(174, 0, 0, 0.3);
}

.action-btn.background-blue {
  background: -moz-linear-gradient(315deg, #007bff 0%, rgb(40.8, 144.12, 255) 100%);
  background: linear-gradient(135deg, #007bff 0%, rgb(40.8, 144.12, 255) 100%);
  box-shadow: 0 3px 10px rgba(0, 123, 255, 0.25);
}
.action-btn.background-blue:hover {
  background: -moz-linear-gradient(315deg, rgb(25.5, 136.2, 255) 0%, rgb(61.2, 154.68, 255) 100%);
  background: linear-gradient(135deg, rgb(25.5, 136.2, 255) 0%, rgb(61.2, 154.68, 255) 100%);
  box-shadow: 0 5px 15px rgba(0, 123, 255, 0.35);
}
.action-btn.background-blue:active {
  box-shadow: 0 3px 8px rgba(0, 123, 255, 0.3);
}

.action-btn.background-gray {
  background: -moz-linear-gradient(315deg, #6c757d 0%, rgb(128.2832618026, 137.4068669528, 145.5167381974) 100%);
  background: linear-gradient(135deg, #6c757d 0%, rgb(128.2832618026, 137.4068669528, 145.5167381974) 100%);
  box-shadow: 0 3px 10px rgba(108, 117, 125, 0.25);
}
.action-btn.background-gray:hover {
  background: -moz-linear-gradient(315deg, rgb(120.0751072961, 129.7896995708, 138.4248927039) 0%, rgb(139.2274678112, 147.5630901288, 154.9725321888) 100%);
  background: linear-gradient(135deg, rgb(120.0751072961, 129.7896995708, 138.4248927039) 0%, rgb(139.2274678112, 147.5630901288, 154.9725321888) 100%);
  box-shadow: 0 5px 15px rgba(108, 117, 125, 0.35);
}
.action-btn.background-gray:active {
  box-shadow: 0 3px 8px rgba(108, 117, 125, 0.3);
}

.action-btn.background-warning {
  background: -moz-linear-gradient(315deg, #ffc107 0%, rgb(255, 203.2, 47.8) 100%);
  background: linear-gradient(135deg, #ffc107 0%, rgb(255, 203.2, 47.8) 100%);
  box-shadow: 0 3px 10px rgba(255, 193, 7, 0.25);
  color: #212529;
}
.action-btn.background-warning:hover {
  background: -moz-linear-gradient(315deg, rgb(255, 199.375, 32.5) 0%, rgb(255, 208.3, 68.2) 100%);
  background: linear-gradient(135deg, rgb(255, 199.375, 32.5) 0%, rgb(255, 208.3, 68.2) 100%);
  box-shadow: 0 5px 15px rgba(255, 193, 7, 0.35);
  color: #212529;
}
.action-btn.background-warning:active {
  box-shadow: 0 3px 8px rgba(255, 193, 7, 0.3);
}

.action-btn.background-theme {
  background: -moz-linear-gradient(315deg, #9c3706 0%, rgb(195.2888888889, 68.8518518519, 7.5111111111) 100%);
  background: linear-gradient(135deg, #9c3706 0%, rgb(195.2888888889, 68.8518518519, 7.5111111111) 100%);
  box-shadow: 0 3px 10px rgba(156, 55, 6, 0.25);
}
.action-btn.background-theme:hover {
  background: -moz-linear-gradient(315deg, rgb(180.5555555556, 63.6574074074, 6.9444444444) 0%, rgb(214.9333333333, 75.7777777778, 8.2666666667) 100%);
  background: linear-gradient(135deg, rgb(180.5555555556, 63.6574074074, 6.9444444444) 0%, rgb(214.9333333333, 75.7777777778, 8.2666666667) 100%);
  box-shadow: 0 5px 15px rgba(156, 55, 6, 0.35);
}
.action-btn.background-theme:active {
  box-shadow: 0 3px 8px rgba(156, 55, 6, 0.3);
}

.action-btn.small {
  padding: 0.5em 1em;
  font-size: 0.9em;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(156, 55, 6, 0.25);
}
.action-btn.small:hover {
  box-shadow: 0 3px 10px rgba(156, 55, 6, 0.35);
}
.action-btn.small:active {
  box-shadow: 0 2px 5px rgba(156, 55, 6, 0.3);
}

.action-btn.large {
  padding: 1em 1.8em;
  font-size: 1.1em;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(156, 55, 6, 0.25);
}
.action-btn.large:hover {
  box-shadow: 0 6px 20px rgba(156, 55, 6, 0.35);
}
.action-btn.large:active {
  box-shadow: 0 4px 10px rgba(156, 55, 6, 0.3);
}

.action-btn.outlined {
  background: transparent;
  border: 2px solid #9c3706;
  color: #9c3706;
  box-shadow: none;
}
.action-btn.outlined::before {
  display: none;
}
.action-btn.outlined:hover {
  background: rgba(156, 55, 6, 0.08);
  box-shadow: none;
  -moz-transform: none;
       transform: none;
  color: #9c3706;
}
.action-btn.outlined:active {
  background: rgba(156, 55, 6, 0.15);
  -moz-transform: scale(0.98);
       transform: scale(0.98);
  box-shadow: none;
}

@media (max-width: 799px) {
  .action-btn {
    font-size: 0.9em;
    padding: 0.7em 1.2em;
    border-radius: 8px;
  }
  .action-btn:hover {
    -moz-transform: none;
         transform: none;
    box-shadow: 0 4px 12px rgba(156, 55, 6, 0.3);
  }
  .action-btn::before {
    display: none;
  }
  .action-btn.small {
    font-size: 0.85em;
    padding: 0.6em 1em;
  }
  .action-btn.large {
    font-size: 1em;
    padding: 0.8em 1.4em;
  }
}
.submit-btn,
input[type=submit].submit-btn {
  background: #28a745 !important;
  border: 1px solid #28a745 !important;
  color: white !important;
  border-radius: 40px !important;
  padding: 12px 18px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  box-shadow: 0px 10px 20px -6px rgba(0, 0, 0, 0.12) !important;
  overflow: hidden !important;
  position: relative !important;
  -moz-transition: all 0.3s ease !important;
  transition: all 0.3s ease !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-block !important;
  -moz-box-align: center !important;
       align-items: center !important;
  gap: normal !important;
}
.submit-btn::before,
input[type=submit].submit-btn::before {
  display: none !important;
}
.submit-btn span,
input[type=submit].submit-btn span {
  font-size: 15px !important;
  margin-left: -25px !important;
  -moz-transition: all 0.3s ease !important;
  transition: all 0.3s ease !important;
}
.submit-btn .icon,
input[type=submit].submit-btn .icon {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 50px !important;
  bottom: 0 !important;
  background: #fff !important;
}
.submit-btn .icon i,
input[type=submit].submit-btn .icon i {
  font-size: 21px !important;
  color: #28a745 !important;
}
.submit-btn .icon.icon-round,
input[type=submit].submit-btn .icon.icon-round {
  border-radius: 50% !important;
}
.submit-btn:hover, .submit-btn:active, .submit-btn:focus,
input[type=submit].submit-btn:hover,
input[type=submit].submit-btn:active,
input[type=submit].submit-btn:focus {
  outline: none !important;
  background: #218838 !important;
  border-color: #218838 !important;
  color: white !important;
  text-decoration: none !important;
  -moz-transform: none !important;
       transform: none !important;
  box-shadow: 0px 12px 25px -6px rgba(0, 0, 0, 0.18) !important;
}
.submit-btn:hover span, .submit-btn:active span, .submit-btn:focus span,
input[type=submit].submit-btn:hover span,
input[type=submit].submit-btn:active span,
input[type=submit].submit-btn:focus span {
  margin-left: -12px !important;
}
.submit-btn.btn-disabled,
input[type=submit].submit-btn.btn-disabled {
  background: gray !important;
  border-color: gray !important;
  color: #fff !important;
  cursor: not-allowed !important;
}
.submit-btn.btn-disabled:hover, .submit-btn.btn-disabled:active, .submit-btn.btn-disabled:focus,
input[type=submit].submit-btn.btn-disabled:hover,
input[type=submit].submit-btn.btn-disabled:active,
input[type=submit].submit-btn.btn-disabled:focus {
  background: gray !important;
  border-color: gray !important;
  color: #fff !important;
}
.submit-btn.btn-disabled:hover span, .submit-btn.btn-disabled:active span, .submit-btn.btn-disabled:focus span,
input[type=submit].submit-btn.btn-disabled:hover span,
input[type=submit].submit-btn.btn-disabled:active span,
input[type=submit].submit-btn.btn-disabled:focus span {
  margin-left: -25px !important;
}

table.sortable thead {
  background-color: #ededed;
  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 #ccc;
  padding: 0;
}

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

th {
  vertical-align: middle;
}

.form-area {
  display: inline-block;
  background: #fafafa;
  padding: 5px 10px 10px 15px;
  border-radius: 0.5em;
  border: 1px solid #ccc;
}

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

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

body {
  position: relative;
  min-height: 100%;
  margin: 0 auto;
  font-size: 14px;
  line-height: 1.231;
  background: #fafafa;
  font-family: "Noto Sans", Arial, "Lucida Grande", sans-serif;
  color: #000;
  height: 100%;
  overflow-x: hidden;
}

.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: 1.6em;
  border-radius: 0.5em;
  padding: 0;
  margin: 0;
}

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

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

header {
  background: #111;
  color: #aaa;
  text-align: left;
  display: block;
  height: 60px;
  margin-top: -10px;
  padding: 10px 10px 10px 5%;
}

#user-links {
  display: -moz-box;
  display: flex;
  text-align: center;
  padding: 4px;
  margin-right: 1em;
  gap: 5px;
}
#user-links:hover {
  color: black;
  border-radius: 2px;
  border: 0.5px solid black;
  cursor: pointer;
  padding: 3.5px;
}

#nav-shadow {
  height: 2px;
  background: -moz-linear-gradient(lightgray, transparent);
  background: linear-gradient(lightgray, transparent);
}

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

#navigation {
  position: fixed;
  top: 0;
  left: 0;
  right: 10px;
  height: 50px;
}

nav {
  position: relative;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  width: 100%;
  margin: 0 auto;
  z-index: 500;
  text-align: left;
}
nav ul {
  margin: 0 0 0 -5px !important;
  padding: 0 0 0 1%;
  text-align: left;
  display: inline;
  list-style: none;
  background: transparent;
}
nav ul li {
  display: inline-block;
  color: #FFF;
  text-transform: uppercase;
  position: relative;
}
nav ul li.home-nav-element {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  margin-right: 1em;
}
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: -moz-box;
  display: flex;
  height: 100%;
  -moz-box-align: center;
       align-items: center;
  gap: 2px;
  text-decoration: none;
  color: black;
  font-weight: bold;
  font-size: initial;
}
nav ul li a:link,
nav ul li button:link {
  color: black;
}
nav ul li a:hover,
nav ul li button:hover {
  color: black;
  background: transparent;
  margin: 0;
}
nav ul li a.active,
nav ul li button.active {
  color: #9c3706;
  background: transparent;
  border-bottom: 3px solid #9c3706;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
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: white;
  margin: 0 !important;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
}
nav ul li ul li:hover {
  background: lightgray;
}
nav ul li ul li {
  display: block;
}
nav ul li ul li a {
  color: black !important;
}
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 black;
  white-space: nowrap;
}
nav ul li button {
  background: none;
  text-align: left;
  border: none;
  width: 100%;
  border-radius: 0;
  height: auto !important;
}
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;
}

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

#content {
  margin: 50px auto 1em auto;
  padding-top: 1em;
  width: 90%;
  height: 100%;
  min-height: 25em;
  display: block;
}
#content .title {
  color: #393630;
}

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

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: 0.5em;
  z-index: 100;
  bottom: -4px;
  right: -4px;
  padding: 5px 6px 6px 5px;
}
#announcement a {
  color: orange;
}

.time {
  color: #555;
}

.toggle {
  font-weight: bold;
  cursor: pointer;
}
.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);
       transform: rotate(90deg);
}

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

#navicon {
  display: none;
}

#nav-placeholder {
  height: 47px;
  background: white;
  border-right: 1px solid #ccc;
  border-left: 1px solid #ccc;
}

#contest-info {
  font-size: 1.25em;
  z-index: 100000;
  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-info-main {
  border-left: 5px dotted white;
  background: rgba(0, 0, 0, 0.77);
  padding: 10px 12px;
  color: white;
  display: inline;
}

#contest-info-toggle {
  display: inline;
  padding: 10px 12px;
  border-radius: 0 10px 10px 0;
  cursor: pointer;
}

.contest-info-toggle-mode-on {
  background: rgba(0, 205, 0, 0.57);
}

.contest-info-toggle-mode-on:hover {
  background: rgba(0, 205, 0, 0.97);
}

.contest-info-toggle-mode-off {
  background: rgba(255, 0, 0, 0.57);
}

.contest-info-toggle-mode-off:hover {
  background: rgba(255, 0, 0, 0.97);
}

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

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

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

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

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

@media (max-width: 1498px) {
  #page-container {
    border-left: none;
    border-right: none;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}
#notification {
  color: lightsteelblue;
}

#notification:hover {
  color: darkgray;
}

#chat-icon {
  color: darkgreen;
}

#chat-icon:hover {
  color: #9c3706;
}

#nav-lang-icon {
  color: blue;
  cursor: pointer;
}

#nav-lang-icon:hover {
  color: darkblue;
}

#nav-darkmode-icon {
  cursor: pointer;
}
#nav-darkmode-icon:hover {
  color: gray;
}

.dropdown {
  display: none;
  background-color: white;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  padding: 4px 0;
  z-index: 1;
  border-radius: 5px;
}
.dropdown a {
  display: block;
  text-decoration: none;
  -moz-transition: background-color 0.3s;
  transition: background-color 0.3s;
  color: black;
}

.dropdown-item {
  font-size: 16px;
  padding: 6px 40px 6px 15px;
  cursor: pointer;
  color: black;
  font-weight: 600;
  border-top: 1px solid #ccc;
}
.dropdown-item i {
  width: 1.5em;
}

.dropdown-item:hover {
  color: #9c3706;
  background-color: #f8f8f2;
}

.popper-arrow,
.popper-arrow::before {
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
}

.popper-arrow {
  visibility: hidden;
}

.popper-arrow::before {
  visibility: visible;
  content: "";
  -moz-transform: rotate(45deg);
       transform: rotate(45deg);
}

.popper-arrow {
  top: -4px;
}

.unread_boxes {
  background-color: red;
  color: white;
  border-radius: 50%;
  padding: 1px 4px;
  margin-left: -12px;
  font-size: x-small;
  font-family: monospace;
}

.sub-lang {
  color: black;
  font-size: x-small;
  margin-left: -12px;
  font-family: monospace;
  text-transform: uppercase;
}

.featherlight {
  z-index: 1001 !important;
}

.notification-open #notification {
  color: green !important;
}

.title-row {
  color: #393630;
  display: inline;
}

.gray {
  color: gray;
}

.white {
  color: white;
}

.black {
  color: black;
}

.red {
  color: red;
}

.green {
  color: green;
}

.grayed {
  color: #666;
}

.darkcyan {
  color: darkcyan;
}

.peru {
  color: peru;
}

.blue {
  color: blue;
}

.background-white {
  background-color: white;
}

.background-d6e8f7 {
  background-color: #d6e8f7;
}

.background-bisque {
  background-color: bisque;
}

.background-royalblue {
  background-color: royalblue !important;
}

.background-green {
  background-color: #28a745 !important;
}

.background-red {
  background-color: #dc3545 !important;
}

.background-footer {
  color: #808080;
}

.view-next-page {
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;
  margin-bottom: 1em;
}

#loading-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  background-color: #9c3706;
  width: 0;
  z-index: 9999;
}

.nav-right-text {
  font-weight: normal;
  font-size: small;
  text-align: center;
}

.anon {
  display: -moz-box;
  display: flex;
  gap: 1em;
  padding-right: 1em;
}
.anon a {
  color: black;
}

.colored-text {
  color: black;
}

.bold-text {
  font-weight: bold;
}

.non-italics {
  font-style: normal;
}

.margin-label {
  margin-bottom: 2.5px;
  padding-bottom: 0.25em;
  display: block;
}

:-ms-input-placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #9c3706;
  opacity: 1;
  /* Firefox */
  text-align: center;
}

::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #9c3706;
  opacity: 1;
  /* Firefox */
  text-align: center;
}

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #9c3706;
  text-align: center;
}

input:-ms-input-placeholder {
  color: #9c3706;
  text-align: center;
}

input::placeholder {
  color: #9c3706;
  text-align: center;
}

::-webkit-input-placeholder {
  color: #9c3706;
  text-align: center;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #9c3706;
  text-align: center;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #9c3706;
  text-align: center;
}

.nav-fa-icon i {
  margin-right: 0.1em;
  color: #000;
  font-size: 21px;
}

.nav-fa-icon-active i {
  color: #9c3706;
  font-size: 22.5px;
  margin-right: 0.1em;
}

.featherlight-content {
  max-height: 80% !important;
  min-width: 60%;
  border-radius: 10px;
}

.left-sidebar-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  border-radius: 0.5em;
  color: black;
}
.left-sidebar-item .sidebar-icon {
  font-size: large;
  display: inline-block;
}
.left-sidebar-item .sidebar-icon i {
  width: 1.4em;
}

.left-sidebar-item:hover {
  background-color: #e3e3e3;
  cursor: pointer;
  color: black;
}

.left-sidebar-item.active:hover {
  background-color: #9c3706;
  color: white;
}

.sidebar-icon {
  color: black;
}

.left-sidebar-header {
  text-align: center;
  padding-bottom: 1em;
  border-bottom: 1px solid black;
  color: black;
  border-radius: 0;
}

@media (max-width: 799px) {
  .blog-sidebar,
  .right-sidebar {
    width: 100%;
    margin-left: auto;
    margin-top: 2em;
  }
  .nav-fa-icon {
    display: none;
  }
  .page-title {
    margin-left: 0.5em;
  }
  #navigation {
    height: 36px;
  }
  #content {
    margin-top: 36px;
  }
  #navicon {
    -moz-transition-duration: 0.25s;
         transition-duration: 0.25s;
    display: -moz-box;
    display: flex;
    font-size: 2em;
    color: #00007d;
    padding: 0 0.25em;
    margin: 4px 0.25em;
    white-space: nowrap;
    -moz-box-flex: 1;
         flex-grow: 1;
  }
  #navicon.hover {
    color: #4db7fe;
    text-shadow: 0 0 5px white;
    -moz-transition-duration: 0.25s;
         transition-duration: 0.25s;
  }
  #nav-list {
    display: none;
    padding: 0;
    margin-left: 0;
    text-align: center;
    border-left: 4px solid white;
    position: fixed;
    top: 36px;
    background: white;
    bottom: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    left: 0;
    box-shadow: none;
    border: 1px solid;
  }
  #nav-list li {
    display: block;
  }
  #nav-list li .nav-icon-link {
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    text-decoration: none;
    color: #333;
    font-weight: normal;
    padding: 12px 16px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.9);
    margin: 4px 8px;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
    gap: 12px;
  }
  #nav-list li .nav-icon-link .nav-icon-container {
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    -moz-box-pack: center;
         justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: rgba(156, 55, 6, 0.1);
  }
  #nav-list li .nav-icon-link .nav-icon-container i {
    font-size: 16px;
    color: #9c3706;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  #nav-list li .nav-icon-link::after {
    content: attr(data-tooltip);
    color: #333;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
  }
  #nav-list li .nav-icon-link .nav-expand {
    margin-left: auto;
    color: #666;
    font-size: 12px;
  }
  #nav-list li .nav-icon-link:hover {
    background: rgba(156, 55, 6, 0.1);
    -moz-transform: translateX(4px);
         transform: translateX(4px);
  }
  #nav-list li .nav-icon-link:hover .nav-icon-container {
    background: #9c3706;
  }
  #nav-list li .nav-icon-link:hover .nav-icon-container i {
    color: white;
    -moz-transform: scale(1.1);
         transform: scale(1.1);
  }
  #nav-list li .nav-icon-link.active {
    background: rgba(156, 55, 6, 0.15);
  }
  #nav-list li .nav-icon-link.active .nav-icon-container {
    background: #9c3706;
  }
  #nav-list li .nav-icon-link.active .nav-icon-container i {
    color: white;
  }
  #nav-list li .nav-icon-link.active::after {
    color: #9c3706;
    font-weight: 600;
  }
  #nav-list li .nav-dropdown {
    display: none;
    position: static;
    background: rgba(255, 255, 255, 0.95);
    border-radius: 8px;
    margin: 4px 8px 8px 24px;
    padding: 8px 0;
    border-left: 3px solid #9c3706;
  }
  #nav-list li .nav-dropdown .nav-dropdown-item {
    display: block;
    padding: 8px 16px;
    color: #555;
    text-decoration: none;
    font-size: 13px;
    -moz-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease;
  }
  #nav-list li .nav-dropdown .nav-dropdown-item:hover {
    background: rgba(156, 55, 6, 0.1);
    color: #9c3706;
  }
  #nav-list li:hover .nav-dropdown {
    display: block;
  }
  #nav-list li.home-menu-item a {
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    text-decoration: none;
    color: #333;
    font-weight: normal;
    padding: 12px 16px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.9);
    margin: 4px 8px;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
    gap: 12px;
  }
  #nav-list li.home-menu-item a::before {
    content: "\f015";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    -moz-box-pack: center;
         justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: rgba(156, 55, 6, 0.1);
    font-size: 16px;
    color: #9c3706;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  #nav-list li.home-menu-item a::after {
    color: #333;
    font-size: 14px;
    font-weight: 500;
  }
  #nav-list li.home-menu-item a:hover {
    background: rgba(156, 55, 6, 0.1);
    -moz-transform: translateX(4px);
         transform: translateX(4px);
  }
  #nav-list li.home-menu-item a:hover::before {
    background: #9c3706;
    color: white;
    -moz-transform: scale(1.1);
         transform: scale(1.1);
  }
  #nav-list li.home-menu-item a.active {
    background: rgba(156, 55, 6, 0.15);
  }
  #nav-list li.home-menu-item a.active::before {
    background: #9c3706;
    color: white;
  }
  #nav-list li.home-menu-item a.active::after {
    color: #9c3706;
    font-weight: 600;
  }
  #nav-list li a:not(.nav-icon-link):not(.nav-home) {
    display: block;
    font-weight: normal;
    text-align: left;
    padding: 7px 13px;
  }
  #nav-list li a:not(.nav-icon-link):not(.nav-home) .nav-expand {
    float: right;
    display: block;
    height: inherit;
    margin: -13px -7px;
    padding: inherit;
  }
  #nav-list li ul {
    left: 8em;
    top: auto;
    bottom: auto;
    margin-top: -36px;
  }
  #nav-list li.home-nav-element {
    display: none;
  }
  .left-sidebar-header {
    display: none;
  }
  .left-sidebar-item {
    padding: 0.8em 0.2em 0.8em 0.2em;
    display: inline-block;
    -moz-box-flex: 1;
         flex: 1;
    min-width: 5em;
    overflow-wrap: anywhere;
  }
  .left-sidebar-item .sidebar-icon {
    display: none;
  }
  .left-sidebar {
    text-align: center;
    margin-bottom: 1em;
    border-radius: 7px;
    display: -moz-box;
    display: flex;
    background: inherit;
    gap: 0.3em;
    overflow-x: auto;
  }
}
@media (min-width: 800px) {
  .left-sidebar-item {
    margin-bottom: 10px;
    margin-left: 10px;
    border: 1px solid lightgray;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    background-color: white;
    padding: 0.8em 0.2em 0.8em 0.8em;
  }
  .sidebar-text {
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .middle-content,
  .blog-sidebar,
  .right-sidebar {
    display: block !important;
  }
  .blog-sidebar,
  .right-sidebar {
    -moz-box-flex: 25%;
         flex: 25%;
    max-width: 25%;
  }
  .middle-content {
    margin-right: 2% !important;
  }
  #mobile.tabs {
    display: none;
  }
  #three-col-container {
    display: -moz-box;
    display: flex;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
  }
  .middle-content {
    -moz-box-flex: 75%;
         flex: 75%;
    max-width: 75%;
  }
  .left-sidebar {
    width: 11%;
    max-width: 11%;
    min-width: 11%;
    position: fixed;
    height: -moz-calc(100vh - 50px - 20px);
    height: calc(100vh - 50px - 20px);
    overflow-y: auto;
    scrollbar-color: auto;
  }
  .left-sidebar::-webkit-scrollbar {
    width: 0;
    background-color: transparent;
  }
  #nav-list {
    display: -moz-box !important;
    display: flex !important;
    -moz-box-flex: 1;
         flex-grow: 1;
  }
  #nav-list li {
    text-transform: none;
    margin: 0;
  }
  #nav-list li.home-nav-element {
    margin-right: auto;
    padding-right: 2em;
  }
  #nav-list li.home-menu-item {
    display: none;
  }
  #nav-list li:not(.home-nav-element):not(.home-menu-item) {
    -moz-box-flex: 1;
         flex: 1;
    display: -moz-box;
    display: flex;
    -moz-box-pack: center;
         justify-content: center;
  }
  #nav-list li:not(:hover) > ul {
    display: none !important;
  }
  #nav-list li ul {
    left: 0 !important;
  }
  #nav-list li a:not(.nav-icon-link),
  #nav-list li button:not(.nav-icon-link) {
    display: -moz-box;
    display: flex;
    height: 100%;
    -moz-box-align: center;
         align-items: center;
    gap: 2px;
    text-decoration: none;
    color: black;
    font-weight: bold;
    font-size: initial;
  }
  #nav-list li a:not(.nav-icon-link):link,
  #nav-list li button:not(.nav-icon-link):link {
    color: black;
  }
  #nav-list li a:not(.nav-icon-link):hover,
  #nav-list li button:not(.nav-icon-link):hover {
    color: black;
    background: transparent;
    margin: 0;
  }
  #nav-list li a:not(.nav-icon-link).active,
  #nav-list li button:not(.nav-icon-link).active {
    color: #9c3706;
    background: transparent;
    border-bottom: 3px solid #9c3706;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  #nav-list li .nav-icon-link {
    display: -moz-box;
    display: flex;
    height: 100%;
    -moz-box-align: center;
         align-items: center;
    -moz-box-pack: center;
         justify-content: center;
    text-decoration: none;
    color: #666;
    font-weight: normal;
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
  }
  #nav-list li .nav-icon-link .nav-icon-container {
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    -moz-box-pack: center;
         justify-content: center;
  }
  #nav-list li .nav-icon-link .nav-icon-container i {
    font-size: 20px;
    color: #666;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  #nav-list li .nav-icon-link:hover {
    background: rgba(255, 255, 255, 0.2);
    -moz-transform: translateY(-2px);
         transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  }
  #nav-list li .nav-icon-link:hover .nav-icon-container i {
    color: #9c3706;
    -moz-transform: scale(1.1);
         transform: scale(1.1);
  }
  #nav-list li .nav-icon-link:hover::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: -35px;
    left: 50%;
    -moz-transform: translateX(-50%);
         transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 1000;
    opacity: 1;
    pointer-events: none;
  }
  #nav-list li .nav-icon-link:hover::before {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    -moz-transform: translateX(-50%);
         transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid rgba(0, 0, 0, 0.8);
    z-index: 1000;
    opacity: 1;
  }
  #nav-list li .nav-icon-link.active {
    background: transparent;
    border-bottom: 3px solid #9c3706;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  #nav-list li .nav-icon-link.active .nav-icon-container i {
    color: #9c3706;
  }
  #nav-list li .nav-dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    -moz-transform: translateX(-50%);
         transform: translateX(-50%);
    background: white;
    border-radius: 8px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    padding: 8px 0;
    min-width: 150px;
    opacity: 0;
    visibility: hidden;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 1000;
    margin-top: 8px;
  }
  #nav-list li .nav-dropdown .nav-dropdown-item {
    display: block;
    padding: 8px 16px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    -moz-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease;
  }
  #nav-list li .nav-dropdown .nav-dropdown-item:hover {
    background: #f5f5f5;
    color: #9c3706;
  }
  #nav-list li:hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    -moz-transform: translateX(-50%) translateY(0);
         transform: translateX(-50%) translateY(0);
  }
  .normal-text {
    font-weight: normal;
    font-size: small;
    text-align: left;
  }
  #page-container {
    background: #f1f2f2;
  }
  #event-tab {
    display: none;
  }
  #content.wrapper {
    background: white;
    padding: 2em;
    border-radius: 1em;
  }
  .view-next-page {
    display: none;
  }
}
.page-banner {
  text-align: center;
  padding: 1em 1.5em;
  margin-bottom: 1em;
  background: #fafafa;
  border-radius: 8px;
  border-left: 4px solid #9c3706;
}
.page-banner .page-title {
  font-size: 1.4em;
  font-weight: 700;
  margin: 0 0 0.3em 0;
  color: #111;
}
.page-banner .page-title a {
  color: inherit;
  text-decoration: none;
}
.page-banner .page-title a:hover {
  color: #9c3706;
}
.page-banner .page-subtitle {
  font-size: 0.9em;
  color: #4b5563;
}

.table {
  border-spacing: 0;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.5em;
  background: rgba(0, 0, 0, 0.01);
}
.table.striped tr:nth-child(even) {
  background: #fafafa;
}
.table.striped tr:nth-child(odd) {
  background: #fff;
}
.table.no-border td, .table.no-border th {
  border: none;
}
.table th:first-child, .table td:first-child {
  border-width: 1px 1px 0 1px;
}
.table tr:last-child td {
  border-bottom: 1px solid #ccc;
}
.table thead th {
  vertical-align: middle;
}
.table th {
  height: 2em;
  color: #fff;
  background-color: #9c3706;
  border-color: #ccc;
  border-width: 1px 1px 0 0;
  border-style: solid;
  padding: 4px 10px;
  vertical-align: middle;
  text-align: center;
  font-weight: 600;
  font-size: 1.1em;
}
.table td {
  border-color: #ccc;
  border-width: 1px 1px 0 0;
  border-style: solid;
  padding: 7px 5px;
  vertical-align: middle;
  text-align: center;
}

#users-table th a {
  color: #fff;
}

.feed-table td, .feed-table td:first-child, .feed-table tr:last-child td, .feed-table tr:last-child td:first-child {
  border-width: 1px 0 0 0;
}

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

.AC {
  background-color: green;
  color: white;
}

._AC {
  background-color: greenyellow;
  color: black;
}

.WA {
  background-color: red;
  color: white;
}

.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;
}

.judge-online {
  color: #44AD41;
}

.judge-offline {
  color: #DE2121;
}

.middle-content {
  padding-right: 0em;
  vertical-align: top;
  margin-right: 0;
  width: 100%;
}
.middle-content .post {
  border: 1px dotted grey;
  border-radius: 1em;
  border-top: 0.125rem solid #9b9b9b;
  padding: 1.25rem 1.25rem 1.563rem;
  margin-bottom: 2em;
}
.middle-content .post .title {
  font-weight: 600;
  font-size: 1.875em;
}
.middle-content .post .title a {
  color: Maroon !important;
}
.middle-content .post .title a:hover {
  color: #c00000 !important;
}
.left-sidebar-item.active {
  color: white;
  font-weight: bold;
  background-color: #9c3706;
}
.left-sidebar-item.active .sidebar-icon {
  color: white;
}

.blog-sidebox h3 {
  padding-bottom: 0.25em;
  padding-left: 0.5em;
}
.blog-sidebox ul {
  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 #ccc;
}
.blog-sidebox .contest:last-child {
  border-bottom: none;
}
.blog-sidebox .contest .name {
  font-size: 1.25em;
  font-weight: 500;
}
.blog-sidebox .contest .name a {
  color: #5b80b9 !important;
}
.blog-sidebox .contest .name a:hover {
  color: #0645ad !important;
}

.no-dot-blog-sidebox ul {
  list-style: none;
}

#mobile.tabs {
  margin: 0;
  margin-bottom: 1em;
}

.tabs.tabs-no-flex {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-align: center;
       align-items: center;
}

.sort-options select {
  padding: 0.3em 0.5em;
  border-radius: 4px;
  background-color: #fff;
  border: 1px solid #ccc;
  font-size: 0.9em;
}
.sort-options select:focus {
  outline: none;
  border-color: #9c3706;
}

.rssatom {
  text-align: right;
  padding: 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;
}

.blog-box {
  border-bottom: 1.4px solid lightgray;
  border-top: 1.4px solid lightgray;
  margin-bottom: 1.5em;
  padding: 1em 1.25em 0.5em 1.25em;
  background-color: white;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
.blog-box .title {
  margin-bottom: 0.2em;
  font-weight: 500;
}

.blog-box:hover, .blog-box:not(.pre-expand-blog) {
  border-color: #8a8a8a;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
}

.blog-description {
  max-height: 30em;
  overflow: hidden;
  overflow-wrap: anywhere;
  padding-bottom: 1em;
  clear: both;
  position: relative;
}

.problem-feed-name {
  display: inline;
  font-weight: bold;
}

.problem-feed-name a {
  color: #0645ad;
}

.problem-feed-info-entry {
  display: inline;
  float: right;
}

.problem-feed-types {
  color: gray;
}

.feed-table {
  margin: 0;
}

.pre-expand-blog {
  position: relative;
  padding-bottom: 0;
}

.show-more {
  display: -moz-box;
  display: flex;
  color: black;
  font-size: 16px;
  font-weight: 700;
  padding: 0px 12px;
  margin-top: 5px;
  position: absolute;
  inset: 50% 0px 0px;
  background: -moz-linear-gradient(transparent, white);
  background: linear-gradient(transparent, white);
  -moz-box-pack: end;
       justify-content: flex-end;
  -moz-box-align: end;
       align-items: flex-end;
  cursor: pointer;
  padding: 16px 16px;
}

.actionbar-box {
  margin: 8px 16px;
}

.post-full .post-title {
  font-weight: bold;
  margin-bottom: 10px;
  font-family: serif;
}
.post-full .post-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #ccc;
}
.post-full .post-author-img {
  flex-shrink: 0;
}
.post-full .post-author-img img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
}
.post-full .post-meta {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 0.5rem;
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.post-full .post-organizations {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}
.post-full .post-info {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
  gap: 0.4rem;
  font-size: 0.9rem;
}
.post-full .post-separator {
  opacity: 0.5;
}
.post-full .post-time {
  opacity: 0.7;
}
.post-full .post-time i {
  margin-right: 0.25rem;
  font-size: 0.85rem;
}
.post-full .post-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-left: auto;
  flex-shrink: 0;
}
.post-full .post-action-btn {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.75rem;
  font-size: 0.85rem;
  font-weight: 500;
  color: #6b7280;
  background: #fafafa;
  border-radius: 6px;
  text-decoration: none;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.post-full .post-action-btn i {
  font-size: 0.9rem;
}
.post-full .post-action-btn:hover {
  background: rgba(0, 0, 0, 0.08);
  color: #374151;
}
.post-full .post-action-btn .badge {
  background: #9c3706;
  color: white;
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.15rem 0.4rem;
  border-radius: 10px;
  min-width: 1.2rem;
  text-align: center;
}

.middle-right-content.wrapper {
  padding: 1em 0;
  background: white;
  border-radius: 1em;
}

.post-content-header {
  margin-left: 0;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.2em;
}

@media (max-width: 799px) {
  .actionbar-box {
    margin: 8px 0;
  }
  .blog-box {
    padding-left: 5%;
    padding-right: 5%;
    margin-bottom: 0;
  }
  .post-title {
    font-size: 1.6em;
  }
  #home-feed-tabs {
    display: block;
  }
  #home-feed-tabs .sort-options {
    margin-top: 1em;
    margin-left: 1em;
  }
}
@media (min-width: 800px) {
  .feed-table {
    font-size: small;
  }
  .blog-box {
    border-left: 1.4px solid lightgray;
    border-right: 1.4px solid lightgray;
    border-radius: 16px;
  }
  .post-full {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  .post-full .post-title {
    font-size: 1.6em;
  }
}
#problem-table td.category {
  text-align: left;
  padding: 0 1em;
}
#problem-table td.problem {
  text-align: left;
  padding-left: 1em;
  width: 100%;
}
#problem-table td.pcode {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-all;
}
#problem-table td.pp {
  text-align: left;
  padding-left: 1em;
  width: 100%;
}
#problem-table td.users {
  text-align: left;
  padding: 0 1em;
  white-space: nowrap;
}
#problem-table td.types {
  text-align: left;
  padding: 0 1em;
}
#problem-table td.ac-rate {
  white-space: nowrap;
}
#problem-table td.points {
  white-space: nowrap;
}
#problem-table tr {
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
}
#problem-table tr:hover {
  background: #eaeaea;
}

#filter-form {
  vertical-align: top;
  margin-bottom: 0.5em;
  margin-top: 0.75em;
}
#filter-form a {
  margin-right: 5px;
  display: inline-block;
  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: 15px;
}

#content-right.problems {
  -moz-box-flex: 25%;
       flex: 25%;
  max-width: unset;
  padding-top: 0;
  padding-left: 0;
}

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

.problem-sidebar {
  padding-bottom: 1em;
}

.info-float .sidebar-section {
  background: #fafafa;
  border-radius: 8px;
  padding: 0.75rem;
  margin-bottom: 0.75rem;
}
.info-float .link-row {
  border-radius: 6px;
  margin: 2px 0;
  padding: 8px 10px;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.info-float .link-row:hover {
  background: #fafafa;
  -moz-transform: translateX(2px);
       transform: translateX(2px);
}
.info-float .link-row a {
  font-size: 0.9rem;
}
.info-float .link-row a i {
  color: #9c3706;
  width: 1.4em;
}
.info-float .link-row .badge {
  background: #ae0000;
  color: white;
  font-size: 0.7rem;
  padding: 2px 6px;
  border-radius: 10px;
  margin-left: 0.5em;
}
.info-float hr {
  border: none;
  border-top: 1px solid #ccc;
  margin: 0.5rem 0;
}
.info-float .problem-info-entry {
  padding: 0.4rem 0;
  font-size: 0.9rem;
}
.info-float .problem-info-entry i {
  color: #9c3706;
  width: 1.4em;
}
.info-float .problem-lang-limits {
  background: #fafafa;
  border-radius: 6px;
  padding: 0.5rem;
  margin-top: 0.3rem;
  font-size: 0.85rem;
}
.info-float .problem-lang-limits .lang-limit {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  padding: 0.2rem 0.5rem;
}
.info-float .problem-lang-limits .lang-limit:not(:last-child) {
  border-bottom: 1px solid #ccc;
}
.info-float .problem-lang-limits .lang-limit .lang-name {
  font-weight: 500;
}
.info-float .problem-lang-limits .lang-limit .lang-tl, .info-float .problem-lang-limits .lang-limit .lang-ml {
  color: #666;
}
.info-float .authors-value, .info-float .judges-value {
  font-size: 0.85rem;
  margin-top: 0.3rem;
}
.info-float .toggle {
  cursor: pointer;
  padding: 0.4rem 0;
  font-size: 0.9rem;
  font-weight: 500;
}
.info-float .toggle:hover {
  color: #9c3706;
}
.info-float .toggle i {
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -moz-transform 0.2s ease;
  width: 1em;
}
.info-float .toggle.open i {
  -moz-transform: rotate(90deg);
       transform: rotate(90deg);
}
.info-float .toggled {
  font-size: 0.85rem;
  color: #555;
  padding: 0.3rem 0 0.3rem 1.4rem;
}

.dark-mode .info-float .sidebar-section, [data-theme=dark] .info-float .sidebar-section {
  background: #1f2937;
}
.dark-mode .info-float .link-row:hover, [data-theme=dark] .info-float .link-row:hover {
  background: #374151;
}
.dark-mode .info-float .problem-lang-limits, [data-theme=dark] .info-float .problem-lang-limits {
  background: #1f2937;
}
.dark-mode .info-float .problem-lang-limits .lang-limit, [data-theme=dark] .info-float .problem-lang-limits .lang-limit {
  border-bottom-color: #374151;
}
.dark-mode .info-float .problem-lang-limits .lang-limit .lang-tl, .dark-mode .info-float .problem-lang-limits .lang-limit .lang-ml, [data-theme=dark] .info-float .problem-lang-limits .lang-limit .lang-tl, [data-theme=dark] .info-float .problem-lang-limits .lang-limit .lang-ml {
  color: #9ca3af;
}
.dark-mode .info-float .toggled, [data-theme=dark] .info-float .toggled {
  color: #9ca3af;
}

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

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

#types {
  width: 100%;
}

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: 700;
  color: #343a40;
  margin: 0;
  font-size: 15px;
}

.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;
}

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

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

.organization-tags {
  padding-left: 0.75em;
  display: -moz-box;
  display: flex;
}

.organization-tag {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 0.15em 0.3em;
  border-radius: 0.15em;
  font-weight: 600;
  margin-right: 0.45em;
  position: relative;
  background-color: #ccc;
  color: initial;
  min-height: 1.5em;
}

.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: gray;
  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 #id_language {
  width: 100%;
}
#problem_submit #result-version-info {
  border-bottom: 1px solid rgb(148, 148, 148);
  margin: 0px 1em;
  color: #757575;
  font-weight: 600;
  padding: 0.2em 0;
  text-align: right;
}
#problem_submit #language-select2 .select2-results__message {
  white-space: nowrap;
}
#problem_submit #language-select2.select2-dropdown--above {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: reverse;
       flex-direction: column-reverse;
}
#problem_submit #language-select2 .select2-results__option {
  color: #757575 !important;
  background: white !important;
}
#problem_submit #language-select2 .select2-results__option--highlighted {
  text-decoration: underline;
}
#problem_submit #language-select2 .select2-results__option[aria-selected=true] {
  font-weight: bold;
  color: black !important;
}
#problem_submit #language-select2 .select2-results__option {
  padding: 4px 0px;
}
#problem_submit #language-select2 .select2-results__options {
  overflow-y: visible !important;
}
#problem_submit #language-select2 .select2-results__option {
  break-inside: avoid-column;
}
#problem_submit #language-select2 .select2-results {
  -moz-columns: 10 7em;
  columns: 10 7em;
  padding-left: 1.5em;
  padding-top: 0.5em;
}

@media (max-width: 550px) {
  #problem-table tr :nth-child(6) {
    display: none;
  }
}
@media (max-width: 500px) {
  #problem-table tr :nth-child(4) {
    display: none;
  }
}
@media (max-width: 350px) {
  #problem-table tr :nth-child(3) {
    display: none;
  }
}
#problem-table th a {
  color: inherit;
  display: block;
  padding: 4px 10px;
}

#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;
}

.pcodecell {
  text-transform: uppercase;
}

.problem-data-form .bad-file input, .problem-data-form .bad-file .select2-selection {
  border-color: gray;
}

#case-table .select2 {
  text-align: initial;
}
#case-table tbody td {
  white-space: nowrap;
}

.order-column {
  width: 1em;
}

.type-column {
  width: 8em;
}

span.order {
  padding-right: 0.5em;
}

body.dragging, body.dragging * {
  cursor: move !important;
}

.dragged {
  position: absolute;
  opacity: 0.5;
  z-index: 2000;
}

i.fa-ellipsis-v {
  cursor: move;
}

#submit-button {
  margin-bottom: 1em;
}

input[name*=generator_args] {
  font-size: 14px;
  padding: 3px 6px;
}

.generator-args-container {
  position: relative;
  min-height: 30px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
}

.generator-args-icon {
  color: #666;
  cursor: pointer;
  font-size: 16px;
  padding: 8px;
  border: 1px dashed #ccc;
  border-radius: 3px;
  background: #f9f9f9;
}
.generator-args-icon:hover {
  color: #333;
  border-color: #999;
  background: #f0f0f0;
}

.generator-args-hidden {
  display: none !important;
}

#generator-script-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: none;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
}
#generator-script-modal .modal-content {
  background: white;
  padding: 20px;
  border-radius: 5px;
  max-width: 800px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.generator-script-container .btn {
  padding: 5px 10px;
  border: 1px solid #ccc;
  background: #f5f5f5;
  cursor: pointer;
  border-radius: 3px;
}
.generator-script-container .btn:hover {
  background: #e5e5e5;
}

.textarea-with-lines {
  position: relative;
  display: -moz-box;
  display: flex;
  border: 1px solid #ccc;
  border-radius: 3px;
  font-family: monospace;
  font-size: 14px;
  line-height: 1.4;
}

#line-numbers {
  background: #f5f5f5;
  border-right: 1px solid #ddd;
  color: #666;
  padding: 10px 5px;
  text-align: right;
  min-width: 30px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  white-space: pre-line;
}

#generator-script-textarea {
  -moz-box-flex: 1;
       flex: 1;
  min-height: 300px;
  line-height: 1.4;
}

#add-case-row {
  background: #28a745;
  color: white;
  padding: 8px 16px;
  border-radius: 5px;
  text-decoration: none;
  font-weight: 500;
  -moz-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  display: inline-block;
}

.problem-clarification {
  border-bottom: 1px solid #ccc;
  margin-top: 1em;
  margin-bottom: 1em;
}

#clarification_header {
  color: red;
  cursor: pointer;
}

#clarification_header:hover {
  color: orange;
}

#comment-announcement {
  margin-top: 1em;
  background-color: lightgray;
  border-radius: 30px;
  padding: 0.5em;
  text-align: center;
  cursor: pointer;
  color: dimgrey;
  font-weight: bold;
}

#comment-announcement:hover {
  background-color: gray;
}

@media (max-width: 799px) {
  .problem-middle-right {
    display: -moz-box;
    display: flex;
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
         flex-direction: column-reverse;
  }
}
@media (min-width: 800px) {
  #problem-table .pcode {
    min-width: 7em;
  }
}
.new-problem-info {
  background: -moz-linear-gradient(315deg, #e9ecef 0%, #d6d8db 100%);
  background: linear-gradient(135deg, #e9ecef 0%, #d6d8db 100%);
  border: 1px solid #ced4da;
  border-radius: 8px;
  padding: 16px 8px;
  margin: 16px 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px 8px;
  font-size: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.12);
  position: relative;
  overflow: hidden;
  width: 100%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  min-height: 80px;
}

.new-problem-info::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: -moz-linear-gradient(left, #007bff, #28a745, #ffc107, #dc3545);
  background: linear-gradient(90deg, #007bff, #28a745, #ffc107, #dc3545);
}

.info-block {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  white-space: nowrap;
  padding: 8px 6px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.7);
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  margin: 0;
  font-size: 16px;
  -moz-box-pack: center;
       justify-content: center;
  min-width: 0;
}

.info-block:nth-child(4) {
  grid-column: 1/2;
  grid-row: 2/3;
}

.info-block:nth-child(5) {
  grid-column: 2/3;
  grid-row: 2/3;
}

.info-block:hover {
  background: rgba(255, 255, 255, 0.9);
  -moz-transform: translateY(-1px);
       transform: translateY(-1px);
}

.info-block i {
  color: #495057;
  width: 16px;
  text-align: center;
  font-size: 15px;
  padding: 0;
  border-radius: 2px;
  background: rgba(0, 123, 255, 0.1);
}

.info-block .fa-check {
  background: rgba(40, 167, 69, 0.15);
  color: #155724;
}

.info-block .fa-clock {
  background: rgba(255, 193, 7, 0.15);
  color: #856404;
}

.info-block .fa-server {
  background: rgba(40, 167, 69, 0.15);
  color: #155724;
}

.info-block .fa-file {
  background: rgba(0, 123, 255, 0.15);
  color: #004085;
}

.new-pi-value {
  color: #495057;
  font-weight: 600;
  font-size: 15px;
  padding: 0 4px;
  border-radius: 2px;
}

@media screen and (max-width: 1200px) {
  .new-problem-info {
    font-size: 15px;
    padding: 14px 8px;
    gap: 10px 6px;
  }
  .info-block {
    font-size: 15px;
    gap: 5px;
    padding: 6px 4px;
  }
  .info-block i {
    font-size: 14px;
    width: 15px;
  }
  .pi-name {
    font-size: 14px;
  }
  .new-pi-value {
    font-size: 14px;
  }
}
@media screen and (max-width: 900px) {
  .new-problem-info {
    font-size: 14px;
    padding: 12px 6px;
    gap: 8px 4px;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr;
  }
  .info-block {
    font-size: 14px;
    gap: 4px;
    padding: 5px 3px;
  }
  .info-block:nth-child(3) {
    grid-column: 1/3;
    grid-row: 2/3;
  }
  .info-block:nth-child(4) {
    grid-column: 1/2;
    grid-row: 3/4;
  }
  .info-block:nth-child(5) {
    grid-column: 2/3;
    grid-row: 3/4;
  }
  .info-block i {
    font-size: 13px;
    width: 14px;
  }
  .pi-name {
    font-size: 13px;
  }
  .new-pi-value {
    font-size: 13px;
  }
}
@media screen and (max-width: 600px) {
  .new-problem-info {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(5, 1fr);
    gap: 8px;
  }
  .info-block {
    -moz-box-pack: start;
         justify-content: flex-start;
  }
  .info-block:nth-child(3) {
    grid-column: 1/2;
    grid-row: 3/4;
  }
  .info-block:nth-child(4) {
    grid-column: 1/2;
    grid-row: 4/5;
  }
  .info-block:nth-child(5) {
    grid-column: 1/2;
    grid-row: 5/6;
  }
}
.problem-raw body {
  page-break-after: always;
  background: white;
  padding: 1.5em 2em 4em 2em;
}
.problem-raw .new-problem-info {
  padding: 18px 8px;
  gap: 12px 8px;
  font-size: 16px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
}
.problem-raw .info-block {
  gap: 6px;
  padding: 8px 6px;
  border-radius: 4px;
  font-size: 16px;
  -moz-box-pack: center;
       justify-content: center;
}
.problem-raw .info-block:nth-child(4) {
  grid-column: 1/2;
  grid-row: 2/3;
}
.problem-raw .info-block:nth-child(5) {
  grid-column: 2/3;
  grid-row: 2/3;
}
.problem-raw .info-block i {
  width: 16px;
  font-size: 15px;
  padding: 0;
}
.problem-raw .pi-name {
  font-size: 15px;
}
.problem-raw .new-pi-value {
  font-size: 15px;
  padding: 0 4px;
}
.problem-raw .md-typeset details {
  box-shadow: var(--md-shadow-z1);
  padding-bottom: 0.6rem;
}
.problem-raw .md-typeset details[open] > summary {
  border-radius: 0.1rem 0.1rem 0 0;
}
.problem-raw .content-description {
  padding-bottom: 0.5em;
}
@media print {
  .problem-raw .new-problem-info {
    display: -moz-box !important;
    display: flex !important;
    flex-wrap: wrap !important;
    page-break-inside: avoid;
    gap: 12px !important;
    padding: 12px 8px !important;
    font-size: 12px !important;
  }
  .problem-raw .info-block {
    display: -moz-box !important;
    display: flex !important;
    -moz-box-align: center !important;
         align-items: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 3px 6px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    min-width: auto !important;
    width: auto !important;
  }
  .problem-raw .info-block i {
    display: none !important;
  }
  .problem-raw .pi-name, .problem-raw .new-pi-value {
    font-size: 11px !important;
    margin: 0 !important;
    padding: 0 2px !important;
  }
}

@media screen and (min-width: 1100px) {
  .d-flex-problem {
    display: -moz-box;
    display: flex;
  }
}
body:not(.problem-raw) .new-problem-info {
  font-size: 15px;
  padding: 15px 8px;
  min-height: 75px;
  gap: 10px 6px;
  -moz-box-pack: justify;
       justify-content: space-between;
}
body:not(.problem-raw) .info-block {
  font-size: 15px;
  gap: 5px;
  padding: 7px 5px;
}
body:not(.problem-raw) .info-block i {
  font-size: 14px;
  width: 15px;
}
body:not(.problem-raw) .pi-name {
  font-size: 14px;
}
body:not(.problem-raw) .new-pi-value {
  font-size: 14px;
  padding: 0 3px;
}

.problem-page-container {
  padding: 20px;
}

.problem-content-layout {
  width: 100%;
}

.problem-content-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  -moz-box-align: start;
       align-items: start;
}
.problem-content-grid.single-column {
  grid-template-columns: 1fr;
  max-width: 800px;
  margin: 0 auto;
}

.problem-card {
  margin-bottom: 10px;
}
.problem-card .card-header {
  padding: 20px 20px;
}
.problem-card .card-body {
  padding: 20px;
}

.problem-form-group {
  margin-bottom: 25px;
}

.problem-form-label {
  display: inline-block;
  margin-bottom: 8px;
  font-weight: 500;
  color: #333;
}

.problem-help-text {
  font-size: 0.875rem;
  color: #6c757d;
  margin-top: 5px;
}

.problem-form-actions {
  margin-top: 20px;
  display: -moz-box;
  display: flex;
}
.problem-form-actions .action-btn {
  margin-right: 10px;
}

.required-asterisk {
  color: #ae0000 !important;
}

.error-message {
  color: #ae0000 !important;
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

.alert {
  margin-bottom: 20px;
  border-radius: 4px;
  padding: 15px;
  border: 1px solid;
  position: relative;
}
.alert .fa {
  margin-right: 8px;
}
.alert .close {
  position: absolute;
  top: 15px;
  right: 20px;
  background: none;
  border: none;
  font-size: 18px;
  cursor: pointer;
  color: inherit;
  opacity: 0.7;
}
.alert .close:hover {
  opacity: 1;
}

.alert-success {
  background-color: #d4edda !important;
  border-color: #c3e6cb !important;
  color: #155724 !important;
  -moz-animation: fadeInOut 5s ease-in-out forwards;
       animation: fadeInOut 5s ease-in-out forwards;
}

.alert-danger {
  background-color: #f8d7da !important;
  border-color: #f5c6cb !important;
  color: #721c24 !important;
}

.alert-info {
  background-color: #d1ecf1 !important;
  border-color: #bee5eb !important;
  color: #0c5460 !important;
}

@-moz-keyframes fadeInOut {
  0% {
    opacity: 0;
    -moz-transform: translateY(-10px);
         transform: translateY(-10px);
  }
  10% {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
  80% {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-10px);
         transform: translateY(-10px);
  }
}

@keyframes fadeInOut {
  0% {
    opacity: 0;
    -moz-transform: translateY(-10px);
         transform: translateY(-10px);
  }
  10% {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
  80% {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
  100% {
    opacity: 0;
    -moz-transform: translateY(-10px);
         transform: translateY(-10px);
  }
}
.language-limits-page .table {
  margin-bottom: 0;
}
.language-limits-page .table th {
  padding: 12px 15px;
  font-size: 1em;
}
.language-limits-page .table td {
  padding: 12px 15px;
}
.language-limits-page .default-limits-box {
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 15px;
  margin-top: 20px;
}
.language-limits-page .select2-container {
  width: 50% !important;
}
.language-limits-page #id_memory_unit {
  min-width: 45px;
  height: 25px;
  font-size: 14px;
  margin-left: 6px;
}

.language-templates-page .template-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
}
.language-templates-page .template-source-code {
  height: 200px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-family: "Monaco", "Menlo", "Ubuntu Mono", monospace;
}
.language-templates-page .template-source-code .ace_editor {
  font-size: 13px !important;
}
.language-templates-page .template-source-code .ace_gutter {
  background: #fafafa;
  border-right: 1px solid #e9ecef;
}
.language-templates-page .template-card {
  margin-bottom: 15px;
}
.language-templates-page .template-language {
  font-weight: 600;
  color: #495057;
}
.language-templates-page #id_language {
  width: 50% !important;
}

.solutions-page .form-section {
  min-height: 400px;
}
.solutions-page .solution-card {
  margin-bottom: 15px;
}
.solutions-page .solution-authors {
  font-weight: 600;
  color: #495057;
}
.solutions-page .solution-content {
  max-height: 300px;
  overflow-y: auto;
  background-color: #fafafa;
  padding: 15px;
  border-radius: 4px;
  border: 1px solid #ccc;
}

.translations-page .translation-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
}
.translations-page .translation-card {
  margin-bottom: 15px;
}
.translations-page .translation-language {
  font-weight: 600;
  color: #495057;
}

.problem-edit-form {
  max-width: 1200px;
  margin: 0 auto;
  background: white;
  border-radius: 8px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.tab-navigation {
  display: -moz-box;
  display: flex;
  border-bottom: 2px solid #e0e0e0;
  background: #f5f5f5;
  overflow-x: auto;
  white-space: nowrap;
}

.tab-button {
  -moz-box-flex: 1;
       flex: 1;
  padding: 15px 10px;
  text-align: center;
  font-weight: 600;
  color: #555;
  border: none;
  background: none;
  border-bottom: 3px solid transparent;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  font-size: 15px;
}
.tab-button:hover {
  background: rgba(0, 124, 186, 0.05);
  color: #007cba;
}
.tab-button.active {
  color: #007cba;
  border-bottom-color: #007cba;
  background: rgba(0, 124, 186, 0.1);
}
.tab-button.has-errors {
  color: #dc3545;
  position: relative;
}
.tab-button.has-errors::after {
  content: "!";
  position: absolute;
  top: 5px;
  right: 10px;
  background: #dc3545;
  color: white;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  font-size: 12px;
  font-weight: bold;
}

.tab-pane {
  display: none;
  padding: 30px;
}
.tab-pane.active {
  display: block;
}

.form-row {
  margin-bottom: 20px;
  -moz-box-align: baseline !important;
       align-items: baseline !important;
}
.form-row label {
  display: inline-block;
  margin-bottom: 8px;
  font-weight: 600;
  color: #333;
}

.alert-danger {
  color: #dc3545;
  background: #f8d7da;
  border: 1px solid #f5c6cb;
  padding: 10px;
  margin-top: 5px;
  border-radius: 4px;
}

.form-actions {
  display: -moz-box;
  display: flex;
  padding: 20px;
  background: #f5f5f5;
  border-top: 1px solid #e0e0e0;
}

.checkbox-field {
  display: -moz-box;
  display: flex;
  margin-bottom: 15px;
}

.checkbox-list {
  max-height: 300px;
  overflow-y: auto;
  border: 2px solid #e9ecef;
  padding: 20px;
  border-radius: 6px;
  background: #f8f9fa;
}

.inline-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.form-row.has-errors input, .form-row.has-errors textarea, .form-row.has-errors select {
  border-color: #dc3545 !important;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}
.form-row.has-errors label {
  color: #dc3545;
}

.tab-button.has-errors {
  background-color: #f8d7da !important;
  border-color: #dc3545 !important;
  color: #721c24 !important;
}
.tab-button.has-errors:hover {
  background-color: #f1b0b7 !important;
}
.tab-button.has-errors.active {
  background-color: #dc3545 !important;
  color: white !important;
}

@media (max-width: 799px) {
  .language-limits-page .problem-content-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .language-limits-page .problem-page-container {
    padding: 15px;
  }
}
@media (max-width: 799px) {
  .language-templates-page .problem-content-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .language-templates-page .problem-page-container {
    padding: 15px;
  }
}
@media (max-width: 799px) {
  .translations-page .problem-content-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .translations-page .problem-page-container {
    padding: 15px;
  }
}
.suggestion-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  overflow-y: auto;
}
.suggestion-modal.show {
  display: block !important;
}
.suggestion-modal .suggestion-modal-content {
  background-color: #fefefe;
  margin: 2% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 500px;
  max-width: 90%;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  max-height: 95vh;
  overflow-y: auto;
  position: relative;
}
.suggestion-modal .suggestion-modal-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 20px;
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
}
.suggestion-modal .suggestion-modal-header h3 {
  margin: 0;
  color: #333;
}
.suggestion-modal .close {
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}
.suggestion-modal .close:hover, .suggestion-modal .close:focus {
  color: black;
}
.suggestion-modal .form-group {
  margin-bottom: 15px;
}
.suggestion-modal .form-group label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
  color: #333;
}
.suggestion-modal .form-group input,
.suggestion-modal .form-group select {
  width: 100%;
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 14px;
}
.suggestion-modal .form-group input:focus,
.suggestion-modal .form-group select:focus {
  outline: none;
  border-color: #007bff;
  box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}
.suggestion-modal .alert-info {
  background-color: #d1ecf1;
  border-color: #bee5eb;
  color: #0c5460;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 15px;
  border-left: 4px solid #17a2b8;
}
.suggestion-modal .suggestion-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
}
.suggestion-modal .predicted-badge {
  display: inline-block;
  background-color: #28a745;
  color: white;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 12px;
  margin-left: 5px;
}

.help-section {
  margin-bottom: 1em;
  padding: 10px;
  background-color: #f8f9fa;
  border-left: 4px solid #007bff;
  border-radius: 4px;
}
.help-section .fa-info-circle {
  color: #007bff;
  margin-right: 8px;
}
.help-section a {
  margin-left: 10px;
}
.help-section a .fa-external-link {
  font-size: 0.8em;
}

.solution-codes-page .solution-code-entry {
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-bottom: 12px;
  overflow: hidden;
}
.solution-codes-page .solution-code-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
  padding: 10px 12px;
  flex-wrap: wrap;
  cursor: pointer;
}
.solution-codes-page .solution-code-header:hover {
  background: rgba(0, 0, 125, 0.04);
}
.solution-codes-page .solution-code-header .toggle-icon {
  -moz-transition: transform 0.2s, -moz-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -moz-transform 0.2s;
  font-size: 12px;
  color: #ccc;
}
.solution-codes-page .solution-code-header .toggle-icon.open {
  -moz-transform: rotate(90deg);
       transform: rotate(90deg);
}
.solution-codes-page .solution-code-header label {
  font-weight: bold;
  margin: 0;
  min-width: 25px;
}
.solution-codes-page .solution-code-header select {
  padding: 4px 8px;
}
.solution-codes-page .solution-code-header .name-input {
  padding: 4px 8px;
  width: 150px;
}
.solution-codes-page .solution-code-header .delete-code-btn {
  margin-left: auto;
  cursor: pointer;
  color: #ae0000;
  background: none;
  border: none;
  font-size: 16px;
}
.solution-codes-page .solution-code-body {
  display: none;
  padding: 0 12px 12px;
}
.solution-codes-page .solution-code-body.open {
  display: block;
}
.solution-codes-page .solution-code-editor {
  width: 100%;
  height: 200px;
  border: 1px solid #ccc;
}
.solution-codes-page .solution-actions {
  display: -moz-box;
  display: flex;
  gap: 10px;
  margin-bottom: 15px;
  flex-wrap: wrap;
}
.solution-codes-page .solution-message {
  margin-bottom: 10px;
  font-weight: bold;
}
.solution-codes-page #solution-results-section {
  margin-bottom: 20px;
}
.solution-codes-page #solution-results-section table {
  width: 100%;
  border-collapse: collapse;
}
.solution-codes-page #solution-results-section th,
.solution-codes-page #solution-results-section td {
  padding: 6px 10px;
  border: 1px solid #ccc;
  text-align: left;
}
.solution-codes-page #solution-results-summary {
  margin-bottom: 10px;
}
.solution-codes-page .result-match {
  color: green;
  font-weight: bold;
}
.solution-codes-page .result-mismatch {
  color: #ae0000;
  font-weight: bold;
}
.solution-codes-page .result-pending {
  color: darkorange;
}

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

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-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-specialist circle {
  stroke: #03a89e;
}
svg.rate-box.rate-specialist path {
  fill: #03a89e;
}
svg.rate-box.rate-expert circle {
  stroke: #66f;
}
svg.rate-box.rate-expert path {
  fill: #66f;
}
svg.rate-box.rate-candidate-master circle {
  stroke: #f6f;
}
svg.rate-box.rate-candidate-master path {
  fill: #f6f;
}
svg.rate-box.rate-master circle {
  stroke: #dc0;
}
svg.rate-box.rate-master path {
  fill: #dc0;
}
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;
  font-family: "Noto Sans";
}

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

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

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

.rate-specialist, .rate-specialist a {
  color: darkcyan;
}

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

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

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

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

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

@media (min-width: 400px) {
  #content-right.users {
    padding-left: 1.5em;
  }
}
#content-right.users {
  -moz-box-flex: 40%;
       flex: 40%;
  max-width: 17em;
}

#content-left.users {
  -moz-box-flex: 60%;
       flex: 60%;
}

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

th.header.rank {
  padding-left: 5px;
}

.user-with-img {
  display: -moz-inline-box;
  display: inline-flex;
  gap: 0.5em;
  -moz-box-align: center;
       align-items: center;
}
.user-with-img .user-img {
  height: 2em;
  width: 2em;
}

.user-table-fullname {
  font-weight: 600;
}

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

.user-search-image {
  vertical-align: middle;
  width: 24px;
  height: 24px;
  max-width: 24px;
  max-height: 24px;
  border-radius: 4px;
}

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

#users-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: white;
}
#users-table thead th {
  background: #9c3706;
  color: white;
  font-weight: 600;
  padding: 0.5rem 0.6rem;
  vertical-align: middle;
}
#users-table thead th a, #users-table thead th a:link, #users-table thead th a:visited {
  color: white;
  text-decoration: none;
}
#users-table thead th a:hover {
  opacity: 0.9;
}
#users-table td {
  padding: 0.5rem 0.5rem;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
}
#users-table .user-rating-badge {
  margin-left: 0.5em;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  vertical-align: middle;
}
#users-table tbody tr {
  background: white;
  -moz-transition: background 0.15s ease;
  transition: background 0.15s ease;
}
#users-table tbody tr:hover {
  background: #fafafa;
}
#users-table tbody tr.highlight, #users-table tbody tr:target {
  background: #fffbeb !important;
}
#users-table.no-border tbody tr:last-child td {
  border-bottom: none;
}
#users-table .about-column {
  width: 30%;
}
#users-table .rank, #users-table .points, #users-table .problems {
  white-space: nowrap;
  max-width: 20em;
  overflow: hidden;
}
#users-table .about-td {
  max-height: 3.5em;
  overflow: hidden;
  cursor: pointer;
  position: relative;
  overflow-wrap: anywhere;
  padding: 0.3em 0.5em;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #4b5563;
}
#users-table .about-td .content-description {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
#users-table .about-td .content-description p {
  margin: 0;
}
#users-table .about-td .content-description h1, #users-table .about-td .content-description h2, #users-table .about-td .content-description h3, #users-table .about-td .content-description h4, #users-table .about-td .content-description h5, #users-table .about-td .content-description h6 {
  font-size: 1em;
  margin: 0;
  font-weight: 600;
}
#users-table .about-td .content-description ul, #users-table .about-td .content-description ol {
  margin: 0;
  padding-left: 1.2em;
}
#users-table .about-td .content-description img {
  max-height: 2em;
  vertical-align: middle;
}
#users-table .organization-column a {
  color: #6b7280 !important;
  font-weight: 500;
}
#users-table .disqualified {
  background-color: #ffa8a8 !important;
}
#users-table .frozen {
  background: lightskyblue !important;
}
#users-table .full-score, #users-table .full-score a {
  font-weight: bold;
  color: green;
}
#users-table .partial-score, #users-table .partial-score a {
  color: green;
}
#users-table .failed-score, #users-table .failed-score a {
  font-weight: bold;
  color: red;
}
#users-table .pretest-full-score, #users-table .pretest-full-score a {
  font-weight: bold;
  color: #2980b9;
}
#users-table .pretest-partial-score, #users-table .pretest-partial-score a {
  color: #2980b9;
}
#users-table .pretest-failed-score, #users-table .pretest-failed-score a {
  font-weight: bold;
  color: red;
}
#users-table .user-points {
  font-weight: 700;
  font-size: 0.9rem;
}
#users-table .solving-time {
  color: #6b7280;
  font-weight: normal;
  font-size: 0.7rem;
}
#users-table .point-denominator {
  border-top: 1px solid #ccc;
  font-size: 0.7em;
}
#users-table .fullname-column {
  text-align: right !important;
  border-right: none !important;
}
#users-table .fullname-column span {
  color: #6b7280 !important;
  font-weight: 500;
}
#users-table .rank-td {
  font-weight: 600;
  width: 2.5em;
  text-align: center;
  font-size: 0.85rem;
}

#search-form {
  display: inline-block;
  vertical-align: top;
  width: 225px;
  float: right;
  margin-top: 1em;
}
#search-form .select2-selection__arrow {
  display: none;
}
#search-form .select2-selection__rendered {
  cursor: text;
}
#search-form .select2-results__option {
  position: relative;
}
#search-form .select2-results__option--highlighted {
  background-color: #DEDEDE !important;
}
#search-form li.select2-results__option--highlighted a.user-redirect {
  display: inline-block;
}

a.user-redirect {
  color: #2980b9;
  vertical-align: middle;
  font-size: 1.2em;
  position: absolute;
  right: 0.8em;
  display: none;
}
a.user-redirect:hover {
  text-shadow: 0 0 2px blue;
}

a.edit-profile {
  float: right;
  padding-top: 1em;
}

.user-problem-group h3 {
  font-weight: 600;
  font-size: 1.25em;
  margin-bottom: -10px;
  max-height: 20%;
  line-height: 2.5em;
}
.user-problem-group ul {
  -moz-columns: 300px 4;
  columns: 300px 4;
  list-style-type: none;
  margin-top: 0;
  margin-left: -20px;
  margin-bottom: 0;
}
.user-problem-group a img {
  max-width: 1em;
  margin-right: 3px;
  padding-bottom: 1px;
  vertical-align: middle;
}

.user-info-cell {
  padding-left: 15px;
  border-left: 1px solid #CCC;
}

.contest-history-cell {
  border-left: 1px solid #CCC;
  padding: 0 0.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: rgba(0, 0, 0, 0.2);
  right: 100%;
  margin-right: 5px;
}

.user-info-page {
  display: -moz-box;
  display: flex;
  max-width: 100%;
  min-height: 0;
}

.user-sidebar {
  -moz-box-flex: 0;
       flex: 0 0 150px;
  padding-right: 1em;
}
.user-sidebar .user-profile-img {
  width: 145px;
  height: 145px;
}

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

.user-img {
  flex-shrink: 0;
  background-color: #ddd;
  border-radius: 50%;
  object-fit: cover;
}

@media not all and (min-width: 600px) {
  .user-info-page {
    display: block;
  }
  .user-sidebar {
    width: 150px;
    margin: 0 auto;
  }
  .user-content {
    overflow: visible;
  }
}
.pp-table .pp {
  font-weight: 600;
  font-size: 1.4em;
}
.pp-table .pp-scaled {
  font-size: 0.8em;
}
.pp-table .pp-weighted {
  color: #777;
}
.pp-table div.sub-pp {
  text-align: right;
  min-width: unset;
  width: unset;
  border-left: none;
}
.pp-table td.problem-name {
  text-align: left;
  padding-left: 1em;
}
.pp-table td.problem-score {
  width: 80px;
}
.pp-table td.problem-category {
  width: 100px;
}
.pp-table {
  width: 99%;
}

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

#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);
       transform: translate(-50%, 0);
}
#rating-tooltip.rate-group {
  color: white;
}

.follow {
  background: green;
  border-color: lightgreen;
}

.follow:hover {
  background: darkgreen;
}

.unfollow {
  background: red;
  border-color: pink;
}

.unfollow:hover {
  background: darkred;
}

#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: #444;
}
#submission-activity #submission-activity-display {
  border: 1px solid #ccc;
  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: #444;
}
#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: white;
}
#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;
}

.user-profile-content {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 1.5rem;
}

.user-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 0.75rem;
}

.user-stat-card {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1rem;
  background: white;
  border: 1px solid #ccc;
  border-radius: 10px;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.user-stat-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  -moz-transform: translateY(-2px);
       transform: translateY(-2px);
}
.user-stat-card .stat-icon {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.05);
  font-size: 1.1rem;
  flex-shrink: 0;
}
.user-stat-card .stat-icon.green {
  background: rgba(34, 197, 94, 0.1);
}
.user-stat-card .stat-icon.darkcyan {
  background: rgba(0, 139, 139, 0.1);
}
.user-stat-card .stat-icon.peru {
  background: rgba(205, 133, 63, 0.1);
}
.user-stat-card .stat-icon.blue {
  background: rgba(59, 130, 246, 0.1);
}
.user-stat-card .stat-content {
  min-width: 0;
}
.user-stat-card .stat-value {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.user-stat-card .stat-label {
  font-size: 0.75rem;
  color: #6b7280;
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.user-fullname {
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
  color: #374151;
}

.user-about-section .admin-notes {
  background: #fef3c7;
  border: 1px solid #f59e0b;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
}
.user-about-section .admin-notes i {
  color: #d97706;
}
.user-about-section .about-content {
  background: #fafafa;
  border-radius: 10px;
  padding: 1rem 1.25rem;
}
.user-about-section .no-about-text {
  color: #9ca3af;
  font-style: italic;
  padding: 1rem;
  text-align: center;
  background: #fafafa;
  border-radius: 10px;
}
.user-about-section .no-about-text i {
  margin-right: 0.5rem;
}

.user-section .section-title {
  font-size: 1rem;
  font-weight: 600;
  color: #374151;
  margin: 0 0 0.75rem 0;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.user-section .section-title i {
  color: #9c3706;
  font-size: 0.9rem;
}

.awards-section .awards-grid {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.awards-section .award-item {
  display: inline-block;
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -moz-transform 0.2s ease;
}
.awards-section .award-item:hover {
  -moz-transform: scale(1.05);
       transform: scale(1.05);
}
.awards-section .award-item img {
  height: 80px;
  width: auto;
}

.activity-section #submission-activity-display {
  border-radius: 10px;
}

.rating-section #rating-chart {
  margin-top: 0;
  border-radius: 10px;
  overflow: hidden;
}

.user-sidebar .sidebar-avatar-wrapper {
  text-align: center;
  margin-bottom: 1rem;
}
.user-sidebar .user-profile-img {
  width: 145px;
  height: 145px;
  border: 3px solid white;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.user-sidebar .sidebar-actions {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.user-sidebar .sidebar-btn {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.6rem 1rem;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.user-sidebar .sidebar-btn.follow {
  background: #22c55e;
  color: white;
}
.user-sidebar .sidebar-btn.follow:hover {
  background: #16a34a;
}
.user-sidebar .sidebar-btn.unfollow {
  background: #ef4444;
  color: white;
}
.user-sidebar .sidebar-btn.unfollow:hover {
  background: #dc2626;
}
.user-sidebar .sidebar-btn.message {
  background: #3b82f6;
  color: white;
}
.user-sidebar .sidebar-btn.message:hover {
  background: #2563eb;
}
.user-sidebar .sidebar-contest-stats {
  background: #fafafa;
  border-radius: 10px;
  padding: 0.75rem;
  margin-top: 1rem;
}
.user-sidebar .sidebar-contest-stats .contest-stat-row {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding: 0.4rem 0;
}
.user-sidebar .sidebar-contest-stats .contest-stat-row:not(:last-child) {
  border-bottom: 1px solid #ccc;
}
.user-sidebar .sidebar-contest-stats .contest-stat-row .stat-label {
  font-size: 0.8rem;
  color: #6b7280;
}
.user-sidebar .sidebar-contest-stats .contest-stat-row .stat-value {
  font-weight: 600;
  font-size: 0.85rem;
}

.dark-mode .user-stat-card, [data-theme=dark] .user-stat-card {
  background: #1f2937;
  border-color: #374151;
}
.dark-mode .user-stat-card:hover, [data-theme=dark] .user-stat-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.dark-mode .user-stat-card .stat-label, [data-theme=dark] .user-stat-card .stat-label {
  color: #9ca3af;
}
.dark-mode .user-fullname, [data-theme=dark] .user-fullname {
  color: #e5e7eb;
}
.dark-mode .user-about-section .about-content,
.dark-mode .user-about-section .no-about-text, [data-theme=dark] .user-about-section .about-content,
[data-theme=dark] .user-about-section .no-about-text {
  background: #1f2937;
}
.dark-mode .user-about-section .no-about-text, [data-theme=dark] .user-about-section .no-about-text {
  color: #6b7280;
}
.dark-mode .user-section .section-title, [data-theme=dark] .user-section .section-title {
  color: #e5e7eb;
}
.dark-mode .sidebar-contest-stats, [data-theme=dark] .sidebar-contest-stats {
  background: #1f2937;
}
.dark-mode .sidebar-contest-stats .contest-stat-row, [data-theme=dark] .sidebar-contest-stats .contest-stat-row {
  border-bottom-color: #374151;
}
.dark-mode .sidebar-contest-stats .contest-stat-row .stat-label, [data-theme=dark] .sidebar-contest-stats .contest-stat-row .stat-label {
  color: #9ca3af;
}
.dark-mode .sidebar-contest-stats .contest-stat-row .stat-value, [data-theme=dark] .sidebar-contest-stats .contest-stat-row .stat-value {
  color: #e5e7eb;
}

.profile-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  -moz-transition: box-shadow 0.3s;
  transition: box-shadow 0.3s;
}
.profile-card:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
}
.profile-card .card-header {
  background-color: #f7f7f7;
  text-align: center;
  padding: 10px;
}
.profile-card .user-img {
  width: 80px;
  height: 80px;
}
.profile-card .card-body {
  padding: 20px;
  padding-bottom: 5px;
}
.profile-card .user-info {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  margin-bottom: 10px;
}
.profile-card .user-info-body {
  font-weight: bold;
}
.profile-card {
  /* Medals Container */
}
.profile-card .medals-container {
  display: -moz-box;
  display: flex;
  -moz-box-pack: center;
       justify-content: center;
  padding: 10px;
  padding-top: 0px;
  gap: 5px;
}
.profile-card {
  /* Medal Item */
}
.profile-card .medal-item {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  text-align: center;
}
.profile-card .medal-item img {
  width: 70px; /* Adjust size based on your actual image size */
  height: auto;
}
.profile-card .medal-count {
  background-color: hsla(30, 4%, 91%, 0.7);
  border-radius: 50%;
  bottom: 0.5rem;
  color: black;
  font-size: 1em;
  line-height: 1;
  padding: 0.8em 0;
  right: 0.5rem;
  text-align: center;
  width: 2.5em;
}

.content-description {
  line-height: 1.7em;
  font-size: 16px;
  font-family: "Segoe UI", "Noto Sans", Arial, "Lucida Grande", sans-serif;
  overflow-wrap: anywhere;
}
.content-description h1, .content-description h2, .content-description h3, .content-description h4, .content-description h5, .content-description .admonition-title, .content-description summary {
  font-family: "Noto Sans", "Segoe UI", Arial, "Lucida Grande", sans-serif;
}
.content-description img {
  max-width: 100%;
  height: auto;
}
.content-description pre, .content-description code, .content-description kbd, .content-description samp, .content-description span.code {
  page-break-inside: avoid;
}
.content-description .linenos pre {
  padding-right: 0;
}
.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 !important;
}
.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;
}

.content-description .highlighttable, .content-description .codehilitetable {
  width: 100% !important;
  border-collapse: collapse !important;
  border-spacing: 0 !important;
  margin: 1.5em 0 !important;
  border-radius: 8px;
  overflow: hidden;
  background: transparent !important;
}
.content-description .highlighttable pre, .content-description .codehilitetable pre {
  padding: 0.5em;
  padding-right: 0;
  margin: 0 !important;
  background-color: var(--md-code-bg-color, #2f3129);
  color: var(--md-code-fg-color, #f8f8f2);
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.content-description .highlighttable .linenos, .content-description .codehilitetable .linenos {
  width: auto;
  min-width: 3em;
  vertical-align: top !important;
}
.content-description .highlighttable .linenos pre, .content-description .codehilitetable .linenos pre {
  color: rgba(255, 255, 255, 0.4) !important;
  background-color: rgba(0, 0, 0, 0.15) !important;
  width: 100%;
  border: none !important;
  border-right: 1px solid var(--md-code-border-color, #444) !important;
  text-align: right !important;
  padding-right: 0.8em !important;
  padding-left: 0.5em !important;
}
.content-description .highlighttable .linenos pre span, .content-description .codehilitetable .linenos pre span {
  margin: 0 !important;
}
.content-description .highlighttable .code, .content-description .codehilitetable .code {
  width: 100%;
  vertical-align: top !important;
}
.content-description .highlighttable .code pre, .content-description .codehilitetable .code pre {
  padding-left: 1em !important;
  border: none !important;
  width: 100%;
}
.content-description .highlighttable .filename, .content-description .codehilitetable .filename {
  background: var(--md-filename-bg-color, black);
  color: var(--md-filename-fg-color, #cccccc);
  padding: 0.8em 1.2em;
  font-weight: 500;
  font-family: inherit;
  border-bottom: 2px solid var(--md-code-border-color, #444);
}
.content-description .highlighttable td, .content-description .codehilitetable td, .content-description .highlighttable th, .content-description .codehilitetable th {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  text-align: left !important;
  vertical-align: top !important;
}

textarea,
pre {
  -moz-tab-size: 4;
  tab-size: 4;
}

@media (min-width: 800px) {
  .content-description pre:has(code) {
    min-width: 3em;
  }
  #common-content {
    display: -moz-box;
    display: flex;
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
         flex-direction: row-reverse;
  }
  #content-left {
    -moz-box-flex: 86%;
         flex: 86%;
    width: 100%;
  }
  #content-left.split-common-content {
    width: 70%;
  }
  #content-left .content-description {
    width: 100%;
  }
  #content-right {
    -moz-box-flex: 14%;
         flex: 14%;
    max-width: 12.5em;
    min-width: 8em;
    padding-left: 1.5em;
    padding-top: 1em;
  }
  #content-right .info-float {
    float: none;
    padding: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 70px;
    width: 100%;
    max-height: -moz-calc(100vh - 80px);
    max-height: calc(100vh - 80px);
    overflow-y: auto;
    overflow-x: hidden;
  }
  #content-right .info-float::-webkit-scrollbar {
    width: 4px;
  }
  #content-right .info-float::-webkit-scrollbar-track {
    background: transparent;
  }
  #content-right .info-float::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 2px;
  }
  #content-right .info-float::-webkit-scrollbar-thumb:hover {
    background: #aaa;
  }
}
@media not all and (min-width: 800px) {
  #content-right .info-float {
    float: none;
    width: 100% !important;
    position: static !important;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
}
@media (max-width: 799px) {
  .content-description {
    font-size: 16px;
    line-height: 1.7em;
  }
}
a.view-pdf {
  padding-top: 0.6em;
  display: inline-block;
}

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

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

details summary {
  cursor: pointer;
}

/**
 * Sortable Formset Widget Styles
 */
.sortable-formset {
  margin-bottom: 1.5em;
}
.sortable-formset .sortable-table {
  width: 100%;
  border-collapse: collapse;
  background-color: white;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.sortable-formset .sortable-table th, .sortable-formset .sortable-table td {
  padding: 0.6em 0.75em;
  vertical-align: middle;
}
.sortable-formset .sortable-table thead th {
  background-color: #9c3706;
  color: white;
  border-bottom: none;
  font-weight: 600;
}
.sortable-formset .sortable-table tbody tr {
  border-bottom: 1px solid #ccc;
  background-color: white;
}
.sortable-formset .sortable-table tbody tr:hover {
  background-color: rgba(156, 55, 6, 0.05);
}
.sortable-formset .sortable-table tbody tr:last-child {
  border-bottom: none;
}
.sortable-formset .sortable-drag-header,
.sortable-formset .sortable-drag-cell {
  width: 50px;
  text-align: center;
}
.sortable-formset .drag-handle {
  cursor: -moz-grab;
  cursor: grab;
  color: #999;
  padding: 0.25em 0.5em;
  display: inline-block;
}
.sortable-formset .drag-handle:hover {
  color: #00007d;
}
.sortable-formset .drag-handle:active {
  cursor: -moz-grabbing;
  cursor: grabbing;
}
.sortable-formset .row-number {
  display: inline-block;
  min-width: 1.5em;
  color: #666;
  font-weight: 500;
}
.sortable-formset .sortable-delete-header,
.sortable-formset .sortable-delete-cell {
  width: 60px;
  text-align: center;
}
.sortable-formset .remove-row-btn {
  background: none;
  border: none;
  padding: 0.25em 0.5em;
  cursor: pointer;
  opacity: 0.6;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.sortable-formset .remove-row-btn:hover {
  opacity: 1;
}
.sortable-formset .remove-row-btn i {
  font-size: 1.1em;
}
.sortable-formset .sortable-placeholder {
  height: 45px;
  background-color: rgba(156, 55, 6, 0.1);
  border: 2px dashed #9c3706;
}
.sortable-formset .ui-sortable-helper {
  background-color: white;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}
.sortable-formset .ui-sortable-helper .drag-handle {
  cursor: -moz-grabbing;
  cursor: grabbing;
  color: #9c3706;
}
.sortable-formset .sortable-template,
.sortable-formset .sortable-deleted {
  display: none !important;
}
.sortable-formset .sortable-actions {
  margin-top: 1em;
}
.sortable-formset .add-row-btn {
  background-color: #9c3706;
  color: white;
  border: none;
  padding: 0.5em 1.2em;
  border-radius: 4px;
  cursor: pointer;
  -moz-transition: background-color 0.2s, transform 0.1s, -moz-transform 0.1s;
  transition: background-color 0.2s, transform 0.1s;
  transition: background-color 0.2s, transform 0.1s, -moz-transform 0.1s;
  font-weight: 500;
}
.sortable-formset .add-row-btn:hover {
  background-color: rgb(116.7111111111, 41.1481481481, 4.4888888889);
  -moz-transform: translateY(-1px);
       transform: translateY(-1px);
}
.sortable-formset .add-row-btn:active {
  -moz-transform: translateY(0);
       transform: translateY(0);
}
.sortable-formset .add-row-btn i {
  margin-right: 0.5em;
}
.sortable-formset .field-error {
  font-size: 0.85em;
  margin-top: 0.25em;
}
.sortable-formset input[type=number] {
  width: 5em;
}
.sortable-formset .sortable-col-problem {
  min-width: 200px;
  max-width: 350px;
}

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

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

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

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

.gplus-this i {
  color: #dd4b38;
}

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

.button {
  -moz-transition: 0.3s all ease;
  transition: 0.3s all ease;
  -moz-box-align: center;
       align-items: center;
  background-clip: padding-box;
  background-color: #9c3706;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  box-shadow: rgba(0, 0, 0, 0.02) 0 1px 3px 0;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  color: #fff !important;
  cursor: pointer;
  display: block;
  font-family: system-ui, -apple-system, system-ui, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  -moz-box-pack: center;
       justify-content: center;
  line-height: 1.25;
  margin: 0;
  min-height: 3rem;
  padding: -moz-calc(0.875rem - 1px) -moz-calc(1.5rem - 1px);
  padding: calc(0.875rem - 1px) calc(1.5rem - 1px);
  position: relative;
  text-decoration: none;
  -moz-transition: all 250ms;
  transition: all 250ms;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  text-align: center;
  width: auto;
}
.button.disabled, .button[disabled] {
  background: -moz-linear-gradient(top, #9e9e9e 0, #7f7f7f 100%) repeat-x !important;
  background: linear-gradient(to bottom, #9e9e9e 0, #7f7f7f 100%) repeat-x !important;
  border-color: #7f7f7f !important;
  cursor: not-allowed;
}
.button.small {
  min-height: auto;
  padding: -moz-calc(0.5rem - 1px) -moz-calc(1rem - 1px);
  padding: calc(0.5rem - 1px) calc(1rem - 1px);
}
.button.btn-gray {
  background: #666;
}
.button.btn-hovergray:hover {
  background: #ededed;
}
.button.btn-green {
  background: #28a745;
}
.button.btn-green:hover {
  background: #218838;
}
.button.btn-darkred {
  background: #8b0000;
}
.button.btn-darkred:hover {
  background: #a52a2a;
}
.button.btn-midnightblue {
  background: #191970;
}
.button.btn-midnightblue:hover {
  background: #00008b;
}
.button.btn-darkGreen {
  background: #9c3706;
}
.button.unselectable.button.full.small {
  margin: 0 auto;
}

.button:hover {
  background-color: #9c3706;
  box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;
  -moz-transform: translateY(-1px);
       transform: translateY(-1px);
}

.button:focus {
  background-color: #9c3706;
  box-shadow: rgba(0, 0, 0, 0.1) 0 4px 12px;
}

.button:active {
  background-color: #9c3706;
  box-shadow: rgba(0, 0, 0, 0.06) 0 2px 4px;
  -moz-transform: translateY(0);
       transform: translateY(0);
}

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

input[type=text], input[type=password], input[type=email], input[type=number], input[type=datetime-local], input[type=date] {
  padding: 4px 8px;
  color: #555;
  background: #fff none;
  border: 1px solid #ccc;
  border-radius: 0.5em;
  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=number] {
  padding: 2px 0 2px 5px;
}

textarea {
  padding: 8px;
  background: #fff none;
  border: 1px solid #ccc;
  border-radius: 0.5em;
  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: #333;
}

input[type=text]:hover, input[type=password]: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: #333;
  border-width: unset;
  outline: 0;
}

input[type=text]:focus, input[type=password]: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: -5px;
  right: -8px;
  display: block;
  font-size: 12px;
  cursor: pointer;
  position: absolute;
  padding: 5px 8px;
  font-family: system-ui, "Noto Sans";
}
.btn-clipboard:hover {
  border-radius: 0.5em;
  border: 1px solid #e1e1e8;
  background-color: #fff;
}

.copy-clipboard {
  position: relative;
}

.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: #9c3706;
  cursor: default;
  font-weight: bold;
  border-bottom: 3px solid #9c3706;
  background: transparent;
}

.tabs {
  margin: 0 0 8px;
  width: 100%;
  display: -moz-box;
  display: flex;
}
.tabs.tabs-no-flex {
  display: block;
}
.tabs .tab .tab-icon {
  padding-right: 0.3em;
  color: #666;
}
.tabs .tab a, .tabs .tab span {
  border-top-width: 3px !important;
}
.tabs .tab.active a, .tabs .tab.active span {
  border-top-color: white !important;
}
.tabs .tab.active .tab-icon {
  color: #333;
}
.tabs h2 {
  color: #333;
}
.tabs > ul {
  margin: 0;
  padding: 0;
  list-style: outside none none;
  display: -moz-box;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
}
.tabs > ul::-webkit-scrollbar {
  width: 0.1rem;
  background-color: transparent;
}
.tabs > ul::-webkit-scrollbar-thumb {
  background-color: transparent;
}
.tabs > ul > li {
  position: relative;
  display: block;
}
.tabs > ul > li > a, .tabs > ul > li > span {
  margin-right: 10px;
  line-height: 1.42857;
  position: relative;
  display: block;
  padding: 5px;
  color: #555;
  text-decoration: none;
  white-space: nowrap;
  font-weight: bold;
}
.tabs > ul > li > a:hover, .tabs > ul > li > span:hover {
  border-bottom: 3px solid #008000;
}

ul.pagination a:hover {
  color: #fff;
  background: #cc4e17;
}

ul.pagination {
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  display: -moz-box;
  display: flex;
  padding-left: 0;
  margin: 0;
  border-radius: 0.5em;
}
ul.pagination > li {
  display: inline;
}
ul.pagination > li > a, ul.pagination > li > span {
  position: relative;
  float: left;
  padding: 4px 12px;
  margin-right: 5px;
  font-weight: bold;
  line-height: 1.42857;
  text-decoration: none;
  color: #9c3706;
  background-color: #fff;
  border: 2px solid #9c3706;
  border-radius: 10px;
}
ul.pagination > .disabled-page > a {
  color: #f1efef;
  background-color: #ab6247;
  border-color: #6a240b;
}
ul.pagination > .disabled-page > span {
  color: #f1efef;
  background-color: #ab6247;
  border-color: #6a240b;
}
ul.pagination > .active-page > a {
  z-index: 2;
  color: #fff;
  background-color: #9c3706;
  border-color: transparent;
  cursor: default;
}
ul.pagination > .active-page > span {
  z-index: 2;
  color: #fff;
  background-color: white;
  border-color: transparent;
  cursor: default;
}

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

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}

.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: #333;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: 0.2;
}

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

.close:focus, .close:hover {
  color: #333;
  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 #eee;
  margin-top: 0.8em;
  padding-top: 0.5em;
  text-align: right;
}

ul.select2-selection__rendered {
  padding: 0 5px !important;
}

.sidebox h3 {
  border-radius: 0.5em 0.5em 0 0;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 7px;
  font-size: 1.3em;
  font-weight: bold;
  background: #fff;
  display: -moz-box;
  display: flex;
}
.sidebox h3 .fa {
  background: #9c3706;
  color: #fff;
  padding: 4px;
  margin-right: 8px;
  border-radius: 5px;
  font-size: smaller;
}

.sidebox-content {
  border-top: none;
  padding: 1px 0.5em 3px;
  background: #fff;
  border-radius: 0 0 0.5em 0.5em;
}
.sidebox-content.sidebox-table {
  border: none;
  padding: 0;
}
.sidebox-content.sidebox-table .table {
  margin: 0 !important;
}

.sidebox {
  border-top-left-radius: 0.5em;
  border-top-right-radius: 0.5em;
  margin-bottom: 1.5em;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}

.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: #fff;
  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: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}
.messages li.info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}
.messages li.success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}
.messages li.warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.messages li.error {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.spoiler-text {
  border: 1px solid #333;
  padding: 0.5em;
  margin-top: 0.5em;
  border-radius: 5px;
  background: #def;
}

.spoiler-summary {
  padding-left: 0.5em;
  text-decoration: underline;
}

.control-button {
  color: #333 !important;
  border: 0;
}

ul.errorlist {
  margin: 0;
  text-align: right;
  list-style: none;
  padding: 0;
  color: #ff0000;
  margin-bottom: 3px;
}

.registration-form .sortedm2m-container, .registration-form .sortedm2m-container p.selector-filter {
  width: 300px;
}
.registration-form .sortedm2m-container p.selector-filter input {
  width: 262px;
}
.registration-form ul.sortedm2m {
  width: 284px;
  min-height: 100px;
  max-height: 200px;
}
.registration-form .sortedm2m-container, .registration-form .sortedm2m-container p.selector-filter {
  width: 300px;
}
.registration-form .sortedm2m-container p.selector-filter input {
  width: 262px;
}
.registration-form ul.sortedm2m {
  width: 284px;
  min-height: 70px;
  max-height: 200px;
  height: 70px;
}
.registration-form .inline-header {
  float: left;
  font-size: 1.1em;
  padding: 4px 8px;
  padding-left: 0;
}
.registration-form .block-header {
  color: #555;
  font-size: 1.1em;
  font-weight: 600;
  padding-bottom: 0.2em;
  padding-left: 2px;
  margin-top: 0.75em;
}
.registration-form .fullwidth {
  display: block;
  overflow: hidden;
}
.registration-form .fullwidth input {
  width: 100%;
}
.registration-form .fullwidth-error input {
  width: 100%;
  border-color: #ff0000;
}
.registration-form .form-field-error {
  color: #ff0000;
}
.registration-form small {
  font-size: 0.7em;
  padding-left: 0.6em;
}
.registration-form #edit-form {
  border: unset;
  background: unset;
  max-width: 450px;
  width: 450px;
}
.registration-form .full-textfield {
  padding-top: 0.5em;
}
.registration-form .tos-section {
  display: inline-block;
  padding-right: 1em;
}
.registration-form .pass-req {
  padding: 0;
}

#center-float {
  display: inline-block;
  text-align: initial;
  width: 450px;
}

#login-panel {
  display: inline-block;
  position: relative;
  margin: 5em auto auto -10em;
  top: 40%;
  left: 50%;
}
#login-panel h4 {
  padding-top: 1em;
}
#login-panel .social {
  display: inline;
  font-size: 2.3em;
  float: none;
}
#login-panel .google-icon i {
  color: #dd4b38;
}
#login-panel .facebook-icon i {
  color: #133783;
}
#login-panel .github-icon i {
  color: #333;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    -moz-transition: none;
    transition: none;
  }
}
.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

.d-flex {
  display: -moz-box !important;
  display: flex !important;
}

.justify-content-center {
  -moz-box-pack: center !important;
       justify-content: center !important;
}

.align-items-center {
  -moz-box-align: center !important;
       align-items: center !important;
}

.align-content-center {
  align-content: center !important;
}

.align-self-center {
  -ms-grid-row-align: center !important;
  align-self: center !important;
}

.link-row {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 6px;
  font-weight: normal;
  cursor: pointer;
  -moz-transition: background-color 0.3s;
  transition: background-color 0.3s;
}
.link-row a {
  color: inherit;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  width: 100%;
  text-decoration: none;
}
.link-row a i {
  width: 1.5em;
}
.link-row span {
  -moz-box-flex: 1;
       flex-grow: 1;
}
.link-row:hover {
  color: #9c3706;
  background-color: #f8f8f2;
}

a {
  -moz-transition: 0.3s all ease;
  transition: 0.3s all ease;
}

button:hover, button:focus {
  text-decoration: none;
  outline: none;
  box-shadow: none;
}

.btn {
  padding: 8px 12px;
  cursor: pointer;
  border-width: 1px;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 500;
  box-shadow: 0 10px 20px -6px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  position: relative;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn span {
  font-size: 15px;
  margin-left: -20px;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn .icon {
  position: absolute;
  top: 0;
  right: 0;
  width: 45px;
  bottom: 0;
  background: #fff;
}
.btn .icon i {
  font-size: 20px;
}
.btn .icon.icon-round {
  border-radius: 50%;
}
.btn.btn-round {
  border-radius: 40px;
}
.btn:hover, .btn:active, .btn:focus {
  outline: none;
}
.btn:hover span, .btn:active span, .btn:focus span {
  margin-left: -10px;
}
.btn.btn-primary {
  color: #fff;
}
.btn.btn-primary .icon i {
  color: #28a745;
}
.btn.btn-disabled {
  color: #fff;
  background: #666;
  border-color: #666;
}

.setting-button {
  height: 2.3em;
  width: 2.3em;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-pack: center;
       justify-content: center;
  -moz-box-align: center;
       align-items: center;
  cursor: pointer;
  padding-top: 2px;
}

.user-setting-button {
  height: 2.3em;
  width: 2.5em;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-pack: center;
       justify-content: center;
  -moz-box-align: center;
       align-items: center;
  cursor: pointer;
  padding-top: 2px;
}

@media (max-width: 799px) {
  .tabs {
    margin-left: 1em;
    margin-right: 1em;
  }
}
.featherlight.image-widget-lightbox .featherlight-content {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  min-width: unset !important;
  max-width: 90vw;
  max-height: 90vh;
  overflow: hidden;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  -moz-transform: translate(-50%, -50%) !important;
       transform: translate(-50%, -50%) !important;
  margin: 0 !important;
}
.featherlight.image-widget-lightbox .featherlight-content img {
  display: block;
  max-width: 85vw;
  max-height: 85vh;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.featherlight.image-widget-lightbox .featherlight-close-icon {
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  top: 10px;
  right: 10px;
}

.image-file-widget {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 12px;
  padding: 16px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 8px;
  max-width: 300px;
}
.image-file-widget .current-image {
  display: -moz-box;
  display: flex;
  -moz-box-pack: center;
       justify-content: center;
  padding: 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.image-file-widget .current-image a {
  display: block;
  line-height: 0;
  position: relative;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
.image-file-widget .current-image img {
  border-radius: 8px;
  object-fit: cover;
  -moz-transition: transform 0.2s, box-shadow 0.2s, -moz-transform 0.2s;
  transition: transform 0.2s, box-shadow 0.2s;
  transition: transform 0.2s, box-shadow 0.2s, -moz-transform 0.2s;
}
.image-file-widget .current-image .image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  border-radius: 8px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  opacity: 0;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.image-file-widget .current-image .image-overlay i {
  color: #fff;
  font-size: 1.5em;
}
.image-file-widget .current-image a:hover img {
  -moz-transform: scale(1.02);
       transform: scale(1.02);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.image-file-widget .current-image a:hover .image-overlay {
  opacity: 1;
}
.image-file-widget .image-actions {
  display: -moz-box;
  display: flex;
  gap: 12px;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
}
.image-file-widget .hidden-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.image-file-widget .change-image {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  -moz-transition: border-color 0.2s, background 0.2s;
  transition: border-color 0.2s, background 0.2s;
  margin: 0;
}
.image-file-widget .change-image:hover {
  border-color: #9c3706;
  background: #fef9f7;
}
.image-file-widget .change-image i {
  color: #9c3706;
  font-size: 1.1em;
}
.image-file-widget .change-image span {
  font-weight: 500;
  color: #666;
}
.image-file-widget .clear-image {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  -moz-transition: background 0.2s, border-color 0.2s;
  transition: background 0.2s, border-color 0.2s;
  margin: 0;
}
.image-file-widget .clear-image:hover {
  background: #fff5f5;
  border-color: #e74c3c;
}
.image-file-widget .clear-image:hover i {
  color: #e74c3c;
}
.image-file-widget .clear-image input[type=checkbox] {
  margin: 0;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.image-file-widget .clear-image i {
  color: #999;
  -moz-transition: color 0.2s;
  transition: color 0.2s;
}
.image-file-widget .clear-image span {
  font-weight: 500;
  color: #666;
}
.image-file-widget .upload-area {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  gap: 12px;
  padding: 24px;
  background: #fff;
  border: 2px dashed #ccc;
  border-radius: 8px;
  cursor: pointer;
  -moz-transition: border-color 0.2s, background 0.2s;
  transition: border-color 0.2s, background 0.2s;
}
.image-file-widget .upload-area:hover {
  border-color: #9c3706;
  background: #fef9f7;
}
.image-file-widget .upload-area:hover i {
  color: #9c3706;
}
.image-file-widget .upload-area i {
  font-size: 2.5em;
  color: #999;
  -moz-transition: color 0.2s;
  transition: color 0.2s;
}
.image-file-widget .upload-area span {
  font-weight: 500;
  color: #666;
}

.pdf-file-widget {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 12px;
  padding: 16px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 8px;
}
.pdf-file-widget .current-file {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.pdf-file-widget .current-file .pdf-icon {
  color: #e74c3c;
  font-size: 1.8em;
  flex-shrink: 0;
}
.pdf-file-widget .current-file a {
  text-decoration: none;
  word-break: break-all;
  font-weight: 500;
}
.pdf-file-widget .current-file a:hover {
  text-decoration: underline;
}
.pdf-file-widget .file-actions {
  display: -moz-box;
  display: flex;
  gap: 16px;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
}
.pdf-file-widget .clear-file {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  -moz-transition: background 0.2s;
  transition: background 0.2s;
}
.pdf-file-widget .clear-file:hover {
  background: #fff5f5;
  border-color: #e74c3c;
}
.pdf-file-widget .clear-file input[type=checkbox] {
  margin: 0;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.pdf-file-widget .clear-file label {
  margin: 0;
  font-weight: 500;
  color: #666;
  cursor: pointer;
}
.pdf-file-widget .change-file {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
}
.pdf-file-widget .change-file span {
  font-weight: 500;
  color: #666;
}
.pdf-file-widget .change-file input[type=file] {
  cursor: pointer;
}

.direct-upload-widget {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 12px;
  padding: 16px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 8px;
  max-width: 300px;
}
.direct-upload-widget .current-preview {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 12px;
  padding: 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.direct-upload-widget .current-preview:has(img) {
  -moz-box-pack: center;
       justify-content: center;
}
.direct-upload-widget .current-preview:has(img) a {
  display: block;
  line-height: 0;
  position: relative;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
.direct-upload-widget .current-preview:has(img) img {
  border-radius: 8px;
  object-fit: cover;
  -moz-transition: transform 0.2s, box-shadow 0.2s, -moz-transform 0.2s;
  transition: transform 0.2s, box-shadow 0.2s;
  transition: transform 0.2s, box-shadow 0.2s, -moz-transform 0.2s;
}
.direct-upload-widget .current-preview:has(img) .image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  border-radius: 8px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  opacity: 0;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.direct-upload-widget .current-preview:has(img) .image-overlay i {
  color: #fff;
  font-size: 1.5em;
}
.direct-upload-widget .current-preview:has(img) a:hover img {
  -moz-transform: scale(1.02);
       transform: scale(1.02);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.direct-upload-widget .current-preview:has(img) a:hover .image-overlay {
  opacity: 1;
}
.direct-upload-widget .current-preview .pdf-icon {
  color: #e74c3c;
  font-size: 1.8em;
  flex-shrink: 0;
}
.direct-upload-widget .current-preview a:not(:has(img)) {
  text-decoration: none;
  word-break: break-all;
  font-weight: 500;
}
.direct-upload-widget .current-preview a:not(:has(img)):hover {
  text-decoration: underline;
}
.direct-upload-widget .preview-actions {
  display: -moz-box;
  display: flex;
  gap: 12px;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
}
.direct-upload-widget .hidden-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.direct-upload-widget .change-btn {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  -moz-transition: border-color 0.2s, background 0.2s;
  transition: border-color 0.2s, background 0.2s;
  margin: 0;
}
.direct-upload-widget .change-btn:hover {
  border-color: #9c3706;
  background: #fef9f7;
}
.direct-upload-widget .change-btn i {
  color: #9c3706;
  font-size: 1.1em;
}
.direct-upload-widget .change-btn span {
  font-weight: 500;
  color: #333;
}
.direct-upload-widget .delete-btn {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  -moz-transition: background 0.2s, border-color 0.2s;
  transition: background 0.2s, border-color 0.2s;
  font-size: inherit;
  font-family: inherit;
}
.direct-upload-widget .delete-btn:hover {
  background: #fff5f5;
  border-color: #e74c3c;
}
.direct-upload-widget .delete-btn:hover i, .direct-upload-widget .delete-btn:hover span {
  color: #e74c3c;
}
.direct-upload-widget .delete-btn i {
  color: #999;
  -moz-transition: color 0.2s;
  transition: color 0.2s;
}
.direct-upload-widget .delete-btn span {
  font-weight: 500;
  color: #666;
  -moz-transition: color 0.2s;
  transition: color 0.2s;
}
.direct-upload-widget .upload-area {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 24px;
  background: #fff;
  border: 2px dashed #ccc;
  border-radius: 8px;
  cursor: pointer;
  -moz-transition: border-color 0.2s, background 0.2s;
  transition: border-color 0.2s, background 0.2s;
  text-align: center;
}
.direct-upload-widget .upload-area:hover {
  border-color: #9c3706;
  background: #fef9f7;
}
.direct-upload-widget .upload-area i {
  font-size: 2em;
  color: #9c3706;
}
.direct-upload-widget .upload-area span {
  font-weight: 500;
  color: #666;
}
.direct-upload-widget .upload-progress {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 8px;
  padding: 12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 6px;
  margin-top: 12px;
}
.direct-upload-widget .upload-progress .progress-bar-container {
  height: 8px;
  background: #eee;
  border-radius: 4px;
  overflow: hidden;
}
.direct-upload-widget .upload-progress .progress-bar-fill {
  height: 100%;
  background: #9c3706;
  border-radius: 4px;
  width: 0%;
  -moz-transition: width 0.2s ease;
  transition: width 0.2s ease;
}
.direct-upload-widget .upload-progress .progress-text {
  font-size: 0.85em;
  color: #666;
  text-align: center;
}
.direct-upload-widget .upload-error {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 12px;
  background: #fff5f5;
  border: 1px solid #e74c3c;
  border-radius: 6px;
  color: #e74c3c;
  margin-top: 12px;
}
.direct-upload-widget .upload-error .error-message {
  -moz-box-flex: 1;
       flex: 1;
}
.direct-upload-widget .upload-error .retry-btn {
  padding: 4px 12px;
  border: 1px solid #e74c3c;
  border-radius: 4px;
  background: #fff;
  color: #e74c3c;
  cursor: pointer;
  font-size: 0.85em;
}
.direct-upload-widget .upload-error .retry-btn:hover {
  background: #e74c3c;
  color: #fff;
}
.direct-upload-widget .upload-status {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 6px;
  font-size: 0.9em;
  margin-top: 12px;
  -moz-animation: fadeIn 0.2s ease;
       animation: fadeIn 0.2s ease;
}
.direct-upload-widget .upload-status i {
  font-size: 1.1em;
}
.direct-upload-widget .upload-status.upload-status-success {
  background: #d4edda;
  border: 1px solid #c3e6cb;
  color: #155724;
}
.direct-upload-widget .upload-status.upload-status-error {
  background: #f8d7da;
  border: 1px solid #f5c6cb;
  color: #721c24;
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
    -moz-transform: translateY(-5px);
         transform: translateY(-5px);
  }
  to {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -moz-transform: translateY(-5px);
         transform: translateY(-5px);
  }
  to {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
}

.comment-area .user-img {
  width: 40px;
  height: 40px;
  position: relative;
  z-index: 2;
}
.comment-area .comment {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}
.comment-area .top-level-comments {
  padding: 0;
}
.comment-area .comment-wrapper {
  display: -moz-box;
  display: flex;
  gap: 12px;
  padding: 12px 0;
  position: relative;
}
.comment-area .comment-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  padding: 0;
  margin-bottom: 0;
}
.comment-area .header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  font-size: 0.9rem;
  flex-wrap: wrap;
}
.comment-area .header .author {
  font-weight: 600;
  display: -moz-inline-box;
  display: inline-flex;
}
.comment-area .header .author a {
  color: inherit;
  text-decoration: none;
}
.comment-area .header .time {
  opacity: 0.7;
  font-size: 0.85rem;
}
.comment-area .header .comment-edits {
  font-size: 0.85rem;
  opacity: 0.7;
}
.comment-area .header .comment-edits a {
  color: #9c3706;
  text-decoration: none;
  padding: 0 4px;
}
.comment-area .header .comment-edits a:hover {
  text-decoration: underline;
}
.comment-area .body-header {
  background: #eeeeee;
  border-radius: 18px;
  border: none;
  padding: 10px 14px;
}
.comment-area .body .comment-body {
  font-size: 0.95rem;
  line-height: 1.5;
  word-wrap: break-word;
}
.comment-area .body .comment-body p {
  -webkit-margin-before: 0.3em;
          margin-block-start: 0.3em;
  -webkit-margin-after: 0.3em;
          margin-block-end: 0.3em;
}
.comment-area .body .comment-body p:first-child {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
.comment-area .body .comment-body p:last-child {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
.comment-area .action-bar {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 4px;
  margin-top: 6px;
  margin-left: 4px;
}
.comment-area .action-bar .vote {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  background: transparent;
  border-radius: 20px;
  padding: 0;
}
.comment-area .action-bar .upvote-link,
.comment-area .action-bar .downvote-link {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  width: 28px;
  height: 28px;
  font-size: 1rem;
  cursor: pointer;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
  color: #6b7280;
  border-radius: 50%;
  text-decoration: none;
}
.comment-area .action-bar .upvote-link:hover,
.comment-area .action-bar .downvote-link:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #374151;
}
.comment-area .action-bar .upvote-link i,
.comment-area .action-bar .downvote-link i {
  -moz-transition: transform 0.15s ease, -moz-transform 0.15s ease;
  transition: transform 0.15s ease;
  transition: transform 0.15s ease, -moz-transform 0.15s ease;
}
.comment-area .action-bar .upvote-link:hover i,
.comment-area .action-bar .downvote-link:hover i {
  -moz-transform: scale(1.15);
       transform: scale(1.15);
}
.comment-area .action-bar .upvote-link:active,
.comment-area .action-bar .downvote-link:active {
  -moz-transform: scale(0.95);
       transform: scale(0.95);
}
.comment-area .action-bar .upvote-link.disabled,
.comment-area .action-bar .downvote-link.disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
.comment-area .action-bar .upvote-link.voted {
  color: #ff4500;
  opacity: 1;
  background: rgba(255, 69, 0, 0.1);
}
.comment-area .action-bar .upvote-link.voted:hover {
  background: rgba(255, 69, 0, 0.15);
}
.comment-area .action-bar .downvote-link.voted {
  color: #7193ff;
  opacity: 1;
  background: rgba(113, 147, 255, 0.1);
}
.comment-area .action-bar .downvote-link.voted:hover {
  background: rgba(113, 147, 255, 0.15);
}
.comment-area .comment-score {
  font-size: 0.85rem;
  font-weight: 600;
  min-width: 20px;
  text-align: center;
  padding: 0 2px;
}
.comment-area .action-bar .action-link {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 5px;
  color: #6b7280;
  font-weight: 600;
  font-size: 0.8rem;
  text-decoration: none;
  padding: 6px 10px;
  border-radius: 6px;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.comment-area .action-bar .action-link i {
  font-size: 0.9rem;
  -moz-transition: transform 0.15s ease, -moz-transform 0.15s ease;
  transition: transform 0.15s ease;
  transition: transform 0.15s ease, -moz-transform 0.15s ease;
}
.comment-area .action-bar .action-link:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #374151;
}
.comment-area .action-bar .action-link:hover i {
  -moz-transform: scale(1.1);
       transform: scale(1.1);
}
.comment-area .action-bar .action-link:active {
  -moz-transform: scale(0.95);
       transform: scale(0.95);
}
.comment-area .action-bar .reply-link:hover {
  color: #9c3706;
  background: rgba(156, 55, 6, 0.08);
}
.comment-area .action-bar .share-link:hover {
  color: #1877f2;
  background: rgba(24, 119, 242, 0.08);
}
.comment-area .action-bar .edit-link:hover {
  color: #16a34a;
  background: rgba(22, 163, 74, 0.08);
}
.comment-area .bad-comment {
  opacity: 0.5;
}
.comment-area .bad-comment .body-header {
  background: rgba(0, 0, 0, 0.03);
}
.comment-area .bad-comment:hover {
  opacity: 0.8;
}
.comment-area .bad-comment-body {
  font-style: italic;
  opacity: 0.7;
  font-size: 0.9rem;
}
.comment-area .bad-comment-body a {
  color: #9c3706;
}
.comment-area .show_more_reply {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  margin-top: 8px;
  margin-left: 4px;
  color: #9c3706;
  font-weight: 600;
  font-size: 0.85rem;
  text-decoration: none;
  padding: 6px 12px;
  border-radius: 6px;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.comment-area .show_more_reply svg {
  width: 16px;
  height: 16px;
}
.comment-area .show_more_reply:hover {
  background: rgba(156, 55, 6, 0.08);
}
.comment-area .thread-line {
  position: absolute;
  left: 19px;
  top: 52px;
  bottom: 0;
  width: 2px;
  background: #ccc;
  cursor: pointer;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
  z-index: 1;
}
.comment-area .thread-line:hover {
  background: #9c3706;
}
.comment-area .ul-comments {
  margin-left: 20px;
  padding-left: 32px;
  position: relative;
  list-style: none;
}
.comment-area .ul-comments::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #d1d5db;
  -moz-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border-radius: 1px;
}
.comment-area .ul-comments:hover::before {
  background: darkgray;
}
.comment-area .ul-comments .comment {
  position: relative;
}
.comment-area .ul-comments .comment-wrapper {
  padding-left: 0;
}
.comment-area .ul-comments .user-img {
  width: 32px;
  height: 32px;
}
.comment-area .ul-comments .ul-comments {
  margin-left: 16px;
  padding-left: 28px;
}
.comment-area .ul-comments .ul-comments::before {
  left: 0;
}
.comment-area .ul-comments .ul-comments .user-img {
  width: 28px;
  height: 28px;
}
.comment-area .ul-comments .ul-comments .ul-comments {
  margin-left: 12px;
  padding-left: 24px;
}
.comment-area .ul-comments .ul-comments .ul-comments::before {
  left: 0;
}
.comment-area .ul-comments .ul-comments .ul-comments .user-img {
  width: 24px;
  height: 24px;
}
.comment-area .new-comment-minimal {
  margin: 16px 0;
}
.comment-area .new-comment-minimal .editor-container {
  width: 100%;
}
.comment-area .inline-edit-container {
  margin-top: 8px;
}
.comment-area .inline-edit-container .wmd-wrapper {
  margin: 0;
}
.comment-area .inline-edit-container .wmd-wrapper:not(.wmd-wrapper-minimal) .wmd-input {
  min-height: 100px;
  max-height: 400px;
}
.comment-area .inline-edit-container .wmd-preview {
  margin-top: 10px;
}
.comment-area .reply-comment-minimal {
  margin: 12px 0;
  padding-left: 52px;
}
.comment-area .reply-comment-minimal .editor-container {
  width: 100%;
}
.comment-area .show_more_comment {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  color: #9c3706;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 10px 16px;
  border-radius: 8px;
  margin: 8px 0;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.comment-area .show_more_comment svg {
  width: 18px;
  height: 18px;
}
.comment-area .show_more_comment:hover {
  background: rgba(156, 55, 6, 0.08);
}
.comment-area .highlight_comment {
  background: rgba(156, 55, 6, 0.05);
  padding-left: 12px;
  margin-left: -12px;
  border-radius: 0 8px 8px 0;
}
@media (max-width: 799px) {
  .comment-area .user-img {
    width: 36px;
    height: 36px;
  }
  .comment-area .comment-wrapper {
    gap: 10px;
    padding: 10px 0;
  }
  .comment-area .body-header {
    padding: 8px 12px;
  }
  .comment-area .action-bar {
    gap: 2px;
    flex-wrap: wrap;
  }
  .comment-area .action-bar .action-link {
    padding: 5px 8px;
    font-size: 0.75rem;
  }
  .comment-area .action-bar .action-link i {
    font-size: 0.85rem;
  }
  .comment-area .ul-comments {
    margin-left: 16px;
    padding-left: 24px;
  }
  .comment-area .ul-comments::before {
    left: 0;
  }
  .comment-area .ul-comments .user-img {
    width: 28px;
    height: 28px;
  }
  .comment-area .ul-comments .ul-comments {
    margin-left: 12px;
    padding-left: 20px;
  }
  .comment-area .ul-comments .ul-comments .user-img {
    width: 24px;
    height: 24px;
  }
}

.comment-header-wrapper {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding-top: 0.5rem;
}
.comment-header-wrapper h2 {
  font-size: 1rem;
  font-weight: 600;
  margin: 0;
}
.comment-header-wrapper h2 i {
  font-size: 0.9rem;
}

.comment-sort-controls {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.6em;
  margin-left: auto;
}
.comment-sort-controls .sort-label {
  font-size: 0.9rem;
  font-weight: 500;
  white-space: nowrap;
}
.comment-sort-controls .comment-sort-dropdown {
  position: relative;
}
.comment-sort-controls .comment-sort-dropdown .current-sort-text {
  font-size: 0.9rem;
}
.comment-sort-controls .comment-sort-dropdown .hidden-select {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
.comment-sort-controls .comment-sort-dropdown .hidden-select option {
  background: #9c3706;
  color: white;
  padding: 0.3em;
}
.comment-sort-controls .comment-sort-dropdown i.fa-chevron-down {
  font-size: 0.8rem;
  opacity: 0.8;
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -moz-transform 0.2s ease;
}
.comment-sort-controls .comment-sort-dropdown:hover i.fa-chevron-down {
  -moz-transform: rotate(180deg);
       transform: rotate(180deg);
}

@media (max-width: 799px) {
  .comment-header-wrapper {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    gap: 1rem;
    -moz-box-align: start;
         align-items: flex-start;
  }
  .comment-sort-controls {
    margin-left: 0;
  }
  .comment-sort-controls .sort-label {
    font-size: 0.85rem;
  }
  .comment-sort-controls .comment-sort-dropdown .current-sort-text {
    font-size: 0.85rem;
  }
  .comment-sort-controls .comment-sort-dropdown i.fa-chevron-down {
    font-size: 0.75rem;
  }
}
.dark-mode .comment-area .header,
[data-theme=dark] .comment-area .header {
  color: #e4e6eb;
}
.dark-mode .comment-area .header .author,
[data-theme=dark] .comment-area .header .author {
  color: #e4e6eb;
}
.dark-mode .comment-area .header .time,
.dark-mode .comment-area .header .comment-edits,
[data-theme=dark] .comment-area .header .time,
[data-theme=dark] .comment-area .header .comment-edits {
  color: #e4e6eb;
}
.dark-mode .comment-area .body-header,
[data-theme=dark] .comment-area .body-header {
  background: rgba(255, 255, 255, 0.05);
}
.dark-mode .comment-area .body .comment-body,
[data-theme=dark] .comment-area .body .comment-body {
  color: #e4e6eb;
}
.dark-mode .comment-area .body .comment-body code,
[data-theme=dark] .comment-area .body .comment-body code {
  background: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-area .body .comment-body pre,
[data-theme=dark] .comment-area .body .comment-body pre {
  background: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-area .action-bar .upvote-link,
.dark-mode .comment-area .action-bar .downvote-link,
[data-theme=dark] .comment-area .action-bar .upvote-link,
[data-theme=dark] .comment-area .action-bar .downvote-link {
  color: #e4e6eb;
}
.dark-mode .comment-area .action-bar .upvote-link:hover,
.dark-mode .comment-area .action-bar .downvote-link:hover,
[data-theme=dark] .comment-area .action-bar .upvote-link:hover,
[data-theme=dark] .comment-area .action-bar .downvote-link:hover {
  background: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-area .comment-score,
[data-theme=dark] .comment-area .comment-score {
  color: #e4e6eb;
}
.dark-mode .comment-area .action-bar .action-link,
[data-theme=dark] .comment-area .action-bar .action-link {
  color: #e4e6eb;
}
.dark-mode .comment-area .action-bar .action-link:hover,
[data-theme=dark] .comment-area .action-bar .action-link:hover {
  background: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-area .ul-comments::before,
[data-theme=dark] .comment-area .ul-comments::before {
  background: rgba(255, 255, 255, 0.15);
}
.dark-mode .comment-area .ul-comments:hover::before,
[data-theme=dark] .comment-area .ul-comments:hover::before {
  background: #9c3706;
}
.dark-mode .comment-area .highlight_comment,
[data-theme=dark] .comment-area .highlight_comment {
  background: rgba(156, 55, 6, 0.1);
}
.dark-mode .comment-area .bad-comment-body,
[data-theme=dark] .comment-area .bad-comment-body {
  color: #e4e6eb;
}

.dark-mode .comment-header-wrapper,
[data-theme=dark] .comment-header-wrapper {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}

.dark-mode .comment-sort-controls .sort-label,
[data-theme=dark] .comment-sort-controls .sort-label {
  color: #e4e6eb;
}

.comment-item {
  padding: 14px 16px;
  border-bottom: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.comment-item:hover {
  background: rgba(0, 0, 0, 0.02);
}
.comment-item .comment-icon {
  margin-right: 14px;
  flex-shrink: 0;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.05);
}
.comment-item .comment-icon .fa {
  font-size: 16px;
}
.comment-item .comment-icon .fa.fa-puzzle-piece {
  color: #e74c3c;
}
.comment-item .comment-icon .fa.fa-trophy {
  color: #f39c12;
}
.comment-item .comment-icon .fa.fa-rss {
  color: #3498db;
}
.comment-item .comment-icon .fa.fa-file {
  color: #95a5a6;
}
.comment-item .comment-icon .fa.fa-comment {
  color: #2c3e50;
}
.comment-item .comment-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  margin-right: 20px;
}
.comment-item .comment-content a {
  font-size: 0.95rem;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.4;
}
.comment-item .comment-content a:hover {
  text-decoration: underline;
}
.comment-item .comment-meta {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 14px;
  flex-shrink: 0;
  text-align: right;
}
.comment-item .comment-meta .comment-user {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: end;
       align-items: flex-end;
}
.comment-item .comment-meta .comment-user .user-name {
  font-size: 0.85rem;
  font-weight: 500;
  margin-bottom: 2px;
}
.comment-item .comment-meta .comment-user .comment-score {
  font-size: 0.75rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 10px;
  color: white;
}
.comment-item .comment-meta .comment-user .comment-score.positive {
  background-color: #16a34a;
}
.comment-item .comment-meta .comment-user .comment-score.negative {
  background-color: #dc2626;
}
.comment-item .comment-meta .comment-time {
  font-size: 0.8rem;
  opacity: 0.7;
  font-weight: 500;
  min-width: 70px;
}

.dark-mode .comment-item,
[data-theme=dark] .comment-item {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-item:hover,
[data-theme=dark] .comment-item:hover {
  background: rgba(255, 255, 255, 0.03);
}
.dark-mode .comment-item .comment-icon,
[data-theme=dark] .comment-item .comment-icon {
  background-color: rgba(255, 255, 255, 0.1);
}
.dark-mode .comment-item .comment-content a,
[data-theme=dark] .comment-item .comment-content a {
  color: #e4e6eb;
}
.dark-mode .comment-item .comment-meta .comment-user .user-name,
[data-theme=dark] .comment-item .comment-meta .comment-user .user-name {
  color: #e4e6eb;
}
.dark-mode .comment-item .comment-meta .comment-time,
[data-theme=dark] .comment-item .comment-meta .comment-time {
  color: #e4e6eb;
}

.comment-edit-modal {
  padding: 16px;
  min-width: 400px;
  max-width: 600px;
}
.comment-edit-modal .editor-container {
  margin-bottom: 16px;
}
.comment-edit-modal .edit-comment-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  gap: 8px;
  margin-top: 16px;
}

.featherlight-edit .featherlight-content {
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
}

.inline-comments-container {
  border-radius: 0 0 8px 8px;
  padding: 12px 16px;
  border-top: 1px solid #ccc;
}

.inline-comments-loading,
.inline-comments-error {
  text-align: center;
  padding: 16px;
  color: #6b7280;
}
.inline-comments-loading i,
.inline-comments-error i {
  margin-right: 8px;
}

.inline-comments-error {
  color: #ae0000;
}

.inline-comments-empty {
  text-align: center;
  padding: 16px;
  color: #6b7280;
  font-style: italic;
}
.inline-comments-empty p {
  margin: 0;
}

.inline-comments-list {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 12px;
}

.inline-comment-item {
  display: -moz-box;
  display: flex;
  gap: 10px;
}
.inline-comment-item .user-img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  flex-shrink: 0;
}
.inline-comment-item .inline-comment-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.inline-comment-item .inline-comment-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  font-size: 0.85rem;
  margin-bottom: 2px;
}
.inline-comment-item .inline-comment-header .author {
  font-weight: 600;
}
.inline-comment-item .inline-comment-header .author a {
  color: inherit;
  text-decoration: none;
}
.inline-comment-item .inline-comment-header .time {
  color: #6b7280;
  font-size: 0.8rem;
}
.inline-comment-item .inline-comment-header .time::before {
  content: "•";
  margin-right: 6px;
}
.inline-comment-item .inline-comment-body {
  font-size: 0.9rem;
  line-height: 1.4;
  word-wrap: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.inline-comment-item .inline-comment-body p {
  margin: 0;
}
.inline-comment-item .inline-comment-footer {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 12px;
  margin-top: 4px;
  font-size: 0.8rem;
  color: #6b7280;
}
.inline-comment-item .inline-comment-footer .inline-comment-score,
.inline-comment-item .inline-comment-footer .inline-comment-replies {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 4px;
}
.inline-comment-item .inline-comment-footer i {
  font-size: 0.9rem;
}

.inline-comments-footer {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #ccc;
  text-align: center;
}
.inline-comments-footer .view-all-comments-link {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  color: #9c3706;
  font-weight: 500;
  font-size: 0.9rem;
  text-decoration: none;
  padding: 6px 12px;
  border-radius: 6px;
  -moz-transition: background 0.15s ease;
  transition: background 0.15s ease;
}
.inline-comments-footer .view-all-comments-link:hover {
  background: rgba(156, 55, 6, 0.08);
}
.inline-comments-footer .view-all-comments-link i {
  font-size: 0.85rem;
}

.actionbar-comment.active {
  color: #9c3706;
}

.dark-mode .inline-comments-container,
[data-theme=dark] .inline-comments-container {
  background: rgba(255, 255, 255, 0.03);
  border-top-color: rgba(255, 255, 255, 0.1);
}

.dark-mode .inline-comments-empty,
[data-theme=dark] .inline-comments-empty,
.dark-mode .inline-comments-loading,
[data-theme=dark] .inline-comments-loading {
  color: #9ca3af;
}

.dark-mode .inline-comment-item .inline-comment-header .time,
[data-theme=dark] .inline-comment-item .inline-comment-header .time {
  color: #9ca3af;
}
.dark-mode .inline-comment-item .inline-comment-body,
[data-theme=dark] .inline-comment-item .inline-comment-body {
  color: #e4e6eb;
}
.dark-mode .inline-comment-item .inline-comment-footer,
[data-theme=dark] .inline-comment-item .inline-comment-footer {
  color: #9ca3af;
}

.dark-mode .inline-comments-footer,
[data-theme=dark] .inline-comments-footer {
  border-top-color: rgba(255, 255, 255, 0.1);
}

.compact-comments .user-img {
  width: 28px;
  height: 28px;
}
.compact-comments .comment-wrapper {
  gap: 8px;
  padding: 8px 0;
}
.compact-comments .body-header {
  padding: 8px 12px;
  border-radius: 14px;
}
.compact-comments .header {
  font-size: 0.8rem;
  gap: 4px;
}
.compact-comments .body .comment-body {
  font-size: 0.85rem;
  line-height: 1.4;
}
.compact-comments .action-bar {
  margin-top: 4px;
  margin-left: 2px;
  gap: 2px;
}
.compact-comments .action-bar .upvote-link,
.compact-comments .action-bar .downvote-link {
  width: 24px;
  height: 24px;
  font-size: 0.85rem;
}
.compact-comments .comment-score {
  font-size: 0.75rem;
  min-width: 16px;
}
.compact-comments .action-bar .action-link {
  padding: 4px 6px;
  font-size: 0.7rem;
  gap: 3px;
}
.compact-comments .action-bar .action-link i {
  font-size: 0.75rem;
}
.compact-comments .ul-comments {
  margin-left: 12px;
  padding-left: 20px;
}
.compact-comments .ul-comments .user-img {
  width: 24px;
  height: 24px;
}
.compact-comments .ul-comments .ul-comments {
  margin-left: 8px;
  padding-left: 16px;
}
.compact-comments .ul-comments .ul-comments .user-img {
  width: 20px;
  height: 20px;
}
.compact-comments .show_more_reply {
  font-size: 0.75rem;
  padding: 4px 8px;
  margin-top: 4px;
}
.compact-comments .show_more_reply svg {
  width: 12px;
  height: 12px;
}
.compact-comments .compact-comment-list {
  padding: 0;
  margin: 0;
}
.compact-comments .inline-new-user-notice {
  font-size: 0.8rem;
  color: #6b7280;
  padding: 8px;
  font-style: italic;
}
.compact-comments .reply-comment-minimal {
  padding-left: 36px;
  margin: 8px 0;
}

.inline-simple-form {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 8px;
  margin-bottom: 12px;
}

.inline-comment-input {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 18px;
  font-size: 0.9rem;
  font-family: inherit;
  resize: none;
  -moz-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  background: white;
}
.inline-comment-input:focus {
  outline: none;
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(156, 55, 6, 0.1);
  border-radius: 12px;
}
.inline-comment-input:-ms-input-placeholder {
  color: #9ca3af;
}
.inline-comment-input::placeholder {
  color: #9ca3af;
}

.inline-submit-btn {
  align-self: flex-end;
  padding: 6px 16px;
  font-size: 0.85rem;
  font-weight: 500;
  border-radius: 16px;
  cursor: pointer;
  -moz-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  background-color: #9c3706;
  color: white;
  border: none;
}
.inline-submit-btn:hover {
  background-color: rgb(116.7111111111, 41.1481481481, 4.4888888889);
}
.inline-submit-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.inline-reply-form {
  margin: 8px 0 8px 52px;
}

.inline-reply-actions,
.inline-form-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  gap: 8px;
  -moz-box-align: center;
       align-items: center;
}

.inline-cancel-btn {
  padding: 6px 12px;
  font-size: 0.85rem;
  background: transparent;
  border: 1px solid #ccc;
  border-radius: 16px;
  cursor: pointer;
  color: #6b7280;
}
.inline-cancel-btn:hover {
  background: rgba(0, 0, 0, 0.05);
}

.inline-comments-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  -moz-box-pack: justify;
       justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.inline-comments-header .inline-new-comment-container {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}

.inline-sort-controls {
  flex-shrink: 0;
}

.inline-sort-select {
  padding: 6px 24px 6px 10px;
  font-size: 0.85rem;
  font-weight: 500;
  border: 1px solid #ccc;
  border-radius: 16px;
  background: white;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M3 5l3 3 3-3'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
}
.inline-sort-select:focus {
  outline: none;
  border-color: #9c3706;
}
.inline-sort-select:hover {
  border-color: #9ca3af;
}

.inline-load-more {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 8px 16px;
  margin-top: 8px;
  font-size: 0.85rem;
  font-weight: 500;
  color: #9c3706;
  background: transparent;
  border: 1px solid #ccc;
  border-radius: 8px;
  cursor: pointer;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.inline-load-more:hover {
  background: rgba(156, 55, 6, 0.08);
  border-color: #9c3706;
}
.inline-load-more i {
  font-size: 0.9rem;
}

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

.submission-row {
  display: -moz-box;
  display: flex;
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
  margin-bottom: 15px;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  -moz-box-align: center;
       align-items: center;
  padding: 10px;
  background: white;
}
.submission-row .sub-result {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  font-weight: 600;
  gap: 10px;
}
.submission-row .sub-result .state {
  padding: 5px 10px;
  border-radius: 15px;
}
.submission-row .sub-result .language {
  background-color: #e1e1e1;
  border-radius: 5px;
  padding: 2px 8px;
}
.submission-row .sub-result .score {
  font-size: 1.2em;
}
.submission-row .sub-details {
  -moz-box-flex: 1;
       flex-grow: 1;
  overflow: hidden;
}
.submission-row .sub-info {
  -moz-box-flex: 1;
       flex: 1;
  display: -moz-box;
  display: flex;
  gap: 5px;
  font-size: 1.2em;
  margin-bottom: 10px;
}
.submission-row .sub-info .sub-user {
  overflow-wrap: break-word;
}
.submission-row .sub-info .sub-problem {
  font-weight: 700;
}
.submission-row .sub-info .sub-problem:hover {
  text-decoration: underline;
}
.submission-row .sub-testcase {
  color: #555;
  white-space: nowrap;
}
.submission-row .sub-prop a {
  white-space: nowrap;
}
.submission-row .sub-usage {
  margin-left: auto;
  white-space: nowrap;
  text-align: right;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 4px;
}
.submission-row .sub-usage .time {
  font-weight: bold;
}
.submission-row .sub-user-img {
  width: 70px;
  height: 70px;
  margin-right: 15px;
}

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

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-left.submission {
  -moz-box-flex: 70%;
       flex: 70%;
}

#content-right.submission {
  -moz-box-flex: 12%;
       flex: 12%;
  min-width: initial;
  max-width: 100%;
  padding-top: 0;
}

@media (max-width: 799px) {
  .submission-row .sub-prop .label {
    display: none;
  }
  .submission-row .sub-prop .fa {
    display: inline-block;
  }
  .submission-row .sub-user-img {
    display: none;
  }
  #fake-info-float {
    display: none;
  }
  #content-left.submission {
    -moz-box-flex: 100%;
         flex: 100%;
  }
  #content-right.submission {
    display: none;
  }
}
.submission-contest {
  color: #555;
}

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

#test-cases {
  font-size: 1.1em;
}
#test-cases .batch-cases {
  margin: 0;
  padding-left: 1em;
  padding-bottom: 3px;
  padding-top: 3px;
}
#test-cases .case-info {
  margin: 0;
  padding: 1em;
  border: 1px solid #2980b9;
  border-left-width: 0.5em;
  border-radius: 4px;
  color: #222;
}
#test-cases .case-output {
  margin: 0;
  margin-top: 1em;
  box-shadow: 0 1px 2px 0 rgba(34, 36, 38, 0.15);
  margin: 1rem 0;
  padding: 1em 1em;
  border-radius: 0.28571429rem;
  border: 1px solid rgba(34, 36, 38, 0.15);
  font-family: Consolas;
  overflow-wrap: anywhere;
}
#test-cases .testcases-table {
  width: 100%;
  border: groove;
  border-radius: 0.5em;
  border-spacing: 0;
}
#test-cases .testcases-table thead td:first-child {
  border-top-left-radius: 0.5em;
}
#test-cases .testcases-table thead td:last-child {
  border-top-right-radius: 0.5em;
}
#test-cases .testcases-table td {
  padding: 0.6em 0.8em;
  width: 18.75%;
}
#test-cases .testcases-table .case-row td:nth-child(2) {
  width: 25%;
}
#test-cases .testcases-table .case-row:hover {
  cursor: pointer;
}
#test-cases .toggle {
  font-weight: normal;
}
#test-cases .case-feedback {
  vertical-align: top;
}
#test-cases .case-ext-feedback {
  width: 50%;
}

#overall-row:hover {
  cursor: default !important;
}

.overall-result-AC {
  background: -moz-linear-gradient(45deg, #a8ff78, #78ffd6);
  background: linear-gradient(45deg, #a8ff78, #78ffd6);
}

.overall-result-WA {
  background: -moz-linear-gradient(45deg, yellow, red);
  background: linear-gradient(45deg, yellow, red);
}

.overall-result-TLE {
  background: -moz-linear-gradient(45deg, #D7DDE8, #757F99);
  background: linear-gradient(45deg, #D7DDE8, #757F99);
}

.overall-result-RTE,
.overall-result-MLE {
  background: -moz-linear-gradient(45deg, #fceabb, #f8b500);
  background: linear-gradient(45deg, #fceabb, #f8b500);
}

.col-title {
  font-weight: bold;
}

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

.case-_AC {
  color: red;
  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;
}

.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: gray;
}

@media (min-width: 800px) {
  .lightbox-submissions .lightbox-submissions-time {
    padding-right: 1em;
  }
  .lightbox-submissions td {
    padding-right: 0.2em;
    font-size: 1.2em;
  }
}
.list-contest {
  box-shadow: 0px 1px 2px lightgrey, 0px 1px 5px lightgrey;
  border-radius: 15px;
  padding: 20px;
  margin-bottom: 20px;
  width: 100%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: -moz-box;
  display: flex;
  background: white;
}
.list-contest .info-contest:first-child, .list-contest .info-contest:nth-child(2) {
  margin-right: 15px;
}
.list-contest .info-contest {
  -moz-box-flex: 1;
       flex: 1;
}
.list-contest .contest-title {
  font-size: 1.1em;
  font-weight: 600;
  margin-bottom: 5px;
}

#contest-calendar {
  border-collapse: collapse;
  width: 100%;
}
#contest-calendar th {
  border-bottom: 1px solid #ccc;
}
#contest-calendar th.sun {
  border-left: 1px solid #ccc;
}
#contest-calendar th.sun, #contest-calendar th.mon, #contest-calendar th.tue, #contest-calendar th.wed, #contest-calendar th.thu, #contest-calendar th.fri, #contest-calendar th.sat {
  font-size: 0.95em;
  border-right: 1px solid #ccc;
  background: #fafafa;
}
#contest-calendar td {
  height: 110px;
  width: 170px;
  color: #000;
  vertical-align: top;
  text-align: right;
  font-size: 0.75em;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  -moz-transition-duration: 0.2s;
       transition-duration: 0.2s;
}
#contest-calendar td .num {
  font-size: 1.1em;
  font-weight: bold;
  display: block;
  border-bottom: 1px dashed #ccc;
  padding-right: 0.2em;
  margin-bottom: 0.4em;
}
#contest-calendar td ul {
  text-decoration: none;
  text-align: left;
  padding: 0;
  margin: 0;
}
#contest-calendar td ul li {
  margin-left: 17px;
  margin-bottom: 0.2em;
}
#contest-calendar td ul li i.fa {
  color: orange;
}
#contest-calendar td ul li a {
  text-decoration: none;
  color: #222;
}
#contest-calendar td ul li a:hover {
  text-decoration: underline;
}
#contest-calendar td:hover {
  background: rgba(0, 0, 255, 0.3);
  color: white;
}
#contest-calendar td:hover .num {
  font-weight: bold;
}
#contest-calendar td:hover ul li a {
  font-weight: normal;
}
#contest-calendar .noday {
  background: #f1f1f1;
}
#contest-calendar .today {
  background: rgba(255, 255, 100, 0.5);
}
#contest-calendar tr td:first-child {
  border-left: 1px solid #aaa;
}

#banner.contest-banner {
  text-align: center;
  padding: 1em 1.5em;
  margin-bottom: 1em;
  background: #fafafa;
  border-radius: 8px;
  border-left: 4px solid #9c3706;
}
#banner.contest-banner .contest-title {
  font-size: 1.4em;
  font-weight: 700;
  margin: 0 0 0.5em 0;
  color: #111;
}
#banner.contest-banner .contest-title a {
  color: inherit;
  text-decoration: none;
}
#banner.contest-banner .contest-title a:hover {
  color: #9c3706;
}
#banner.contest-banner .contest-status {
  margin-bottom: 0.4em;
}
#banner.contest-banner .contest-status .status-text {
  font-size: 1.15em;
  font-weight: 600;
  color: #111;
}
#banner.contest-banner .contest-status .status-ended::before {
  content: "✓ ";
  color: #6b7280;
}
#banner.contest-banner .contest-status .status-active {
  color: #9c3706;
}
#banner.contest-banner .contest-status .status-active::before {
  content: "● ";
  -moz-animation: pulse 1.5s infinite;
       animation: pulse 1.5s infinite;
}
#banner.contest-banner .contest-status .status-upcoming {
  color: #2563eb;
}
#banner.contest-banner .contest-status .status-upcoming::before {
  content: "◷ ";
}
#banner.contest-banner .contest-time-info {
  font-size: 0.9em;
  color: #4b5563;
}
#banner.contest-banner .contest-freeze-info {
  font-size: 0.85em;
  color: #ae0000;
  margin-top: 0.4em;
  font-weight: 500;
}

@-moz-keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}

@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
#banner:not(.contest-banner) {
  padding-bottom: 1em;
}
#banner:not(.contest-banner) a.date {
  display: block;
  text-decoration: none;
  text-align: center;
  line-height: 1.3;
  font-size: 2em;
  padding-bottom: 0.15em;
}
#banner:not(.contest-banner) a.date:link, #banner:not(.contest-banner) a.date:visited {
  color: #5B80B9;
}
#banner:not(.contest-banner) a.date:hover {
  color: #0645AD;
}
#banner:not(.contest-banner) .time {
  text-align: center;
  display: block;
  color: rgb(85, 85, 85);
  font-size: 14px;
}

.time-left {
  text-align: left;
  padding-bottom: 0.5em;
}

.list-contest .contest-tags {
  vertical-align: top;
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  margin-top: 5px;
}
.list-contest .contest-tag-hidden {
  background-color: #000000;
  color: #ffffff;
}

.first-solve {
  position: relative;
}
.first-solve::after {
  content: "★";
  position: absolute;
  top: 2px;
  right: 10%;
  font-size: 0.6rem;
  color: #f59e0b;
}

/* ===== CONTEST RANKING TABLE - Clean Design ===== */
.contest-ranking-page .ranking-table-wrapper {
  overflow-x: auto;
}
.contest-ranking-page #users-table {
  border-collapse: collapse;
  border-spacing: 0;
  background: white;
}
.contest-ranking-page #users-table a {
  display: block;
}
.contest-ranking-page #users-table td {
  padding: 0.45rem 0.4rem;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
}
.contest-ranking-page #users-table td a:hover {
  text-decoration: none;
}
.contest-ranking-page #users-table thead th {
  background: #9c3706;
  color: white;
  font-weight: 600;
  padding: 0.5rem 0.4rem;
  font-size: 0.85rem;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 10;
}
.contest-ranking-page #users-table thead th a {
  color: white;
  text-decoration: none;
}
.contest-ranking-page #users-table thead th a:hover {
  opacity: 0.9;
}
.contest-ranking-page #users-table thead th.problem-score-col {
  min-width: 45px;
  padding: 0.4rem 0.2rem;
}
.contest-ranking-page #users-table thead th.problem-score-col a {
  color: white;
  font-weight: 600;
}
.contest-ranking-page #users-table thead th.problem-score-col .point-denominator {
  font-size: 0.7em;
  opacity: 0.8;
  font-weight: 400;
  margin-top: 1px;
}
.contest-ranking-page #users-table thead th.problem-score-col .problem-code {
  display: none;
}
.contest-ranking-page #users-table tbody tr {
  background: white;
  -moz-transition: background 0.15s ease;
  transition: background 0.15s ease;
}
.contest-ranking-page #users-table tbody tr:hover {
  background: #fafafa;
}
.contest-ranking-page #users-table tbody tr:last-child td {
  border-bottom: none;
}
.contest-ranking-page #users-table tbody tr.highlight {
  background: #fffbeb !important;
}
.contest-ranking-page #users-table tbody tr.highlight td:first-child {
  box-shadow: inset 3px 0 0 #9c3706;
}
.contest-ranking-page #users-table tbody tr.disqualified {
  opacity: 0.5;
}
.contest-ranking-page #users-table tbody tr.disqualified td {
  text-decoration: line-through;
  color: #9ca3af;
}
.contest-ranking-page #users-table thead th.rank {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: 12;
  min-width: 2.5rem;
  max-width: 2.5rem;
}
.contest-ranking-page #users-table thead th.username {
  position: -webkit-sticky;
  position: sticky;
  left: 2.5rem;
  z-index: 12;
  min-width: 12rem;
  max-width: 12rem;
}
.contest-ranking-page #users-table thead th.points:not(.problem-score-col) {
  position: -webkit-sticky;
  position: sticky;
  left: -moz-calc(2.5rem + 12rem);
  left: calc(2.5rem + 12rem);
  z-index: 12;
  min-width: 4.5rem;
}
.contest-ranking-page #users-table tbody td.rank-td {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: 2;
  background: inherit;
  min-width: 2.5rem;
}
.contest-ranking-page #users-table tbody td.user-name {
  position: -webkit-sticky;
  position: sticky;
  left: 2.5rem;
  z-index: 2;
  background: inherit;
  min-width: 12rem;
  max-width: 12rem;
}
.contest-ranking-page #users-table tbody td.user-points {
  position: -webkit-sticky;
  position: sticky;
  left: -moz-calc(2.5rem + 12rem);
  left: calc(2.5rem + 12rem);
  z-index: 2;
  background: inherit;
  min-width: 4.5rem;
}
.contest-ranking-page .rank {
  min-width: 2.5rem;
  font-weight: 600;
  text-align: center;
  font-size: 0.85rem;
}
.contest-ranking-page .points {
  min-width: 4.5rem;
  font-weight: 700;
  font-size: 0.85rem;
}
.contest-ranking-page .start-time {
  font-size: 0.7rem;
  color: #9ca3af;
}
.contest-ranking-page .user-name {
  padding: 0.35rem 0.5rem !important;
  text-align: left !important;
  font-size: 0.85rem;
}
.contest-ranking-page .user-name .user-img {
  border-radius: 50%;
  border: 1px solid #ccc;
}
.contest-ranking-page .user-name a.user-name {
  display: inline !important;
  font-weight: 500;
  font-size: 0.85rem;
}
.contest-ranking-page .user-name a.user-name:hover {
  color: #9c3706;
}
.contest-ranking-page .user-name form {
  display: inline !important;
}
.contest-ranking-page .contest-participation-operation {
  display: none;
  -moz-box-align: center;
       align-items: center;
  gap: 0.2rem;
  margin-left: 0.3rem;
  vertical-align: middle;
}
.contest-ranking-page .contest-participation-operation form {
  display: inline !important;
  margin: 0;
}
.contest-ranking-page .contest-participation-operation a {
  display: -moz-inline-box !important;
  display: inline-flex !important;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  width: 1.4em;
  height: 1.4em;
  padding: 0;
  color: #666;
  opacity: 0.6;
  -moz-transition: opacity 0.15s;
  transition: opacity 0.15s;
}
.contest-ranking-page .contest-participation-operation a:hover {
  opacity: 1;
  color: #9c3706;
}
.contest-ranking-page .contest-participation-operation a i.fa {
  font-size: 0.8em;
}
.contest-ranking-page .contest-participation-operation .disqualify-participation:hover {
  color: #ae0000;
}
.contest-ranking-page .contest-participation-operation .un-disqualify-participation:hover {
  color: #28a745;
}
.contest-ranking-page.admin-mode .contest-participation-operation {
  display: -moz-inline-box;
  display: inline-flex;
}
.contest-ranking-page td.problem-score-col {
  padding: 0.2rem !important;
  text-align: center;
  cursor: pointer;
}
.contest-ranking-page td.problem-score-col a {
  display: -moz-box !important;
  display: flex !important;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  padding: 0.25rem 0.2rem;
  border-radius: 3px;
  text-decoration: none;
  font-size: 0.85rem;
  min-height: 1.6rem;
  background: transparent;
  -moz-transition: background 0.15s ease;
  transition: background 0.15s ease;
}
.contest-ranking-page td.problem-score-col a:hover {
  background: rgba(0, 0, 0, 0.06);
}
.contest-ranking-page .solving-time {
  font-size: 0.7rem;
  font-weight: 400;
  color: #6b7280;
  line-height: 1.2;
}
.contest-ranking-page .fullname,
.contest-ranking-page .user-table-fullname {
  display: block;
  font-size: 0.8rem;
  color: #4b5563;
  line-height: 1.3;
  margin-top: 2px;
  font-weight: 400;
}
.contest-ranking-page .school {
  display: block;
  font-size: 0.75rem;
  color: #6b7280;
  line-height: 1.2;
}
.contest-ranking-page .organization-column {
  display: none;
  text-align: left !important;
}
.contest-ranking-page .ranking-filters-container {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-align: center;
       align-items: center;
  gap: 0.3rem 0.8rem;
  padding: 0.3rem 0;
  margin-bottom: 0.4rem;
}
.contest-ranking-page .ranking-filters-container .filter-option {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 0.85rem;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.2rem;
  white-space: nowrap;
}
.contest-ranking-page .ranking-filters-container .filter-option input[type=checkbox] {
  accent-color: #9c3706;
  width: 0.85rem;
  height: 0.85rem;
  cursor: pointer;
  margin: 0;
}
.contest-ranking-page .ranking-filters-container .action-btn.small {
  padding: 0.35rem 0.7rem;
  font-size: 0.75rem;
}
.contest-ranking-page .ranking-filters-container .ranking-search-input {
  margin-left: auto;
  width: 150px;
  height: 1.8em;
  border-radius: 4px;
  border: 1px solid #ccc;
  padding: 0 0.5em;
}
.contest-ranking-page .ranking-filters-container .ranking-search-input:focus {
  border-color: #9c3706;
  outline: none;
}
.contest-ranking-page #search-contest {
  width: 180px;
  height: 2em;
  border-radius: 4px;
  border: 1px solid #ccc;
  padding: 0 0.5em;
  font-size: 0.8rem;
}
.contest-ranking-page #search-contest:focus {
  border-color: #9c3706;
  outline: none;
}
.contest-ranking-page .select2-selection__arrow {
  display: none;
}
.contest-ranking-page .select2-selection__rendered {
  cursor: text;
  overflow: initial !important;
}
.contest-ranking-page .select2-results__option {
  white-space: nowrap;
}
@media (max-width: 799px) {
  .contest-ranking-page .ranking-filters-container {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    -moz-box-align: start;
         align-items: flex-start;
    gap: 0.3rem;
  }
  .contest-ranking-page .ranking-filters-container .download-link {
    margin-left: 0;
    margin-top: 0.2rem;
  }
  .contest-ranking-page #users-table thead th {
    padding: 0.4rem 0.2rem;
    font-size: 0.7rem;
  }
  .contest-ranking-page #users-table td {
    padding: 0.25rem 0.15rem;
  }
  .contest-ranking-page #users-table thead th.rank {
    min-width: 1.8rem;
    max-width: 1.8rem;
  }
  .contest-ranking-page #users-table thead th.username {
    left: 1.8rem;
    min-width: 6rem;
    max-width: 6rem;
  }
  .contest-ranking-page #users-table thead th.points:not(.problem-score-col) {
    position: static;
    min-width: 3rem;
  }
  .contest-ranking-page #users-table tbody td.rank-td {
    min-width: 1.8rem;
    font-size: 0.75rem;
  }
  .contest-ranking-page #users-table tbody td.user-name {
    left: 1.8rem;
    min-width: 6rem;
    max-width: 6rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .contest-ranking-page #users-table tbody td.user-name > div {
    max-width: 100% !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .contest-ranking-page #users-table tbody td.user-name .user-img {
    display: none !important;
  }
  .contest-ranking-page #users-table tbody td.user-name a {
    display: inline !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.75rem;
  }
  .contest-ranking-page #users-table tbody td.user-points {
    position: static;
    min-width: 3rem;
    font-size: 0.75rem;
  }
}

.no-participations-message {
  text-align: center;
  padding: 2em;
  color: #6b7280;
  font-size: 0.95rem;
}

.contest-tag {
  padding: 0.15em 0.3em;
  border-radius: 0.15em;
  font-weight: 600;
  margin-right: 0.45em;
  position: relative;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.2em;
}

.contest-tag-edit {
  background-color: green;
}

.contest-tag-private {
  background-color: #666666;
  color: #ffffff;
}

.contest-tag-org {
  background-color: #cccccc;
}
.contest-tag-org a {
  color: #000000;
}

.contest-tag-rated {
  background-color: #e54c14;
  color: #ffffff;
}

.contest-list-title {
  font-size: 1.1em;
  font-weight: 600;
}

.contest-list-sort {
  color: #7dc7ff;
}

form.contest-join-pseudotab {
  display: inline;
  line-height: 1.7em;
  margin-left: auto;
  float: right;
}

.contest-participation-operation {
  margin-left: auto;
}
.contest-participation-operation .fa {
  color: #444;
}
.contest-participation-operation a + a {
  padding-left: 1px;
}
.contest-participation-operation {
  padding-left: 5px;
}

#add-clarification {
  float: left;
  color: chartreuse;
}

#add-clarification:hover {
  color: cyan;
}

.featherlight.contest-tag-lightbox .featherlight-content {
  height: 80%;
  width: 60%;
  min-width: 60%;
  overflow: auto;
  border-radius: 8px;
}

@media (max-width: 799px) {
  .featherlight.contest-tag-lightbox .featherlight-content {
    width: 95%;
  }
}
#bulk-disqualify-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: none;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
}
#bulk-disqualify-modal[style*="display: block"], #bulk-disqualify-modal[style*="display:block"] {
  display: -moz-box !important;
  display: flex !important;
}
#bulk-disqualify-modal .modal-content {
  background: white;
  border-radius: 8px;
  max-width: 500px;
  width: 90%;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
#bulk-disqualify-modal .modal-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid #ccc;
  background: #fafafa;
}
#bulk-disqualify-modal .modal-header h3 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 600;
  color: #00007d;
}
#bulk-disqualify-modal .modal-header .modal-close {
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #666;
  line-height: 1;
  padding: 0;
}
#bulk-disqualify-modal .modal-header .modal-close:hover {
  color: #ae0000;
}
#bulk-disqualify-modal .modal-body {
  padding: 1.25rem;
}
#bulk-disqualify-modal .modal-body p {
  margin: 0 0 0.75rem 0;
  font-size: 0.9rem;
  color: #00007d;
}
#bulk-disqualify-modal .modal-body textarea {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 0.9rem;
  resize: vertical;
  min-height: 120px;
  font-family: inherit;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
#bulk-disqualify-modal .modal-body textarea:focus {
  outline: none;
  border-color: #9c3706;
}
#bulk-disqualify-modal .modal-footer {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  gap: 0.5rem;
  padding: 1rem 1.25rem;
  border-top: 1px solid #ccc;
  background: #fafafa;
}
#bulk-disqualify-modal .modal-footer .btn-default {
  padding: 0.5rem 1rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
  cursor: pointer;
  font-size: 0.9rem;
}
#bulk-disqualify-modal .modal-footer .btn-default:hover {
  background: #ededed;
}

#judge-versions {
  display: block;
}
#judge-versions .version {
  font-family: var(--md-code-font-family), monospace;
}
#judge-versions .version-blank {
  background: #eee;
}
#judge-versions .version-latest {
  background: rgba(179, 255, 63, 0.9019607843);
}
#judge-versions .version-outdated {
  background: rgba(255, 0, 0, 0.8);
  color: white;
}
#judge-versions tbody {
  display: block;
}
#judge-versions tr {
  display: -moz-box;
  display: flex;
  -moz-box-orient: horizontal;
  -moz-box-direction: normal;
       flex-direction: row;
  padding: 0;
}
#judge-versions tr:first-child {
  position: -webkit-sticky;
  position: sticky;
  top: 42px;
  line-height: 1.8em;
}
#judge-versions td, #judge-versions th {
  display: block;
  -moz-box-flex: 1;
       flex: 1 0 110px;
  overflow-x: hidden;
  height: auto;
  padding: 7px 5px;
}

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

body:has(.chat-page) footer {
  display: none;
}
body:has(.chat-page) #content {
  padding-top: 0;
  margin-bottom: 0;
  width: 100%;
}
body:has(.chat-page) #content-body {
  padding-bottom: 0;
}
body:has(.chat-page) #page-container {
  width: 100%;
  min-height: 0;
}
body:has(.chat-page) .sidebox h3 {
  border-radius: 0;
}
@media (min-width: 800px) {
  body:has(.chat-page) #page-container {
    position: fixed;
    overflow: hidden;
  }
}
@media (max-width: 799px) {
  body:has(.chat-page) {
    max-width: 100%;
    overflow-x: hidden;
    overflow-y: hidden;
  }
  body:has(.chat-page) #page-container {
    height: 100%;
    overflow: hidden;
  }
  body:has(.chat-page) #content-body {
    height: 100%;
  }
}

.chat-page ::-webkit-scrollbar {
  width: 14px;
  background-color: transparent !important;
}
.chat-page ::-webkit-scrollbar-track {
  background-color: transparent;
}
.chat-page ::-webkit-scrollbar-thumb {
  background-color: #c1c9cc;
  border-radius: 14px;
  border: 4px solid transparent;
  background-clip: content-box;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.chat-page ::-webkit-scrollbar-thumb:hover {
  background-color: #9aa6ab;
}
.chat-page .chat-input::-webkit-scrollbar {
  width: 20px;
}
.chat-page .chat-input::-webkit-scrollbar-thumb {
  border: 8px solid transparent;
}
.chat-page .chat-container {
  display: -moz-box;
  display: flex;
  width: 100%;
  background: #ffffff;
  overflow: hidden;
}
.chat-page .chat-sidebar {
  border-right: 1px solid #e4e6eb;
  padding-bottom: 0 !important;
  border-bottom: 0;
  font-size: 1rem;
  overflow: hidden;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  background: #ffffff;
}
.chat-page .chat-sidebar-content {
  margin-bottom: 0;
  overflow: hidden;
  overflow-wrap: break-word;
  overflow-y: auto;
  -moz-box-flex: 1;
       flex: 1;
  padding: 0;
  width: 100%;
}
.chat-page .chat-search-container {
  padding: 12px;
  border-bottom: 1px solid #e4e6eb;
}
.chat-page #search-form {
  float: inherit;
}
.chat-page .status-section-title {
  cursor: pointer;
  margin: 12px 12px 8px;
}
.chat-page .status-section-title h4 {
  margin: 0;
  font-size: 0.9rem;
  color: #65676b;
  font-weight: 600;
}
.chat-page .status-section-title hr {
  margin: 8px 0 0;
  border-color: #e4e6eb;
}
.chat-page .status-list {
  padding: 0;
  margin: 0;
  list-style: none;
}
.chat-page .status-row {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 10px 12px;
  gap: 12px;
  border-radius: 8px;
  margin: 0 8px;
  cursor: pointer;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.chat-page .status-row:hover {
  background-color: #f2f2f2;
}
.chat-page .status-row.selected {
  background-color: #e7f3ff;
}
.chat-page .status-container {
  position: relative;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-flex: 0;
       flex: 0 0 auto;
  -moz-box-align: center;
       align-items: center;
}
.chat-page .status-pic {
  height: 40px;
  width: 40px;
  border-radius: 50%;
  object-fit: cover;
}
.chat-page .status-pic.lobby-icon {
  border-radius: 0;
}
.chat-page .status-circle {
  position: absolute;
  bottom: 2px;
  right: 2px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid #ffffff;
}
.chat-page .status-circle.online {
  background-color: #31a24c;
}
.chat-page .status-circle.offline {
  background-color: #bcc0c4;
}
.chat-page svg .status-circle {
  cx: 32px;
  cy: 32px;
  r: 5px;
  stroke: white;
  stroke-width: 2;
}
.chat-page .status-user {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  min-width: 0;
  -moz-box-flex: 1;
       flex-grow: 1;
  gap: 2px;
}
.chat-page .status-username {
  font-weight: 600;
  font-size: 0.95rem;
}
.chat-page .status-last-message {
  color: #65676b;
  font-size: 0.85rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.chat-page .wrapline {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.chat-page .unread-count {
  color: #ffffff;
  background-color: #0084ff;
  border-radius: 50%;
  min-width: 20px;
  height: 20px;
  font-size: 0.75rem;
  font-weight: 600;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  padding: 0 6px;
}
.chat-page .setting-button,
.chat-page .user-setting-button {
  border-radius: 50%;
  -moz-transition: background-color 0.15s ease, opacity 0.15s ease;
  transition: background-color 0.15s ease, opacity 0.15s ease;
}
.chat-page .setting-button:hover,
.chat-page .user-setting-button:hover {
  background-color: #e4e6eb;
}
.chat-page .setting-button {
  opacity: 0;
}
.chat-page .user-setting-button {
  opacity: 1;
}
.chat-page .status-row:hover .setting-button {
  opacity: 1;
}
.chat-page .setting-wrapper {
  position: relative;
  margin-right: 8px;
}
.chat-page .setting-content {
  display: none;
  position: absolute;
  background-color: #ffffff;
  min-width: 140px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  z-index: 1000;
  right: 0;
  top: 100%;
  overflow: hidden;
}
.chat-page .setting-content a {
  padding: 10px 16px;
  text-decoration: none;
  display: block;
  font-weight: 500;
  font-size: 0.9rem;
  color: #050505;
  -moz-transition: background-color 0.1s ease;
  transition: background-color 0.1s ease;
}
.chat-page .setting-content a:hover {
  background-color: #f2f2f2;
}
.chat-page .setting-content a.red {
  color: #e41e3f;
}
.chat-page .setting-content a.green {
  color: #31a24c;
}
.chat-page .chat-area {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-flex: 1;
       flex-grow: 1;
  background: #ffffff;
}
.chat-page .chat-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 6px 12px;
  border-bottom: 1px solid #e4e6eb;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 100;
}
.chat-page .chat-header-user {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-flex: 1;
       flex: 1;
  gap: 12px;
}
.chat-page .chat-header-avatar {
  position: relative;
  height: 40px;
  width: 40px;
  flex-shrink: 0;
}
.chat-page .chat-header-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.chat-page .info-circle {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 2px solid #ffffff;
}
.chat-page .info-circle.online {
  background-color: #31a24c;
}
.chat-page .info-circle.offline {
  background-color: #bcc0c4;
}
.chat-page svg .info-circle {
  cx: 6px;
  cy: 6px;
  r: 5px;
  stroke: white;
  stroke-width: 2;
}
.chat-page .info-name {
  font-size: 1.1rem;
  font-weight: 600;
}
.chat-page .info-name a {
  color: inherit;
  text-decoration: none;
}
.chat-page .info-name a:hover {
  text-decoration: underline;
}
.chat-page .active-span {
  color: #65676b;
  font-size: 0.85rem;
  margin-left: auto;
  margin-right: 12px;
}
.chat-page .active-span-mobile {
  display: none;
}
.chat-page .back-button {
  display: none;
  margin-right: 12px;
  font-size: 1.25rem;
  color: #0084ff;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.chat-page .back-button:hover {
  background-color: #f2f2f2;
}
.chat-page .chat-box {
  -moz-box-flex: 1;
       flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 16px;
  padding-bottom: 40px;
}
.chat-page .chat-log {
  padding: 0;
  margin: 0;
  list-style: none;
}
.chat-page .chat-loader {
  display: none;
  text-align: center;
  padding: 20px;
  font-size: 1.5rem;
  color: #65676b;
}
.chat-page .chat-empty-message {
  text-align: center;
  color: #65676b;
  padding: 40px 20px;
  font-size: 0.95rem;
}
.chat-page .has_next,
.chat-page .num-pages {
  display: none;
}
.chat-page .message {
  display: -moz-box;
  display: flex;
  gap: 8px;
  margin-bottom: 2px;
  -moz-animation: messageSlideIn 0.2s ease-out;
       animation: messageSlideIn 0.2s ease-out;
}
.chat-page .message.grouped .message-avatar {
  visibility: hidden;
}
.chat-page .message.grouped .message-header {
  display: none;
}
.chat-page .message.group-start {
  margin-top: 12px;
}
.chat-page .message-avatar {
  flex-shrink: 0;
  width: 32px;
}
.chat-page .message-avatar img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}
.chat-page .message-content-wrapper {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.chat-page .message-header {
  margin-bottom: 4px;
  display: -moz-box;
  display: flex;
  -moz-box-align: baseline;
       align-items: baseline;
  gap: 8px;
}
.chat-page .message-header a {
  font-size: 0.9rem;
}
.chat-page .message-header .message-time {
  font-size: 0.75rem;
  color: #65676b;
}
.chat-page .message-bubble-wrapper {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 8px;
}
.chat-page .message-bubble-wrapper:hover .message-actions {
  opacity: 1;
}
.chat-page .message-bubble,
.chat-page .message-text {
  display: inline-block;
  padding: 8px 12px;
  border-radius: 18px;
  max-width: 70%;
  word-wrap: break-word;
  line-height: 1.4;
  font-size: 0.95rem;
}
.chat-page .message-bubble p,
.chat-page .message-text p {
  margin: 0;
}
.chat-page .message-bubble img,
.chat-page .message-text img {
  max-height: 200px;
  border-radius: 8px;
}
.chat-page .message-bubble pre,
.chat-page .message-text pre {
  margin: 4px 0;
  padding: 8px;
  border-radius: 8px;
  overflow-x: auto;
}
.chat-page .message-bubble-other,
.chat-page .message-text-other {
  background-color: #f0f0f0;
  color: #050505;
}
.chat-page .message-bubble-self,
.chat-page .message-text-myself {
  background-color: #0084ff;
  color: #ffffff;
}
.chat-page .message-bubble-self a,
.chat-page .message-text-myself a {
  color: #ffffff;
  text-decoration: underline;
}
.chat-page .message-actions {
  opacity: 0;
  -moz-transition: opacity 0.15s ease;
  transition: opacity 0.15s ease;
  display: -moz-box;
  display: flex;
  gap: 4px;
  flex-shrink: 0;
}
.chat-page .message-actions a {
  font-size: 0.7rem;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.06);
  color: #65676b;
  cursor: pointer;
  white-space: nowrap;
}
.chat-page .message-actions a:hover {
  background: rgba(0, 0, 0, 0.1);
}
.chat-page .big-emoji {
  font-size: 1.3em;
}
.chat-page .profile-pic {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}
.chat-page .user-time {
  margin-bottom: 4px;
  display: -moz-box;
  display: flex;
  -moz-box-align: baseline;
       align-items: baseline;
  gap: 8px;
}
.chat-page .user-time a {
  font-size: 0.9rem;
}
.chat-page .user-time .time {
  font-size: 0.75rem;
  color: #65676b;
}
.chat-page .body-block {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 8px;
}
.chat-page .body-block:hover .message-actions a, .chat-page .body-block:hover .chat_remove, .chat-page .body-block:hover .chat_mute {
  opacity: 1;
}
.chat-page .chat_remove,
.chat-page .chat_mute {
  font-size: 0.7rem;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.06);
  color: #65676b;
  cursor: pointer;
  white-space: nowrap;
  opacity: 0;
  -moz-transition: opacity 0.15s ease;
  transition: opacity 0.15s ease;
}
.chat-page .chat_remove:hover,
.chat-page .chat_mute:hover {
  background: rgba(0, 0, 0, 0.1);
}
.chat-page .chat-input-area,
.chat-page #chat-input-container {
  display: -moz-box;
  display: flex;
  -moz-box-align: end;
       align-items: flex-end;
  gap: 8px;
  padding: 8px 12px;
  border-top: 1px solid #ccc;
}
.chat-page .chat-input-wrapper {
  -moz-box-flex: 1;
       flex: 1;
  display: -moz-box;
  display: flex;
  -moz-box-align: end;
       align-items: flex-end;
  border: 1px solid #ccc;
  border-radius: 22px;
  background: #fafafa;
  -moz-transition: border-color 0.15s ease, box-shadow 0.15s ease;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  min-width: 0;
}
.chat-page .chat-input-wrapper:focus-within {
  border-color: #0084ff;
  box-shadow: 0 0 0 2px rgba(0, 132, 255, 0.1);
}
.chat-page .chat-input,
.chat-page #chat-input {
  -moz-box-flex: 1;
       flex: 1;
  padding: 7px 4px 7px 14px;
  font-size: 0.95rem;
  border: none;
  border-radius: 22px 0 0 22px;
  background: transparent;
  color: inherit;
  resize: none;
  max-height: 150px;
  overflow-y: auto;
  font-family: inherit;
  line-height: 1.4;
  min-width: 0;
}
.chat-page .chat-input:focus,
.chat-page #chat-input:focus {
  outline: none;
  box-shadow: none;
}
.chat-page .chat-input:-ms-input-placeholder, .chat-page #chat-input:-ms-input-placeholder {
  color: #65676b;
}
.chat-page .chat-input::placeholder,
.chat-page #chat-input::placeholder {
  color: #65676b;
}
.chat-page .chat-emoji-btn,
.chat-page #emoji-button {
  width: 34px;
  height: 34px;
  min-width: 34px;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  cursor: pointer;
  border: none;
  flex-shrink: 0;
  background: transparent;
  color: #65676b;
  font-size: 1.2rem;
  margin: 2px 4px 2px 0;
  -moz-transition: color 0.15s ease;
  transition: color 0.15s ease;
}
.chat-page .chat-emoji-btn:hover,
.chat-page #emoji-button:hover {
  color: #0084ff;
}
.chat-page .chat-submit-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  cursor: pointer;
  -moz-transition: background-color 0.15s ease, transform 0.1s ease, -moz-transform 0.1s ease;
  transition: background-color 0.15s ease, transform 0.1s ease;
  transition: background-color 0.15s ease, transform 0.1s ease, -moz-transform 0.1s ease;
  border: none;
  flex-shrink: 0;
  background: #0084ff;
  color: #ffffff;
  font-size: 0.9rem;
}
.chat-page .chat-submit-btn:hover {
  background: #0073e6;
  -moz-transform: scale(1.05);
       transform: scale(1.05);
}
.chat-page .chat-submit-btn:active {
  -moz-transform: scale(0.95);
       transform: scale(0.95);
}
.chat-page .chat-input-icon {
  border: none;
  cursor: pointer;
  flex-shrink: 0;
}
.chat-page .emoji-tooltip {
  position: absolute;
  z-index: 1000;
  display: none;
}
.chat-page .emoji-tooltip.shown {
  display: block;
}
.chat-page .tooltip {
  position: absolute;
  z-index: 1000;
}
.chat-page .tooltip:not(.shown) {
  display: none;
}
.chat-page emoji-picker {
  --emoji-size: 1.25rem;
  --border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}
.chat-page #new-messages-bubble {
  position: -webkit-sticky;
  position: sticky;
  bottom: 8px;
  left: 50%;
  -moz-transform: translateX(-50%);
       transform: translateX(-50%);
  background-color: #9c3706;
  color: #ffffff;
  padding: 6px 16px;
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  z-index: 50;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  -moz-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.chat-page #new-messages-bubble:hover {
  opacity: 0.9;
}
@-moz-keyframes messageSlideIn {
  from {
    opacity: 0;
    -moz-transform: translateY(10px);
         transform: translateY(10px);
  }
  to {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
}
@keyframes messageSlideIn {
  from {
    opacity: 0;
    -moz-transform: translateY(10px);
         transform: translateY(10px);
  }
  to {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.chat-page .user-search-image {
  border-radius: 50%;
  margin-right: 8px;
  vertical-align: middle;
}
.chat-page .user-search-name {
  vertical-align: middle;
}
.chat-page .user-redirect {
  float: right;
  padding: 4px 8px;
  color: #65676b;
}
.chat-page .user-redirect:hover {
  color: #0084ff;
}
@media (min-width: 800px) {
  .chat-page .chat-container {
    height: -moz-calc(100vh - 50px);
    height: calc(100vh - 50px);
    border: 1px solid #e4e6eb;
    border-bottom: 0;
  }
  .chat-page .chat-sidebar {
    min-width: 320px;
    max-width: 320px;
  }
  .chat-page .chat-area {
    min-width: 0;
  }
  .chat-page #chat-container {
    display: -moz-box;
    display: flex;
    width: 100%;
    height: -moz-calc(100vh - 50px);
    height: calc(100vh - 50px);
    border: 1px solid #e4e6eb;
    border-bottom: 0;
  }
  .chat-page #chat-online {
    margin: 0;
    min-width: 320px;
    max-width: 320px;
  }
  .chat-page #chat-area {
    -moz-box-flex: 1;
         flex-grow: 1;
    min-width: 0;
  }
  .chat-page #chat-input-container {
    padding-left: 16px;
  }
  .chat-page .back-button {
    display: none;
  }
}
@media (max-width: 799px) {
  .chat-page .chat-container {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    height: -moz-calc(100vh - 36px);
    height: calc(100vh - 36px);
    height: -moz-calc(100dvh - 36px);
    height: calc(100dvh - 36px);
  }
  .chat-page .chat-sidebar {
    width: 100%;
    max-width: none;
    border-right: none;
    border-bottom: none;
    height: 100%;
    -moz-box-flex: 1;
         flex: 1;
  }
  .chat-page .chat-area {
    display: none;
    height: 100%;
    -moz-box-flex: 1;
         flex: 1;
    max-height: none;
  }
  .chat-page .chat-area[style*="display: flex"],
  .chat-page .chat-area.mobile-visible {
    display: -moz-box !important;
    display: flex !important;
    height: 100%;
  }
  .chat-page .chat-sidebar[style*="display: none"],
  .chat-page .chat-sidebar.mobile-hidden {
    display: none !important;
  }
  .chat-page .status-row {
    padding: 10px 8px;
    margin: 0 4px;
    gap: 8px;
  }
  .chat-page .status-pic {
    height: 36px;
    width: 36px;
  }
  .chat-page .status-user {
    min-width: 0;
    -moz-box-flex: 1;
         flex: 1;
    overflow: hidden;
  }
  .chat-page .status-username {
    font-size: 0.9rem;
  }
  .chat-page .status-last-message,
  .chat-page .status_last_message {
    font-size: 0.8rem;
  }
  .chat-page .setting-wrapper {
    display: none;
  }
  .chat-page .status-row.selected .setting-wrapper {
    display: block;
  }
  .chat-page .chat-header {
    padding: 6px 8px;
    gap: 4px;
  }
  .chat-page .chat-header-avatar {
    height: 32px;
    width: 32px;
  }
  .chat-page .chat-header-user {
    gap: 8px;
    overflow: hidden;
  }
  .chat-page .info-name {
    display: -moz-box;
    display: flex;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    gap: 0;
    margin-left: 8px;
    font-size: 0.95rem;
    min-width: 0;
    overflow: hidden;
  }
  .chat-page .info-name a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .chat-page .active-span-mobile {
    display: block;
    font-size: 0.7rem;
    color: #65676b;
    font-weight: normal;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .chat-page .active-span {
    display: none;
  }
  .chat-page .back-button {
    display: -moz-box;
    display: flex;
    -moz-box-align: center;
         align-items: center;
    -moz-box-pack: center;
         justify-content: center;
    margin-right: 4px;
    padding: 6px;
    font-size: 1.1rem;
    flex-shrink: 0;
  }
  .chat-page .user-setting-button {
    flex-shrink: 0;
  }
  .chat-page .message {
    gap: 6px;
  }
  .chat-page .message-avatar {
    width: 28px;
  }
  .chat-page .message-avatar img {
    width: 28px;
    height: 28px;
  }
  .chat-page .message-bubble,
  .chat-page .message-text {
    max-width: 80%;
    padding: 6px 10px;
    font-size: 0.9rem;
  }
  .chat-page .message-header a {
    font-size: 0.85rem;
  }
  .chat-page .chat-input-area,
  .chat-page #chat-input-container {
    padding: 6px 8px;
    padding-bottom: max(6px, env(safe-area-inset-bottom));
    gap: 6px;
  }
  .chat-page .chat-input,
  .chat-page #chat-input {
    font-size: 16px;
    padding: 7px 4px 7px 14px;
    line-height: 1.2;
    max-height: 100px;
    height: auto;
  }
  .chat-page .chat-input-wrapper {
    border-radius: 20px;
  }
  .chat-page .chat-emoji-btn,
  .chat-page #emoji-button {
    width: 30px;
    height: 30px;
    min-width: 30px;
    font-size: 1.1rem;
  }
  .chat-page .chat-submit-btn {
    width: 34px;
    height: 34px;
    min-width: 34px;
    font-size: 0.85rem;
  }
  .chat-page .chat-box,
  .chat-page #chat-box {
    padding: 8px;
    padding-bottom: 30px;
  }
  .chat-page #chat-area {
    display: none;
    height: 100%;
  }
  .chat-page #chat-online {
    height: 100%;
  }
  .chat-page .info-pic {
    width: 32px;
    height: 32px;
  }
  .chat-page #chat-info {
    padding: 6px 8px;
  }
}
.chat-page #chat-log {
  padding: 0;
  padding-top: 16px;
  width: 100%;
  font-size: 14px;
  list-style: none;
  margin: 0;
}
.chat-page #chat-log li {
  list-style-type: none;
  margin: 0 8px 4px;
}
.chat-page #chat-log p {
  margin: 0;
  padding-top: 2px;
  padding-bottom: 2px;
  overflow-wrap: anywhere;
}
.chat-page #chat-online {
  border-right: 1px solid #e4e6eb;
  padding-bottom: 0 !important;
  border-bottom: 0;
  font-size: 1rem;
}
.chat-page #chat-online-content {
  margin-bottom: 0;
  overflow: hidden;
  overflow-wrap: break-word;
  overflow-y: auto;
  max-height: 100%;
  padding: 0;
  width: 100%;
}
.chat-page #chat-box {
  width: 100%;
  overflow: hidden;
  overflow-wrap: break-word;
  overflow-y: scroll;
  -moz-box-flex: 1;
       flex-grow: 1;
  padding: 0 8px 14px;
}
.chat-page #chat-info {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 100;
  padding: 6px 12px;
}
.chat-page #loader {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 80px;
}
.chat-page #search-container {
  padding: 12px;
}
.chat-page .selected-status-row {
  background-color: #e7f3ff;
}
.chat-page .status_last_message {
  color: #65676b;
  font-size: 0.85rem;
}
.chat-page .info-pic {
  height: 100%;
  width: 100%;
  border-radius: 50%;
}
.chat-page .info-name {
  margin-left: 12px;
  font-size: 1.1rem;
  font-weight: 600;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
}
.chat-page .info-name a {
  display: table-caption;
}
.chat-page textarea {
  resize: none;
}

.leave-organization, .leave-organization:hover {
  color: red;
}

#control-list li {
  border-bottom: 1px solid black;
}

#pending-count-box {
  float: right;
  text-align: center;
  background: red;
  color: white;
  border-radius: 3px;
  padding-left: 0.3em;
  padding-right: 0.3em;
}

.org-field-wrapper input[type=text], .org-field-wrapper textarea {
  width: 100%;
}
.org-field-wrapper .select2 {
  width: 100% !important;
}

.org-field-wrapper {
  margin-top: 0.4em;
}

.org-field-wrapper:has(> input[type=checkbox]) {
  display: contents;
}

.organization-container {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  -moz-box-pack: start;
       justify-content: flex-start;
  width: 100%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  margin-bottom: 1em;
}

.organization-card {
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  text-align: center;
  padding: 1em;
  -moz-transition: transform 0.3s, -moz-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -moz-transform 0.3s;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-pack: justify;
       justify-content: space-between;
  margin-bottom: 1em;
  text-decoration: none;
  color: inherit;
}
.organization-card:hover {
  -moz-transform: translateY(-5px);
       transform: translateY(-5px);
  color: #9c3706;
}
.organization-card img.org-logo {
  width: 100%;
  border-radius: 8px 8px 0 0;
  object-fit: contain;
  object-position: center;
  flex-shrink: 0;
  background-color: #f0f0f0;
}
.organization-card .org-details {
  padding: 1em 0;
}
.organization-card .org-details span {
  display: block;
  margin-bottom: 0.5em;
}

@media (min-width: 800px) {
  .organization-card {
    -moz-box-flex: 1;
         flex: 1 1 calc(33.33% - 1em);
    max-width: -moz-calc(33.33% - 1em);
    max-width: calc(33.33% - 1em);
  }
  .organization-card img.org-logo {
    height: 150px;
  }
}
@media (max-width: 799px) {
  .organization-card {
    -moz-box-flex: 1;
         flex: 1 1 calc(50% - 1em);
    max-width: -moz-calc(50% - 1em);
    max-width: calc(50% - 1em);
  }
  .organization-card img.org-logo {
    height: 120px;
  }
}
.organization-row {
  display: block;
  padding: 0.5em;
  border-bottom: 1px #ccc solid;
  border-top: none;
  color: black;
  font-weight: 500;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
}
.organization-row:hover {
  background-color: #f3f3f3;
}

.org-help-text {
  display: block;
  color: gray;
}

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

.org-about {
  font-size: 0.85rem;
  line-height: 1.5;
  color: #4b5563;
}
.org-about .content-description {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}
.org-about p {
  margin: 0 0 0.5em 0;
}
.org-about p:last-child {
  margin-bottom: 0;
}
.org-about h1, .org-about h2, .org-about h3, .org-about h4, .org-about h5, .org-about h6 {
  font-size: 1em;
  margin: 0.5em 0 0.3em 0;
  font-weight: 600;
  color: #374151;
}
.org-about h1:first-child, .org-about h2:first-child, .org-about h3:first-child, .org-about h4:first-child, .org-about h5:first-child, .org-about h6:first-child {
  margin-top: 0;
}
.org-about ul, .org-about ol {
  margin: 0.3em 0;
  padding-left: 1.5em;
}
.org-about li {
  margin-bottom: 0.2em;
}
.org-about img {
  max-width: 100%;
  max-height: 150px;
  border-radius: 4px;
}
.org-about a {
  color: #9c3706;
}
.org-about code {
  font-size: 0.9em;
  background: #fafafa;
  padding: 0.1em 0.3em;
  border-radius: 3px;
}
.org-about pre {
  font-size: 0.85em;
  margin: 0.5em 0;
  padding: 0.5em;
  background: #fafafa;
  border-radius: 4px;
  overflow-x: auto;
}

.header-container {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 1rem;
  padding: 1rem;
  border-radius: 8px;
}

.organization-image {
  height: 3rem;
  width: 3rem;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ddd;
}

.organization-title {
  font-size: 1.5rem;
  font-weight: bold;
  color: #333;
  margin: 0;
}

.organization-tag-edit {
  margin-left: 0.3em;
  color: #9c3706;
}
.organization-tag-edit:hover {
  color: rgb(82.3333333333, 29.0277777778, 3.1666666667);
}

.organization-tag {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.2em;
  background: -moz-linear-gradient(315deg, #4b5563, #374151);
  background: linear-gradient(135deg, #4b5563, #374151);
  color: white;
  padding: 0.3rem 0.6rem;
  border-radius: 6px;
  font-size: 0.85rem;
  font-weight: 500;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.organization-tag a {
  color: white;
  text-decoration: none;
}
.organization-tag a:hover {
  text-decoration: underline;
}
.organization-tag .user-img {
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.organization-tag .organization-edit {
  color: rgba(255, 255, 255, 0.8);
  margin-left: 0.3rem;
  font-size: 0.75rem;
  -moz-transition: color 0.15s ease;
  transition: color 0.15s ease;
}
.organization-tag .organization-edit:hover {
  color: white;
}

.org-cover-image {
  height: 8rem;
  max-height: 8rem;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
  margin: -1.5rem -1.5rem 0 -1.5rem;
  width: -moz-calc(100% + 3rem);
  width: calc(100% + 3rem);
  position: relative;
}
.org-cover-image img {
  width: 100%;
  height: 8rem;
  max-height: 8rem;
  object-fit: cover;
  object-position: center;
  display: block;
}
.org-cover-image::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 80px;
  background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.5), transparent);
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
  pointer-events: none;
}

.org-header {
  background: -moz-linear-gradient(315deg, rgb(231.7722222222, 148.9222962963, 108.7277777778), rgb(232.8361111111, 182.8934814815, 158.6638888889));
  background: linear-gradient(135deg, rgb(231.7722222222, 148.9222962963, 108.7277777778), rgb(232.8361111111, 182.8934814815, 158.6638888889));
  border-radius: 12px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid #ccc;
  overflow: hidden;
}
.org-header:has(.org-cover-image) {
  background: #fafafa;
  padding-top: 0;
}

.org-header-main {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 1rem;
  flex-wrap: wrap;
  padding: 1rem 0 0 0;
}
.org-header-main.has-cover {
  padding-top: 1rem;
}

.org-header-left {
  display: -moz-box;
  display: flex;
  gap: 1rem;
  -moz-box-align: start;
       align-items: flex-start;
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}

.org-logo-large {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: cover;
  border: 3px solid white;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
}

.org-logo-placeholder {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  background: -moz-linear-gradient(315deg, #9c3706, rgb(106.8888888889, 37.6851851852, 4.1111111111));
  background: linear-gradient(135deg, #9c3706, rgb(106.8888888889, 37.6851851852, 4.1111111111));
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  border: 3px solid white;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
}
.org-logo-placeholder i {
  font-size: 2rem;
  color: white;
}

.org-header-info {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}

.org-name {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.5rem 0;
  color: #00007d;
  line-height: 1.2;
  word-wrap: break-word;
}

.org-meta {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 0.75rem;
}

.org-badge {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
}
.org-badge i {
  font-size: 0.7rem;
}

.org-badge-public {
  background: rgba(255, 255, 255, 0.9);
  color: #16a34a;
  border: 1px solid rgba(34, 197, 94, 0.3);
}

.org-badge-private {
  background: rgba(255, 255, 255, 0.9);
  color: #b45309;
  border: 1px solid rgba(234, 179, 8, 0.3);
}

.org-stat {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 4px;
  font-size: 0.8rem;
  font-weight: 500;
  color: #374151;
}
.org-stat i {
  font-size: 0.75rem;
  color: #6b7280;
}

.org-member-preview {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
}
.org-member-preview a {
  display: block;
  margin-right: -8px;
  -moz-transition: transform 0.2s, -moz-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -moz-transform 0.2s;
}
.org-member-preview a:hover {
  -moz-transform: scale(1.1);
       transform: scale(1.1);
  z-index: 1;
}
.org-member-preview img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 2px solid white;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.org-member-more {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  align-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ededed;
  border: 2px solid white;
  font-size: 0.65rem;
  font-weight: 600;
  color: #00007d;
  margin-left: 8px;
}
.org-member-more:hover {
  background: rgb(224.25, 224.25, 224.25);
}

.org-header-actions {
  flex-shrink: 0;
}

.org-join-btn {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  padding: 0.6rem 1.2rem;
  background: #9c3706;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  -moz-transition: background 0.2s, transform 0.2s, -moz-transform 0.2s;
  transition: background 0.2s, transform 0.2s;
  transition: background 0.2s, transform 0.2s, -moz-transform 0.2s;
  text-decoration: none;
}
.org-join-btn:hover {
  background: rgb(106.8888888889, 37.6851851852, 4.1111111111);
  -moz-transform: translateY(-1px);
       transform: translateY(-1px);
  color: white;
}
.org-join-btn i {
  font-size: 0.85rem;
}

.org-request-btn {
  background: rgb(205.1111111111, 72.3148148148, 7.8888888889);
}

.org-joined-badge {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 1rem;
  background: rgba(255, 255, 255, 0.9);
  color: #16a34a;
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 8px;
  font-size: 0.85rem;
  font-weight: 600;
}
.org-joined-badge i {
  font-size: 0.8rem;
}

@media (max-width: 600px) {
  .org-cover-image {
    height: 6rem;
    max-height: 6rem;
    margin: -1rem -1rem 0.75rem -1rem;
    width: -moz-calc(100% + 2rem);
    width: calc(100% + 2rem);
  }
  .org-cover-image img {
    height: 6rem;
    max-height: 6rem;
  }
  .org-header {
    padding: 1rem;
  }
  .org-header-main {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
  }
  .org-header-left {
    width: 100%;
  }
  .org-logo-large,
  .org-logo-placeholder {
    width: 60px;
    height: 60px;
  }
  .org-logo-large i,
  .org-logo-placeholder i {
    font-size: 1.5rem;
  }
  .org-name {
    font-size: 1.25rem;
  }
  .org-meta {
    gap: 0.5rem;
  }
  .org-stat {
    font-size: 0.8rem;
  }
  .org-header-actions {
    width: 100%;
  }
  .org-header-actions form, .org-header-actions a {
    width: 100%;
  }
  .org-header-actions .org-join-btn {
    width: 100%;
    -moz-box-pack: center;
         justify-content: center;
  }
}
.post-composer {
  background: white;
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 0.75em;
  margin-bottom: 1em;
}
.post-composer .composer-trigger {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.75em;
  text-decoration: none;
  color: inherit;
  padding: 0.5em;
  border-radius: 8px;
  background: #fafafa;
  -moz-transition: background 0.2s;
  transition: background 0.2s;
}
.post-composer .composer-trigger:hover {
  background: rgb(237.25, 237.25, 237.25);
}
.post-composer .composer-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
}
.post-composer .composer-placeholder {
  color: #6b7280;
  -moz-box-flex: 1;
       flex: 1;
}
.post-composer .composer-btn {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.4em;
  padding: 0.4em 0.8em;
  background: #9c3706;
  color: white;
  border-radius: 6px;
  font-weight: 500;
  font-size: 0.9em;
  flex-shrink: 0;
}

@media (max-width: 600px) {
  .post-composer {
    padding: 0.5em;
  }
  .post-composer .composer-trigger {
    padding: 0.4em;
    flex-wrap: wrap;
  }
  .post-composer .composer-avatar {
    width: 32px;
    height: 32px;
  }
  .post-composer .composer-placeholder {
    font-size: 0.85em;
  }
  .post-composer .composer-btn {
    font-size: 0.8em;
    padding: 0.3em 0.6em;
  }
}
.ticket-container {
  display: -moz-box;
  display: flex;
}
.ticket-container #content > h2:first-child small {
  color: #999;
  font-size: 0.9em;
  margin-left: 0.3em;
}
.ticket-container #content > h2:first-child .status, .ticket-container #content > h2:first-child .title {
  display: inline;
}
.ticket-container #content > h2:first-child .fa-check-circle {
  color: #00a900;
}
.ticket-container #content > h2:first-child .fa-exclamation-circle {
  color: darkred;
}
.ticket-container .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: 1000px;
}
.ticket-container .ticket-sidebar {
  -moz-box-flex: 1;
       flex: 1;
  padding: 10px 0 0 10px;
  min-width: 150px;
  max-width: 200px;
}
.ticket-container .ticket-info {
  position: -webkit-sticky;
  position: sticky;
  top: 60px;
}
.ticket-container .ticket-messages {
  -moz-box-flex: 1;
       flex: 1;
}
.ticket-container .info-box {
  margin: 5px 0 10px;
  border: 1px #999 solid;
  border-radius: 5px;
}
.ticket-container .info-title {
  padding: 2px 5px;
  font-weight: 600;
  border-bottom: 1px #999 solid;
  background: #eee;
  border-radius: 5px 5px 0 0;
}
.ticket-container .info-data {
  padding: 2px 5px;
}
.ticket-container .info-empty {
  color: #999;
  font-style: italic;
}
.ticket-container .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;
}
.ticket-container .close-ticket:hover {
  background: #24710e;
}
.ticket-container .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;
}
.ticket-container .open-ticket:hover {
  background: #853011;
}
.ticket-container a.edit-notes {
  float: right;
}
.ticket-container #ticket-notes .info-real :first-child {
  margin-top: 0;
}
.ticket-container #ticket-notes .info-real :last-child {
  margin-bottom: 0;
}
.ticket-container .message {
  margin-top: -40px;
  padding-top: 55px;
}
.ticket-container .message .username {
  text-align: center;
}
.ticket-container .message .gravatar {
  width: 40px;
  border-radius: 4px;
  display: block;
  margin: 0 auto;
}
.ticket-container .message .message-date, .ticket-container .message .message-time {
  display: inline-block;
}
.ticket-container .message .detail {
  border: 1px #999 solid;
  border-radius: 5px;
  -moz-box-flex: 1;
       flex: 1;
  min-width: 200px;
}
.ticket-container .message .header {
  background: #eee;
  color: #777;
  border-bottom: 1px solid #999;
  border-radius: 5px 5px 0 0;
  padding: 2px 7px;
  display: -moz-inline-box;
  display: inline-flex;
  width: -webkit-fill-available;
}
.ticket-container .message .send-time {
  text-align: right;
}
.ticket-container .message .content {
  padding: 7px;
}
.ticket-container .new-message .detail {
  padding: 8px 10px;
}
.ticket-container .new-message .submit, .ticket-container #edit-notes .submit {
  margin: 10px 0 0 auto;
}
.ticket-container .user-container {
  display: -moz-inline-box;
  display: inline-flex;
}
.ticket-container .user-container .username {
  padding-left: 0.5em;
  padding-top: 1.65em;
}

@media (max-width: 799px) {
  .ticket-container {
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
         flex-direction: column-reverse;
  }
}
.ticket-item {
  padding: 16px 20px;
  border-bottom: 1px solid #e8e8e8;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
.ticket-item .ticket-status {
  margin-right: 16px;
  flex-shrink: 0;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  min-width: 60px;
  height: 30px;
  border-radius: 6px;
}
.ticket-item .ticket-status.open {
  background-color: #f39c12;
}
.ticket-item .ticket-status.closed {
  background-color: #27ae60;
}
.ticket-item .ticket-status span {
  color: white;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.ticket-item .ticket-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.ticket-item .ticket-content .ticket-title {
  margin-bottom: 2px;
}
.ticket-item .ticket-content .ticket-title a {
  font-size: 16px;
  font-weight: 700;
  color: #2c3e50;
  text-decoration: none;
  line-height: 1.4;
}
.ticket-item .ticket-content .ticket-link {
  font-size: 13px;
  color: #7f8c8d;
  font-weight: 500;
}
.ticket-item .ticket-content .ticket-link .fa {
  margin-right: 4px;
  font-size: 11px;
}
.ticket-item .ticket-content .ticket-link a {
  color: #7f8c8d;
  text-decoration: none;
}
.ticket-item .ticket-meta {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 16px;
  flex-shrink: 0;
  text-align: right;
}
.ticket-item .ticket-meta .ticket-user {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: end;
       align-items: flex-end;
}
.ticket-item .ticket-meta .ticket-user span {
  color: #34495e;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 2px;
}
.ticket-item .ticket-meta .ticket-time {
  font-size: 13px;
  color: #7f8c8d;
  font-weight: 500;
  min-width: 80px;
}

.wmd-panel {
  margin: 0;
  width: 100%;
  min-width: 0;
}

.wmd-button-bar {
  width: 100%;
}

.wmd-input {
  height: 300px;
  width: 100%;
  background: #fff;
  border: 1px solid DarkGray;
  font-family: var(--md-code-font-family), monospace;
  font-size: 15px;
}

.wmd-preview {
  background: none;
  word-wrap: break-word;
}

.wmd-button-row {
  margin-top: 10px;
  margin-bottom: 5px;
  padding: 0;
  display: -moz-box;
  display: flex; /* Display as a flex container */
  flex-wrap: nowrap; /* Prevent items from wrapping */
  overflow-x: auto;
  white-space: nowrap;
  gap: 3px;
}

.wmd-button {
  display: -moz-inline-box;
  display: inline-flex;
  list-style: none;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  background-position: center;
  border-radius: 3px;
  cursor: pointer;
  -moz-box-flex: 0;
       flex: 0 0 auto;
}

.wmd-bold-button {
  background-image: url("/static/pagedown/resources/bold.svg");
}

.wmd-italic-button {
  background-image: url("/static/pagedown/resources/italic.svg");
}

.wmd-latex-button {
  background-image: url("/static/pagedown/resources/latex.svg");
}

.wmd-latex-button-display {
  background-image: url("/static/pagedown/resources/latex-display.svg");
}

.wmd-link-button {
  background-image: url("/static/pagedown/resources/link.svg");
}

.wmd-user-reference-button {
  background-image: url("/static/pagedown/resources/user.svg");
}

.wmd-quote-button {
  background-image: url("/static/pagedown/resources/blockquote.svg");
}

.wmd-code-button {
  background-image: url("/static/pagedown/resources/code.svg");
}

.wmd-image-button {
  background-image: url("/static/pagedown/resources/image.svg");
}

.wmd-olist-button {
  background-image: url("/static/pagedown/resources/olist.svg");
  background-size: 18px;
}

.wmd-ulist-button {
  background-image: url("/static/pagedown/resources/ulist.svg");
  background-size: 18px;
}

.wmd-heading-button {
  background-image: url("/static/pagedown/resources/heading.svg");
}

.wmd-hr-button {
  background-image: url("/static/pagedown/resources/hr.svg");
}

.wmd-undo-button {
  background-image: url("/static/pagedown/resources/undo.svg");
  background-size: 18px;
}

.wmd-redo-button {
  background-image: url("/static/pagedown/resources/redo.svg");
  background-size: 18px;
}

.wmd-admonition-button {
  background-image: url("/static/pagedown/resources/admonition.svg");
}

.wmd-spoiler-button {
  background-image: url("/static/pagedown/resources/spoiler.svg");
}

.wmd-button-active:hover {
  background-color: lightgray;
}

.wmd-button-inactive {
  filter: invert(88%) sepia(1%) saturate(0%) hue-rotate(278deg) brightness(98%) contrast(91%);
}

.wmd-spacer {
  display: -moz-inline-box;
  display: inline-flex;
  width: 10px;
}

.wmd-prompt-background {
  background-color: Black;
}

.wmd-prompt-dialog {
  border: 1px solid #999999;
  background-color: #F5F5F5;
}

.wmd-prompt-dialog > div {
  font-size: 0.8em;
  font-family: arial, helvetica, sans-serif;
}

.wmd-prompt-dialog > form > input[type=text] {
  border: 1px solid #999999;
  color: black;
}

.wmd-prompt-dialog > form > input[type=button] {
  border: 1px solid #888888;
  font-family: trebuchet MS, helvetica, sans-serif;
  font-size: 0.8em;
  font-weight: bold;
}

.wmd-wrapper {
  padding-right: 0 !important;
}

.wmd-preview {
  margin-top: 15px;
  padding: 7px;
  background: white;
  line-height: 1.5em;
  font-size: 1em;
  border: 1px solid #a9a9a9;
  border-radius: 5px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

.wmd-preview:empty {
  display: none;
}

/* Extra styles to allow for image upload */
.pagedown-image-upload {
  display: none;
  z-index: 10001;
  position: fixed;
  background: white;
  top: 50%;
  left: 50%;
  padding: 10px;
  width: 400px;
  max-width: 90%;
  -moz-transform: translate3d(-50%, -50%, 0);
       transform: translate3d(-50%, -50%, 0);
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.5);
}

.pagedown-image-upload .submit-row {
  margin: 10px 0 0 0;
}

.pagedown-image-upload.show {
  display: block;
}

.pagedown-image-upload .submit-loading {
  display: none;
  vertical-align: middle;
  border: 4px solid #f3f3f3; /* Light grey */
  border-top: 4px solid #79aec8; /* Blue */
  border-radius: 50%;
  width: 24px;
  height: 24px;
  -moz-animation: spin 1s linear infinite;
       animation: spin 1s linear infinite;
}

.pagedown-image-upload .submit-loading.show {
  display: inline-block;
}

.pagedown-image-upload .submit-input {
  display: none;
}

.pagedown-image-upload .submit-input.show {
  display: inline-block;
}

@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
         transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(360deg);
         transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
         transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(360deg);
         transform: rotate(360deg);
  }
}
.pagedown-image-upload .submit-input {
  display: -moz-box;
  display: flex;
  min-width: inherit;
  float: right;
}
.pagedown-image-upload .deletelink-box {
  position: absolute;
  top: 2px;
  right: 1em;
}

/* Minimal mode styles - YouTube-like comment input */
.wmd-wrapper-minimal .minimal-editor-container {
  position: relative;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 0;
}
.wmd-wrapper-minimal .minimal-input {
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: 200px;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 18px;
  background: transparent;
  resize: none;
  -moz-transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  font-size: 0.9rem;
  line-height: 1.5;
  overflow-y: hidden;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  font-family: inherit;
}
.wmd-wrapper-minimal .minimal-input:focus {
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(156, 55, 6, 0.1);
  border-radius: 12px;
  outline: none;
}
.wmd-wrapper-minimal .minimal-input:-ms-input-placeholder {
  color: #909090;
}
.wmd-wrapper-minimal .minimal-input::placeholder {
  color: #909090;
}
.wmd-wrapper-minimal .minimal-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  margin-top: 8px;
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.wmd-wrapper-minimal.has-focus .minimal-actions, .wmd-wrapper-minimal.has-content .minimal-actions {
  opacity: 1;
  max-height: 50px;
}
.wmd-wrapper-minimal .minimal-cancel-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 18px;
  background: transparent;
  color: #00007d;
  font-weight: 500;
  font-size: 0.9rem;
  cursor: pointer;
  -moz-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.wmd-wrapper-minimal .minimal-cancel-btn:hover {
  background: rgba(0, 0, 0, 0.05);
}
.wmd-wrapper-minimal .minimal-submit-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 18px;
  background: #ccc;
  color: #606060;
  font-weight: 500;
  font-size: 0.9rem;
  cursor: not-allowed;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.wmd-wrapper-minimal .minimal-submit-btn.active {
  background: #9c3706;
  color: white;
  cursor: pointer;
}
.wmd-wrapper-minimal .minimal-submit-btn.active:hover {
  background: rgb(106.8888888889, 37.6851851852, 4.1111111111);
}
.wmd-wrapper-minimal .minimal-expand-btn {
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: #606060;
  cursor: pointer;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.wmd-wrapper-minimal .minimal-expand-btn:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #00007d;
}
.wmd-wrapper-minimal .minimal-expand-btn i {
  font-size: 14px;
}

/* Full mode header with toolbar and collapse button */
.full-editor-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  margin-bottom: 5px;
}
.full-editor-header .wmd-button-bar {
  -moz-box-flex: 1;
       flex: 1;
}
.full-editor-header .full-collapse-btn {
  width: 28px;
  height: 28px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fafafa;
  color: #00007d;
  cursor: pointer;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.full-editor-header .full-collapse-btn:hover {
  background: #9c3706;
  border-color: #9c3706;
  color: white;
}
.full-editor-header .full-collapse-btn i {
  font-size: 12px;
}

/* Full mode action buttons */
.full-editor-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #ccc;
}
.full-editor-actions .full-cancel-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 18px;
  background: transparent;
  color: #00007d;
  font-weight: 500;
  font-size: 0.9rem;
  cursor: pointer;
  -moz-transition: background 0.2s ease;
  transition: background 0.2s ease;
}
.full-editor-actions .full-cancel-btn:hover {
  background: rgba(0, 0, 0, 0.05);
}
.full-editor-actions .full-submit-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 18px;
  background: #9c3706;
  color: white;
  font-weight: 500;
  font-size: 0.9rem;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.full-editor-actions .full-submit-btn:hover {
  background: rgb(106.8888888889, 37.6851851852, 4.1111111111);
}
.full-editor-actions .full-submit-btn:disabled {
  background: #ccc;
  color: #606060;
  cursor: not-allowed;
}

div.dmmd-preview {
  padding: 0;
}

div.dmmd-preview-update {
  background: #ccc;
  color: #333;
  text-align: center;
  cursor: pointer;
  border-radius: 4px;
  height: 2em;
  line-height: 2em;
}

div.dmmd-preview-content {
  padding: 0 7px;
}

div.dmmd-preview.dmmd-preview-has-content div.dmmd-preview-update {
  border-radius: 4px 4px 0 0;
}

div.dmmd-preview-has-content div.dmmd-preview-content {
  padding-bottom: 7px;
}

div.dmmd-no-button div.dmmd-preview-update {
  display: none;
}

div.dmmd-no-button div.dmmd-preview-content {
  padding-bottom: 0;
}

div.dmmd-no-button:not(.dmmd-preview-has-content) {
  display: none;
}

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

.container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

.course-content-title {
  font-weight: bold;
}

.course-list {
  width: 100%;
  margin: 0 auto;
  list-style: none;
  padding: 0;
}
.course-list .course-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  border: 1px solid #ddd;
  padding: 20px;
  margin-bottom: 10px;
  border-radius: 8px;
  background-color: #fff;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  -moz-transition: transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
}
.course-list .course-item:hover {
  -moz-transform: translateY(-2px);
       transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.course-list .course-image {
  -moz-box-flex: 0;
       flex: 0 0 auto;
  width: 50px;
  height: 50px;
  margin-right: 20px;
  border-radius: 5px;
  overflow: hidden;
}
.course-list .course-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
}
.course-list .course-content {
  -moz-box-flex: 1;
       flex: 1;
}
.course-list .course-name {
  font-size: 1.5em;
  margin-bottom: 5px;
}

.lesson-list {
  list-style: none;
  padding: 0;
}
.lesson-list li:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
  background: #ffffe0;
}
.lesson-list li {
  background: #fff;
  border: 1px solid #ddd;
  margin-bottom: 20px;
  padding-top: 10px;
  border-radius: 5px;
  box-shadow: 0 2px 4px #ccc;
}
.lesson-list li.lesson-locked {
  opacity: 0.7;
  background: #fafafa;
  cursor: not-allowed;
  padding-bottom: 10px;
}
.lesson-list li.lesson-locked:hover {
  box-shadow: 0 2px 4px #ccc;
  background: #fafafa;
}
.lesson-list li.lesson-locked .lesson-lock-icon {
  color: #ae0000;
  margin-right: 0.3em;
}
.lesson-list li.lesson-locked .locked-text {
  color: #ae0000;
  font-weight: bold;
}
.lesson-list li.lesson-locked .prerequisite-info {
  font-size: 0.85em;
  color: #00007d;
  margin-left: 1em;
  margin-right: 1em;
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 1px dashed #ccc;
}
.lesson-list li.lesson-locked .prerequisite-info i {
  margin-right: 0.3em;
  color: #ccc;
}
.lesson-list li.lesson-locked .prerequisite-info .prereq-item {
  font-style: italic;
}
.lesson-list .lesson-title {
  font-size: 1.25em;
  margin-left: 1em;
  margin-right: 1em;
  color: initial;
  display: -moz-box;
  display: flex;
  gap: 1em;
}
.lesson-list .lesson-title .lesson-points {
  margin-left: auto;
  font-size: 0.9em;
  align-self: flex-end;
  color: #636363;
}
.lesson-list .progress-container {
  background: #e0e0e0;
  border-radius: 3px;
  height: 10px;
  width: 100%;
  margin-top: 10px;
}
.lesson-list .progress-bar {
  background: forestgreen;
  height: 10px;
  border-radius: 3px;
  line-height: 10px;
  color: white;
  text-align: right;
  font-size: smaller;
}

.course-problem-list {
  list-style-type: none;
  padding: 0;
  font-size: 15px;
}
.course-problem-list i {
  font-size: large;
}
.course-problem-list li {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: justify;
       justify-content: space-between;
  border-bottom: 1px solid #eee;
  padding: 10px;
  border-radius: 5px;
}
.course-problem-list .problem-name {
  margin-left: 10px;
}
.course-problem-list li:hover {
  background: #e0e0e0;
}
.course-problem-list .score {
  font-weight: bold;
  margin-left: auto;
}
.course-problem-list a {
  text-decoration: none;
  color: inherit;
}

.course-contest-card, .course-lesson-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  margin-top: 20px;
  padding: 15px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
}
.course-contest-card h5, .course-lesson-card h5 {
  margin: 0 0 10px;
  font-size: 1.2em;
  color: #333;
}
.course-contest-card p, .course-lesson-card p {
  margin: 5px 0;
  color: #555;
}
.course-contest-card .problem-codes, .course-lesson-card .problem-codes {
  font-family: monospace;
  color: #666;
  font-size: 0.9em;
}

.add-button-container {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
}

.inline-role-form {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
}

.inline-delete-form {
  display: inline;
}

.no-permission-text {
  color: #999;
}

.members-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px;
  margin-top: 1em;
}
.members-table th, .members-table td {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: left;
}
.members-table th {
  background-color: #f5f5f5;
  font-weight: bold;
}
.members-table tr:nth-child(even) {
  background-color: #f9f9f9;
}
.members-table tr:hover {
  background-color: #f0f0f0;
}

.add-member-form {
  background-color: #f8f9fa;
  padding: 15px;
  border-radius: 5px;
  border: 1px solid #ddd;
  margin-top: 20px;
}

.form-row {
  display: -moz-box;
  display: flex;
  gap: 15px;
  -moz-box-align: end;
       align-items: flex-end;
  flex-wrap: wrap;
  margin-top: 1em;
}

.form-field {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 200px;
}
.form-field label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}
.form-field input, .form-field select {
  width: 100%;
  padding: 8px;
  border: 1px solid #ddd;
  border-radius: 3px;
}

.role-badge {
  padding: 3px 8px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
}
.role-badge.role-teacher {
  background-color: #007bff;
  color: white;
}
.role-badge.role-assistant {
  background-color: #28a745;
  color: white;
}
.role-badge.role-student {
  background-color: #6c757d;
  color: white;
}

.role-select {
  padding: 5px 8px;
  border: 1px solid #ddd;
  border-radius: 3px;
  font-size: 14px;
  background-color: white;
  cursor: pointer;
  min-width: 100px;
}
.role-select:hover {
  border-color: #999;
}
.role-select:focus {
  outline: none;
  border-color: #007bff;
  box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

.no-members-text {
  text-align: center;
  color: #666;
  margin: 40px 0;
}

.form-error {
  color: red;
  font-size: 12px;
  margin-top: 5px;
}

.course-detail-page .contest-name {
  font-weight: bold;
  font-size: 1.1em;
}
.course-detail-page .contest-details {
  font-size: 0.9em;
}
.course-detail-page .course-leave-form {
  float: right;
}
.course-detail-page .course-leave-form form {
  display: inline;
}
.course-detail-page .course-total-points {
  float: right;
  font-weight: normal;
}

.course-edit-page .form-header {
  margin-bottom: 0.5em;
}
.course-edit-page .form-container {
  margin-bottom: 1em;
}
.course-edit-page .form-field-wrapper {
  margin-bottom: 1em;
}
.course-edit-page .form-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: start;
       justify-content: flex-start;
  -moz-box-align: center;
       align-items: center;
}

.edit-lessons-tabs {
  margin-bottom: 1.5em;
}

.edit-lessons-page.order-tab .prereq-description {
  color: #00007d;
  font-size: 0.9em;
  margin-bottom: 1em;
}
.edit-lessons-page.order-tab .order-section-title {
  margin-bottom: 15px;
}
.edit-lessons-page.order-tab .sortable-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.edit-lessons-page.order-tab .sortable-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 10px 15px;
  margin-bottom: 5px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: move;
}
.edit-lessons-page.order-tab .sortable-item:hover {
  background: #ededed;
}
.edit-lessons-page.order-tab .sortable-item.ui-sortable-helper {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.edit-lessons-page.order-tab .drag-handle {
  margin-right: 15px;
  color: #ccc;
}
.edit-lessons-page.order-tab .item-order {
  min-width: 30px;
  font-weight: bold;
  color: #00007d;
}
.edit-lessons-page.order-tab .item-title {
  -moz-box-flex: 1;
       flex: 1;
}
.edit-lessons-page.order-tab .item-title a {
  color: #00007d;
  text-decoration: none;
}
.edit-lessons-page.order-tab .item-title a:hover {
  text-decoration: underline;
}
.edit-lessons-page.order-tab .item-meta {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 12px;
  margin-right: 15px;
  color: #ccc;
  font-size: 0.9em;
}
.edit-lessons-page.order-tab .item-meta .item-points {
  font-weight: 500;
  color: #00007d;
}
.edit-lessons-page.order-tab .item-meta .item-visibility i {
  font-size: 1.1em;
}
.edit-lessons-page.order-tab .item-meta .item-visibility.public {
  color: green;
}
.edit-lessons-page.order-tab .item-meta .item-visibility.private {
  color: #ae0000;
}
.edit-lessons-page.order-tab .item-actions {
  display: -moz-box;
  display: flex;
  gap: 5px;
}
.edit-lessons-page.order-tab .item-actions .action-btn.small {
  padding: 4px 8px;
  font-size: 0.85em;
}
.edit-lessons-page.order-tab .save-status {
  display: none;
  padding: 8px 12px;
  margin-top: 10px;
  border-radius: 4px;
  font-size: 0.9em;
}
.edit-lessons-page.order-tab .save-status.success {
  background: #d4edda;
  color: #155724;
}
.edit-lessons-page.order-tab .save-status.error {
  background: #f8d7da;
  color: #721c24;
}
.edit-lessons-page.prerequisites-tab .prereq-description {
  color: #00007d;
  font-size: 0.9em;
  margin-bottom: 1em;
}
.edit-lessons-page.prerequisites-tab .prereq-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1em;
}
.edit-lessons-page.prerequisites-tab .prereq-table th, .edit-lessons-page.prerequisites-tab .prereq-table td {
  padding: 10px;
  border: 1px solid #ccc;
  text-align: left;
}
.edit-lessons-page.prerequisites-tab .prereq-table th {
  background-color: #fafafa;
  font-weight: bold;
}
.edit-lessons-page.prerequisites-tab .prereq-table tr:hover:not(.add-row) {
  background-color: #fafafa;
}
.edit-lessons-page.prerequisites-tab .prereq-table .prereq-arrow {
  text-align: center;
  width: 40px;
  color: #00007d;
}
.edit-lessons-page.prerequisites-tab .prereq-table .add-row {
  background-color: #fafafa;
}
.edit-lessons-page.prerequisites-tab .prereq-table .add-row select, .edit-lessons-page.prerequisites-tab .prereq-table .add-row input {
  padding: 6px 8px;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: white;
}
.edit-lessons-page.prerequisites-tab .prereq-table .add-row select {
  width: 100%;
  max-width: 200px;
}
.edit-lessons-page.prerequisites-tab .prereq-table .delete-btn {
  color: #ae0000;
  cursor: pointer;
  border: none;
  background: none;
  font-size: 1.1em;
  padding: 5px 10px;
}
.edit-lessons-page.prerequisites-tab .prereq-table .delete-btn:hover {
  opacity: 0.7;
}
.edit-lessons-page.prerequisites-tab .prereq-table .prereq-percentage-cell .edit-percentage {
  width: 60px;
  padding: 4px 6px;
  border: 1px solid #ccc;
  border-radius: 3px;
  text-align: center;
  -moz-transition: background-color 0.3s ease, border-color 0.3s ease;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
.edit-lessons-page.prerequisites-tab .prereq-table .prereq-percentage-cell .edit-percentage:focus {
  outline: none;
  border-color: #9c3706;
}
.edit-lessons-page.prerequisites-tab .prereq-table .prereq-percentage-cell .edit-percentage:disabled {
  background-color: #fafafa;
  cursor: wait;
}
.edit-lessons-page.prerequisites-tab .prereq-table .prereq-percentage-cell .edit-percentage.edit-success {
  background-color: #d4edda;
  border-color: #28a745;
}
.edit-lessons-page.prerequisites-tab .prereq-error {
  color: #ae0000;
  margin-top: 10px;
  font-size: 0.9em;
}
.edit-lessons-page.prerequisites-tab .prereq-error i {
  margin-right: 0.3em;
}
.edit-lessons-page.prerequisites-tab .no-prereqs {
  text-align: center;
  color: #00007d;
  padding: 30px;
  background: #fafafa;
  border-radius: 5px;
  margin-top: 1em;
}
.edit-lessons-page.prerequisites-tab .no-prereqs i {
  font-size: 2em;
  margin-bottom: 10px;
  display: block;
  opacity: 0.5;
}
.edit-lessons-page.prerequisites-tab .prereq-hint {
  font-style: italic;
  opacity: 0.8;
}
.edit-lessons-page.prerequisites-tab .prereq-hint i {
  margin-right: 0.3em;
}
.edit-lessons-page.prerequisites-tab .prereq-add-section {
  margin-top: 1em;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
  -moz-box-align: center;
       align-items: center;
}
.edit-lessons-page.prerequisites-tab .prereq-json-section {
  margin-top: 2em;
  padding-top: 1.5em;
  border-top: 1px dashed #ccc;
}
.edit-lessons-page.prerequisites-tab .prereq-json-section h4 {
  margin-top: 0;
  margin-bottom: 0.5em;
  color: #00007d;
}
.edit-lessons-page.prerequisites-tab .prereq-json-section .prereq-json-textarea {
  width: 100%;
  font-family: monospace;
  font-size: 0.9em;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  resize: vertical;
  min-height: 80px;
}
.edit-lessons-page.prerequisites-tab .prereq-json-section .prereq-json-actions {
  margin-top: 0.5em;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
}
.edit-lessons-page.prerequisites-tab .prereq-refresh-section {
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid #ccc;
}
.edit-lessons-page.prerequisites-tab .prereq-refresh-section .prereq-refresh-form {
  display: inline;
}
.edit-lessons-page.prerequisites-tab .prereq-refresh-section .prereq-refresh-hint {
  margin-left: 10px;
  font-size: 0.9em;
}

.course-list-page .course-list {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 16px;
  margin-top: 20px;
}
.course-list-page .course-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background: white;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.course-list-page .course-item:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  border-color: #cbd5e0;
}
.course-list-page .course-image {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
  border-radius: 8px;
  background: -moz-linear-gradient(315deg, #667eea 0%, #764ba2 100%);
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  color: white;
  font-size: 2em;
  font-weight: bold;
  text-transform: uppercase;
}
.course-list-page .course-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}
.course-list-page .course-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.course-list-page .course-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  -moz-box-pack: justify;
       justify-content: space-between;
  margin-bottom: 8px;
  gap: 12px;
}
.course-list-page .course-title {
  -moz-box-flex: 1;
       flex: 1;
}
.course-list-page .course-name {
  font-size: 1.5em;
  font-weight: 700;
  color: #2d3748;
  text-decoration: none;
  display: block;
  margin-bottom: 4px;
  line-height: 1.2;
}
.course-list-page .course-name:hover {
  color: #667eea;
}
.course-list-page .course-badges {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  flex-shrink: 0;
}
.course-list-page .badge {
  display: inline-block;
  padding: 8px 16px;
  border-radius: 20px;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
.course-list-page .badge.badge-open {
  background: #e8f5e8;
  color: #2e7d32;
}
.course-list-page .badge.badge-closed {
  background: #ffebee;
  color: #c62828;
}
.course-list-page .badge.badge-join {
  background: #e8f5e8 !important;
  color: #2e7d32 !important;
  border: none !important;
  cursor: pointer !important;
  -moz-transition: all 0.2s ease !important;
  transition: all 0.2s ease !important;
}
.course-list-page .badge.badge-join:hover {
  background: #c8e6c9 !important;
  -moz-transform: translateY(-1px) !important;
       transform: translateY(-1px) !important;
  box-shadow: 0 2px 4px rgba(46, 125, 50, 0.2) !important;
}
.course-list-page .course-description {
  color: #718096;
  font-size: 0.95em;
  line-height: 1.5;
  margin-bottom: 12px;
}
.course-list-page .course-meta {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 0.9em;
  color: #4a5568;
}
.course-list-page .course-meta-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
}
.course-list-page .course-meta-item i {
  color: #a0aec0;
  width: 14px;
}
.course-list-page .course-organizations {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.course-list-page .org-badge {
  background: #f7fafc;
  color: #4a5568;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 0.75em;
  border: 1px solid #e2e8f0;
}
.course-list-page .no-courses {
  text-align: center;
  padding: 60px 20px;
  color: #718096;
  background: #f7fafc;
  border-radius: 12px;
}
.course-list-page .no-courses h3 {
  color: #4a5568;
  margin-bottom: 8px;
}
.course-list-page .pagination-wrapper {
  margin-top: 24px;
  text-align: center;
}
.course-list-page .course-join-form {
  display: inline;
}
.course-list-page .course-join-form form {
  display: inline;
}
@media (max-width: 768px) {
  .course-list-page .course-item {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    -moz-box-align: center;
         align-items: center;
    text-align: center;
    gap: 12px;
  }
  .course-list-page .course-header {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    -moz-box-align: center;
         align-items: center;
    text-align: center;
    gap: 8px;
  }
  .course-list-page .course-meta {
    -moz-box-pack: center;
         justify-content: center;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    gap: 8px;
  }
  .course-list-page .course-meta-item {
    -moz-box-pack: center;
         justify-content: center;
  }
}

.course-create-page .form-header {
  margin-bottom: 0.5em;
}
.course-create-page .course-info {
  background: #f0f8ff;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}
.course-create-page .course-info h4 {
  margin-top: 0;
  color: #333;
}
.course-create-page .course-info ul {
  margin: 10px 0;
  padding-left: 20px;
}
.course-create-page .course-info li {
  margin: 5px 0;
  color: #666;
}
.course-create-page .form-container {
  margin-bottom: 1em;
}
.course-create-page .form-field-wrapper {
  margin-bottom: 1em;
}
.course-create-page .form-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: start;
       justify-content: flex-start;
  -moz-box-align: center;
       align-items: center;
}
.course-create-page .form-actions .action-btn + .action-btn {
  margin-left: 10px;
}

.course-enrollment-page .enrollment-message {
  text-align: center;
  padding: 40px 20px;
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 8px;
  margin: 20px 0;
}
.course-enrollment-page .enrollment-message h2 {
  color: #495057;
  margin-bottom: 20px;
}
.course-enrollment-page .enrollment-message p {
  color: #6c757d;
  font-size: 1.1em;
  margin-bottom: 25px;
  line-height: 1.5;
}
.course-enrollment-page .course-info {
  background-color: #ffffff;
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 20px;
  margin: 20px 0;
}
.course-enrollment-page .course-info h3 {
  color: #495057;
  margin-bottom: 15px;
}
.course-enrollment-page .enrollment-form {
  display: inline;
}
.course-enrollment-page .enrollment-form form {
  display: inline;
}

.org-course-edit-page .course-info {
  background: #f0f8ff;
  padding: 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}
.org-course-edit-page .course-info h4 {
  margin-top: 0;
  color: #333;
}
.org-course-edit-page .course-info ul {
  margin: 10px 0;
  padding-left: 20px;
}
.org-course-edit-page .course-info li {
  margin: 5px 0;
  color: #666;
}
.org-course-edit-page .form-actions {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #eee;
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
}
.org-course-edit-page .form-actions-left {
  display: -moz-box;
  display: flex;
  gap: 10px;
}
.org-course-edit-page .form-field-wrapper {
  margin-bottom: 1em;
}
.org-course-edit-page .delete-course-btn {
  background: #dc3545;
  color: white;
}

.actionbar {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0;
  border-top: 1px solid #ccc;
  margin-top: 0.75rem;
}
.actionbar .actionbar-block {
  display: -moz-box;
  display: flex;
  -moz-box-flex: 1;
       flex: 1;
  -moz-box-pack: center;
       justify-content: center;
}
.actionbar .actionbar-button {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  gap: 0.4rem;
  cursor: pointer;
  padding: 0.5rem 1rem;
  border-radius: 6px;
  font-weight: 500;
  font-size: 0.875rem;
  color: #333;
  background: transparent;
  border: none;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.actionbar .actionbar-button i {
  font-size: 1.1rem;
  -moz-transition: transform 0.15s ease, -moz-transform 0.15s ease;
  transition: transform 0.15s ease;
  transition: transform 0.15s ease, -moz-transform 0.15s ease;
}
.actionbar .actionbar-button:hover {
  background: rgba(0, 0, 0, 0.05);
  color: #555;
}
.actionbar .actionbar-button:hover i {
  -moz-transform: scale(1.1);
       transform: scale(1.1);
}
.actionbar .actionbar-button:active {
  -moz-transform: scale(0.95);
       transform: scale(0.95);
}
.actionbar .like-button {
  padding-right: 0.6rem;
  border-radius: 6px 0 0 6px;
}
.actionbar .like-button.voted {
  color: #9c3706;
  background: rgba(156, 55, 6, 0.1);
}
.actionbar .like-button.voted i {
  font-weight: 900;
}
.actionbar .like-button.voted:hover {
  background: rgba(156, 55, 6, 0.15);
  color: #9c3706;
}
.actionbar .dislike-button {
  padding-left: 0.6rem;
  border-radius: 0 6px 6px 0;
}
.actionbar .dislike-button.voted {
  color: #e74c3c;
  background: rgba(231, 76, 60, 0.1);
}
.actionbar .dislike-button.voted i {
  font-weight: 900;
}
.actionbar .dislike-button.voted:hover {
  background: rgba(231, 76, 60, 0.15);
  color: #e74c3c;
}
.actionbar .like-button:hover,
.actionbar .dislike-button:hover {
  background: rgba(0, 0, 0, 0.06);
}
.actionbar .like-button.disabled,
.actionbar .dislike-button.disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
.actionbar .bookmark-button.bookmarked {
  color: #f59e0b;
  background: rgba(245, 158, 11, 0.1);
}
.actionbar .bookmark-button.bookmarked i {
  font-weight: 900;
}
.actionbar .bookmark-button.bookmarked:hover {
  background: rgba(245, 158, 11, 0.15);
  color: #f59e0b;
}
.actionbar .actionbar-share:hover {
  color: #3b82f6;
  background: rgba(59, 130, 246, 0.08);
}
.actionbar .pagevote-score {
  font-weight: 600;
  min-width: 1.25rem;
  text-align: center;
}
.actionbar .actionbar-text {
  font-weight: 500;
}

@media (max-width: 799px) {
  .actionbar {
    gap: 0.25rem;
    padding: 0.4rem 0;
  }
  .actionbar .actionbar-button {
    padding: 0.5rem 0.75rem;
    font-size: 0.8rem;
  }
  .actionbar .actionbar-button i {
    font-size: 1rem;
  }
  .hide_texts_on_mobile .actionbar-text {
    display: none;
  }
}
.actionbar-box .actionbar {
  margin-top: 0.5rem;
  padding-top: 0.5rem;
}

.contest-problemset html {
  background: white;
}
.contest-problemset body {
  background: white;
  margin: 0;
  padding: 20px;
}
.contest-problemset .contest-header {
  text-align: center;
  margin-bottom: 2em;
}
.contest-problemset .contest-header h1 {
  color: #393630;
  font-size: 2.5em;
  margin-bottom: 0.2em;
}
.contest-problemset .contest-header h2 {
  color: #666;
  font-size: 1.5em;
  margin-top: 0;
}
.contest-problemset .contest-header .back-link {
  margin-top: 1em;
}
.contest-problemset .contest-header .back-link a {
  color: #007bff;
  text-decoration: none;
  font-size: 1.1em;
}
.contest-problemset .contest-header .back-link a:hover {
  text-decoration: underline;
}
.contest-problemset .problem-section {
  margin-bottom: 4em;
  border-bottom: 1px solid #eee;
  padding-bottom: 2em;
}
.contest-problemset .problem-section:last-child {
  border-bottom: none;
}
.contest-problemset .problem-title {
  color: #393630;
  font-size: 2em;
  border-bottom: 2px solid #007bff;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}
.contest-problemset .new-problem-info {
  margin-bottom: 2em;
}
.contest-problemset .new-problem-info .info-block {
  margin-right: 2em;
  margin-bottom: 0.8em;
  font-size: 0.95em;
}
.contest-problemset .new-problem-info .info-block .fa {
  color: #007bff;
  margin-right: 0.5em;
  width: 16px;
}
.contest-problemset .new-problem-info .info-block .fa-check {
  background: rgba(40, 167, 69, 0.15);
  color: #155724;
}
.contest-problemset .new-problem-info .info-block .fa-clock {
  background: rgba(255, 193, 7, 0.15);
  color: #856404;
}
.contest-problemset .new-problem-info .info-block .fa-server {
  background: rgba(40, 167, 69, 0.15);
  color: #155724;
}
.contest-problemset .new-problem-info .info-block .fa-file {
  background: rgba(0, 123, 255, 0.15);
  color: #004085;
}
.contest-problemset .contest-problems a,
.contest-problemset .problems a {
  color: #007bff;
  text-decoration: none;
}
.contest-problemset .contest-problems a:hover,
.contest-problemset .problems a:hover {
  text-decoration: underline;
}
.contest-problemset .contest-problems a .fa,
.contest-problemset .problems a .fa {
  margin-right: 0.5em;
}
.contest-problemset .content-description {
  line-height: 1.7;
}
.contest-problemset .content-description h1, .contest-problemset .content-description h2, .contest-problemset .content-description h3, .contest-problemset .content-description h4, .contest-problemset .content-description h5, .contest-problemset .content-description h6 {
  margin-top: 1.5em;
  margin-bottom: 0.8em;
}
.contest-problemset .content-description pre, .contest-problemset .content-description .codehilite {
  border: 1px solid #e9ecef;
  border-radius: 5px;
  padding: 1.2em;
  margin: 1.5em 0;
  overflow-x: auto;
}
.contest-problemset .content-description table {
  background: white;
}
.contest-problemset .content-description table th, .contest-problemset .content-description table td {
  padding: 12px;
}
.contest-problemset .content-description table th {
  font-weight: bold;
}
.contest-problemset .content-description blockquote {
  border-left: 4px solid #007bff;
  margin: 1.5em 0;
  color: #666;
  background: #f9f9f9;
  padding: 1em 1em 1em 2em;
  border-radius: 0 5px 5px 0;
}
@media print {
  .contest-problemset .contest-header .back-link {
    display: none;
  }
  .contest-problemset .table a {
    color: inherit !important;
    text-decoration: none !important;
    pointer-events: none;
  }
  .contest-problemset .problem-section {
    page-break-after: always;
  }
  .contest-problemset .problem-section:last-child {
    page-break-after: auto;
  }
  .contest-problemset body {
    page-break-after: always;
  }
  .contest-problemset .fa {
    display: none !important;
  }
  .contest-problemset .info-block .fa-check,
  .contest-problemset .info-block .fa-clock,
  .contest-problemset .info-block .fa-server,
  .contest-problemset .info-block .fa-file {
    display: none !important;
  }
  .contest-problemset .problem-title {
    border-bottom-color: black !important;
  }
}
@media (max-width: 768px) {
  .contest-problemset body {
    padding: 10px;
  }
  .contest-problemset .contest-header h1 {
    font-size: 2em;
  }
  .contest-problemset .problem-title {
    font-size: 1.5em;
  }
  .contest-problemset .new-problem-info .info-block {
    display: block;
    margin-bottom: 0.5em;
  }
}

.user-upload-page .user-files-container {
  max-width: 1200px;
  margin: 20px auto;
  padding: 20px;
}
.user-upload-page .top-section {
  display: -moz-box;
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .user-upload-page .top-section {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
  }
}
.user-upload-page .storage-summary {
  -moz-box-flex: 1;
       flex: 1;
  padding: 15px;
  background: #fafafa;
  border-radius: 0.5em;
  border: 1px solid #ccc;
}
.user-upload-page .storage-summary h4 {
  margin: 0 0 10px 0;
  color: #00007d;
  font-size: 14px;
  font-weight: 600;
}
.user-upload-page .storage-summary p {
  margin: 0;
  font-size: 13px;
  color: #00007d;
  opacity: 0.8;
}
.user-upload-page .storage-bar {
  width: 100%;
  height: 20px;
  background: #ededed;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}
.user-upload-page .storage-used {
  height: 100%;
  background: -moz-linear-gradient(left, #9c3706, rgb(195.2888888889, 68.8518518519, 7.5111111111));
  background: linear-gradient(90deg, #9c3706, rgb(195.2888888889, 68.8518518519, 7.5111111111));
  -moz-transition: width 0.3s ease;
  transition: width 0.3s ease;
}
.user-upload-page .upload-section {
  -moz-box-flex: 2;
       flex: 2;
  padding: 15px;
  background: #fafafa;
  border-radius: 8px;
  border: 2px dashed #ccc;
}
.user-upload-page .upload-section h4 {
  margin: 0 0 10px 0;
  color: #00007d;
  font-size: 14px;
  font-weight: 600;
}
.user-upload-page .upload-section small {
  display: block;
  margin-top: 8px;
  color: #00007d;
  opacity: 0.7;
  font-size: 12px;
}
.user-upload-page .upload-controls {
  display: -moz-box;
  display: flex;
  gap: 10px;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 10px;
}
.user-upload-page #file-input {
  -moz-box-flex: 1;
       flex: 1;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
}
.user-upload-page .upload-progress-bar {
  margin-top: 10px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
}
.user-upload-page .upload-progress-bar .progress-bar-track {
  -moz-box-flex: 1;
       flex: 1;
  height: 8px;
  background: #ededed;
  border-radius: 4px;
  overflow: hidden;
}
.user-upload-page .upload-progress-bar .progress-bar-fill {
  height: 100%;
  background: -moz-linear-gradient(left, #9c3706, rgb(195.2888888889, 68.8518518519, 7.5111111111));
  background: linear-gradient(90deg, #9c3706, rgb(195.2888888889, 68.8518518519, 7.5111111111));
  border-radius: 4px;
  -moz-transition: width 0.2s ease;
  transition: width 0.2s ease;
  width: 0%;
}
.user-upload-page .upload-progress-bar .progress-percent {
  font-size: 12px;
  color: #00007d;
  min-width: 35px;
  text-align: right;
}
.user-upload-page #upload-status {
  margin-top: 10px;
  padding: 10px;
  border-radius: 4px;
  display: none;
}
.user-upload-page #upload-status.success {
  background: rgba(40, 167, 69, 0.1);
  color: green;
  border: 1px solid rgba(40, 167, 69, 0.3);
  display: block;
}
.user-upload-page #upload-status.error {
  background: rgba(174, 0, 0, 0.1);
  color: #ae0000;
  border: 1px solid rgba(174, 0, 0, 0.3);
  display: block;
}
.user-upload-page .file-controls {
  display: -moz-box;
  display: flex;
  gap: 20px;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 20px;
  padding: 15px;
  background: white;
  border: 1px solid #ccc;
  border-radius: 0.5em;
}
.user-upload-page .search-box {
  -moz-box-flex: 1;
       flex: 1;
  position: relative;
}
.user-upload-page .search-box i {
  position: absolute;
  left: 10px;
  top: 50%;
  -moz-transform: translateY(-50%);
       transform: translateY(-50%);
  color: #00007d;
}
.user-upload-page #file-search {
  width: 100%;
  padding: 8px 8px 8px 35px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
}
.user-upload-page .sort-controls {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
}
.user-upload-page #sort-select {
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
}
.user-upload-page .view-controls {
  display: -moz-box;
  display: flex;
  gap: 5px;
}
.user-upload-page .view-btn {
  padding: 8px 12px;
  border: 1px solid #ccc;
  background: white;
  cursor: pointer;
  border-radius: 4px;
  color: #00007d;
}
.user-upload-page .view-btn.active {
  background: #9c3706;
  color: white;
  border-color: #9c3706;
}
.user-upload-page .view-btn:hover:not(.active) {
  background: #fafafa;
}
.user-upload-page .view-grid .files-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 20px;
}
.user-upload-page .view-list .files-grid {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 10px;
}
.user-upload-page .view-list .file-card {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 0.5em;
}
.user-upload-page .view-list .file-icon {
  margin-right: 15px;
}
.user-upload-page .view-list .file-icon i {
  font-size: 1.5em !important;
}
.user-upload-page .view-list .file-info {
  -moz-box-flex: 1;
       flex: 1;
}
.user-upload-page .view-list .file-actions {
  display: -moz-box;
  display: flex;
  gap: 5px;
}
.user-upload-page .file-card {
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 15px;
  text-align: center;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  background: white;
}
.user-upload-page .file-card:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.user-upload-page .file-card.removing {
  opacity: 0.5;
  -moz-transform: scale(0.9);
       transform: scale(0.9);
}
.user-upload-page .file-card.hidden {
  display: none !important;
}
.user-upload-page .file-icon {
  margin-bottom: 10px;
  color: #00007d;
  height: 80px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
}
.user-upload-page .image-thumbnail {
  width: 100%;
  height: 80px;
  overflow: hidden;
  border-radius: 4px;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  background: #fafafa;
}
.user-upload-page .image-thumbnail img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.user-upload-page .view-list .file-icon {
  height: 40px;
  width: 60px;
  margin-right: 15px;
}
.user-upload-page .view-list .image-thumbnail {
  height: 40px;
  width: 60px;
}
.user-upload-page .file-name {
  font-weight: bold;
  margin-bottom: 5px;
  word-break: break-word;
  color: #00007d;
}
.user-upload-page .file-meta {
  font-size: 12px;
  color: #00007d;
  opacity: 0.7;
  margin-bottom: 10px;
}
.user-upload-page .file-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: center;
       justify-content: center;
  gap: 5px;
}
.user-upload-page .btn-action {
  padding: 5px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
  color: #00007d;
  cursor: pointer;
  text-decoration: none;
}
.user-upload-page .btn-action:hover {
  background: #fafafa;
  color: #00007d;
}
.user-upload-page .btn-action.copy-url-btn {
  color: #28a745;
}
.user-upload-page .btn-action.copy-url-btn:hover {
  background: rgba(40, 167, 69, 0.1);
  border-color: #28a745;
}
.user-upload-page .btn-action.rename-btn {
  color: #007bff;
}
.user-upload-page .btn-action.rename-btn:hover {
  background: rgba(0, 123, 255, 0.1);
  border-color: #007bff;
}
.user-upload-page .btn-action.btn-danger {
  color: #ae0000;
}
.user-upload-page .btn-action.btn-danger:hover {
  background: rgba(174, 0, 0, 0.1);
  border-color: #ae0000;
}
.user-upload-page .no-files {
  text-align: center;
  padding: 50px;
  color: #00007d;
  opacity: 0.7;
}
.user-upload-page .no-files i {
  color: #00007d;
  opacity: 0.5;
}
.user-upload-page #upload-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
@media (max-width: 799px) {
  .user-upload-page .file-controls {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    gap: 10px;
  }
  .user-upload-page .search-box {
    width: 100%;
  }
  .user-upload-page .sort-controls {
    width: 100%;
    -moz-box-pack: justify;
         justify-content: space-between;
  }
  .user-upload-page .view-controls {
    width: 100%;
    -moz-box-pack: center;
         justify-content: center;
  }
  .user-upload-page .view-grid .files-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
  }
}

.notification-page {
  /* Notification page styling */
}
.notification-page .notification-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
}
.notification-page {
  /* Filter section styling */
}
.notification-page .filter-section {
  background: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 25px;
}
.notification-page .filter-form {
  display: -moz-box;
  display: flex;
  gap: 20px;
  -moz-box-align: end;
       align-items: flex-end;
  flex-wrap: wrap;
}
.notification-page .filter-group {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  min-width: 150px;
}
.notification-page .filter-group label {
  font-weight: 600;
  margin-bottom: 5px;
}
.notification-page .filter-group input[type=text] {
  padding: 8px 12px;
  border: 1px solid #ced4da;
  border-radius: 4px;
  font-size: 14px;
  width: 200px;
}
.notification-page .filter-actions {
  display: -moz-box;
  display: flex;
  gap: 10px;
}
.notification-page {
  /* Action buttons styling */
}
.notification-page .action-section {
  margin-bottom: 20px;
}
.notification-page .button {
  background: #007bff;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
  -moz-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.notification-page .button:hover {
  background: #0056b3;
}
.notification-page .button.secondary {
  background: #6c757d;
}
.notification-page .button.secondary:hover {
  background: #545b62;
}
.notification-page {
  /* Notification table styling */
}
.notification-page .notification-table {
  width: 100%;
  border-collapse: collapse;
  background: white;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.notification-page .notification-table th {
  background: #f8f9fa;
  padding: 15px 12px;
  text-align: left;
  font-weight: 600;
  border-bottom: 2px solid #dee2e6;
}
.notification-page .notification-table td {
  padding: 15px 12px;
  border-bottom: 1px solid #dee2e6;
  vertical-align: top;
}
.notification-page {
  /* Notification row states */
}
.notification-page .notification-row.unread {
  background-color: #fff3cd;
  border-left: 4px solid #ffc107;
}
.notification-page .notification-row.read {
  background-color: #f8f9fa;
  opacity: 0.8;
}
.notification-page .notification-row:hover {
  background-color: #e9ecef;
}
.notification-page {
  /* Content styling */
}
.notification-page .notification-content {
  max-width: 400px;
  word-wrap: break-word;
  cursor: pointer;
}
.notification-page .notification-content a {
  color: #007bff;
  text-decoration: none;
}
.notification-page .notification-content a:hover {
  text-decoration: underline;
}
.notification-page {
  /* Time styling */
}
.notification-page .notification-time {
  font-size: 13px;
}
.notification-page .notification-time small {
  display: block;
  margin-top: 4px;
  font-size: 11px;
}
.notification-page {
  /* Empty state styling */
}
.notification-page .empty-state {
  text-align: center;
  padding: 60px 20px;
}
.notification-page .empty-state h3 {
  margin-bottom: 10px;
}
.notification-page {
  /* Responsive design */
}
@media (max-width: 768px) {
  .notification-page .filter-form {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
         flex-direction: column;
    -moz-box-align: stretch;
         align-items: stretch;
  }
  .notification-page .filter-group {
    min-width: auto;
  }
  .notification-page .filter-group input[type=text] {
    width: 100%;
  }
  .notification-page .notification-table {
    font-size: 14px;
  }
  .notification-page .notification-table th,
  .notification-page .notification-table td {
    padding: 10px 8px;
  }
  .notification-page .notification-content {
    max-width: 250px;
  }
}
.notification-page {
  /* Select2 customization */
}
.notification-page .select2-container--default .select2-selection--single {
  height: 38px;
  border: 1px solid #ced4da;
  border-radius: 4px;
}
.notification-page .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 36px;
  padding-left: 12px;
}
.notification-page .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 36px;
}

.btn.btn-default {
  background-color: #fafafa !important;
  border: 1px solid #ccc !important;
  color: #00007d !important;
  padding: 8px 16px;
  border-radius: 5px;
  text-decoration: none;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  gap: 0.4em;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.btn.btn-default:hover {
  background-color: rgb(237.25, 237.25, 237.25) !important;
  text-decoration: none;
}

.btn.btn-default.btn-lg {
  padding: 10px 20px;
  font-size: 1rem;
}

form.quiz-join-pseudotab {
  display: inline;
  line-height: 1.7em;
  margin-left: auto;
  float: right;
}

.grading-badge {
  background: #d9534f;
  color: white;
  padding: 0.1em 0.5em;
  border-radius: 10px;
  font-size: 0.75em;
  font-weight: bold;
  margin-left: 0.3em;
  min-width: 18px;
  text-align: center;
  display: inline-block;
}

.quiz-field-row {
  margin-bottom: 1em;
}
.quiz-field-row label {
  display: block;
  margin-bottom: 0.3em;
}

.quiz-field-wrapper {
  margin-top: 0.4em;
}
.quiz-field-wrapper input[type=text],
.quiz-field-wrapper input[type=number],
.quiz-field-wrapper input[type=url],
.quiz-field-wrapper textarea {
  width: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: white;
}
.quiz-field-wrapper textarea {
  min-height: 100px;
}
.quiz-field-wrapper select {
  width: 100%;
  padding: 0.5em;
  border: 1px solid #ccc;
  border-radius: 3px;
}
.quiz-field-wrapper .select2 {
  width: 100% !important;
}

.quiz-field-wrapper:has(> input[type=checkbox]) {
  display: contents;
}

.quiz-field-row-checkbox {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5em;
}
.quiz-field-row-checkbox .quiz-checkbox-label {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5em;
  cursor: pointer;
  margin-bottom: 0;
}
.quiz-field-row-checkbox .quiz-checkbox-label input[type=checkbox] {
  margin: 0;
  width: 1.1em;
  height: 1.1em;
  cursor: pointer;
}
.quiz-field-row-checkbox .quiz-help-text {
  flex-basis: 100%;
  margin-top: 0;
}

.quiz-help-text {
  display: block;
  color: gray;
  font-size: 0.85em;
  margin-top: 0.25em;
}

.quiz-create-form {
  background: white;
  padding: 1.5em;
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.quiz-create-form h2 {
  margin-top: 0;
  margin-bottom: 1em;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ccc;
}

.form-actions {
  margin-top: 1.5em;
  padding-top: 1em;
  border-top: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
  flex-wrap: wrap;
}

.create-help h4 {
  margin-bottom: 0.5em;
}
.create-help ul {
  margin: 0;
  padding-left: 1.5em;
}
.create-help li {
  margin-bottom: 0.3em;
}

.quiz-list-page .page-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.quiz-list-page .page-header h1 {
  margin: 0;
}
.quiz-list-page .page-header .actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.quiz-list-page .quiz-table {
  width: 100%;
}
.quiz-list-page .no-quizzes {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 4px;
}

.quiz-detail-page {
  max-width: 900px;
  margin: 0 auto;
}
.quiz-detail-page .quiz-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: start;
       align-items: flex-start;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.quiz-detail-page .quiz-header h1 {
  margin: 0;
}
.quiz-detail-page .quiz-info {
  margin-bottom: 1.5rem;
}
.quiz-detail-page .quiz-info .info-row {
  display: -moz-box;
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
.quiz-detail-page .quiz-info .info-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.quiz-detail-page .quiz-info .info-item i {
  opacity: 0.7;
}
.quiz-detail-page .quiz-description {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  margin-bottom: 1.5rem;
}
.quiz-detail-page .quiz-user-info {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
}
.quiz-detail-page .quiz-user-info h3 {
  margin-top: 0;
}
.quiz-detail-page .quiz-user-info .user-stats {
  display: -moz-box;
  display: flex;
  gap: 2rem;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}
.quiz-detail-page .quiz-user-info .user-stats .stat-item .stat-label {
  opacity: 0.7;
}
.quiz-detail-page .quiz-user-info .user-stats .stat-item .stat-value {
  font-weight: bold;
}
.quiz-detail-page .quiz-user-info .attempt-history {
  margin: 1.5rem 0;
}
.quiz-detail-page .quiz-user-info .attempt-history h4 {
  margin-bottom: 0.5rem;
}
.quiz-detail-page .quiz-user-info .start-quiz {
  margin-top: 1.5rem;
  text-align: center;
}
.quiz-detail-page .login-prompt {
  text-align: center;
  padding: 2rem;
  background: white;
  border-radius: 4px;
}

.quiz-attempt-page {
  max-width: 900px;
  margin: 0 auto;
}
.quiz-attempt-page .quiz-timer {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background: white;
  padding: 1rem;
  border-radius: 4px;
  margin-bottom: 1rem;
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  z-index: 100;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.quiz-attempt-page .quiz-timer .quiz-title {
  font-weight: 500;
}
.quiz-attempt-page .quiz-timer .timer {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  font-size: 1.25rem;
  font-weight: bold;
}
.quiz-attempt-page .timer-warning {
  color: #f0ad4e;
}
.quiz-attempt-page .timer-danger {
  color: #d9534f;
}
.quiz-attempt-page .question-card {
  background: white;
  border-radius: 4px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
.quiz-attempt-page .question-card .question-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ccc;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.quiz-attempt-page .question-card .question-header .question-number {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.quiz-attempt-page .question-card .question-header .question-number .question-type {
  font-weight: normal;
  font-size: 0.85rem;
}
.quiz-attempt-page .question-card .question-header .question-points {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.quiz-attempt-page .question-card .question-header .question-points .save-status {
  font-size: 0.875rem;
}
.quiz-attempt-page .question-card .question-header .question-points .save-status.saving {
  color: #f0ad4e;
}
.quiz-attempt-page .question-card .question-header .question-points .save-status.saved {
  color: #5cb85c;
}
.quiz-attempt-page .question-card .question-header .question-points .save-status.error {
  color: #d9534f;
}
.quiz-attempt-page .question-card .question-content {
  margin-bottom: 1rem;
}
.quiz-attempt-page .question-card .question-choices label {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  padding: 0.75rem 1rem;
  margin: 0.5rem 0;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  -moz-transition: background 0.2s, border-color 0.2s;
  transition: background 0.2s, border-color 0.2s;
}
.quiz-attempt-page .question-card .question-choices label:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.quiz-attempt-page .question-card .question-choices label input[type=radio],
.quiz-attempt-page .question-card .question-choices label input[type=checkbox] {
  margin-right: 0.75rem;
  margin-top: 0.35em;
  flex-shrink: 0;
}
.quiz-attempt-page .question-card .question-choices label .choice-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  display: block;
}
.quiz-attempt-page .question-card .question-choices label .choice-content > p:first-child,
.quiz-attempt-page .question-card .question-choices label .choice-content > *:first-child {
  margin-top: 0;
}
.quiz-attempt-page .question-card .question-choices label .choice-content p {
  display: block;
  margin-top: 0;
  margin-bottom: 0.5em;
}
.quiz-attempt-page .question-card .question-choices label .choice-content p:last-child {
  margin-bottom: 0;
}
.quiz-attempt-page .question-card .question-textarea {
  width: 100%;
  min-height: 150px;
  padding: 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  resize: vertical;
  font-family: inherit;
  font-size: inherit;
  background: white;
}
.quiz-attempt-page .question-card .question-textarea:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.quiz-attempt-page .question-card .short-answer-input {
  width: 100%;
  padding: 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-family: inherit;
  font-size: inherit;
  background: white;
}
.quiz-attempt-page .question-card .short-answer-input:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.quiz-attempt-page .question-card .essay-wrapper {
  border: 2px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  background: white;
}
.quiz-attempt-page .question-card .essay-wrapper:focus-within {
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.quiz-attempt-page .question-card .essay-wrapper .question-textarea {
  border: none;
  border-radius: 0;
}
.quiz-attempt-page .question-card .essay-wrapper .question-textarea:focus {
  box-shadow: none;
}
.quiz-attempt-page .question-card .markdown-toolbar {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  padding: 0.5rem;
  background: #fafafa;
  border-bottom: 1px solid #ccc;
}
.quiz-attempt-page .question-card .markdown-toolbar button {
  padding: 0.4rem 0.6rem;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: 3px;
  color: #00007d;
  font-size: 0.9rem;
}
.quiz-attempt-page .question-card .markdown-toolbar button:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.quiz-attempt-page .question-card .markdown-toolbar .separator {
  width: 1px;
  background: #ccc;
  margin: 0 0.25rem;
}
.quiz-attempt-page .submit-section {
  text-align: center;
  padding: 2rem;
  background: white;
  border-radius: 4px;
}
.quiz-attempt-page .submit-section p {
  margin-bottom: 1rem;
  opacity: 0.8;
}

.quiz-result-page {
  max-width: 900px;
  margin: 0 auto;
}
.quiz-result-page .result-header {
  background: white;
  padding: 1rem;
  border-radius: 4px;
  text-align: center;
}
.quiz-result-page .result-header h1 {
  margin: 0 0 1rem;
}
.quiz-result-page .result-header .result-score {
  font-size: 3rem;
  font-weight: bold;
  margin: 1rem 0;
}
.quiz-result-page .result-header .result-score.excellent {
  color: #5cb85c;
}
.quiz-result-page .result-header .result-score.good {
  color: #5bc0de;
}
.quiz-result-page .result-header .result-score.average {
  color: #f0ad4e;
}
.quiz-result-page .result-header .result-score.poor {
  color: #d9534f;
}
.quiz-result-page .result-header .result-percentage {
  font-size: 1.5rem;
  opacity: 0.7;
}
.quiz-result-page .result-header .result-meta {
  margin-top: 1rem;
  font-size: 0.9rem;
  opacity: 0.7;
}
.quiz-result-page .result-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  margin-bottom: 2rem;
  flex-wrap: wrap;
}
.quiz-result-page .answer-card {
  background: white;
  border-radius: 4px;
  padding: 1.5rem;
  margin-bottom: 1rem;
  border-left: 4px solid transparent;
}
.quiz-result-page .answer-card.correct {
  border-left-color: #5cb85c;
}
.quiz-result-page .answer-card.incorrect {
  border-left-color: #d9534f;
}
.quiz-result-page .answer-card.pending {
  border-left-color: #f0ad4e;
}
.quiz-result-page .answer-card .answer-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1rem;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.quiz-result-page .answer-card .answer-status {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.quiz-result-page .answer-card .answer-status i.correct {
  color: #5cb85c;
}
.quiz-result-page .answer-card .answer-status i.incorrect {
  color: #d9534f;
}
.quiz-result-page .answer-card .answer-status i.pending {
  color: #f0ad4e;
}
.quiz-result-page .answer-card .user-answer,
.quiz-result-page .answer-card .correct-answer {
  padding: 0.75rem;
  border-radius: 4px;
  margin: 0.5rem 0;
}
.quiz-result-page .answer-card .user-answer .choice-content,
.quiz-result-page .answer-card .user-answer .answer-text-content,
.quiz-result-page .answer-card .correct-answer .choice-content,
.quiz-result-page .answer-card .correct-answer .answer-text-content {
  display: block;
  margin-top: 0.5rem;
}
.quiz-result-page .answer-card .user-answer .choice-content > p:first-child,
.quiz-result-page .answer-card .user-answer .choice-content > *:first-child,
.quiz-result-page .answer-card .user-answer .answer-text-content > p:first-child,
.quiz-result-page .answer-card .user-answer .answer-text-content > *:first-child,
.quiz-result-page .answer-card .correct-answer .choice-content > p:first-child,
.quiz-result-page .answer-card .correct-answer .choice-content > *:first-child,
.quiz-result-page .answer-card .correct-answer .answer-text-content > p:first-child,
.quiz-result-page .answer-card .correct-answer .answer-text-content > *:first-child {
  margin-top: 0;
}
.quiz-result-page .answer-card .user-answer .choice-content p:last-child,
.quiz-result-page .answer-card .user-answer .answer-text-content p:last-child,
.quiz-result-page .answer-card .correct-answer .choice-content p:last-child,
.quiz-result-page .answer-card .correct-answer .answer-text-content p:last-child {
  margin-bottom: 0;
}
.quiz-result-page .answer-card .user-answer ul,
.quiz-result-page .answer-card .correct-answer ul {
  margin-top: 0.5rem;
  margin-bottom: 0;
  padding-left: 1.5rem;
}
.quiz-result-page .answer-card .user-answer ul li,
.quiz-result-page .answer-card .correct-answer ul li {
  margin-bottom: 0.25rem;
}
.quiz-result-page .answer-card .user-answer ul li .choice-content,
.quiz-result-page .answer-card .correct-answer ul li .choice-content {
  margin-top: 0;
}
.quiz-result-page .answer-card .user-answer {
  background: #fafafa;
}
.quiz-result-page .answer-card .correct-answer {
  background: rgba(92, 184, 92, 0.1);
  border: 1px solid #5cb85c;
}
.quiz-result-page .answer-card .explanation {
  margin-top: 1rem;
  padding: 1rem;
  background: rgba(91, 192, 222, 0.1);
  border-radius: 4px;
  border-left: 3px solid #5bc0de;
}
.quiz-result-page .answer-card .teacher-feedback {
  margin-top: 1rem;
  padding: 1rem;
  background: rgba(156, 39, 176, 0.1);
  border-radius: 4px;
  border-left: 3px solid #9c27b0;
}
.quiz-result-page .answer-card .teacher-feedback .feedback-content {
  margin-top: 0.5rem;
}
.quiz-result-page .retake-section {
  text-align: center;
  padding: 2rem;
  margin-top: 2rem;
  background: white;
  border-radius: 4px;
}

.quiz-edit-page {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
@media (max-width: 768px) {
  .quiz-edit-page {
    grid-template-columns: 1fr;
  }
}
.quiz-edit-page .quiz-settings h2 {
  margin-top: 0;
}
.quiz-edit-page .quiz-settings .form-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  margin-top: 1rem;
  flex-wrap: wrap;
}
.quiz-edit-page .quiz-questions h2 {
  margin-top: 0;
}
.quiz-edit-page .quiz-questions .assigned-questions,
.quiz-edit-page .quiz-questions .available-questions {
  margin-top: 1rem;
}
.quiz-edit-page .quiz-questions .assigned-questions h3,
.quiz-edit-page .quiz-questions .available-questions h3 {
  margin-bottom: 0.5rem;
  font-size: 1rem;
}
.quiz-edit-page .quiz-questions .question-item {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding: 0.5rem 0.75rem;
  border: 1px solid #ccc;
  margin-bottom: 0.5rem;
  border-radius: 4px;
  background: white;
}
.quiz-edit-page .quiz-questions .question-item:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.quiz-edit-page .quiz-questions .question-item .question-info {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.question-bank-page .page-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.question-bank-page .page-header h1 {
  margin: 0;
}
.question-bank-page .filter-bar {
  margin-bottom: 1rem;
}
.question-bank-page .filter-bar .filter-form {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.question-bank-page .filter-bar .filter-form input[type=text] {
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  min-width: 200px;
}
.question-bank-page .filter-bar .filter-form select {
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.question-bank-page .no-questions {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 4px;
}

.question-detail-page {
  max-width: 800px;
  margin: 0 auto;
}
.question-detail-page .page-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: start;
       align-items: flex-start;
  margin-bottom: 1rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.question-detail-page .page-header h1 {
  margin: 0;
}
.question-detail-page .page-header .actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
}
.question-detail-page .question-meta {
  display: -moz-box;
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}
.question-detail-page .question-content,
.question-detail-page .question-choices,
.question-detail-page .question-correct,
.question-detail-page .question-explanation,
.question-detail-page .question-tags,
.question-detail-page .used-in-quizzes {
  background: white;
  padding: 1rem;
  border-radius: 4px;
  margin-bottom: 1rem;
}
.question-detail-page .question-content h3,
.question-detail-page .question-choices h3,
.question-detail-page .question-correct h3,
.question-detail-page .question-explanation h3,
.question-detail-page .question-tags h3,
.question-detail-page .used-in-quizzes h3 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
.question-detail-page .question-content pre,
.question-detail-page .question-choices pre,
.question-detail-page .question-correct pre,
.question-detail-page .question-explanation pre,
.question-detail-page .question-tags pre,
.question-detail-page .used-in-quizzes pre {
  background: #fafafa;
  padding: 0.5rem;
  border-radius: 4px;
  overflow-x: auto;
}
.question-detail-page .back-link {
  margin-top: 1.5rem;
}

.grading-dashboard-page .filter-bar {
  margin-bottom: 1rem;
}
.grading-dashboard-page .filter-bar select {
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  min-width: 200px;
}
.grading-dashboard-page .no-grading {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 4px;
}

.grading-page {
  max-width: 900px;
  margin: 0 auto;
}
.grading-page .attempt-info {
  background: white;
  padding: 1rem;
  border-radius: 4px;
  margin-bottom: 2rem;
}
.grading-page .attempt-info p {
  margin: 0.25rem 0;
}
.grading-page .answer-card {
  background: white;
  border-radius: 4px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}
.grading-page .answer-card .question-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}
.grading-page .answer-card .answer-content {
  background: #fafafa;
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
  margin: 0.5rem 0;
}
.grading-page .answer-card .answer-files {
  margin: 1rem 0;
}
.grading-page .answer-card .answer-files ul {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
}
.grading-page .answer-card .grade-input {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #ccc;
  flex-wrap: wrap;
}
.grading-page .answer-card .grade-input input[type=number] {
  width: 100px;
  padding: 0.5rem 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-size: inherit;
  background: white;
}
.grading-page .answer-card .grade-input input[type=number]:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.grading-page .answer-card .feedback-input {
  margin-top: 1rem;
}
.grading-page .answer-card .feedback-input label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.grading-page .answer-card .feedback-input textarea {
  width: 100%;
  padding: 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-family: inherit;
  font-size: inherit;
  resize: vertical;
  min-height: 80px;
  background: white;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.grading-page .answer-card .feedback-input textarea:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.grading-page .answer-card .feedback-input textarea:-ms-input-placeholder {
  color: #999;
}
.grading-page .answer-card .feedback-input textarea::placeholder {
  color: #999;
}
.grading-page .form-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  -moz-box-pack: center;
       justify-content: center;
  margin-top: 2rem;
  flex-wrap: wrap;
}

.quiz-stats-page {
  max-width: 1000px;
  margin: 0 auto;
}
.quiz-stats-page .stats-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 2rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.quiz-stats-page .stats-header h1 {
  margin: 0;
}
.quiz-stats-page .stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}
.quiz-stats-page .stats-grid .stat-card {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  text-align: center;
}
.quiz-stats-page .stats-grid .stat-card .stat-value {
  font-size: 2rem;
  font-weight: bold;
}
.quiz-stats-page .stats-grid .stat-card .stat-label {
  opacity: 0.7;
  margin-top: 0.25rem;
}
.quiz-stats-page .distribution-chart {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
}
.quiz-stats-page .distribution-chart .distribution-bar {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  margin: 0.5rem 0;
}
.quiz-stats-page .distribution-chart .distribution-bar .distribution-label {
  width: 80px;
  text-align: right;
  padding-right: 1rem;
  font-size: 0.9rem;
}
.quiz-stats-page .distribution-chart .distribution-bar .distribution-fill {
  height: 24px;
  background: #337ab7;
  border-radius: 4px;
  min-width: 2px;
  -moz-transition: width 0.3s ease;
  transition: width 0.3s ease;
}
.quiz-stats-page .distribution-chart .distribution-bar .distribution-count {
  padding-left: 0.5rem;
  font-size: 0.9rem;
}

.quiz-create-page,
.quiz-delete-page {
  max-width: 600px;
  margin: 0 auto;
}
.quiz-create-page h1,
.quiz-delete-page h1 {
  margin-bottom: 1.5rem;
}
.quiz-create-page .quiz-form,
.quiz-delete-page .quiz-form {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
}
.quiz-create-page .quiz-form .form-actions,
.quiz-delete-page .quiz-form .form-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  margin-top: 1rem;
  flex-wrap: wrap;
}
.quiz-create-page .alert,
.quiz-delete-page .alert {
  padding: 1rem;
  border-radius: 4px;
  margin-bottom: 1rem;
}
.quiz-create-page .alert.alert-warning,
.quiz-delete-page .alert.alert-warning {
  background: rgba(240, 173, 78, 0.1);
  border: 1px solid #f0ad4e;
}

.quiz-manage-page {
  max-width: 1200px;
  margin: 0 auto;
}
.quiz-manage-page .manage-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 2rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.quiz-manage-page .manage-header h1 {
  margin: 0;
}
.quiz-manage-page .manage-header .actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
}
.quiz-manage-page .stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}
.quiz-manage-page .stats-grid .stat-card {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  text-align: center;
}
.quiz-manage-page .stats-grid .stat-card .stat-value {
  font-size: 2rem;
  font-weight: bold;
}
.quiz-manage-page .stats-grid .stat-card .stat-label {
  opacity: 0.7;
}
.quiz-manage-page .attempts-table {
  width: 100%;
}

.badge {
  display: inline-block;
  padding: 0.3rem 0.6rem;
  font-size: 0.8rem;
  font-weight: 500;
  border-radius: 4px;
  background: #9c3706;
  color: white;
}
.badge.badge-success {
  background: #5cb85c;
  color: white;
}
.badge.badge-warning {
  background: #f0ad4e;
  color: white;
}
.badge.badge-danger {
  background: #d9534f;
  color: white;
}

.quiz-sidebar-box {
  background: white;
  border-radius: 4px;
  margin-bottom: 10px;
  margin-left: 10px;
  padding: 0.75rem;
  border: 1px solid #ccc;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.quiz-sidebar-box h3 {
  margin: 0 0 0.5rem 0;
  font-size: 0.9rem;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.4rem;
}
@media (max-width: 799px) {
  .quiz-sidebar-box {
    margin-left: 0;
  }
}

.sidebar-timer {
  text-align: center;
  padding: 0.5rem;
  background: #fafafa;
  border-radius: 4px;
}
.sidebar-timer .timer-value {
  font-size: 1.4rem;
  font-weight: bold;
  font-family: var(--md-code-font-family), monospace;
}
.sidebar-timer .timer-label {
  font-size: 0.75rem;
  color: #666;
}
.sidebar-timer.timer-warning .timer-value {
  color: #f0ad4e;
}
.sidebar-timer.timer-danger .timer-value {
  color: #d9534f;
}

.progress-indicators {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.question-indicator {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 4px;
  background: #fafafa;
  border: 1px solid #ccc;
  font-size: 0.9rem;
  font-weight: bold;
  cursor: pointer;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
}
.question-indicator:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.question-indicator.current {
  background: #337ab7;
  color: white;
  border-color: #337ab7;
}
.question-indicator.answered {
  background: #5cb85c;
  color: white;
  border-color: #5cb85c;
}

.quiz-header-bar {
  background: white;
  padding: 1rem 1.5rem;
  border-radius: 4px;
  margin-bottom: 1rem;
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  border: 1px solid #ccc;
}
.quiz-header-bar .quiz-title {
  font-size: 1.1rem;
  font-weight: bold;
}
.quiz-header-bar .quiz-meta {
  color: #666;
  font-size: 0.9rem;
}

.question-card {
  background: white;
  border-radius: 4px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid #ccc;
}
.question-card .question-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ccc;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.question-card .question-header .question-number {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.question-card .question-header .question-number .question-type {
  font-weight: normal;
  font-size: 0.85rem;
}
.question-card .question-header .question-points {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.question-card .question-header .question-points .save-status {
  font-size: 0.875rem;
}
.question-card .question-header .question-points .save-status.saving {
  color: #f0ad4e;
}
.question-card .question-header .question-points .save-status.saved {
  color: #5cb85c;
}
.question-card .question-header .question-points .save-status.error {
  color: #d9534f;
}
.question-card .question-content {
  margin-bottom: 1rem;
}
.question-card .question-choices label {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  padding: 0.75rem 1rem;
  margin: 0.5rem 0;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  -moz-transition: background 0.2s, border-color 0.2s;
  transition: background 0.2s, border-color 0.2s;
}
.question-card .question-choices label:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.question-card .question-choices label input[type=radio],
.question-card .question-choices label input[type=checkbox] {
  margin-right: 0.75rem;
  margin-top: 0.35em;
  flex-shrink: 0;
}
.question-card .question-choices label .choice-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  display: block;
}
.question-card .question-choices label .choice-content > p:first-child,
.question-card .question-choices label .choice-content > *:first-child {
  margin-top: 0;
}
.question-card .question-choices label .choice-content p {
  display: block;
  margin-top: 0;
  margin-bottom: 0.5em;
}
.question-card .question-choices label .choice-content p:last-child {
  margin-bottom: 0;
}
.question-card .short-answer-input {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-size: inherit;
  background: white;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.question-card .short-answer-input:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}

.submit-section {
  text-align: center;
  padding: 2rem 1rem;
  background: white;
  border-radius: 4px;
  margin-top: 1rem;
  border: 1px solid #ccc;
}
.submit-section p {
  margin-bottom: 1rem;
  color: #666;
}

.essay-editor-container {
  border: 2px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  background: white;
}
.essay-editor-container:focus-within {
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.essay-editor-container .wmd-button-bar {
  background: #fafafa;
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
.essay-editor-container .wmd-button-row {
  margin: 5px;
  padding: 0;
}
.essay-editor-container .wmd-button {
  border-radius: 4px;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.essay-editor-container .wmd-button:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.essay-editor-container .wmd-input {
  border: none !important;
  border-radius: 0;
  height: 200px;
  color: inherit;
}
.essay-editor-container .wmd-input:focus {
  box-shadow: none;
}
.essay-editor-container .wmd-input:-ms-input-placeholder {
  color: #999;
}
.essay-editor-container .wmd-input::placeholder {
  color: #999;
}
.essay-editor-container .wmd-preview {
  display: none !important;
}

.sa-editor-container {
  border: 2px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
}
.sa-editor-container:focus-within {
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.sa-editor-container .wmd-button-bar {
  background: #fafafa;
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
.sa-editor-container .wmd-button-row {
  margin: 5px;
  padding: 0;
}
.sa-editor-container .wmd-button {
  border-radius: 4px;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.sa-editor-container .wmd-button:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.sa-editor-container .wmd-input {
  border: none !important;
  border-radius: 0;
  height: 80px;
  min-height: 60px;
  color: inherit;
}
.sa-editor-container .wmd-input:focus {
  box-shadow: none;
}
.sa-editor-container .wmd-input:-ms-input-placeholder {
  color: #999;
}
.sa-editor-container .wmd-input::placeholder {
  color: #999;
}
.sa-editor-container .wmd-preview {
  display: none !important;
}

.essay-file-upload {
  margin-top: 1rem;
}

.file-upload-zone {
  border: 2px dashed #ccc;
  border-radius: 4px;
  padding: 1.5rem;
  text-align: center;
  cursor: pointer;
  -moz-transition: all 0.2s;
  transition: all 0.2s;
  background: #fafafa;
  color: #666;
}
.file-upload-zone:hover {
  border-color: #999;
  background: rgb(242.35, 242.35, 242.35);
}
.file-upload-zone.dragover {
  border-color: #337ab7;
  background: rgba(51, 122, 183, 0.1);
}
.file-upload-zone i {
  font-size: 2rem;
  display: block;
  margin-bottom: 0.5rem;
  color: #999;
}
.file-upload-zone .file-input {
  display: none;
}

.file-upload-info {
  font-size: 0.8rem;
  color: #888;
  margin-top: 0.5rem;
  text-align: center;
}

.uploaded-files-list {
  list-style: none;
  padding: 0;
  margin: 0.75rem 0 0 0;
}
.uploaded-files-list li {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 0.5rem 0.75rem;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-bottom: 0.4rem;
  gap: 0.5rem;
}
.uploaded-files-list li.uploading {
  opacity: 0.7;
}
.uploaded-files-list .file-icon {
  color: #666;
}
.uploaded-files-list .file-name {
  -moz-box-flex: 1;
       flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #337ab7;
}
.uploaded-files-list a.file-name:hover {
  text-decoration: underline;
}
.uploaded-files-list .file-size {
  color: #888;
  font-size: 0.85rem;
}
.uploaded-files-list .file-delete-btn {
  background: none;
  border: none;
  color: #999;
  cursor: pointer;
  padding: 0.25rem;
  line-height: 1;
  -moz-transition: color 0.2s;
  transition: color 0.2s;
}
.uploaded-files-list .file-delete-btn:hover {
  color: #d9534f;
}

.grading-row {
  display: -moz-box;
  display: flex;
  -moz-transition: background-color linear 0.2s;
  transition: background-color linear 0.2s;
  margin-bottom: 15px;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  -moz-box-align: center;
       align-items: center;
  padding: 10px;
  background: white;
}
.grading-row .user-img {
  width: 70px;
  height: 70px;
  margin-right: 15px;
  border-radius: 50%;
}
.grading-row .grading-details {
  -moz-box-flex: 1;
       flex-grow: 1;
  overflow: hidden;
}
.grading-row .grading-info {
  -moz-box-flex: 1;
       flex: 1;
  display: -moz-box;
  display: flex;
  gap: 5px;
  font-size: 1.2em;
  margin-bottom: 10px;
}
.grading-row .grading-info .grading-user {
  overflow-wrap: break-word;
}
.grading-row .grading-info .grading-quiz {
  font-weight: 700;
}
.grading-row .grading-info .grading-quiz:hover {
  text-decoration: underline;
}
.grading-row .grading-result {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  font-weight: 600;
  gap: 10px;
}
.grading-row .grading-result .state {
  padding: 5px 10px;
  border-radius: 15px;
  color: white;
  font-size: 0.9em;
}
.grading-row .grading-result .state.graded {
  background-color: #5cb85c;
}
.grading-row .grading-result .state.pending {
  background-color: #d9534f;
}
.grading-row .grading-result .score {
  font-size: 1.2em;
}
.grading-row .grading-result .score.perfect {
  color: #5cb85c;
}
.grading-row .grading-result .score.good {
  color: #5bc0de;
}
.grading-row .grading-result .score.average {
  color: #f0ad4e;
}
.grading-row .grading-result .score.poor {
  color: #d9534f;
}
.grading-row .grading-usage {
  margin-left: auto;
  white-space: nowrap;
  text-align: right;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 4px;
}
.grading-row .grading-usage .time {
  font-weight: bold;
}
.grading-row .grading-prop a {
  white-space: nowrap;
}
.grading-row .grading-prop .label {
  margin-left: 2px;
}
@media (max-width: 799px) {
  .grading-row .user-img {
    display: none;
  }
  .grading-row .grading-prop .label {
    display: none;
  }
}

.selected-answer {
  font-weight: bold;
  color: #337ab7;
}

.grading-page .attempt-info {
  background: white;
  padding: 1.25rem 1.5rem;
  border-radius: 4px;
  margin-bottom: 2rem;
  border: 1px solid #ccc;
  line-height: 1.8;
  font-size: 15px;
}
.grading-page .attempt-info p {
  margin: 0.25rem 0;
}
.grading-page .answer-card {
  border: 1px solid #ccc;
}
.grading-page .answer-card .question-header {
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ccc;
  margin-bottom: 0.5rem;
}
.grading-page .answer-card .answer-content {
  background: #fafafa;
  padding: 0.5rem 0.75rem;
  border-radius: 4px;
  margin: 0.5rem 0;
  line-height: 1.5;
}
.grading-page .grade-input input[type=number] {
  width: 100px;
  padding: 0.5rem 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-size: inherit;
  background: white;
}
.grading-page .grade-input input[type=number]:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.grading-page .partial-credit-section {
  margin-top: 0.75rem;
  padding: 0.75rem;
  background: #fafafa;
  border-radius: 4px;
}
.grading-page .partial-credit-row {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 1rem;
}
.grading-page .partial-credit-slider {
  -moz-box-flex: 1;
       flex: 1;
  max-width: 200px;
}
.grading-page .partial-credit-value {
  font-weight: bold;
  min-width: 50px;
}
.grading-page .quick-grade-btns {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  margin-left: auto;
}
.grading-page .quick-grade-btns button {
  padding: 0.25rem 0.75rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
  cursor: pointer;
}
.grading-page .quick-grade-btns button:hover {
  background: #9c3706;
  color: white;
}
.grading-page .feedback-input {
  margin-top: 1rem;
}
.grading-page .feedback-input label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.grading-page .feedback-input textarea {
  width: 100%;
  padding: 0.75rem;
  border: 2px solid #ccc;
  border-radius: 4px;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.5;
  resize: vertical;
  min-height: 80px;
  background: white;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.grading-page .feedback-input textarea:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.grading-page .feedback-input textarea:-ms-input-placeholder {
  color: #999;
}
.grading-page .feedback-input textarea::placeholder {
  color: #999;
}
.grading-page .file-attachments {
  margin-top: 1rem;
  padding: 0.75rem;
  background: #fafafa;
  border-radius: 4px;
}
.grading-page .file-list {
  list-style: none;
  padding: 0;
  margin: 0.5rem 0 0 0;
}
.grading-page .file-list li {
  padding: 0.25rem 0;
}
.grading-page .file-list a {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
}
.grading-page .auto-graded-badge {
  background: #5cb85c;
  color: white;
  padding: 0.125rem 0.5rem;
  border-radius: 4px;
  font-size: 0.85em;
  margin-left: 0.5rem;
}
.grading-page .needs-grading-badge {
  background: #f0ad4e;
  color: white;
  padding: 0.125rem 0.5rem;
  border-radius: 4px;
  font-size: 0.85em;
  margin-left: 0.5rem;
}
.grading-page .choices-display {
  margin: 0.5rem 0;
  padding: 0.5rem 0.75rem;
  background: #fafafa;
  border-radius: 4px;
}
.grading-page .choices-display > strong {
  display: block;
  margin-bottom: 0.25rem;
}
.grading-page .grading-choice-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: baseline;
       align-items: baseline;
  padding: 0.2rem 0;
  gap: 0.5rem;
}
.grading-page .grading-choice-item.selected-answer {
  font-weight: bold;
  color: #337ab7;
}
.grading-page .grading-choice-id {
  font-weight: bold;
  flex-shrink: 0;
  min-width: 1.5rem;
}
.grading-page .grading-choice-text {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.grading-page .grading-choice-text p {
  display: inline;
  margin: 0;
}
.grading-page .grading-choice-text p + p {
  display: block;
  margin-top: 0.25rem;
}
.grading-page .answer-content .student-answer-text {
  margin-top: 0.25rem;
}
.grading-page .answer-content .student-answer-text p {
  margin-top: 0;
  margin-bottom: 0.25em;
}
.grading-page .answer-content .student-answer-text p:last-child {
  margin-bottom: 0;
}
.grading-page .correct-answers-display {
  margin: 0.5rem 0;
  padding: 0.5rem 0.75rem;
  background: rgba(92, 184, 92, 0.1);
  border: 1px solid #5cb85c;
  border-radius: 4px;
}
.grading-page .correct-answers-display > strong {
  display: block;
  margin-bottom: 0.25rem;
  color: #5cb85c;
}
.grading-page .sa-answers-info {
  margin-bottom: 0.25rem;
  font-size: 0.9em;
  color: #666;
}
.grading-page .sa-answers-info i {
  margin-right: 0.25rem;
}
.grading-page .sa-accepted-list {
  margin: 0.5rem 0 0 0;
  padding-left: 1.5rem;
  list-style-position: outside;
}
.grading-page .sa-accepted-list li {
  margin-bottom: 0.5rem;
  padding-top: 0.1rem;
}
.grading-page .sa-accepted-list li:last-child {
  margin-bottom: 0;
}
.grading-page .sa-accepted-list .sa-answer-text {
  white-space: pre-wrap;
  word-wrap: break-word;
}
.grading-page .feedback-editor-container {
  border: 2px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  background: white;
}
.grading-page .feedback-editor-container:focus-within {
  border-color: #9c3706;
  box-shadow: 0 0 0 2px rgba(192, 57, 43, 0.2);
}
.grading-page .feedback-editor-container .wmd-button-bar {
  background: #fafafa;
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
.grading-page .feedback-editor-container .wmd-button-row {
  margin: 5px;
  padding: 0;
}
.grading-page .feedback-editor-container .wmd-button {
  border-radius: 4px;
  -moz-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
}
.grading-page .feedback-editor-container .wmd-button:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.grading-page .feedback-editor-container .wmd-input {
  border: none !important;
  border-radius: 0;
  height: 60px !important;
  min-height: 60px !important;
  width: 100%;
  padding: 0.5rem 0.75rem;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.4;
  resize: vertical;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.grading-page .feedback-editor-container .wmd-input:focus {
  box-shadow: none;
  outline: none;
}
.grading-page .feedback-editor-container .wmd-input:-ms-input-placeholder {
  color: #999;
}
.grading-page .feedback-editor-container .wmd-input::placeholder {
  color: #999;
}
.grading-page .feedback-editor-container .wmd-preview {
  display: none !important;
}

.quiz-result-page .answer-files {
  margin-top: 0.75rem;
  padding: 0.75rem;
  background: #fafafa;
  border-radius: 4px;
}
.quiz-result-page .answer-files h4 {
  margin: 0 0 0.5rem 0;
  font-size: 0.9rem;
  color: #666;
}
.quiz-result-page .answer-files ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.quiz-result-page .answer-files li {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  padding: 0.3rem 0;
}
.quiz-result-page .answer-files .file-icon {
  color: #666;
}
.quiz-result-page .answer-files .file-name {
  color: #337ab7;
}
.quiz-result-page .answer-files .file-name:hover {
  text-decoration: underline;
}
.quiz-result-page .answer-files .file-size {
  color: #888;
  font-size: 0.85rem;
}

.file-item-collapsible {
  margin-bottom: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  background: #fafafa;
  width: 100%;
}
.file-item-collapsible .file-item-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  background: #fafafa;
}
.file-item-collapsible .file-item-header .file-icon {
  color: #666;
}
.file-item-collapsible .file-item-header .file-name {
  color: #337ab7;
  text-decoration: none;
  -moz-box-flex: 1;
       flex: 1;
}
.file-item-collapsible .file-item-header .file-name:hover {
  text-decoration: underline;
}
.file-item-collapsible .file-item-header .file-size {
  color: #888;
  font-size: 0.85rem;
}
.file-item-collapsible .file-item-header .file-delete-btn {
  background: none;
  border: none;
  color: #999;
  cursor: pointer;
  padding: 0.25rem;
  margin-left: 0.5rem;
}
.file-item-collapsible .file-item-header .file-delete-btn:hover {
  color: #ae0000;
}
.file-item-collapsible .file-item-header .file-preview-toggle {
  background: none;
  border: none;
  color: #00007d;
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  margin-left: 0.5rem;
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -moz-transform 0.2s ease;
}
.file-item-collapsible .file-item-header .file-preview-toggle:hover {
  color: #337ab7;
}
.file-item-collapsible .file-item-header .file-preview-toggle i {
  -moz-transition: transform 0.2s ease, -moz-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -moz-transform 0.2s ease;
}

.file-preview-collapsible {
  border-top: 1px solid #ccc;
  background: white;
  width: 100%;
}
.file-preview-collapsible.file-preview-image {
  padding: 0;
}
.file-preview-collapsible.file-preview-image img {
  width: 100%;
  height: auto;
  display: block;
}
.file-preview-collapsible.file-preview-pdf iframe {
  width: 100%;
  height: 600px;
  border: none;
  display: block;
}

.uploaded-files-list {
  margin-top: 0.5rem;
}

.page-title-row {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1rem;
}
.page-title-row h2 {
  margin: 0;
}

.page-title-actions {
  display: -moz-box;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}

.stat-card {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  text-align: center;
  border: 1px solid #ccc;
}

.stat-value {
  font-size: 1.8rem;
  font-weight: bold;
}

.stat-label {
  color: #666;
  font-size: 0.9em;
}

.distribution-chart {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.distribution-chart canvas {
  max-height: 300px;
}

.quiz-create-container,
.quiz-edit-container {
  background: white;
  padding: 1.5em 2em;
  border-radius: 0.5em;
}
.quiz-create-container .edit-section,
.quiz-edit-container .edit-section {
  margin-bottom: 2rem;
}
.quiz-create-container .edit-section h3,
.quiz-edit-container .edit-section h3 {
  margin: 0 0 1.25em 0;
  padding-bottom: 0.75em;
  border-bottom: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5em;
}
.quiz-create-container .questions-header,
.quiz-edit-container .questions-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 1em;
}
.quiz-create-container .questions-header h3,
.quiz-edit-container .questions-header h3 {
  margin: 0;
  border: none;
  padding: 0;
}
.quiz-create-container .form-actions,
.quiz-edit-container .form-actions {
  margin-top: 1.5em;
  padding-top: 1em;
  border-top: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
  flex-wrap: wrap;
}

.quiz-create-container .question-item,
.quiz-edit-container .question-item {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding: 0.75rem 1rem;
  border: 1px solid #ccc;
  margin-bottom: 0.5rem;
  border-radius: 4px;
  background: #fafafa;
}
.quiz-create-container .question-item:hover,
.quiz-edit-container .question-item:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.quiz-create-container .question-item.pending-add,
.quiz-edit-container .question-item.pending-add {
  border-left: 3px solid #5cb85c;
}
.quiz-create-container .question-item.pending-remove,
.quiz-edit-container .question-item.pending-remove {
  opacity: 0.5;
  text-decoration: line-through;
  border-left: 3px solid #d9534f;
}
.quiz-create-container .question-item .drag-handle,
.quiz-edit-container .question-item .drag-handle {
  cursor: move;
  color: #666;
  padding: 0.25rem 0.5rem;
  margin-right: 0.5rem;
}
.quiz-create-container .question-item .question-info,
.quiz-edit-container .question-item .question-info {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-flex: 1;
       flex: 1;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.quiz-create-container .question-item .question-order,
.quiz-edit-container .question-item .question-order {
  font-weight: bold;
  min-width: 1.5rem;
}
.quiz-create-container .question-item .points-input,
.quiz-edit-container .question-item .points-input {
  width: 60px;
  padding: 0.25rem 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  text-align: center;
  background: white;
  color: inherit;
}
.quiz-create-container .question-item .question-actions,
.quiz-edit-container .question-item .question-actions {
  display: -moz-box;
  display: flex;
  gap: 0.25rem;
  margin-left: 0.75rem;
}
.quiz-create-container .add-question-section,
.quiz-edit-container .add-question-section {
  margin-top: 1.5em;
  padding-top: 1em;
  border-top: 1px solid #ccc;
}
.quiz-create-container .add-question-section h4,
.quiz-edit-container .add-question-section h4 {
  margin: 0 0 0.75em 0;
}
.quiz-create-container .add-question-form,
.quiz-edit-container .add-question-form {
  background: #fafafa;
  padding: 1em;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.quiz-create-container .add-question-form label,
.quiz-edit-container .add-question-form label {
  font-weight: 500;
  margin-bottom: 0.3em;
  display: block;
}
.quiz-create-container .add-question-form #add-question-points,
.quiz-edit-container .add-question-form #add-question-points {
  background: white;
  color: inherit;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 0.25rem 0.5rem;
}
.quiz-create-container .sortable-ghost,
.quiz-edit-container .sortable-ghost {
  opacity: 0.4;
  background: #337ab7;
}
.quiz-create-container .sortable-chosen,
.quiz-edit-container .sortable-chosen {
  background: rgb(237.25, 237.25, 237.25);
}
.quiz-create-container .unsaved-indicator,
.quiz-edit-container .unsaved-indicator {
  color: #f0ad4e;
  font-size: 0.85em;
  margin-left: 1em;
}
.quiz-create-container .unsaved-indicator.hidden,
.quiz-edit-container .unsaved-indicator.hidden {
  display: none;
}

.quiz-info-item {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  padding: 0.5em 0.3em;
  border-bottom: 1px solid #ccc;
}
.quiz-info-item:last-child {
  border-bottom: none;
}
.quiz-info-item:first-child {
  padding-top: 0.3em;
}

.quiz-info-label {
  color: #00007d;
  opacity: 0.7;
  font-size: 0.95em;
}

.quiz-info-value {
  font-weight: 600;
  color: #9c3706;
  font-size: 1.05em;
}

.question-create-container,
.question-edit-container {
  background: white;
  padding: 1.5em 2em;
  border-radius: 0.5em;
}
.question-create-container .form-section,
.question-edit-container .form-section {
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #ccc;
}
.question-create-container .form-section:last-child,
.question-edit-container .form-section:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.question-create-container .form-section h3,
.question-edit-container .form-section h3 {
  margin: 0 0 1.25em 0;
  padding-bottom: 0.75em;
  border-bottom: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5em;
}
.question-create-container .form-actions,
.question-edit-container .form-actions {
  margin-top: 1.5em;
  padding-top: 1em;
  border-top: 1px solid #ccc;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
  flex-wrap: wrap;
}
.question-create-container .choice-editor-section,
.question-edit-container .choice-editor-section {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.question-create-container .choice-editor-section h4,
.question-edit-container .choice-editor-section h4 {
  margin: 0 0 0.75rem 0;
  font-weight: 500;
}
.question-create-container .add-choice-btn,
.question-edit-container .add-choice-btn {
  margin-top: 0.5rem;
}
.question-create-container .sa-editor h4,
.question-edit-container .sa-editor h4 {
  margin-top: 0;
  margin-bottom: 1rem;
}
.question-create-container .sa-field,
.question-edit-container .sa-field {
  margin-bottom: 1rem;
}
.question-create-container .sa-field > label,
.question-edit-container .sa-field > label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
}
.question-create-container .sa-select,
.question-edit-container .sa-select {
  min-width: 200px;
}
.question-create-container .sa-help,
.question-edit-container .sa-help {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.85em;
  color: #666;
}
.question-create-container .sa-answer-row,
.question-edit-container .sa-answer-row {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}
.question-create-container #sa-add-answer,
.question-edit-container #sa-add-answer {
  margin-top: 0.5rem;
}
.question-create-container .help-section,
.question-edit-container .help-section {
  margin-bottom: 1rem;
}
.question-create-container .help-section h4,
.question-edit-container .help-section h4 {
  margin: 0 0 0.5rem 0;
  font-size: 0.95rem;
}
.question-create-container .help-section p,
.question-edit-container .help-section p {
  margin: 0.25rem 0;
  font-size: 0.85rem;
  color: #666;
}
.question-create-container .help-section ul,
.question-edit-container .help-section ul {
  margin: 0.5rem 0;
  padding-left: 1.5rem;
  font-size: 0.85rem;
  color: #666;
}
.question-create-container .help-section li,
.question-edit-container .help-section li {
  margin-bottom: 0.25rem;
}
.question-create-container .choice-editor,
.question-edit-container .choice-editor {
  padding: 1rem;
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.question-create-container .choice-item,
.question-edit-container .choice-item {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0.5rem;
  background: white;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.question-create-container .choice-item .choice-row-controls,
.question-edit-container .choice-item .choice-row-controls {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 0.5rem;
  width: 100%;
}
.question-create-container .choice-item .drag-handle,
.question-edit-container .choice-item .drag-handle {
  cursor: move;
  color: #666;
  padding: 0.25rem;
  margin-top: 0.5rem;
}
.question-create-container .choice-item .correct-checkbox,
.question-edit-container .choice-item .correct-checkbox {
  width: 20px;
  height: 20px;
  margin-top: 0.5rem;
  flex-shrink: 0;
}
.question-create-container .choice-item input[type=text],
.question-edit-container .choice-item input[type=text] {
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.question-create-container .choice-item input[type=text]:-ms-input-placeholder, .question-edit-container .choice-item input[type=text]:-ms-input-placeholder {
  color: #999;
}
.question-create-container .choice-item input[type=text]::placeholder,
.question-edit-container .choice-item input[type=text]::placeholder {
  color: #999;
}
.question-create-container .choice-item .choice-id,
.question-edit-container .choice-item .choice-id {
  width: 50px;
  text-align: center;
  flex-shrink: 0;
}
.question-create-container .choice-item .choice-text-input,
.question-edit-container .choice-item .choice-text-input {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-family: inherit;
  font-size: inherit;
  resize: none;
  overflow: hidden;
  min-height: 32px;
  line-height: 1.4;
}
.question-create-container .choice-item .choice-text-input:-ms-input-placeholder, .question-edit-container .choice-item .choice-text-input:-ms-input-placeholder {
  color: #999;
}
.question-create-container .choice-item .choice-text-input::placeholder,
.question-edit-container .choice-item .choice-text-input::placeholder {
  color: #999;
}
.question-create-container .choice-item .choice-text-input:focus,
.question-edit-container .choice-item .choice-text-input:focus {
  border-color: #9c3706;
  outline: none;
  box-shadow: 0 0 0 2px rgba(156, 55, 6, 0.15);
}
.question-create-container .choice-item .choice-label-badge,
.question-edit-container .choice-item .choice-label-badge {
  background: #fafafa;
  color: inherit;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-weight: bold;
}
.question-create-container .choice-item .remove-choice-btn,
.question-create-container .choice-item .expand-choice-btn,
.question-edit-container .choice-item .remove-choice-btn,
.question-edit-container .choice-item .expand-choice-btn {
  flex-shrink: 0;
  margin-top: 0.25rem;
}
.question-create-container .choice-item .choice-expanded-editor,
.question-edit-container .choice-item .choice-expanded-editor {
  width: 100%;
}
.question-create-container .choice-item .choice-expanded-editor .choice-wmd-wrapper,
.question-edit-container .choice-item .choice-expanded-editor .choice-wmd-wrapper {
  border: 1px solid #9c3706;
  border-radius: 4px;
  overflow: hidden;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-header,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  background: #fafafa;
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-header .wmd-button-bar,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-header .wmd-button-bar {
  -moz-box-flex: 1;
       flex: 1;
  background: transparent;
  padding: 0;
  border: none;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-header .collapse-choice-btn,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-header .collapse-choice-btn {
  flex-shrink: 0;
  background: transparent;
  border: 1px solid #ccc;
  color: #00007d;
  padding: 0.3rem 0.5rem;
  border-radius: 4px;
  cursor: pointer;
  margin-left: 0.5rem;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-header .collapse-choice-btn:hover,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-header .collapse-choice-btn:hover {
  background: #9c3706;
  color: white;
  border-color: #9c3706;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-textarea,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-textarea {
  width: 100%;
  min-height: 120px;
  padding: 0.75rem;
  border: none;
  border-radius: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.5;
  resize: vertical;
  background: white;
  color: #00007d;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-textarea:focus,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-textarea:focus {
  outline: none;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-textarea:-ms-input-placeholder, .question-edit-container .choice-item .choice-expanded-editor .choice-expanded-textarea:-ms-input-placeholder {
  color: #999;
}
.question-create-container .choice-item .choice-expanded-editor .choice-expanded-textarea::placeholder,
.question-edit-container .choice-item .choice-expanded-editor .choice-expanded-textarea::placeholder {
  color: #999;
}
.question-create-container .sa-editor,
.question-edit-container .sa-editor {
  margin-top: 1rem;
  padding: 1rem;
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.question-create-container .sa-editor .sa-select,
.question-create-container .sa-editor .sa-answer-input,
.question-edit-container .sa-editor .sa-select,
.question-edit-container .sa-editor .sa-answer-input {
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: white;
  color: #00007d;
}
.question-create-container .sa-editor .sa-select:-ms-input-placeholder, .question-create-container .sa-editor .sa-answer-input:-ms-input-placeholder, .question-edit-container .sa-editor .sa-select:-ms-input-placeholder, .question-edit-container .sa-editor .sa-answer-input:-ms-input-placeholder {
  color: #999;
}
.question-create-container .sa-editor .sa-select::placeholder,
.question-create-container .sa-editor .sa-answer-input::placeholder,
.question-edit-container .sa-editor .sa-select::placeholder,
.question-edit-container .sa-editor .sa-answer-input::placeholder {
  color: #999;
}
.question-create-container .sa-editor .sa-answer-row,
.question-edit-container .sa-editor .sa-answer-row {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0.5rem;
  background: white;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.question-create-container .sa-editor .sa-answer-row .sa-row-controls,
.question-edit-container .sa-editor .sa-answer-row .sa-row-controls {
  display: -moz-box;
  display: flex;
  -moz-box-align: start;
       align-items: flex-start;
  gap: 0.5rem;
  width: 100%;
  flex-wrap: nowrap;
}
.question-create-container .sa-editor .sa-answer-row .sa-answer-input,
.question-edit-container .sa-editor .sa-answer-row .sa-answer-input {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
  font-family: inherit;
  font-size: inherit;
  resize: none;
  overflow: hidden;
  min-height: 32px;
}
.question-create-container .sa-editor .sa-answer-row .sa-answer-input.auto-resize-textarea,
.question-edit-container .sa-editor .sa-answer-row .sa-answer-input.auto-resize-textarea {
  overflow: hidden;
}
.question-create-container .sa-editor .sa-answer-row .expand-sa-btn,
.question-create-container .sa-editor .sa-answer-row .sa-remove-answer,
.question-edit-container .sa-editor .sa-answer-row .expand-sa-btn,
.question-edit-container .sa-editor .sa-answer-row .sa-remove-answer {
  flex-shrink: 0;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor {
  width: 100%;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-wmd-wrapper,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-wmd-wrapper {
  border: 1px solid #9c3706;
  border-radius: 4px;
  overflow: hidden;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  background: #fafafa;
  padding: 0.25rem;
  border-bottom: 1px solid #ccc;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .wmd-button-bar,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .wmd-button-bar {
  -moz-box-flex: 1;
       flex: 1;
  background: transparent;
  padding: 0;
  border: none;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .collapse-sa-btn,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .collapse-sa-btn {
  flex-shrink: 0;
  background: transparent;
  border: 1px solid #ccc;
  color: #00007d;
  padding: 0.3rem 0.5rem;
  border-radius: 4px;
  cursor: pointer;
  margin-left: 0.5rem;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .collapse-sa-btn:hover,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-header .collapse-sa-btn:hover {
  background: #9c3706;
  color: white;
  border-color: #9c3706;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea {
  width: 100%;
  min-height: 120px;
  padding: 0.75rem;
  border: none;
  border-radius: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: 1.5;
  resize: vertical;
  background: white;
  color: #00007d;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea:focus,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea:focus {
  outline: none;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea:-ms-input-placeholder, .question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea:-ms-input-placeholder {
  color: #999;
}
.question-create-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea::placeholder,
.question-edit-container .sa-editor .sa-answer-row .sa-expanded-editor .sa-expanded-textarea::placeholder {
  color: #999;
}
.question-create-container .expand-choice-btn,
.question-create-container .expand-sa-btn,
.question-edit-container .expand-choice-btn,
.question-edit-container .expand-sa-btn {
  background: #fafafa;
  border: 1px solid #ccc;
  color: #00007d;
  padding: 0.4rem 0.55rem;
  border-radius: 4px;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
}
.question-create-container .expand-choice-btn:hover,
.question-create-container .expand-sa-btn:hover,
.question-edit-container .expand-choice-btn:hover,
.question-edit-container .expand-sa-btn:hover {
  background: #9c3706;
  color: white;
  border-color: #9c3706;
}
.question-create-container .expand-choice-btn i,
.question-create-container .expand-sa-btn i,
.question-edit-container .expand-choice-btn i,
.question-edit-container .expand-sa-btn i {
  font-size: 0.9em;
}

.inline-expanded-wrapper {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.inline-expanded-wrapper .markdown-toolbar-mini {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  padding: 0.4rem;
  background: #fafafa;
  border: 1px solid #9c3706;
  border-bottom: none;
  border-radius: 4px 4px 0 0;
}
.inline-expanded-wrapper .markdown-toolbar-mini .toolbar-btn {
  padding: 0.3rem 0.5rem;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: 3px;
  color: #00007d;
  font-size: 0.85rem;
  -moz-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.inline-expanded-wrapper .markdown-toolbar-mini .toolbar-btn:hover {
  background: #9c3706;
  color: white;
}
.inline-expanded-wrapper .markdown-toolbar-mini .toolbar-btn i {
  width: 1em;
  text-align: center;
}
.inline-expanded-wrapper .inline-expanded-textarea {
  width: 100%;
  min-height: 100px;
  max-height: 300px;
  resize: vertical;
  padding: 0.75rem;
  border: 1px solid #9c3706;
  border-radius: 0 0 4px 4px;
  font-size: 0.95rem;
  line-height: 1.5;
  font-family: inherit;
  background: white;
  color: #00007d;
}
.inline-expanded-wrapper .inline-expanded-textarea:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(156, 55, 6, 0.15);
}
.inline-expanded-wrapper .inline-expanded-textarea:-ms-input-placeholder {
  color: #999;
}
.inline-expanded-wrapper .inline-expanded-textarea::placeholder {
  color: #999;
}
.inline-expanded-wrapper .inline-expanded-actions {
  display: -moz-box;
  display: flex;
  -moz-box-pack: end;
       justify-content: flex-end;
  margin-top: 0.5rem;
}
.inline-expanded-wrapper .inline-expanded-actions .collapse-editor-btn {
  background: #fafafa;
  border: 1px solid #ccc;
  color: #00007d;
  padding: 0.4rem 0.6rem;
  border-radius: 4px;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.inline-expanded-wrapper .inline-expanded-actions .collapse-editor-btn:hover {
  background: #9c3706;
  color: white;
  border-color: #9c3706;
}
.inline-expanded-wrapper .inline-expanded-actions .collapse-editor-btn i {
  font-size: 0.85em;
}

.quiz-manage-page {
  max-width: 1200px;
  margin: 0 auto;
}
.quiz-manage-page .manage-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 2rem;
}
.quiz-manage-page .manage-tabs {
  display: -moz-box;
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}
.quiz-manage-page .manage-tabs a {
  padding: 0.5rem 1rem;
  border-radius: 4px;
  background: #fafafa;
}
.quiz-manage-page .manage-tabs a.active {
  background: #9c3706;
  color: white;
}
.quiz-manage-page .stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}
.quiz-manage-page .stat-card {
  background: white;
  padding: 1.5rem;
  border-radius: 4px;
  text-align: center;
}
.quiz-manage-page .stat-value {
  font-size: 2rem;
  font-weight: bold;
}
.quiz-manage-page .stat-label {
  color: #666;
}
.quiz-manage-page .attempts-table {
  width: 100%;
}

#search-quiz,
#search-question {
  width: 100%;
  height: 2.3em;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
}

.no-quizzes {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 4px;
}

.list-contest .participate-button {
  text-align: right;
  margin-top: 0.5em;
}

.quiz-attempt-list-page {
  font-size: 15px;
}
.quiz-attempt-list-page .attempt-stats {
  display: -moz-box;
  display: flex;
  gap: 2em;
  margin-bottom: 1em;
  padding: 1em;
  background: white;
  border-radius: 4px;
}
.quiz-attempt-list-page .attempt-stats .stat-item {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
}
.quiz-attempt-list-page .attempt-stats .stat-label {
  font-size: 0.9em;
  color: #666;
}
.quiz-attempt-list-page .attempt-stats .stat-value {
  font-size: 1.5em;
  font-weight: bold;
}
.quiz-attempt-list-page .attempt-row {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  padding: 0.8em 1em;
  background: white;
  border-radius: 4px;
  margin-bottom: 0.5em;
  gap: 1em;
}
.quiz-attempt-list-page .attempt-row:hover {
  background: rgb(247.35, 247.35, 247.35);
}
.quiz-attempt-list-page .attempt-number {
  font-weight: bold;
  min-width: 50px;
}
.quiz-attempt-list-page .attempt-time {
  -moz-box-flex: 1;
       flex: 1;
  font-size: 0.9em;
}
.quiz-attempt-list-page .attempt-time .time-secondary {
  color: #666;
}
.quiz-attempt-list-page .attempt-score {
  font-weight: bold;
  min-width: 100px;
  text-align: right;
}
.quiz-attempt-list-page .attempt-score.perfect {
  color: #5cb85c;
}
.quiz-attempt-list-page .attempt-score.good {
  color: #5bc0de;
}
.quiz-attempt-list-page .attempt-score.average {
  color: #f0ad4e;
}
.quiz-attempt-list-page .attempt-score.poor {
  color: #d9534f;
}
.quiz-attempt-list-page .attempt-status {
  min-width: 100px;
}
.quiz-attempt-list-page .attempt-actions {
  min-width: 100px;
  text-align: right;
}
.quiz-attempt-list-page .empty-state {
  text-align: center;
  padding: 2em;
  background: white;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.quiz-attempt-list-page .empty-state .empty-icon {
  color: #666;
}

.question-analysis-page .stats-summary {
  display: -moz-box;
  display: flex;
  gap: 1rem;
  margin-bottom: 2.5rem;
  flex-wrap: wrap;
}
.question-analysis-page .stat-card {
  background: white;
  padding: 1rem 1.5rem;
  border-radius: 4px;
  min-width: 150px;
}
.question-analysis-page .stat-card .value {
  font-size: 1.5rem;
  font-weight: bold;
}
.question-analysis-page .stat-card .label {
  color: #666;
  font-size: 0.9rem;
}
.question-analysis-page .question-stat-card {
  background: white;
  border-radius: 4px;
  padding: 1.5rem 2rem;
  margin-bottom: 2rem;
}
.question-analysis-page .question-header {
  display: -moz-box;
  display: flex;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-align: start;
       align-items: flex-start;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #ccc;
}
.question-analysis-page .question-title {
  font-size: 1.1rem;
  font-weight: bold;
  margin-right: 0.75rem;
}
.question-analysis-page .stats-row {
  display: -moz-box;
  display: flex;
  gap: 3rem;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}
.question-analysis-page .stats-row .stat {
  min-width: 100px;
}
.question-analysis-page .stats-row .stat-value {
  font-size: 1.3rem;
  font-weight: bold;
}
.question-analysis-page .stats-row .stat-label {
  color: #666;
  font-size: 0.85rem;
  margin-top: 0.25rem;
}
.question-analysis-page .choice-distribution {
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid #ccc;
}
.question-analysis-page .choice-distribution strong {
  display: block;
  margin-bottom: 1rem;
}
.question-analysis-page .choice-bar {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  margin-bottom: 0.75rem;
}
.question-analysis-page .choice-label {
  width: 50px;
  font-weight: bold;
}
.question-analysis-page .choice-bar-container {
  -moz-box-flex: 1;
       flex: 1;
  background: #fafafa;
  height: 24px;
  border-radius: 4px;
  overflow: hidden;
  margin: 0 1rem;
}
.question-analysis-page .choice-bar-fill {
  height: 100%;
  background: #9c3706;
}
.question-analysis-page .choice-bar-fill.correct {
  background: #5cb85c;
}
.question-analysis-page .choice-percentage {
  width: 80px;
  text-align: right;
  font-size: 0.9em;
}

.question-bank-list-page #search-question {
  width: 100%;
  height: 2.3em;
}
.question-bank-list-page .question-table td,
.question-bank-list-page .question-table th {
  vertical-align: middle;
}
.question-bank-list-page .question-table th {
  padding: 0;
}
.question-bank-list-page .question-table .question-visibility {
  width: 50px;
  text-align: center;
}
.question-bank-list-page .question-table .question-type {
  width: 140px;
}
.question-bank-list-page .question-table .question-tags {
  max-width: 200px;
}
.question-bank-list-page .question-table .question-actions {
  width: 80px;
  text-align: right;
}
.question-bank-list-page .tag {
  display: inline-block;
  padding: 0.125rem 0.5rem;
  background: #fafafa;
  border-radius: 3px;
  font-size: 0.8rem;
  margin: 0.1rem;
}
.question-bank-list-page .no-questions {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 4px;
}
.question-bank-list-page .no-questions .empty-icon {
  color: #666;
}

.multiline-text {
  white-space: pre-wrap;
  word-wrap: break-word;
}

.choice-content {
  display: block;
}
.choice-content p {
  margin-top: 0;
  margin-bottom: 0.5em;
}
.choice-content p:last-child {
  margin-bottom: 0;
}
.choice-content code {
  padding: 0.1em 0.3em;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 3px;
  font-size: 0.9em;
}
.choice-content .MathJax, .choice-content .katex {
  font-size: 1em;
}

.help-description {
  margin-bottom: 0.5rem;
  font-size: 0.85rem;
  color: #666;
}

.pagination-wrapper {
  margin-top: 10px;
}

.empty-message {
  text-align: center;
  padding: 2em;
}

.question-detail-page {
  background: white;
  padding: 1.5em 2em;
  border-radius: 0.5em;
}
.question-detail-page h2.content-title {
  margin: 0 0 0.5rem 0;
}
.question-detail-page .question-meta {
  display: -moz-box;
  display: flex;
  gap: 0.75em;
  margin-top: 0;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}
.question-detail-page .question-meta .type-tag {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  padding: 0.4em 0.8em;
  border-radius: 4px;
  font-size: 0.9em;
  font-weight: 600;
  background: #6c757d;
  color: white;
}
.question-detail-page .question-meta .visibility-tag {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  padding: 0.4em 0.8em;
  border-radius: 4px;
  font-size: 0.9em;
  font-weight: 600;
}
.question-detail-page .question-meta .visibility-tag.public {
  background: #5cb85c;
  color: white;
}
.question-detail-page .question-meta .visibility-tag.private {
  background: #f0ad4e;
  color: white;
}
.question-detail-page .question-section {
  margin-bottom: 1rem;
}
.question-detail-page .question-section h3 {
  color: #9c3706;
  font-size: 1.1em;
  font-weight: bold;
  margin-top: 0;
  margin-bottom: 0.75em;
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.5em;
}
.question-detail-page .question-section ul {
  margin: 0;
  padding-left: 1.5em;
}
.question-detail-page .question-section li {
  margin-bottom: 0.3em;
}
.question-detail-page .choice-display-item {
  display: -moz-box;
  display: flex;
  -moz-box-align: baseline;
       align-items: baseline;
  margin-bottom: 0.75em;
  gap: 0.5em;
}
.question-detail-page .choice-display-item .choice-display-id {
  font-weight: bold;
  flex-shrink: 0;
  min-width: 1.5em;
}
.question-detail-page .choice-display-item .choice-display-content {
  -moz-box-flex: 1;
       flex: 1;
  min-width: 0;
}
.question-detail-page .choice-display-item .choice-display-content > p:first-child,
.question-detail-page .choice-display-item .choice-display-content > *:first-child {
  margin-top: 0;
}
.question-detail-page .choice-display-item .choice-display-content p:last-child {
  margin-bottom: 0;
}
.question-detail-page .choice-display-item .choice-display-content p {
  margin-top: 0;
  margin-bottom: 0.5em;
}
.question-detail-page .choice-display-item .choice-display-content p:last-child {
  margin-bottom: 0;
}
.question-detail-page .sa-config-display p {
  margin: 0.3em 0;
}
.question-detail-page .question-actions {
  margin-top: 1rem;
  display: -moz-box;
  display: flex;
  gap: 0.5em;
}
.question-detail-page .question-actions .action-btn {
  padding: 0.5em 1em;
}

.quiz-grade-page h2 {
  margin-top: 0;
  margin-bottom: 1em;
}
.quiz-grade-page h2 i {
  margin-right: 0.3em;
}
.quiz-grade-page .grade-filters {
  margin-bottom: 1.5em;
  padding: 1em;
  background: #fafafa;
  border-radius: 8px;
}
.quiz-grade-page .grade-filters .inline-form {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 1em;
  flex-wrap: wrap;
}
.quiz-grade-page .grade-filters .filter-group {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 0.5em;
}
.quiz-grade-page .grade-filters .filter-group label {
  font-weight: 600;
  white-space: nowrap;
}
.quiz-grade-page .attempt-number {
  color: #00007d;
  opacity: 0.6;
  font-size: 0.9em;
}

.theme-settings-page {
  max-width: 900px;
  margin: 0 auto;
  padding: 20px;
}

.theme-section {
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 0.5em;
  padding: 20px;
  margin-bottom: 20px;
}
.theme-section h3 {
  margin-top: 0;
  margin-bottom: 15px;
  color: #00007d;
  border-bottom: 1px solid #ccc;
  padding-bottom: 10px;
}
.theme-section h3 i {
  margin-right: 8px;
}
.theme-section .section-label {
  font-weight: bold;
  margin-bottom: 10px;
  color: #00007d;
}
.theme-section .section-description {
  color: #666;
  font-size: 0.9em;
  margin-bottom: 15px;
}

.mode-toggle {
  display: -moz-box;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}
.mode-toggle .mode-option {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  padding: 20px 40px;
  border: 2px solid #ccc;
  border-radius: 0.5em;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  background: #fff;
}
.mode-toggle .mode-option:hover {
  border-color: #9c3706;
}
.mode-toggle .mode-option.active {
  border-color: #9c3706;
  background: rgb(250.6111111111, 176.7314814815, 140.8888888889);
}
.mode-toggle .mode-option i {
  font-size: 2em;
  margin-bottom: 10px;
  color: #00007d;
}
.mode-toggle .mode-option span {
  color: #00007d;
}
.mode-toggle .mode-option.mode-option-small {
  padding: 12px 25px;
}
.mode-toggle .mode-option.mode-option-small i {
  font-size: 1.4em;
  margin-bottom: 6px;
}
.mode-toggle .mode-option.mode-option-small span {
  font-size: 0.9em;
}

.current-background-preview {
  margin-bottom: 20px;
}
.current-background-preview img {
  max-width: 300px;
  max-height: 150px;
  border-radius: 0.5em;
  border: 1px solid #ccc;
  object-fit: cover;
}

.background-actions {
  margin-bottom: 20px;
}
.background-actions .inline-form {
  display: inline-block;
}
.background-actions .action-btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.sample-backgrounds-section {
  margin-bottom: 20px;
}
.sample-backgrounds-section .no-samples-message {
  color: #666;
  font-style: italic;
}

.background-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 15px;
  margin-bottom: 15px;
}

.background-card-form {
  display: contents;
}

.background-card {
  display: block;
  width: 100%;
  border: 2px solid #ccc;
  border-radius: 0.5em;
  overflow: hidden;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  background: #fff;
  padding: 0;
  text-align: left;
}
.background-card:hover {
  border-color: #9c3706;
  -moz-transform: scale(1.02);
       transform: scale(1.02);
}
.background-card img {
  width: 100%;
  height: 100px;
  object-fit: cover;
  display: block;
}
.background-card .bg-name {
  padding: 8px;
  text-align: center;
  background: #ededed;
  font-size: 0.85em;
  color: #00007d;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-upload-inline {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  -moz-box-align: center;
       align-items: center;
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px dashed #ccc;
}
.admin-upload-inline input[type=file] {
  padding: 5px;
  font-size: 0.9em;
}
.admin-upload-inline .secondary-btn {
  background: #ededed;
  color: #00007d;
}
.admin-upload-inline .secondary-btn:hover {
  background: rgb(224.25, 224.25, 224.25);
}

.admin-samples-manager {
  margin-top: 15px;
  padding: 15px;
  background: rgba(240, 173, 78, 0.1);
  border: 1px dashed #e6c300;
  border-radius: 0.5em;
}
.admin-samples-manager .admin-bg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: 10px;
}
.admin-samples-manager .admin-bg-item {
  position: relative;
  border-radius: 0.5em;
  overflow: hidden;
}
.admin-samples-manager .admin-bg-item img {
  width: 100%;
  height: 70px;
  object-fit: cover;
  display: block;
}
.admin-samples-manager .admin-bg-item .delete-bg-btn {
  position: absolute;
  top: 5px;
  right: 5px;
  background: #ae0000;
  color: #fff;
  border: none;
  padding: 5px 8px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 0.8em;
}
.admin-samples-manager .admin-bg-item .delete-bg-btn:hover {
  background: #7b0000;
}

.custom-upload-section {
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid #ccc;
}
.custom-upload-section .custom-upload-form {
  margin-top: 10px;
}
.custom-upload-section .upload-hint {
  margin-top: 10px;
  font-size: 0.85em;
  color: #666;
}
.custom-upload-section .upload-submit-btn {
  margin-top: 10px;
}

.effects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: 12px;
}

.effect-form {
  display: contents;
}

.effect-option {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  padding: 12px;
  border: 2px solid #ccc;
  border-radius: 0.5em;
  cursor: pointer;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  background: #fff;
  width: 100%;
}
.effect-option:hover {
  border-color: #9c3706;
}
.effect-option.selected {
  border-color: #9c3706;
  background: rgb(250.6111111111, 176.7314814815, 140.8888888889);
}
.effect-option .effect-icon {
  width: 40px;
  height: 40px;
  background: #ededed;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  margin-bottom: 8px;
}
.effect-option .effect-icon i {
  font-size: 1.2em;
  color: #00007d;
}
.effect-option span {
  color: #00007d;
  font-size: 0.85em;
  text-align: center;
}

@media (max-width: 600px) {
  .theme-settings-page {
    padding: 10px;
  }
  .mode-toggle .mode-option.mode-option-small {
    padding: 10px 20px;
  }
  .background-grid {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  }
  .effects-grid {
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  }
  .admin-samples-manager .admin-bg-grid {
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  }
}
/**
 * Problem Author Chatbot Styles
 * Uses SCSS variables for dark mode compatibility
 */
.chatbot-container {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  height: -moz-calc(100vh - 90px);
  height: calc(100vh - 90px);
  min-height: 300px;
  border: 1px solid #ccc;
  border-radius: 0.5em;
  background: #fafafa;
  overflow: hidden;
}

.chatbot-messages {
  -moz-box-flex: 1;
       flex: 1;
  overflow-y: auto;
  padding: 16px;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 16px;
}
.chatbot-messages .message {
  display: -moz-box;
  display: flex;
  gap: 12px;
  max-width: 85%;
}
.chatbot-messages .message.user {
  align-self: flex-end;
  -moz-box-orient: horizontal;
  -moz-box-direction: reverse;
       flex-direction: row-reverse;
}
.chatbot-messages .message.user .message-avatar {
  background: #9c3706;
  color: white;
}
.chatbot-messages .message.user .message-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.chatbot-messages .message.user .message-body .message-content {
  background: #9c3706;
  color: white;
  border-radius: 16px 16px 4px 16px;
}
.chatbot-messages .message.user .message-body .message-content .content-description,
.chatbot-messages .message.user .message-body .message-content .content-description *,
.chatbot-messages .message.user .message-body .message-content .md-typeset,
.chatbot-messages .message.user .message-body .message-content .md-typeset * {
  color: white !important;
}
.chatbot-messages .message.user .message-body .message-content code {
  background: rgba(255, 255, 255, 0.2) !important;
  color: white !important;
}
.chatbot-messages .message.user .message-body .message-content pre {
  background: rgba(0, 0, 0, 0.3) !important;
}
.chatbot-messages .message.user .message-body .message-content pre code {
  background: transparent !important;
}
.chatbot-messages .message.assistant {
  align-self: flex-start;
}
.chatbot-messages .message.assistant .message-avatar {
  background: #ededed;
}
.chatbot-messages .message.assistant .message-body .message-content {
  background: #ededed;
  border-radius: 16px 16px 16px 4px;
  border: 1px solid #ccc;
}
.chatbot-messages .message-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  flex-shrink: 0;
  font-size: 14px;
}
.chatbot-messages .message-body {
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  gap: 6px;
  min-width: 0;
  position: relative;
}
.chatbot-messages .message-body .message-delete-btn {
  display: none;
  position: absolute;
  top: -8px;
  right: -8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1px solid #ccc;
  background: #fafafa;
  color: #00007d;
  cursor: pointer;
  padding: 0;
  font-size: 10px;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  z-index: 1;
  opacity: 0.6;
  -moz-transition: opacity 0.15s, color 0.15s;
  transition: opacity 0.15s, color 0.15s;
}
.chatbot-messages .message-body .message-delete-btn:hover {
  opacity: 1;
  color: #ae0000;
  border-color: #ae0000;
}
.chatbot-messages .message:hover .message-delete-btn {
  display: -moz-box;
  display: flex;
}
.chatbot-messages .message.user .message-body .message-delete-btn {
  right: auto;
  left: -8px;
}
.chatbot-messages .message.streaming .message-content::after {
  content: "◍";
  -moz-animation: blink-cursor 0.8s infinite;
       animation: blink-cursor 0.8s infinite;
  opacity: 0.7;
}
.chatbot-messages .message-content {
  padding: 10px 14px;
  font-size: 14px;
  line-height: 1.5;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.chatbot-messages .message-content .content-description {
  margin: 0;
}
.chatbot-messages .tool-calls {
  display: -moz-box;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 4px;
}
.chatbot-messages .tool-calls .tool-badge {
  display: -moz-inline-box;
  display: inline-flex;
  -moz-box-align: center;
       align-items: center;
  gap: 4px;
  background: #ededed;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  border: 1px solid #ccc;
  cursor: help;
}
.chatbot-messages .tool-calls .tool-badge i {
  font-size: 10px;
  opacity: 0.7;
}
.chatbot-messages .typing-indicator .message-content {
  padding: 12px 18px;
}
.chatbot-messages .typing-indicator .typing-dots {
  display: -moz-inline-box;
  display: inline-flex;
  gap: 4px;
}
.chatbot-messages .typing-indicator .typing-dots span {
  -moz-animation: typing-dot 1.4s infinite;
       animation: typing-dot 1.4s infinite;
  opacity: 0.3;
}
.chatbot-messages .typing-indicator .typing-dots span:nth-child(2) {
  -moz-animation-delay: 0.2s;
       animation-delay: 0.2s;
}
.chatbot-messages .typing-indicator .typing-dots span:nth-child(3) {
  -moz-animation-delay: 0.4s;
       animation-delay: 0.4s;
}

@-moz-keyframes typing-dot {
  0%, 60%, 100% {
    opacity: 0.3;
  }
  30% {
    opacity: 1;
  }
}

@keyframes typing-dot {
  0%, 60%, 100% {
    opacity: 0.3;
  }
  30% {
    opacity: 1;
  }
}
@-moz-keyframes blink-cursor {
  0%, 100% {
    opacity: 0;
  }
  50% {
    opacity: 0.7;
  }
}
@keyframes blink-cursor {
  0%, 100% {
    opacity: 0;
  }
  50% {
    opacity: 0.7;
  }
}
.welcome-message {
  text-align: center;
  padding: 40px 20px;
  align-self: center;
  max-width: 400px;
}
.welcome-message .welcome-icon {
  font-size: 48px;
  color: #9c3706;
  margin-bottom: 16px;
}
.welcome-message h4 {
  margin: 0 0 12px 0;
  font-size: 18px;
}
.welcome-message p {
  margin: 8px 0;
  opacity: 0.8;
}
.welcome-message ul {
  text-align: left;
  margin: 16px 0;
  padding-left: 0;
  list-style: none;
}
.welcome-message ul li {
  padding: 6px 0;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
}
.welcome-message ul li i {
  color: #9c3706;
  font-size: 12px;
}
.welcome-message .welcome-hint {
  font-style: italic;
  font-size: 13px;
  opacity: 0.7;
  margin-top: 16px;
}

.chatbot-input-area {
  border-top: 1px solid #ccc;
  background: #ededed;
  flex-shrink: 0;
}

.chat-status {
  display: none;
  text-align: center;
  padding: 8px;
  font-size: 13px;
  opacity: 0.7;
  border-bottom: 1px solid #ccc;
}

.chatbot-input {
  display: -moz-box;
  display: flex;
  gap: 8px;
  padding: 12px 16px;
  -moz-box-align: end;
       align-items: flex-end;
}
.chatbot-input textarea {
  -moz-box-flex: 1;
       flex: 1;
  resize: none;
  border: 1px solid #ccc;
  border-radius: 20px;
  padding: 10px 16px;
  font-size: 14px;
  font-family: inherit;
  line-height: 1.4;
  min-height: 40px;
  max-height: 150px;
  background: #fafafa;
}
.chatbot-input textarea:focus {
  outline: none;
  border-color: #9c3706;
}
.chatbot-input textarea:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.chatbot-input textarea:-ms-input-placeholder {
  opacity: 0.5;
}
.chatbot-input textarea::placeholder {
  opacity: 0.5;
}
.chatbot-input button {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  padding: 0;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  flex-shrink: 0;
}
.chatbot-input button i {
  margin: 0;
}
.chatbot-input button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chatbot-input #clear-chat-btn {
  background: transparent;
  border: 1px solid #ccc;
  color: inherit;
  opacity: 0.6;
}
.chatbot-input #clear-chat-btn:hover {
  opacity: 1;
  border-color: #ae0000;
  color: #ae0000;
}
.chatbot-input .model-selector {
  position: relative;
}
.chatbot-input .model-selector #model-btn {
  width: auto;
  border-radius: 20px;
  padding: 0 12px;
  gap: 6px;
  background: transparent;
  border: 1px solid #ccc;
  color: inherit;
  font-size: 12px;
}
.chatbot-input .model-selector #model-btn .model-name {
  max-width: 100px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chatbot-input .model-selector #model-btn .fa-caret-down {
  font-size: 10px;
  opacity: 0.6;
}
.chatbot-input .model-selector #model-btn:hover {
  border-color: #9c3706;
  color: #9c3706;
}
.chatbot-input .model-selector .model-dropdown {
  display: none;
  position: absolute;
  bottom: 100%;
  left: 0;
  margin-bottom: 4px;
  background: #fafafa;
  border: 1px solid #ccc;
  border-radius: 8px;
  box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
  min-width: 160px;
  z-index: 100;
  overflow: hidden;
}
.chatbot-input .model-selector .model-dropdown.show {
  display: block;
}
.chatbot-input .model-selector .model-dropdown .model-option {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 10px 12px;
  cursor: pointer;
  font-size: 13px;
  -moz-transition: background 0.15s;
  transition: background 0.15s;
}
.chatbot-input .model-selector .model-dropdown .model-option .fa-check {
  width: 14px;
  opacity: 0;
  color: #9c3706;
}
.chatbot-input .model-selector .model-dropdown .model-option:hover {
  background: #ededed;
}
.chatbot-input .model-selector .model-dropdown .model-option.active .fa-check {
  opacity: 1;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .chatbot-container {
    height: -moz-calc(100vh - 70px);
    height: calc(100vh - 70px);
    min-height: 250px;
  }
  .chatbot-messages .message {
    max-width: 90%;
  }
  .welcome-message {
    padding: 20px;
  }
  .welcome-message .welcome-icon {
    font-size: 36px;
  }
}
.package-import-page .import-upload-area {
  border: 2px dashed #ccc;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  margin: 10px 0;
  -moz-transition: border-color 0.2s;
  transition: border-color 0.2s;
}
.package-import-page .import-upload-area:hover {
  border-color: #9c3706;
}
.package-import-page .import-status {
  margin: 15px 0;
  padding: 12px 15px;
  border-radius: 6px;
  display: none;
  border: 1px solid #ccc;
}
.package-import-page .import-status.show {
  display: block;
}
.package-import-page .import-status.analyzing {
  border-left: 4px solid #9c3706;
}
.package-import-page .import-status.done {
  border-left: 4px solid green;
}
.package-import-page .import-status.error {
  border-left: 4px solid #ae0000;
}
.package-import-page .import-field {
  border: 1px solid #ccc;
  border-radius: 6px;
  margin: 10px 0;
  overflow: hidden;
}
.package-import-page .import-field-header {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: justify;
       justify-content: space-between;
  padding: 10px 15px;
  gap: 10px;
}
.package-import-page .import-field-title-area {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: justify;
       justify-content: space-between;
  -moz-box-flex: 1;
       flex: 1;
  cursor: pointer;
  padding: 2px 0;
}
.package-import-page .import-field-title-area:hover {
  opacity: 0.8;
}
.package-import-page .import-field-title {
  font-weight: bold;
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
}
.package-import-page .import-field-title i {
  width: 20px;
  text-align: center;
}
.package-import-page .import-field-meta {
  font-size: 0.85em;
  opacity: 0.7;
}
.package-import-page .import-summary-box {
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 15px;
  margin-bottom: 15px;
}
.package-import-page .import-summary-row {
  padding: 4px 0;
}
.package-import-page .import-summary-label {
  font-weight: bold;
  display: inline-block;
  min-width: 80px;
}
.package-import-page .import-summary-notes {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #ccc;
  font-size: 0.9em;
  opacity: 0.8;
  font-style: italic;
}
.package-import-page .import-field-body {
  display: none;
  padding: 0 15px 15px;
  border-top: 1px solid #ccc;
}
.package-import-page .import-field-body.show {
  display: block;
}
.package-import-page .import-field-preview {
  max-height: 300px;
  overflow-y: auto;
  font-family: monospace;
  font-size: 12px;
  white-space: pre-wrap;
  padding: 10px;
  border-radius: 4px;
  margin: 10px 0;
  border: 1px solid #ccc;
}
.package-import-page .import-results {
  display: none;
}
.package-import-page .import-results.show {
  display: block;
}
.package-import-page .import-applied {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 3px;
  font-size: 0.8em;
  color: green;
  font-weight: bold;
}

@-moz-keyframes rank-up-flash {
  0% {
    background-color: rgba(76, 175, 80, 0.35);
  }
  100% {
    background-color: transparent;
  }
}

@keyframes rank-up-flash {
  0% {
    background-color: rgba(76, 175, 80, 0.35);
  }
  100% {
    background-color: transparent;
  }
}
@-moz-keyframes new-solve-pulse {
  0% {
    background-color: rgba(255, 193, 7, 0.45);
  }
  50% {
    background-color: rgba(255, 193, 7, 0.15);
  }
  100% {
    background-color: transparent;
  }
}
@keyframes new-solve-pulse {
  0% {
    background-color: rgba(255, 193, 7, 0.45);
  }
  50% {
    background-color: rgba(255, 193, 7, 0.15);
  }
  100% {
    background-color: transparent;
  }
}
#users-table tbody tr.rank-up {
  -moz-animation: rank-up-flash 3s ease-out forwards;
       animation: rank-up-flash 3s ease-out forwards;
}

#users-table tbody td.new-solve {
  -moz-animation: new-solve-pulse 3s ease-out forwards;
       animation: new-solve-pulse 3s ease-out forwards;
}

.fav-star {
  cursor: pointer;
  font-size: 1.1em;
  margin-right: 4px;
  vertical-align: middle;
  opacity: 0.35;
  -moz-transition: opacity 0.15s;
  transition: opacity 0.15s;
}
.fav-star:hover {
  opacity: 0.7;
}
.fav-star.fav-active {
  color: #f5a623;
  opacity: 1;
}

#users-table tbody tr.fav-row {
  background-color: rgba(245, 166, 35, 0.12);
}

#live-toasts {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: reverse;
       flex-direction: column-reverse;
  gap: 8px;
  pointer-events: none;
  max-height: 80vh;
  overflow: hidden;
}

.live-toast {
  pointer-events: auto;
  display: -moz-box;
  display: flex;
  -moz-box-align: stretch;
       align-items: stretch;
  min-width: 280px;
  max-width: 380px;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2), 0 1px 4px rgba(0, 0, 0, 0.1);
  opacity: 0;
  -moz-transform: translateX(100px);
       transform: translateX(100px);
  -moz-transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), -moz-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), -moz-transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.live-toast.toast-visible {
  opacity: 1;
  -moz-transform: translateX(0);
       transform: translateX(0);
}
.live-toast.toast-exit {
  opacity: 0;
  -moz-transform: translateX(80px);
       transform: translateX(80px);
  -moz-transition: opacity 0.4s ease, transform 0.4s ease, -moz-transform 0.4s ease;
  transition: opacity 0.4s ease, transform 0.4s ease;
  transition: opacity 0.4s ease, transform 0.4s ease, -moz-transform 0.4s ease;
}
.live-toast .toast-problem {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  padding: 8px 14px;
  font-size: 1.15em;
  font-weight: 700;
  color: #fff;
  min-width: 44px;
  letter-spacing: 0.5px;
}
.live-toast .toast-body {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 8px;
  padding: 8px 14px 8px 12px;
  -moz-box-flex: 1;
       flex: 1;
  background: #fff;
  font-size: 0.9em;
}
.live-toast .toast-user {
  font-weight: 600;
  color: #333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 140px;
}
.live-toast .toast-score {
  color: #555;
  font-size: 0.95em;
  margin-left: auto;
  white-space: nowrap;
  font-weight: 500;
}
.live-toast .toast-rank {
  font-size: 0.8em;
  font-weight: 700;
  white-space: nowrap;
}
.live-toast.toast-ac .toast-problem {
  background: -moz-linear-gradient(315deg, #43a047, #2e7d32);
  background: linear-gradient(135deg, #43a047, #2e7d32);
}
.live-toast.toast-ac .toast-score {
  color: #2e7d32;
  font-weight: 600;
}
.live-toast.toast-partial .toast-problem {
  background: -moz-linear-gradient(315deg, #fb8c00, #ef6c00);
  background: linear-gradient(135deg, #fb8c00, #ef6c00);
}
.live-toast.toast-partial .toast-score {
  color: #e65100;
  font-weight: 600;
}
.live-toast.toast-down .toast-problem {
  background: -moz-linear-gradient(315deg, #e53935, #c62828);
  background: linear-gradient(135deg, #e53935, #c62828);
}
.live-toast.toast-down .toast-score {
  color: #c62828;
  font-weight: 600;
}
.live-toast.toast-frozen .toast-problem {
  background: -moz-linear-gradient(315deg, #42a5f5, #1976d2);
  background: linear-gradient(135deg, #42a5f5, #1976d2);
}
.live-toast.toast-frozen .toast-score {
  color: #1565c0;
  font-weight: 600;
}

.toast-rank-up {
  color: #2e7d32;
}

.toast-rank-down {
  color: #c62828;
}

.resolver-page {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.resolver-page .resolver-controls {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 10px;
  padding: 14px 16px;
  flex-wrap: wrap;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(250, 250, 250, 0.92);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  border-bottom: 1px solid #ccc;
  margin: -4px -4px 16px;
  border-radius: 0 0 12px 12px;
}
.resolver-page .resolver-controls .action-btn {
  padding: 0.45em 1em;
  font-size: 0.85em;
  border-radius: 8px;
}
.resolver-page .resolver-controls kbd {
  display: inline-block;
  padding: 1px 5px;
  font-size: 0.7em;
  font-family: inherit;
  background: rgba(0, 0, 0, 0.07);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 4px;
  margin-left: 4px;
  line-height: 1.4;
  vertical-align: middle;
}
.resolver-page .resolver-speed-control {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 6px;
  font-size: 0.85em;
  color: #00007d;
}
.resolver-page .resolver-speed-control label {
  font-weight: 500;
  opacity: 0.7;
}
.resolver-page .resolver-speed-control input[type=range] {
  width: 80px;
  accent-color: #9c3706;
}
.resolver-page .resolver-speed-control input[type=number] {
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 3px 6px;
  font-size: 0.95em;
  text-align: center;
}
.resolver-page .resolver-speed-control #resolver-speed-label {
  font-weight: 600;
  min-width: 24px;
}
.resolver-page .resolver-toggle {
  display: -moz-box;
  display: flex;
  -moz-box-align: center;
       align-items: center;
  gap: 5px;
  font-size: 0.85em;
  cursor: pointer;
  white-space: nowrap;
  color: #00007d;
  font-weight: 500;
  opacity: 0.8;
}
.resolver-page .resolver-toggle input[type=checkbox] {
  accent-color: #9c3706;
}
.resolver-page .resolver-table-wrapper {
  overflow-x: auto;
  border-radius: 10px;
  border: 1px solid #ccc;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.resolver-page .resolver-table-wrapper::-webkit-scrollbar {
  display: none;
}
.resolver-page #resolver-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 0;
}
.resolver-page #resolver-table thead {
  background: rgb(231.9, 231.9, 231.9);
}
.resolver-page #resolver-table thead th {
  font-weight: 700;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
  padding: 10px 8px;
  color: #00007d;
  border-bottom: 2px solid #ccc;
}
.resolver-page #resolver-table tbody tr {
  -moz-transition: background-color 0.4s ease;
  transition: background-color 0.4s ease;
}
.resolver-page #resolver-table tbody tr:hover {
  background-color: rgba(156, 55, 6, 0.04);
}
.resolver-page #resolver-table td {
  padding: 6px 6px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid rgba(204, 204, 204, 0.5);
  -moz-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
.resolver-page #resolver-table .resolver-rank-col,
.resolver-page #resolver-table .resolver-rank-cell {
  width: 44px;
  text-align: center;
  font-weight: 600;
  color: #00007d;
}
.resolver-page #resolver-table .resolver-user-col,
.resolver-page #resolver-table .resolver-user-cell {
  text-align: left;
  min-width: 150px;
}
.resolver-page #resolver-table .resolver-user-cell a {
  font-weight: 600;
}
.resolver-page #resolver-table .resolver-user-cell .resolver-user-details {
  font-size: 0.82em;
  line-height: 1.4;
  margin-top: 3px;
  color: #00007d;
  opacity: 0.65;
}
.resolver-page #resolver-table .resolver-user-cell .resolver-real-name {
  font-weight: 500;
}
.resolver-page #resolver-table .resolver-user-cell .resolver-school {
  margin-left: 4px;
}
.resolver-page #resolver-table .resolver-user-cell .resolver-school::before {
  content: "— ";
}
.resolver-page #resolver-table .resolver-problem-col {
  text-align: center;
  min-width: 40px;
  font-size: 0.85em;
}
.resolver-page #resolver-table .resolver-group-col {
  text-align: center;
  font-size: 0.85em;
  border-bottom: 1px solid #ccc;
}
.resolver-page #resolver-table .resolver-score-col,
.resolver-page #resolver-table .resolver-score-cell {
  text-align: center;
  font-weight: 600;
  min-width: 64px;
  color: #00007d;
}
.resolver-page #resolver-table .resolver-solving-time {
  font-size: 0.78em;
  font-weight: 400;
  color: #00007d;
  opacity: 0.6;
  margin-top: 2px;
}
.resolver-page .resolver-cell {
  border-radius: 4px;
  font-weight: 700;
  font-size: 0.82em;
  cursor: default;
  min-width: 36px;
  -moz-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.resolver-page .resolver-cell.frozen {
  background: #607d8b;
  color: #fff;
  cursor: pointer;
}
.resolver-page .resolver-cell.frozen:hover {
  background: #546e7a;
}
.resolver-page .resolver-cell.frozen .frozen-score {
  font-size: 0.85em;
  opacity: 0.75;
}
.resolver-page .resolver-cell.frozen .frozen-indicator {
  font-weight: 800;
  font-size: 1.05em;
}
.resolver-page .resolver-cell.ac {
  background: #43a047;
  color: #fff;
}
.resolver-page .resolver-cell.partial, .resolver-page .resolver-cell.improved {
  background: #ef6c00;
  color: #fff;
}
.resolver-page .resolver-cell.wrong {
  background: #d32f2f;
  color: #fff;
}
.resolver-page .resolver-cell.resolver-empty {
  color: rgba(0, 0, 125, 0.25);
  font-weight: 400;
}
.resolver-page .resolver-cell.selected {
  outline: 3px solid #e040fb;
  outline-offset: -2px;
  -moz-animation: cell-pulse 0.6s ease infinite;
       animation: cell-pulse 0.6s ease infinite;
  -moz-transform: scale(1.06);
       transform: scale(1.06);
  z-index: 2;
  position: relative;
}
.resolver-page #resolver-table.resolver-has-subtasks .resolver-problem-col {
  min-width: 24px;
  font-size: 0.72em;
  padding: 6px 2px;
}
.resolver-page #resolver-table.resolver-has-subtasks .resolver-group-col {
  font-size: 0.8em;
  padding: 8px 4px;
}
.resolver-page #resolver-table.resolver-has-subtasks .resolver-cell {
  min-width: 24px;
  padding: 4px 2px;
  font-size: 0.72em;
}
.resolver-page .resolver-row-active {
  background-color: rgba(156, 55, 6, 0.12) !important;
  box-shadow: inset 4px 0 0 #9c3706;
}
.resolver-page .resolver-rank-up {
  background-color: rgba(76, 175, 80, 0.2) !important;
}
.resolver-page .cell-reveal-anim {
  -moz-animation: cell-reveal 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
       animation: cell-reveal 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@-moz-keyframes cell-reveal {
  0% {
    -moz-transform: scale(1.4);
         transform: scale(1.4);
    opacity: 0;
  }
  60% {
    -moz-transform: scale(0.95);
         transform: scale(0.95);
    opacity: 1;
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
    opacity: 1;
  }
}
@keyframes cell-reveal {
  0% {
    -moz-transform: scale(1.4);
         transform: scale(1.4);
    opacity: 0;
  }
  60% {
    -moz-transform: scale(0.95);
         transform: scale(0.95);
    opacity: 1;
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
    opacity: 1;
  }
}
@-moz-keyframes cell-pulse {
  0%, 100% {
    outline-color: #e040fb;
  }
  50% {
    outline-color: rgba(224, 64, 251, 0.3);
  }
}
@keyframes cell-pulse {
  0%, 100% {
    outline-color: #e040fb;
  }
  50% {
    outline-color: rgba(224, 64, 251, 0.3);
  }
}
.resolver-page .resolver-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.88);
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
  z-index: 10000;
  display: -moz-box;
  display: flex;
  -moz-box-orient: vertical;
  -moz-box-direction: normal;
       flex-direction: column;
  -moz-box-align: center;
       align-items: center;
  -moz-box-pack: center;
       justify-content: center;
  opacity: 0;
  -moz-transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
}
.resolver-page .resolver-overlay.resolver-overlay-visible {
  opacity: 1;
  pointer-events: auto;
}
.resolver-page .resolver-overlay.resolver-overlay-visible .resolver-overlay-rank {
  -moz-animation: overlay-pop-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
       animation: overlay-pop-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
.resolver-page .resolver-overlay.resolver-overlay-visible .resolver-overlay-username {
  -moz-animation: overlay-fade-up 0.5s 0.15s ease both;
       animation: overlay-fade-up 0.5s 0.15s ease both;
}
.resolver-page .resolver-overlay.resolver-overlay-visible .resolver-overlay-name {
  -moz-animation: overlay-fade-up 0.5s 0.25s ease both;
       animation: overlay-fade-up 0.5s 0.25s ease both;
}
.resolver-page .resolver-overlay.resolver-overlay-visible .resolver-overlay-school {
  -moz-animation: overlay-fade-up 0.5s 0.35s ease both;
       animation: overlay-fade-up 0.5s 0.35s ease both;
}
.resolver-page .resolver-overlay .resolver-overlay-rank {
  font-size: 80px;
  font-weight: 900;
  background: -moz-linear-gradient(315deg, #ffd700, #ffaa00);
  background: linear-gradient(135deg, #ffd700, #ffaa00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 16px;
  letter-spacing: -2px;
}
.resolver-page .resolver-overlay .resolver-overlay-username {
  font-size: 32px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: 6px;
  letter-spacing: 0.5px;
}
.resolver-page .resolver-overlay .resolver-overlay-name {
  font-size: 52px;
  font-weight: 800;
  color: #fff;
  margin-bottom: 10px;
  letter-spacing: -0.5px;
}
.resolver-page .resolver-overlay .resolver-overlay-school {
  font-size: 26px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.6);
  letter-spacing: 0.3px;
}
@-moz-keyframes overlay-pop-in {
  0% {
    -moz-transform: scale(0.5);
         transform: scale(0.5);
    opacity: 0;
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
    opacity: 1;
  }
}
@keyframes overlay-pop-in {
  0% {
    -moz-transform: scale(0.5);
         transform: scale(0.5);
    opacity: 0;
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
    opacity: 1;
  }
}
@-moz-keyframes overlay-fade-up {
  0% {
    -moz-transform: translateY(20px);
         transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -moz-transform: translateY(0);
         transform: translateY(0);
    opacity: 1;
  }
}
@keyframes overlay-fade-up {
  0% {
    -moz-transform: translateY(20px);
         transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -moz-transform: translateY(0);
         transform: translateY(0);
    opacity: 1;
  }
}
.resolver-page:-webkit-full-screen {
  background: #fafafa;
  padding: 24px;
  overflow-y: auto;
}
.resolver-page:-moz-full-screen {
  background: #fafafa;
  padding: 24px;
  overflow-y: auto;
}
.resolver-page:-ms-fullscreen {
  background: #fafafa;
  padding: 24px;
  overflow-y: auto;
}
.resolver-page:fullscreen {
  background: #fafafa;
  padding: 24px;
  overflow-y: auto;
}
.resolver-page:-webkit-full-screen .resolver-controls {
  margin: 0 0 16px;
  border-radius: 12px;
  padding: 14px 20px;
}
.resolver-page:-moz-full-screen .resolver-controls {
  margin: 0 0 16px;
  border-radius: 12px;
  padding: 14px 20px;
}
.resolver-page:-ms-fullscreen .resolver-controls {
  margin: 0 0 16px;
  border-radius: 12px;
  padding: 14px 20px;
}
.resolver-page:fullscreen .resolver-controls {
  margin: 0 0 16px;
  border-radius: 12px;
  padding: 14px 20px;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3Nhc3NfcHJvY2Vzc2VkL3N0eWxlLmNzcyIsIi4uL3Jlc291cmNlcy9iYXNlLnNjc3MiLCIuLi9yZXNvdXJjZXMvdmFycy5zY3NzIiwiLi4vcmVzb3VyY2VzL3RhYmxlLnNjc3MiLCIuLi9yZXNvdXJjZXMvc3RhdHVzLnNjc3MiLCIuLi9yZXNvdXJjZXMvYmxvZy5zY3NzIiwiLi4vcmVzb3VyY2VzL3Byb2JsZW0uc2NzcyIsIi4uL3Jlc291cmNlcy9yYW5rcy5zY3NzIiwiLi4vcmVzb3VyY2VzL3VzZXJzLnNjc3MiLCIuLi9yZXNvdXJjZXMvY29udGVudC1kZXNjcmlwdGlvbi5zY3NzIiwiLi4vcmVzb3VyY2VzL3dpZGdldHMvc29ydGFibGVfZm9ybXNldC5zY3NzIiwiLi4vcmVzb3VyY2VzL3dpZGdldHMuc2NzcyIsIi4uL3Jlc291cmNlcy9jb21tZW50cy5zY3NzIiwiLi4vcmVzb3VyY2VzL3N1Ym1pc3Npb24uc2NzcyIsIi4uL3Jlc291cmNlcy9jb250ZXN0LnNjc3MiLCIuLi9yZXNvdXJjZXMvbWlzYy5zY3NzIiwiLi4vcmVzb3VyY2VzL2NoYXRib3guc2NzcyIsIi4uL3Jlc291cmNlcy9vcmdhbml6YXRpb24uc2NzcyIsIi4uL3Jlc291cmNlcy90aWNrZXQuc2NzcyIsIi4uL3Jlc291cmNlcy9wYWdlZG93bl93aWRnZXQuc2NzcyIsIi4uL3Jlc291cmNlcy9kbW1kLXByZXZpZXcuc2NzcyIsIi4uL3Jlc291cmNlcy9jb3Vyc2Uuc2NzcyIsIi4uL3Jlc291cmNlcy9hY3Rpb25iYXIuc2NzcyIsIi4uL3Jlc291cmNlcy9jb250ZXN0LXByb2JsZW1zZXQuc2NzcyIsIi4uL3Jlc291cmNlcy91c2VyX3VwbG9hZC5zY3NzIiwiLi4vcmVzb3VyY2VzL25vdGlmaWNhdGlvbi5zY3NzIiwiLi4vcmVzb3VyY2VzL3F1aXouc2NzcyIsIi4uL3Jlc291cmNlcy90aGVtZS1zZXR0aW5ncy5zY3NzIiwiLi4vcmVzb3VyY2VzL2NoYXRib3Quc2NzcyIsIi4uL3Jlc291cmNlcy9wYWNrYWdlX2ltcG9ydC5zY3NzIiwiLi4vcmVzb3VyY2VzL3JhbmtpbmctbGl2ZS5zY3NzIiwiLi4vcmVzb3VyY2VzL3Jlc29sdmVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDS2hCO0VBQ0ksZ0JBQUE7RUFDQSx1QkFBQTtBREhKO0FDV0E7RUFDSSxnQkFBQTtFQUNBLHVCQUFBO0FETEo7QUNRQTtFQUNJLGNBQUE7QUROSjtBQ1FJO0VBQ0ksY0FBQTtBRE5SO0FDU0k7RUFDSSxjQ3RCTztBRmVmOztBQ1dBO0VBQ0ksZUFBQTtBRFJKOztBQ2FBO0VBQ0ksd0NBQUE7QURWSjs7QUNhQTtFQUNJLHNCQUFBO0FEVko7O0FDY0E7RUFDSSwyR0FBQTtFQUFBLHNHQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSw4QkFBQTtFQUFBLHlCQUFBO0VBQ0Esd0JBQUE7RUFBQSxvQkFBQTtFQUNBLHNCQUFBO09BQUEsbUJBQUE7RUFDQSxVQUFBO0VBQ0EsNkNBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtBRFhKO0FDY0k7RUFDSSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsMkZBQUE7RUFBQSx1RkFBQTtFQUNBLCtCQUFBO0VBQUEsMEJBQUE7QURaUjtBQ2VJO0VBQ0ksb0pBQUE7RUFBQSwrSUFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLGdDQUFBO09BQUEsMkJBQUE7RUFDQSw2Q0FBQTtBRGJSO0FDZVE7RUFDSSxVQUFBO0FEYlo7QUNpQkk7RUFDSSw2QkFBQTtPQUFBLHdCQUFBO0VBQ0EsMkNBQUE7QURmUjtBQ2tCSTtFQUNJLGNBQUE7RUFDQSxZQUFBO0FEaEJSO0FDb0JJO0VBRUksMkVBQUE7RUFBQSxzRUFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSwrQkFB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O0VTbWRILGlCQUFBO0VBQ0Esa0JUdGJNO0VTdWJOLGtCQUFBO0FYbXBKUjs7QVcvb0pBO0VBQ0ksZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLGdCVHplYztFUzBlZCw4QkFBQTtBWGtwSko7QVdocEpJO0VBQ0ksWUFBQTtFQUNBLFVBQUE7QVhrcEpSO0FXaHBKUTtFQUNJLG9CQUFBO0FYa3BKWjs7QVc3b0pBO0VBQ0ksNkJUeGNtQjtFU3ljbkIsOEJUemNtQjtFUzBjbkIsb0JBQUE7RUFDQSxzQ0FBQTtBWGdwSko7O0FXN29KQTtFQUNJLHdCQUFBO0VBQUEsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsbUJUcGdCZTtFU3FnQmYsMEJBQUE7RUFDQSxhQUFBO0FYZ3BKSjs7QVc3b0pBO0VBQ0ksY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLFdUdGdCYztFU3VnQmQsZ0JBQUE7QVhncEpKOztBVzdvSkE7RUFDSSxnQkFBQTtBWGdwSko7O0FXN29KQTtFQUNJLHFCQUFBO0VBQ0EsVUFBQTtBWGdwSko7QVc5b0pJO0VBQ0ksa0JBQUE7RUFDQSxrQkFBQTtFQUNBLDZCQUFBO0VBQ0Esa0JUOWVNO0FGOG5LZDtBVzlvSlE7RUFDSSxjVHRiZTtFU3ViZix5QlR0YmE7RVN1YmIscUJUdGJpQjtBRnNrSzdCO0FXN29KUTtFQUNJLGNUeGJjO0VTeWJkLHlCVHhiWTtFU3liWixxQlR4YmdCO0FGdWtLNUI7QVc1b0pRO0VBQ0ksY1QxYmlCO0VTMmJqQix5QlQxYmU7RVMyYmYscUJUMWJtQjtBRndrSy9CO0FXM29KUTtFQUNJLGNUNWJpQjtFUzZiakIseUJUNWJlO0VTNmJmLHFCVDVibUI7QUZ5a0svQjtBVzFvSlE7RUFDSSxjVDliZTtFUytiZix5QlQ5YmE7RVMrYmIscUJUOWJpQjtBRjBrSzdCOztBV3ZvSkE7RUFDSSxzQkFBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGtCVHBoQlU7RVNxaEJWLGdCVG5jZTtBRjZrS25COztBV3ZvSkE7RUFDSSxtQkFBQTtFQUNBLDBCQUFBO0FYMG9KSjs7QVd2b0pBO0VBQ0ks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 */