.notification-menu {
  width: 360px;
  padding: 5px;
  background-color: #4d97ff;
  border-color: #4d97ff;
}
.notification-menu h5 {
  color: #ffffff;
  margin-left: 5px !important;
}
.notification-menu .ant-btn-link, .notification-menu .ant-btn-link:hover {
  color: #ffffff !important;
}
.notification-menu .ant-card-body {
  padding: 0;
  text-align: justify;
}
.notification-menu .ant-list-item {
  margin: 0;
  padding: 5px;
}
.notification-menu .ant-card {
  background: #e0ecff;
  width: 100%;
  padding: 8px;
  border-radius: 8px;
}
.notification-menu .ant-list {
  max-height: 400px;
  overflow-y: auto;
}
.online-time-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}
.online-time-modal .title {
  font-size: 18px;
  font-weight: bold;
  padding: 20px;
  color: #679047;
}
.online-time-modal .content {
  display: flex;
  gap: 20px;
  padding: 0 20px;
}
.online-time-modal .info {
  flex: 2;
  text-align: left;
}
.online-time-modal .info p {
  font-size: 13px;
}
.online-time-modal .video {
  height: 315px;
  flex: 3;
}

.modal-content {
  background: #fff;
  width: 100% !important;
  max-width: 900px;
  text-align: center;
}

.online-time-modal iframe {
  width: 100%;
  height: 315px;
  border: none;
  border-radius: 5px;
}

