a.button-square {
  display: block;
  width: 100%;
  padding-bottom: 100%;
  text-align: center;
  margin-bottom: 20px;
  overflow: hidden;
  position: relative;
  font-weight: bold;
  color: #eceeef;
  background-color: #b78a4f; }

a.button-square:hover, a.button-square:active, a.button-square:visited {
  text-decoration: none; }

a.button-square div.button-square--content {
  position: absolute;
  height: 100%;
  width: 100%;
  padding: 20% 5%;
  top: 0;
  left: 0;
  font-size: 2rem;
  text-align: center;
  background-color: #b78a4f;
  -webkit-transition: background-color 0.3s ease;
  -moz-transition: background-color 0.3s ease;
  -ms-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center; }

a.button-square div.button-square--content:hover {
  background-color: #72552e; }

a.button-square.locked div.button-square--content {
  background-color: #999; }

a.button-square.locked div.button-square--content .profile-tile-inner-content {
  color: #fff;
  z-index: 2; }

a.button-square.locked div.button-square--content:before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "\f023";
  font-family: FontAwesome;
  color: rgba(0, 0, 0, 0.2);
  font-size: 160px;
  padding: 5px;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  z-index: 1; }

a.button-square.locked div.button-square--content:hover {
  background-color: #666; }

a.button-square.locked div.button-square--content:hover .profile-tile-inner-content {
  z-index: 0; }

a.button-square.profile-renew div.button-square--content {
  background-color: #28a745;
  color: #fff; }

a.button-square.profile-renew div.button-square--content:hover {
  background-color: #145523; }

a.button-square.profile-renew.profile-renew-overdue div.button-square--content {
  background-color: #fc6e6e; }

a.button-square.profile-renew.profile-renew-overdue div.button-square--content:hover {
  background-color: #fa0a0a; }

a.button-square.profile-join div.button-square--content {
  background-color: #428bca;
  color: #fff; }

a.button-square.profile-join div.button-square--content:hover {
  background-color: #245682; }

a.button-square.disabled {
  cursor: auto; }

a.button-square.disabled div.button-square--content {
  background-color: #55595c; }

a.button-square.disabled div.button-square--content:hover {
  background-color: #373a3c; }

.completion-bar.progress {
  height: 25px;
  margin-bottom: 5px; }

.completion-bar.progress .progress-bar {
  line-height: 25px; }

.table-lookup.table tr td:first-of-type {
  width: auto !important; }

.tag > a {
  color: #fff;
  display: inline-block;
  padding: 3px; }

#last-viewed, #last-edited {
  text-align: center;
  padding: 0 0.5rem 0.25rem 0.5rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  left: 25%;
  width: auto;
  display: none;
  z-index: 1;
  background-color: white;
  border: 1px solid #55595c; }

#last-viewed span, #last-edited span {
  font-size: 1.2em; }

#search-form #search-form--actions {
  display: none;
  position: absolute;
  z-index: 9999;
  width: 25vw;
  height: 50vh;
  overflow-y: auto; }

#search-form #search-form--actions button {
  width: 100%;
  cursor: pointer;
  text-align: left; }

#search-form #search-form--actions button:hover {
  background-color: #b78a4f;
  color: white; }

#search-form #search-form--actions button strong {
  float: left;
  display: block;
  width: 45%;
  height: 100%; }

#search-form #search-form--actions button em {
  float: right;
  display: block;
  width: 55%;
  height: 100%; }
