.white {
    color: white;
}

.green {
    color: rgb(52, 211, 52);
}

.red {
    color: rgb(223, 4, 4);
}

.gray {
    color: rgb(128, 128, 128);
}

span.combo-textwrap {
    display: inline-block;
    width: 80%;
    white-space: nowrap;
    overflow: hidden !important;
    text-overflow: ellipsis;
}

.selectize-input {
    min-width: 100px;
}

.login-box-msg.danger {
    color: red;
}

/* AdminLTE sets html,body{height:100%} and .login-box{margin:7% auto}. The
   box's top margin collapses out of the body, which is still a full viewport
   tall, so the unauthed pages always scroll even when the content fits.
   Lay them out as a flex column instead: the box centres itself in whatever
   space is left above the footer. */
.login-page {
    height: auto;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 0;
}

.login-page .login-box {
    margin: auto;
}

/* Adjacent flex siblings don't collapse margins, so this is a guaranteed
   minimum gap: on a short viewport the box's auto margins go to 0 and the
   footer would otherwise butt right up against it. */
.login-page footer {
    margin-top: 20px;
}

.paginate-container {
    float: right;
}

.paginate-inner {
    float: right;
    margin-right: 10px; 
}

.search-row {
    margin-bottom: 10px;
}

.btn-search {
    margin-left: 0 !important;
}

.search-engine-group {
    position: relative;
    border-collapse: separate
}

.search-engine-group .fa-search {
    margin-right: 5px;
}

.separator-fields .control-label {
    font-weight: 550;
}

#birthdays-info {
    width: 220px;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
    margin-top: 10px;
    resize: none;
}

.birthdays-copy {
    position: absolute;
    top: 50%;
    left: 85%;
    transform: translate(-50%,-50%);
}

.birthdays-icon {
    cursor: pointer;
}

.birthdays-section {
    position: relative;
}

.centered-col {
    width: 100%;
    margin: 0 auto;
}

.centered-header {
    display: table; 
    margin: 0 auto;
}

p.inner-only-text {
    font-size: 18px;
    margin-bottom: 25px;
    margin-top: 25px;
}

textarea#summary {
    height: 130px;
}

.info-label {
    display: inline-grid; 
    width: 90px;
    height: 25px;
}

.label-grey {
    background-color: #9c9fa6;
}

.box.box-lessons {
    border-top-color: #3c8dbc;
}

.proposals {
    margin-top: 50px;
}

@media (min-width: 320px) and (max-width: 1024px) {
    .proposals {
        margin-top: 15px;
    }
}