.close-btn {
  margin-bottom: 5px;
  padding: 10px 20px;
  background: gray;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

.close-btn:hover {
  background: #0056b3;
}

@media (max-width: 768px) {
  .content {
    flex-direction: column;
    align-items: center;
  }

  .info {
    width: 100%;
  }

  .video {
    width: 100%;
    margin-bottom: 20px;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
.button {
  display: inline-block;
  margin: 0.5em 0;
  border: 0;
  border-radius: 0.5rem;
  background-color: #4d97ff;
  cursor: pointer;
  padding: 1em 1.25em;
  color: white;
  font-size: 0.8rem;
  font-weight: bold;
  /* USER BUTTON STATES */
  /* DATA BUTTON STATES */
}
.button:focus {
  outline: none;
}
.button.white {
  background-color: white;
  color: #4d97ff;
}
.button.pass {
  background-color: #328554;
}
.button.fail {
  background-color: #ffab1a;
}
.button:disabled {
  box-shadow: none;
}
.button.large {
  border-radius: 0.25rem;
  font-size: 1rem;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  padding: 0.75rem 1.25rem 0.8125rem;
}
.button.icon-right img {
  height: 1.25rem;
  margin-bottom: -0.25rem;
  margin-left: 0.5rem;
  margin-right: -0.25rem;
}

.forms-close-button {
  padding: 0;
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  border-radius: 1rem;
  background-color: rgba(0, 0, 0, 0.1);
  cursor: pointer;
  width: 2rem;
  height: 2rem;
  text-align: center;
  line-height: 2rem;
}

.forms-close-button img {
  padding-top: 0.5rem;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.row label {
  font-weight: 500;
}

.input {
  transition: all 0.5s ease;
  margin-bottom: 0.75rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  background-color: #fafafa;
  padding: 0 1rem;
  height: 3rem;
  color: #575e75;
  font-size: 0.875rem;
  /* IE10/11-specific style resets */
}
.input:focus {
  transition: all 0.5s ease;
  outline: none;
  border: 1px solid #4d97ff;
}
.input.fail {
  border: 1px solid #ffab1a;
}
.input.pass {
  border: 1px solid #328554;
}
.input::-ms-reveal, .input::-ms-clear {
  display: none;
}
/*
 * Styles for the Row component used by formsy-react-components
 * Should be imported for each component that extends one of
 * the formsy-react-components
 */
.row .required-symbol {
  display: none;
}
.row label {
  display: inline-block;
  margin-bottom: 0.75rem;
}
.row.no-label label {
  display: none;
}

/* allow elements such as validation errors to position relative to this row */
.row-with-tooltip {
  position: relative;
}

.row-label {
  margin-bottom: 0.75rem;
  line-height: 1.7rem;
}

.row-inline {
  display: flex;
}

/* override margin-bottom so placing a label next to a radio button does not
mess up vertical alignment */
.row-inline label {
  margin-bottom: 0;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.dropdown {
  display: none;
  position: absolute;
  right: 0;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 0 0 5px 5px;
  background-color: #4d97ff;
  padding: 10px;
  min-width: 9rem;
  max-width: 16.25rem;
  overflow: visible;
  color: white;
  font-size: 0.8125rem;
  font-weight: normal;
}
.dropdown.staging {
  background-color: #ffab1a;
}
.dropdown.open {
  display: block;
}
.dropdown a:link, .dropdown a:visited, .dropdown a:active {
  background-color: transparent;
  color: white;
}
.dropdown input {
  margin-bottom: 12px;
  width: calc(100% - 30px);
}
.dropdown label {
  display: block;
  margin-bottom: 5px;
}
.dropdown > li {
  display: block;
  line-height: 30px;
}
.dropdown > li.divider {
  margin-top: 10px;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.dropdown > li a {
  display: block;
  padding: 0 10px;
}
.dropdown > li a:hover {
  background-color: rgba(0, 0, 0, 0.1);
  text-decoration: none;
}
.dropdown.with-arrow {
  margin-top: 14px;
  border-radius: 5px;
  overflow: visible;
}
.dropdown.with-arrow:before {
  display: block;
  position: absolute;
  top: -7px;
  right: 10%;
  transform: rotate(45deg);
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  background-color: #4d97ff;
  width: 14px;
  height: 14px;
  content: "";
}
.studio-status-icon-spinner {
  /* This class can be used on an icon that should spin.
  It first plays the intro animation, then spins forever. */
  animation-name: intro, spin;
  animation-duration: 0.25s, 1s;
  animation-timing-function: cubic-bezier(0.3, -3, 0.6, 3), cubic-bezier(0.4, 0.1, 0.4, 1);
  animation-delay: 0s, 0.25s;
  animation-iteration-count: 1, infinite;
  animation-direction: normal;
  width: 1.4rem;
  /* standard is 1.4 rem but can be overwritten by parent */
  height: 1.4rem;
  transform-origin: center;
}

@keyframes intro {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes spin {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(359deg);
  }
}
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.flex-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}
.flex-row.column {
  flex-direction: column;
  justify-content: center;
}
.flex-row.uneven {
  align-items: flex-start;
}
.flex-row.uneven .short {
  width: 13.75em;
}
.flex-row.uneven .long {
  width: 38.75em;
  text-align: left;
}
@media only screen and (max-width : 767px) {
  .flex-row {
    flex-direction: column;
  }
  .flex-row.uneven .short,
.flex-row.uneven .long {
    margin: auto;
    width: 90%;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
.login {
  padding: 10px;
  width: 200px;
  line-height: 1.5rem;
  white-space: normal;
  color: white;
  font-size: 0.8125rem;
}
.login .google-logo {
  display: flex;
  padding: 2px;
  align-content: center;
  background-color: #fff;
  border-radius: 50%;
}
.login .button {
  padding: 0.75em;
}
.login .input {
  margin-bottom: 12px;
  width: calc(100% - 30px);
  height: 2.25rem;
}
.login label {
  padding-top: 5px;
  font-weight: bold;
}
.login .spinner {
  margin: 0 0.8rem;
  width: 1rem;
  vertical-align: middle;
}
.login .submit-row {
  justify-content: space-between;
  flex-direction: row;
}
.login .submit-button {
  margin-top: 5px;
}
.login a {
  margin: auto 0;
  color: white;
}
.login a:link, .login a:visited, .login a:active {
  color: white;
}
.login a:hover {
  background-color: transparent;
}
.login .error {
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  background-color: #ffab1a;
  padding: 0.75em 1em;
}

/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.overflow-hidden {
  /* to avoid double scroll bars this
  gets added to body while modal is open */
  overflow: hidden;
}

.modal-content {
  position: relative;
  margin: 3.75rem auto;
  border-radius: 1rem;
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.15);
  background-color: white;
  padding: 0;
  width: 48.75rem;
}
.modal-content:focus {
  outline: none;
}
@media only screen and (max-width : 941px) {
  .modal-content {
    margin-top: 0;
    width: 100%;
    overflow: auto;
  }
}
@media only screen and (max-width : 479px), only screen and (max-height : 479px) {
  .modal-content {
    border-radius: 0;
    box-shadow: none;
    height: 100%;
  }
}

.modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 510;
  background-color: rgba(77, 151, 255, 0.7);
}

.modal-content-close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  border-radius: 1rem;
  background-color: rgba(0, 0, 0, 0.2);
  cursor: pointer;
  width: 2rem;
  height: 2rem;
  text-align: center;
  line-height: 2rem;
}

.modal-content-close-img {
  padding-top: 0.5rem;
}

/* Close button, Submit button, etc. */
.action-buttons {
  display: flex;
  margin: 1.125rem 0.8275rem 0.9375rem 0.8275rem;
  line-height: 1.5rem;
  justify-content: flex-end !important;
  align-items: flex-start;
  flex-wrap: nowrap;
}
@media only screen and (max-width : 941px) {
  .action-buttons {
    justify-content: center !important;
    flex-direction: row !important;
  }
}

/* setting overall modal to contain overflow looks good, but isn't
compatible with elements (like validation popups) that need to bleed
past modal boundary. This class can be used to force modal button
row to appear to contain overflow. */
.action-buttons-overflow-fix {
  margin-bottom: 0.9375rem;
}

/* For action button row where left/right margin is handled by parent element */
.action-buttons.action-buttons-no-inset {
  margin-left: 0;
  margin-right: 0;
}

.action-button {
  margin: 0 0 0 0.54625rem;
  border-radius: 0.25rem;
  padding: 6px 1.25rem 14px 1.25rem;
  height: 36px;
}

.action-button.close-button {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.action-button-text {
  display: flex;
}

.action-button.disabled {
  background-color: rgba(0, 0, 0, 0.2);
}

.error-text {
  display: block;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  background-color: #ffab1a;
  padding: 1rem;
  min-height: 1rem;
  overflow: visible;
  color: white;
}

.modal-sizes * {
  box-sizing: border-box;
}

.modal-sizes {
  margin: 100px auto;
  outline: none;
  padding: 0;
  max-width: 36.25rem;
  /* 580px; */
  user-select: none;
}
@media only screen and (min-width : 480px) and (max-width : 767px), only screen and (min-height : 480px) and (max-height : 767px) {
  .modal-sizes {
    margin: 40px auto;
  }
}
@media only screen and (max-width : 479px), only screen and (max-height : 479px) {
  .modal-sizes {
    margin: 0 auto;
    width: auto;
  }
}
.modal-sizes .modal-header {
  padding-top: 0.75rem;
  width: 100%;
  height: 3rem;
}
@media only screen and (max-width : 479px), only screen and (max-height : 479px) {
  .modal-sizes .modal-header {
    border-radius: 0;
  }
}
.modal-sizes .modal-content {
  font-size: 0.875rem;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
#navigation {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
  background-color: white;
  width: 100%;
  /* NOTE: Height should match offset settings in main.scss file */
  height: 50px;
}
#navigation.staging {
  background-color: #ffab1a;
}
.ie9 #navigation {
  display: table;
  table-layout: fixed;
}
#navigation .inner > ul {
  display: flex;
  margin: 0;
  padding: 0;
  height: 50px;
  list-style: none;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: flex-start;
}
.ie9 #navigation .inner > ul {
  display: table-row;
}
#navigation .inner > ul > li {
  display: inline-block;
  position: relative;
  float: left;
  margin: 0;
  height: 100%;
  align-self: flex-start;
}
#navigation .inner > ul > li.right {
  float: right;
  margin-left: auto;
  align-self: flex-end;
}
.ie9 #navigation .inner > ul > li.right {
  float: none;
}
#navigation .inner > ul > li.right a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.ie9 #navigation .inner > ul > li {
  display: table-cell;
  float: none;
  height: 50px;
  vertical-align: bottom;
}
#navigation .link > a {
  display: block;
  padding: 13px 15px 4px 15px;
  height: 33px;
  text-decoration: none;
  white-space: nowrap;
  color: #3b3b3b;
  font-size: 0.85rem;
  font-weight: bold;
}
#navigation .link > a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.ant-modal-wrap {
  top: 50px !important;
}

