/* These body and main blocks give us a sticky footer */

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    overflow:auto !important;
}

main {
    flex: 1 0 auto;
}

/* Misc styling */

.page-footer{
    padding-top:0;
}

main{
    padding:20px;
}

.toast{
    font-size:30px;
}

.logo{
    margin-left: auto;
    margin-right: auto;
    display: block;
    max-width:100%;
}

.clickcards div.card:hover{
    cursor:pointer;
    opacity:0.8;
}
.padded-card-table{
    margin:4px !important;
}
.padded-card-table > div{
    padding:8px 8px 4px 8px !important;
}
.click{
    cursor:pointer;
}
.block{
    display:block;
}
.inline-block{
    display:inline-block;
}
.progressModal{
    position:absolute;
    display:none;
    width: 100%;
    height: 100%;
    background-color: white;
    opacity: 0.6;
    z-index: 2000;
}
.progressModal > div{
    position: absolute;
    left: 50%;
    top: 50%;
    -moz-transform: translate(-50%, -50%)
    -webkit-transform: translate(-50%, -50%)
    -ms-transform: translate(-50%, -50%)
    -o-transform: translate(-50%, -50%)
    transform: translate(-50%, -50%);
}

.abs.tick:before,
.abs.cross:before{
  position: absolute;
}

.tick:before,
.cross:before {
  right:0;
  top:0;
  font-weight: bold;
  font-size: 1.6em;
}
.tick:before {
  content: "\2713";
  color: darkgreen;
}
.cross:before {
  content: "\2717";
  color: crimson;
}

.expired{
    background-color: lightgray;
}

.single-line{
    white-space:nowrap;
    overflow:hidden;
    margin-right: 20px;
    text-overflow: ellipsis;
}

.category{
  border-radius: 9px;
  display:inline-block;
  margin-left: 5px;
  margin-right: 5px;
}

.category .card-content{
  padding:5px 10px 0px 10px;
}

.category .card-content .badge{
  float:none !important;
  margin-left:0 !important;
}