.ant-modal-mask {
  background-color: unset !important;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.account-nav .user-info {
  display: inline-block;
  padding: 14px 15px 4px 15px;
  max-width: 260px;
  height: 33px;
  overflow: hidden;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #3b3b3b;
  font-size: 0.8125rem;
  font-weight: bold;
}
.account-nav .user-info .avatar {
  margin-right: 10px;
  border-radius: 999px;
  width: 24px;
  height: 24px;
  vertical-align: middle;
}
.account-nav .user-info:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.account-nav .user-info.open {
  background-color: rgba(0, 0, 0, 0.1);
}
.account-nav .user-info:after {
  display: inline-block;
  margin-left: 8px;
  background-image: url("/images/dropdown.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50%;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  content: " ";
}
.account-nav .dropdown {
  top: 50px;
  padding: 0;
  padding-top: 5px;
  width: 100%;
  box-sizing: border-box;
  /* Links */
}
.account-nav .dropdown a {
  cursor: pointer;
  color: white;
  font-weight: bold;
}
.account-nav .dropdown a:link, .account-nav .dropdown a:visited, .account-nav .dropdown a:active {
  text-decoration: none;
  color: white;
}

@media only screen and (max-width : 479px) {
  .account-nav {
    margin-left: 0;
  }
  .account-nav .user-info .avatar {
    margin-right: 0;
  }
  .account-nav .user-info:after {
    display: none;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .account-nav {
    margin-left: 0;
  }
  .account-nav .user-info .avatar {
    margin-right: 0;
  }
  .account-nav .user-info:after {
    display: none;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  .account-nav {
    margin-left: 0;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
#navigation.staging .messages .message-count {
  display: none;
}
#navigation.staging .messages .message-count.show {
  background-color: #4d97ff;
}
#navigation .logo {
  margin-right: 10px;
}
#navigation .logo a {
  display: block;
  transition: 0.15s ease all;
  margin: 0 6px 0 0;
  border: 0;
  background-image: url("/images/KDI-logo-text-blue.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 95%;
  width: 81px;
  height: 50px;
}
#navigation .logo a:hover {
  transition: 0.15s ease all;
  background-size: 100%;
}
#navigation .inner > ul > li.signup-item a {
  text-transform: uppercase;
}
#navigation .inner > ul > li.search {
  margin: 0 20px;
  border-right: 0;
  color: white;
  flex-grow: 3;
  visibility: hidden;
}
.ie9 #navigation .inner > ul > li.search {
  width: 100%;
}
#navigation .inner > ul > li.search .form {
  margin: 0;
}
#navigation .inner > ul > li.search .row .help-block {
  display: none;
}
#navigation .inner > ul > li.search .input,
#navigation .inner > ul > li.search .button {
  display: inline-block;
  margin-top: 5px;
  outline: none;
  border: 0;
  background-color: rgba(0, 0, 0, 0.1);
  height: 14px;
}
#navigation .inner > ul > li.search .input[type=text],
#navigation .inner > ul > li.search .button[type=text] {
  transition: 0.15s ease background-color;
  padding: 0;
  padding-right: 10px;
  padding-left: 40px;
  width: calc(100% - 50px);
  height: 40px;
  color: white;
  font-size: 0.85em;
}
#navigation .inner > ul > li.search .input[type=text]::placeholder,
#navigation .inner > ul > li.search .button[type=text]::placeholder {
  color: rgba(255, 255, 255, 0.75);
}
#navigation .inner > ul > li.search .input[type=text]:focus,
#navigation .inner > ul > li.search .button[type=text]:focus {
  transition: 0.15s ease background-color;
  background-color: rgba(0, 0, 0, 0.2);
}
.ie9 #navigation .inner > ul > li.search .input[type=text],
.ie9 #navigation .inner > ul > li.search .button[type=text] {
  width: 70px;
}
#navigation .inner > ul > li.search .btn-search {
  position: absolute;
  box-shadow: none;
  background-color: transparent;
  background-image: url("/images/nav-search-glass.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 14px 14px;
  width: 40px;
  height: 40px;
}
#navigation .inner > ul > li.search .btn-search:hover {
  box-shadow: none;
}
#navigation .messages > a,
#navigation .mystuff > a {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 45%;
  padding-right: 10px;
  padding-left: 10px;
  width: 30px;
  overflow: hidden;
  text-indent: 50px;
  white-space: nowrap;
}
#navigation .messages > a:hover,
#navigation .mystuff > a:hover {
  background-size: 50%;
}
#navigation .messages > a {
  background-image: url("/images/nav-notifications.png");
  visibility: hidden;
}
#navigation .messages .message-count {
  display: none;
}
#navigation .messages .message-count.show {
  display: block;
  position: absolute;
  top: 0.5rem;
  right: 0.25rem;
  border-radius: 1rem;
  background-color: #ffab1a;
  padding: 0 0.25rem;
  text-indent: 0;
  line-height: 1rem;
  color: white;
  font-size: 0.7rem;
  font-weight: bold;
}
#navigation .mystuff > a {
  background-image: url("/images/mystuff.png");
}

@media only screen and (max-width : 479px) {
  #navigation .inner {
    width: 18.75em;
  }
  #navigation .inner > ul > li.login-item {
    margin-left: 0;
  }
  #navigation .inner .create,
#navigation .inner .discuss,
#navigation .inner .explore,
#navigation .inner .search,
#navigation .inner .help,
#navigation .inner .mystuff,
#navigation .inner .profile-name {
    display: none;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #navigation .inner {
    width: 28.75em;
  }
  #navigation .inner > ul > li.login-item {
    margin-left: 0;
  }
  #navigation .inner .discuss,
#navigation .inner .explore,
#navigation .inner .search,
#navigation .inner .mystuff,
#navigation .inner .profile-name {
    display: none;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #navigation .inner {
    width: 38.75em;
  }
  #navigation .inner > ul > li.login-item {
    margin-left: 0;
  }
  #navigation .inner .explore,
#navigation .inner .search,
#navigation .inner .mystuff {
    display: none;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
#footer {
  display: block;
  background-color: #f2f2f2;
  color: #575e75;
  font-size: 0.85rem;
}
#footer .inner {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.select label {
  font-weight: 500;
}
.select select {
  transition: border 0.5s ease;
  margin-bottom: 0.75rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  background: #fafafa url("/svgs/forms/caret.svg") no-repeat right center;
  padding-right: 4rem;
  padding-left: 1rem;
  width: 100%;
  height: 3rem;
  color: #575e75;
  font-size: 0.875rem;
  appearance: none;
  -webkit-appearance: none;
  /* added to fix dropdown appearance on safari */
}
.select select::-ms-expand {
  display: none;
}
.select select::-ms-value {
  background-color: inherit;
  padding-left: 1rem;
  color: inherit;
}
.select select:focus {
  outline: none;
  border: 1px solid #4d97ff;
}
.select select:-moz-focusring {
  text-shadow: 0 0 0 #575e75;
  color: transparent;
}
.select select:focus, .select select:hover {
  background: #fafafa url("/svgs/forms/caret-hover.svg") no-repeat right center;
}
.select select > option {
  background-color: white;
  width: 100%;
}
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.language-chooser .select select {
  width: 13.75rem;
  /* 3 columns */
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
#footer .footer {
  background-color: #4d97ff;
  color: #ffffff;
  position: relative;
  width: 100% !important;
  margin-left: auto;
  margin-right: auto;
}
#footer .footer a {
  color: #ffffff !important;
  text-decoration: none !important;
}
#footer .footer a:hover {
  text-decoration: underline !important;
}
#footer .footer > .container {
  padding-top: 40px;
  padding-left: 0;
  padding-right: 0;
  max-width: 100%;
}
#footer .hr-footer {
  position: absolute;
  bottom: 50px;
  width: 100%;
  max-width: 100%;
  margin: 0;
  left: 0;
  border: 0;
  border-top: 1px solid #ffffff;
}
#footer .copy-right {
  padding-bottom: 15px;
  padding-top: 60px;
  margin: 0;
  text-align: center;
}
#footer .social-icon {
  margin-right: 20px;
}
#footer .social-icon img {
  height: 40px;
  margin-bottom: 20px;
}
#footer .footer a {
  color: #ffffff;
}
#footer .credit img {
  width: 190px;
}
#footer .language-chooser {
  text-align: center;
}
@media only screen and (min-width: 1200px) {
  #footer .footer > .container {
    max-width: 1204px !important;
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}
@media only screen and (max-width: 575px) {
  #footer .hr-footer {
    bottom: 100px;
  }
}
#footer .container {
  margin-right: auto;
  margin-left: auto;
}
#footer .row {
  display: flex;
}
#footer .col-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}
#footer .col-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}
@media (max-width: 850px) {
  #footer .row {
    flex-direction: column;
  }
  #footer .center {
    margin: 0 auto;
  }
}
#footer .logo {
  width: 200px;
}
#footer .font {
  font-family: "Lucida Console", Monaco, monospace;
  font-size: 25px;
  color: #ff9276;
  font-weight: 700;
  text-decoration: none;
  font-style: italic;
  font-variant: normal;
  text-transform: uppercase;
  margin-top: 0px;
  margin-bottom: 0px;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
#donor {
  color: #575e75;
  font-size: 0.875rem;
  line-height: 1.5em;
  background-color: #f2f2f2;
  padding-bottom: 2.5rem;
  padding-top: 1rem;
}
#donor #donor-text {
  text-align: center;
  width: 58.75em;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) and (max-width: 942px) {
  #donor #donor-text {
    width: 53.75em;
  }
}
@media only screen and (min-width: 480px) and (max-width: 768px) {
  #donor #donor-text {
    width: 28.75em;
  }
}
@media only screen and (max-width: 480px) {
  #donor #donor-text {
    width: 18.75em;
  }
}
.crash-container {
  /* UI Primary Colors */
  /* #FF661A */
  /* UI Secondary Colors */
  /* 3.0 colors */
  /* Using www naming convention for now, should be consistent with gui */
  /* #CF63CF Sounds Primary */
  /* modals */
  /* Overlay UI Gray Colors */
  /* Typography Colors */
  /* Down Deep */
  /* #0FBD8C */
  /*
      Frameless           <http://framelessgrid.com/>
      by Joni Korpi       <http://jonikorpi.com/>
      licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
  */
  /* Media Queries */
  /* Width */
  /*
  * ... small | medium     | intermediate | big ...
  * ... medium-and-smaller |
  *          ... intermediate-and-smaller |
  */
  /* Height */
  margin: 3rem auto;
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  background-color: #fcfcfc;
  width: 60%;
  overflow: hidden;
  text-align: center;
}
@media only screen and (max-width : 479px) {
  .crash-container #view {
    text-align: center;
  }
  .crash-container .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .crash-container #view {
    text-align: center;
  }
  .crash-container .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  .crash-container #view {
    text-align: center;
  }
  .crash-container .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .crash-container .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.crash-container img {
  width: 100%;
}
.crash-container .crash-message {
  margin: 2rem;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.box {
  display: inline-block;
  border: 1px solid #d9d9d9;
  border-radius: 10px 10px 0 0;
  background-color: white;
  width: 100%;
}
@media only screen and (max-width : 479px) {
  .box {
    width: 18.75em;
  }
  .box .box-header h4,
.box .box-header h5 {
    line-height: 0.9rem;
    font-size: 0.9rem;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .box {
    width: 28.75em;
  }
  .box .box-header h4,
.box .box-header h5 {
    line-height: 1rem;
    font-size: 1rem;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  .box {
    width: 38.75em;
  }
  .box .box-header h4,
.box .box-header h5 {
    line-height: 1.1rem;
    font-size: 1.1rem;
  }
}
@media only screen and (min-width : 942px) {
  .box {
    width: 58.75em;
  }
  .box .box-header h4,
.box .box-header h5 {
    line-height: 1.1rem;
    font-size: 1.1rem;
  }
}
.box .box-header {
  display: block;
  clear: both;
  margin: 0;
  border-top: 1px solid white;
  border-bottom: 1px solid #d9d9d9;
  border-radius: 10px 10px 0 0;
  background-color: #f2f2f2;
  padding: 8px 20px;
  height: 20px;
  overflow: hidden;
}
.box .box-header h4,
.box .box-header h5 {
  display: inline-block;
  float: left;
}
.box .box-header h5 {
  margin: 0;
  padding-left: 5px;
  text-transform: none;
  letter-spacing: normal;
  font-weight: normal;
}
.box .box-header p {
  display: inline-block;
  float: right;
  margin: 1px 0 0 0;
  padding: 0;
  font-size: 0.85rem;
}
.box .box-content {
  display: block;
  clear: both;
  background-color: white;
  padding: 8px 20px;
}
.box .empty {
  margin-top: 20px;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
.banner {
  position: sticky;
  top: 50px;
  z-index: 9;
  box-shadow: 0 1px 1px #b3b3b3;
  background-color: #ffab1a;
  width: 100%;
  overflow: hidden;
  text-align: center;
  line-height: 50px;
}
.banner,
.banner a {
  color: white;
}
.banner a {
  text-decoration: underline;
}
.banner .close {
  float: right;
  margin-top: 12.5px;
  border-radius: 12.5px;
  background-color: rgba(0, 0, 0, 0.25);
  width: 25px;
  height: 25px;
  text-decoration: none;
  text-shadow: none;
  line-height: 25px;
  color: white;
  font-weight: normal;
}
.banner.warning {
  background-color: #ffab1a;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.email-confirmation-modal {
  border-radius: 4px;
  overflow: hidden;
  max-width: 500px;
}
.email-confirmation-modal h1 {
  font-size: 2rem;
  line-height: 2.5rem;
}
.email-confirmation-modal .modal-content-close {
  top: 5px;
  right: 5px;
}
.email-confirmation-modal .modal-main-content {
  display: flex;
}
.email-confirmation-modal .modal-text-content {
  margin-top: 30px;
  margin-bottom: 30px;
  margin-right: 20px;
  margin-left: 20px;
}
.email-confirmation-modal .modal-image {
  margin-left: -70px;
}
.email-confirmation-modal .top-close-bar {
  height: 44px;
  background-color: #0EBD8C;
}
.email-confirmation-modal .guide-footer {
  text-align: center;
  border-top: 1px solid rgba(77, 151, 255, 0.15);
  padding: 20px;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.video-player {
  border: 0.25rem solid rgba(0, 0, 0, 0.15);
  border-radius: 0.75rem;
  height: 225px;
  overflow: hidden;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.title-banner {
  transition: background-image 0.5s ease, background-color 0.5s ease;
  margin-bottom: 40px;
  background-color: #328554;
  background-position: center;
  background-size: cover;
  padding: 20px 0;
  width: 100%;
}

.title-banner-h1,
.title-banner-p {
  margin: 0 auto;
  padding: 5px 0;
  text-align: center;
  color: white;
}

.title-banner-p {
  max-width: 500px;
}

.title-banner-strong {
  font-weight: 700;
}

.title-banner.mod-blue-bg {
  background-color: #4d97ff;
}
.title-banner.mod-blue-bg a {
  color: white;
}
.title-banner.mod-blue-bg a.mod-underline {
  text-decoration: underline;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.intro-banner {
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 0;
  justify-content: space-between;
  background-color: white;
  /* flex: column */
}
.intro-banner .intro-container {
  min-height: 24rem;
  justify-content: space-between;
  background-color: #4d97ff;
  background-size: 624px 325px;
  background-repeat: no-repeat;
  background-position: right;
  background-image: url("/svgs/intro/background-cropped.svg");
}
.intro-banner .intro-content {
  flex: 1;
  justify-content: center;
  align-items: flex-start;
  margin-left: 5%;
  min-height: 20rem;
}
.intro-banner .intro-video-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 29rem;
}
.intro-banner .intro-video-container .intro-video {
  margin-right: 4rem;
}
.intro-banner .intro-video-container .video-image {
  position: relative;
  cursor: pointer;
  margin-right: 4rem;
}
.intro-banner .intro-video-container .video-image .watch-button {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.15);
  color: white;
  padding: 0.625rem 0.75rem;
  font-size: 1rem;
}
.intro-banner .intro-video-container:after {
  display: block;
  position: absolute;
  bottom: 0.75rem;
  right: 10%;
  background-image: url("/svgs/intro/hat-block.svg");
  background-repeat: no-repeat;
  width: 122px;
  height: 81px;
  content: "";
}
.intro-banner .intro-header {
  margin-bottom: 0.75rem;
  font-size: 2rem;
  color: white;
  line-height: 1.5em;
}
.intro-banner .intro-button {
  border-radius: 4px;
  background-color: white;
  color: #4d97ff;
  padding: 0.625rem 0.75rem;
  font-size: 1rem;
  margin-right: 0.75rem;
}
.intro-banner .intro-button.create-button:before {
  display: inline-block;
  margin-right: 0.5rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  background-image: url("/svgs/intro/create.svg");
  width: 1.5rem;
  height: 1.5rem;
  vertical-align: -0.35rem;
  content: "";
}
.intro-banner .intro-button.join-button:before {
  display: inline-block;
  margin-right: 0.5rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  background-image: url("/svgs/intro/join.svg");
  width: 1.5rem;
  height: 1.5rem;
  vertical-align: -0.35rem;
  content: "";
}
.intro-banner .intro-subnav {
  justify-content: center;
  background-color: rgba(77, 151, 255, 0.1);
}
.intro-banner .intro-subnav .subnav-button {
  margin: 0.625rem 0.5rem;
  padding: 0.5rem 1.5rem;
  border-radius: 1.5rem;
}

@media only screen and (min-width: 900px) and (max-width: 1023px) {
  .intro-banner .intro-header {
    max-width: 22rem;
    text-align: left;
  }
}
@media only screen and (min-width: 480px) and (max-width: 899px) {
  .intro-banner {
    justify-content: flex-start;
  }
  .intro-banner .intro-header {
    margin-top: 1.75rem;
    font-size: 1.5rem;
  }
  .intro-banner .intro-container {
    flex-direction: column;
    background-position: bottom 32px right 50%;
    background-size: 40rem;
    background-image: url("/svgs/intro/background.svg");
  }
  .intro-banner .intro-container .intro-content {
    align-items: center;
    min-height: 8rem;
    margin: 0;
  }
  .intro-banner .intro-video-container {
    flex: 0 0 24rem;
  }
  .intro-banner .intro-video-container .video-image,
.intro-banner .intro-video-container .video-player {
    margin: 0;
  }
  .intro-banner .intro-video-container:after {
    display: none;
  }
}
@media only screen and (max-width : 767px) {
  .intro-buttons,
.intro-subnav {
    flex-direction: row;
  }
}
@media only screen and (max-width: 479px) {
  .intro-banner .intro-container {
    background-image: none;
  }
  .intro-banner .intro-container .intro-content.column {
    margin: auto 5%;
    align-items: center;
  }
  .intro-banner .intro-container .intro-header {
    font-size: 1.5rem;
  }
  .intro-banner .intro-container .intro-video-container {
    display: none;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
.thumbnail {
  /* Links */
}
.thumbnail a {
  cursor: pointer;
  color: #4d97ff;
  font-weight: bold;
}
.thumbnail a:link, .thumbnail a:visited, .thumbnail a:active {
  text-decoration: none;
  color: #4d97ff;
}
.thumbnail a:hover {
  text-decoration: none;
  color: #4280d7;
}
.thumbnail .thumbnail-image {
  display: block;
}
.thumbnail .thumbnail-image img {
  margin-bottom: 2px;
  border: 1px solid #d9d9d9;
}
.thumbnail .thumbnail-title,
.thumbnail .thumbnail-creator, .thumbnail .thumbnail-loves, .thumbnail .thumbnail-favorites, .thumbnail .thumbnail-remixes, .thumbnail .thumbnail-views {
  line-height: 1.2em;
  white-space: nowrap;
  word-wrap: break-word;
}
.thumbnail .thumbnail-title {
  margin-bottom: 1px;
  font-size: 0.923em;
  font-weight: 800;
}
.thumbnail .thumbnail-title a {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.thumbnail .thumbnail-creator, .thumbnail .thumbnail-loves, .thumbnail .thumbnail-favorites, .thumbnail .thumbnail-remixes, .thumbnail .thumbnail-views {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  color: #575e75;
  font-size: 0.8462em;
}
.thumbnail .thumbnail-creator a, .thumbnail .thumbnail-loves a, .thumbnail .thumbnail-favorites a, .thumbnail .thumbnail-remixes a, .thumbnail .thumbnail-views a {
  display: inline;
}
.thumbnail .thumbnail-loves,
.thumbnail .thumbnail-favorites,
.thumbnail .thumbnail-remixes,
.thumbnail .thumbnail-views {
  display: inline;
  margin-right: 10px;
}
.thumbnail .thumbnail-loves:before,
.thumbnail .thumbnail-favorites:before,
.thumbnail .thumbnail-remixes:before,
.thumbnail .thumbnail-views:before {
  display: inline-block;
  margin-right: 0.1rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  width: 0.93rem;
  height: 0.93rem;
  vertical-align: text-top;
  content: "";
}
.thumbnail .thumbnail-loves:before {
  background-image: url("/svgs/love/love_type-gray.svg");
}
.thumbnail .thumbnail-favorites:before {
  background-image: url("/svgs/favorite/favorite_type-gray.svg");
}
.thumbnail .thumbnail-remixes:before {
  background-image: url("/svgs/remix/remix_type-gray.svg");
}
.thumbnail .thumbnail-views:before {
  background-image: url("/svgs/view/view_type-gray.svg");
}
.thumbnail.project {
  width: 144px;
}
.thumbnail.project .thumbnail-image img {
  width: 144px;
  height: 108px;
}
.thumbnail.gallery {
  width: 170px;
}
.thumbnail.gallery img {
  width: 170px;
  height: 100px;
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}
@charset "UTF-8";
/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "←";
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "→";
}
[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
.carousel {
  margin-bottom: 0;
  padding: 12px 45px;
  /* Links */
}
.box-content .carousel {
  padding: 12px 25px;
}
.carousel .slick-next,
.carousel .slick-prev {
  margin-top: -20px;
  width: 40px;
  height: 40px;
}
.carousel .slick-next:before,
.carousel .slick-prev:before {
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 70%;
  width: 40px;
  height: 40px;
  font-size: 40px;
  content: "";
}
.carousel .slick-next.slick-disabled:before,
.carousel .slick-prev.slick-disabled:before {
  opacity: 1;
}
.carousel .slick-prev {
  left: 0;
}
.carousel .slick-prev:before {
  background-image: url("/svgs/carousel/prev_ui-dark-gray.svg");
}
.carousel .slick-prev:before:hover {
  background-image: url("/svgs/carousel/prev_ui-blue.svg");
  background-size: 90%;
}
.box-content .carousel .slick-prev {
  left: -20px;
}
.carousel .slick-next {
  right: 0;
}
.carousel .slick-next:before {
  background-image: url("/svgs/carousel/next_ui-dark-gray.svg");
}
.carousel .slick-next:before:hover {
  background-image: url("/svgs/carousel/next_ui-blue.svg");
  background-size: 90%;
}
.box-content .carousel .slick-next {
  right: -20px;
}
.carousel .slick-slide {
  padding-right: 30px;
}
.carousel a {
  cursor: pointer;
  color: #4d97ff;
  font-weight: bold;
}
.carousel a:link, .carousel a:visited, .carousel a:active {
  text-decoration: none;
  color: #4d97ff;
}
.carousel a:hover {
  text-decoration: none;
  color: #4280d7;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.social-message {
  margin: 0;
  border-bottom: 1px solid #d9d9d9;
  padding: 1rem;
  list-style-type: none;
}

.social-message-icon {
  opacity: 0.25;
}

.social-message.mod-unread {
  background-color: rgba(77, 151, 255, 0.1);
}

.social-message.mod-unread .social-message-icon {
  opacity: 1;
}

.flex-row.mod-social-message {
  justify-content: space-between;
  align-items: flex-start;
}

.social-message-content {
  display: flex;
  max-width: 38.75rem;
  text-align: left;
  align-items: flex-start;
}

.social-message-icon {
  margin: 0.2rem 1rem 0 0;
  min-width: 1.25rem;
}

a.social-messages-profile-link {
  color: #575e75;
}
a.social-messages-profile-link:hover {
  color: #4d97ff;
}

.flex-row.mod-comment-message {
  justify-content: flex-start;
}

.comment-text {
  margin-left: 1.5rem;
}

@media only screen and (max-width : 479px) {
  .social-message {
    text-align: left;
  }

  .social-message-date {
    align-self: flex-end;
  }

  .social-message-content {
    max-width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .social-message {
    text-align: left;
  }

  .social-message-date {
    align-self: flex-end;
  }

  .social-message-content {
    max-width: 100%;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
.hoc-banner {
  display: flex;
  position: relative;
  background-color: #328554;
  background-image: url("/images/hoc/bg-pattern.png");
  background-size: cover;
  padding: 0;
  height: 25rem;
  overflow: hidden;
  justify-content: center;
}
.hoc-banner.mod-middle-banner {
  background-color: #cf63cf;
}
.hoc-banner .hoc-container {
  margin: auto;
  width: 942px;
  height: 25rem;
  justify-content: flex-start;
}
.hoc-banner .hoc-container .hoc-title-container {
  margin: 1.5rem 0;
  width: 100%;
  justify-content: space-between;
}
.hoc-banner .hoc-banner-images {
  display: flex;
  width: 942px;
  justify-content: space-between;
}
.hoc-banner .hoc-banner-image {
  border: 2px solid #328554;
  border-radius: 16px;
  background-color: white;
  width: 18.75em;
  height: 244px;
  overflow: hidden;
  box-sizing: border-box;
  justify-content: flex-start;
}
.hoc-banner .hoc-banner-image.mod-middle-image {
  border: 2px solid #cf63cf;
}
.hoc-banner .hoc-banner-image img {
  width: 18.75em;
  height: 10.3749999938em;
  /* images are 600 x 332 for retina */
  object-fit: cover;
}
.hoc-banner .hoc-banner-image .hoc-image-text {
  margin: auto auto;
  color: #4d97ff;
  font-size: 1rem;
  font-weight: bold;
}
.hoc-banner .hoc-header {
  color: white;
}
.hoc-banner .hoc-header {
  font-size: 2rem;
}
.hoc-banner .hoc-more-activities {
  border-radius: 10px;
  background-color: white;
  padding: 0.5rem 1rem 0.75rem 1rem;
  color: #4d97ff;
  font-size: 0.75rem;
  font-weight: bold;
}
.hoc-banner .hoc-more-activities img {
  margin-right: 0.25rem;
  width: 20px;
  height: 20px;
  vertical-align: text-bottom;
}

@media only screen and (min-width: 768px) and (max-width: 942px) {
  .hoc-banner {
    height: 23.5rem;
  }
  .hoc-banner .hoc-container {
    bottom: 4rem;
    width: 38.75em;
  }
  .hoc-banner .hoc-banner-images {
    width: 38.75em;
  }
  .hoc-banner .hoc-banner-image {
    width: 18.75em;
  }

  .hoc-hideable {
    display: none;
  }
}
.ranking-table {
  margin-top: 30px !important;
  display: none;
}
.ranking-table .box {
  background: #00295f;
  position: relative;
  border: 3px solid #194d95;
}
.ranking-table .header {
  position: absolute;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #ffffff;
  color: #194d95;
  font-size: 36px;
  font-weight: bold;
  padding: 5px 20px;
  border: 3px solid #194d95;
  border-radius: 10px;
  text-align: center;
}
.ranking-table .ant-list {
  margin-top: 40px;
}
.ranking-table .ant-list-items {
  margin: 20px;
}
.ranking-table .ant-list-item {
  display: block;
  color: #ffffff;
  background: #194d95;
  border-radius: 10px;
  padding-top: 3px;
  padding-bottom: 3px;
  margin: 6px auto;
  height: 60px;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.ranking-table .ant-list-item .ant-row {
  height: 100%;
}
.ranking-table .ant-list-item:hover {
  background: rgba(132, 167, 178, 0.04);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  cursor: pointer;
}
.ranking-table .rank-number,
.ranking-table .username,
.ranking-table .level-name,
.ranking-table .progress,
.ranking-table .user-point {
  color: #ffffff !important;
}
.ranking-table .rank-container {
  text-align: center;
}
.ranking-table .rank-number {
  font-size: 26px;
  font-weight: bold;
}
.ranking-table .rank-icon {
  width: auto;
  height: 54px;
}
.ranking-table .info {
  row-gap: 0;
  margin-left: 40px !important;
}
.ranking-table .info .username {
  font-size: 18px;
}
.ranking-table .info .level-name {
  font-size: 10px;
  line-height: 10px;
}
.ranking-table .info .progress {
  line-height: 5px;
}
.ranking-table .info .ant-space-item:last-child {
  line-height: 5px;
}
.ranking-table .user-point {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}
.ranking-table .badge-item {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 3px solid #f8a931;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}
.ranking-table .badge-item img {
  width: 30px;
  height: 30px;
}
.ranking-table .load-more {
  text-align: center;
  margin: 20px auto;
}
.ranking-table .load-more button {
  background: #f8a931;
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
  width: 160px;
  padding: 18px;
}
.ranking-table .load-more button:hover {
  color: #ffffff !important;
  background: #f8a931 !important;
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
#view {
  padding: 0;
}

.inner.mod-splash {
  margin-top: 20px;
}

.splash .splash-header {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.ie9 .splash .splash-header {
  display: table;
  margin: 0 -20px 20px -20px;
  min-width: 100%;
  border-spacing: 20px 0;
}
.splash .splash-header .box {
  display: inline-block;
  width: calc(60% - 20px);
}
.ie9 .splash .splash-header .box {
  display: table-cell;
  vertical-align: top;
}
.splash .splash-header .news {
  width: 40%;
}
.splash .splash-header .news img {
  flex-shrink: 0;
}
.splash .box {
  margin-bottom: 20px;
}

.splash-admin-panel dl {
  list-style: none;
}
.splash-admin-panel dl dt {
  margin: 2rem 0 1rem 0;
  border-bottom: 1px solid #b3b3b3;
  font-size: large;
  font-weight: 700;
}
.splash-admin-panel dl dd {
  margin-left: 0;
}
.splash-admin-panel ul {
  padding: 0;
}
.splash-admin-panel ul li {
  margin: 0;
  list-style: none;
}

.modal-content.mod-confirmation {
  width: 31.25rem;
}

.modal-content-iframe.mod-confirmation {
  border-radius: 1rem;
  width: 31.25rem;
  min-height: 20.625rem;
}

.activity-ul {
  margin: 0;
  padding: 0;
}

.activity-li {
  display: flex;
  margin: 0.75rem 0;
  list-style: none;
  align-items: center;
}

.flex-row.mod-social-message {
  line-height: 1.25rem;
  flex-direction: column;
}

.social-message {
  border: 0;
  padding: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.activity-img {
  padding-right: 0.825rem;
  width: 2rem;
  height: 2rem;
  vertical-align: middle;
}

.social-message-content {
  font-size: 0.9rem;
}

.social-message-date {
  color: #b3b3b3;
  font-size: 0.65rem;
}

@media only screen and (max-width : 479px) {
  .splash .splash-header {
    flex-wrap: wrap;
    justify-content: center;
  }
  .splash .splash-header .box {
    width: 18.75em;
  }

  .modal-content.mod-confirmation {
    width: 100%;
    overflow: scroll;
  }

  .modal-content-iframe.mod-confirmation {
    border-radius: 0;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .splash .splash-header {
    flex-wrap: wrap;
    justify-content: center;
  }
  .splash .splash-header .box {
    width: 28.75em;
  }

  .modal-content.mod-confirmation {
    width: 100%;
    overflow: scroll;
  }

  .modal-content-iframe.mod-confirmation {
    border-radius: 0;
    width: 639px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  .splash .splash-header {
    margin: 0 auto;
    width: 38.75em;
  }
}
/* UI Primary Colors */
/* #FF661A */
/* UI Secondary Colors */
/* 3.0 colors */
/* Using www naming convention for now, should be consistent with gui */
/* #CF63CF Sounds Primary */
/* modals */
/* Overlay UI Gray Colors */
/* Typography Colors */
/* Down Deep */
/* #0FBD8C */
/*
    Frameless           <http://framelessgrid.com/>
    by Joni Korpi       <http://jonikorpi.com/>
    licensed under CC0  <http://creativecommons.org/publicdomain/zero/1.0/>
*/
/* Media Queries */
/* Width */
/*
* ... small | medium     | intermediate | big ...
* ... medium-and-smaller |
*          ... intermediate-and-smaller |
*/
/* Height */
@media only screen and (max-width : 479px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 100%;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 480px;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  #view {
    text-align: center;
  }

  .inner {
    margin: 0 auto;
    width: 768px;
  }
}
@media only screen and (min-width : 942px) {
  .inner {
    margin: 0 auto;
    width: 942px;
  }
}
#view {
  background-color: #f2f2f2;
  padding: 0;
}

.outer {
  /* HACK: sort controls are terrible. There's some sort of magic formula for height of formsy components that I can't control. */
}
.outer .title-banner.masthead {
  margin-bottom: 0;
  background-color: #4d97ff;
  padding: 0;
}
.outer .title-banner.masthead h1 {
  text-align: center;
  color: white;
  font-size: 3rem;
}
.outer .title-banner.masthead p {
  margin: 0;
  width: 28.75em;
  text-align: left;
  color: white;
}
.outer .title-banner.masthead p a {
  border-bottom: 1px solid white;
  color: white;
}
.outer .left-pusher {
  margin-right: auto;
  width: 8.75rem;
}
.outer .tabs {
  width: 58.75rem;
}
.outer .sort-controls {
  display: flex;
  margin: 0 auto;
  border-bottom: 1px solid #d9d9d9;
  padding: 8px 0;
  width: 58.75rem;
  justify-content: space-between;
}
.outer .sort-mode {
  margin-top: -4px;
  width: 13.75rem;
}
.outer .sort-mode .select select {
  margin-bottom: 0;
  border: 0;
  background-color: transparent;
  height: 32px;
  color: #575e75;
}
.outer .sort-mode .select select:focus, .outer .sort-mode .select select:active {
  background-color: transparent;
}
.outer .sort-mode .select .help-block {
  display: none;
}
.outer .categories {
  justify-content: flex-start;
}
.outer .categories li {
  border: 1px solid #3b3b3b;
  background-color: rgba(0, 0, 0, 0.1);
  color: #575e75;
}
.outer .categories li.active {
  opacity: 1;
  background-color: #328554;
  color: white;
}
.outer .categories li:active {
  padding: 0.75em 1.5em;
}
.outer .categories li:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #3b3b3b;
}

#projectBox {
  background-color: #f2f2f2;
  padding-top: 16px;
  padding-bottom: 32px;
  width: 100%;
  overflow-anchor: none;
}
#projectBox .button {
  display: block;
  margin: 0 auto;
  width: 50%;
}

@media only screen and (max-width : 479px) {
  .outer .tabs {
    width: 18.75em;
  }
  .outer .sort-controls {
    width: 18.75em;
  }
  .outer #projectBox .button {
    width: 18.75em;
  }
}
@media only screen and (min-width : 480px) and (max-width : 767px) {
  .outer .tabs {
    width: 28.75em;
  }
  .outer .sort-controls {
    width: 28.75em;
  }
  .outer #projectBox .button {
    width: 28.75em;
  }
}
@media only screen and (min-width : 768px) and (max-width : 941px) {
  .outer .tabs {
    width: 38.75em;
  }
  .outer .sort-controls {
    width: 38.75em;
  }
  .outer #projectBox .grid .flex-row {
    width: 43.75em;
  }
  .outer #projectBox .button {
    width: 43.75em;
  }
}
