.clearfix:before, .clearfix:after {
    content: "";
    line-height: 0;
    display: table;
}
.clearfix:after {
    clear: both;
}

.hide-text {
    font: 0/0 a;
    color: transparent;
    border: 0;
    background-color: transparent;
    text-shadow: none;
}

.lead {
    font-size: 21px;
    font-weight: 200;
    line-height: 30px;
    margin-bottom: 20px;
}

.c-both {
    clear: both !important;
}

.d-flex {
    display: flex;
}

.d-inline-block {
    display: inline-block;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

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

.v-hidden {
    visibility: hidden !important;
}

.va-middle {
    vertical-align: middle !important;
}

.ws-nowrap {
    white-space: nowrap !important;
}

.w-100 {
    width: 100% !important;
}

.min-w-0 {
    min-width: 0 !important;
}

.m-0 {
    margin: 0 !important;
}

.ml-0 {
    margin-left: 0 !important;
}

.mr-0 {
    margin-right: 0 !important;
}

.ml-auto {
    margin-left: auto !important;
}

.mr-auto {
    margin-right: auto !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mt-auto {
    margin-top: auto !important;
}

.mt-tiny {
    margin-top: var(--space-tiny) !important;
}

.mt-small {
    margin-top: var(--space-small) !important;
}

.mt-medium {
    margin-top: var(--space-medium) !important;
}

.mt-standard {
    margin-top: var(--space-standard) !important;
}

.mt-decent {
    margin-top: var(--space-decent) !important;
}

.mt-large {
    margin-top: var(--space-large) !important;
}

.mt-huge {
    margin-top: var(--space-huge) !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mb-tiny {
    margin-bottom: var(--space-tiny) !important;
}

.mb-small {
    margin-bottom: var(--space-small) !important;
}

.mb-medium {
    margin-bottom: var(--space-medium) !important;
}

.mb-standard {
    margin-bottom: var(--space-standard) !important;
}

.mb-decent {
    margin-bottom: var(--space-decent) !important;
}

.mb-large {
    margin-bottom: var(--space-large) !important;
}

.mb-huge {
    margin-bottom: var(--space-huge) !important;
}

.ml-auto {
    margin-left: auto !important;
}

.p-0 {
    padding: 0 !important;
}

.p-tiny {
    padding: var(--space-tiny) !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-auto {
    padding-top: auto !important;
}

.pt-tiny {
    padding-top: var(--space-tiny) !important;
}

.pt-small {
    padding-top: var(--space-small) !important;
}

.pt-medium {
    padding-top: var(--space-medium) !important;
}

.pt-standard {
    padding-top: var(--space-standard) !important;
}

.pt-decent {
    padding-top: var(--space-decent) !important;
}

.pt-large {
    padding-top: var(--space-large) !important;
}

.pt-huge {
    padding-top: var(--space-huge) !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-tiny {
    padding-bottom: var(--space-tiny) !important;
}

.pb-small {
    padding-bottom: var(--space-small) !important;
}

.pb-medium {
    padding-bottom: var(--space-medium) !important;
}

.pb-standard {
    padding-bottom: var(--space-standard) !important;
}

.pb-decent {
    padding-bottom: var(--space-decent) !important;
}

.pb-large {
    padding-bottom: var(--space-large) !important;
}

.pb-huge {
    padding-bottom: var(--space-huge) !important;
}

.b-0 {
    border: 0 !important;
}

.bt-0 {
    border-top: 0 !important;
}

.fs-small {
    font-size: 85% !important;
}

.fs-16 {
    font-size: 16px !important;
}

.ox-auto {
    overflow-x: auto !important;
}

.page-header {
    margin: 20px 0 30px;
    padding-bottom: 9px;
    border-bottom: 1px solid var(--background);
}

.warning {
    color: var(--highlight-color);
}

.muted {
    color: var(--text-muted-color);
}

.text-strikethrough {
    text-decoration: line-through;
}

.text-primary {
    color: var(--text-primary-color);
}

.text-warning {
    color: var(--text-warning-color);
}

.text-error {
    color: var(--text-error-color);
}

.text-info {
    color: var(--text-info-color);
}

.text-success {
    color: var(--text-success-color);
}

a.muted:hover, a.muted:focus {
    color: var(--text-muted-hover-color);
}
a.text-warning:hover, a.text-warning:focus {
    color: var(--text-warning-hover-color);
}
a.text-error:hover, a.text-error:focus {
    color: var(--text-error-hover-color);
}
a.text-info:hover, a.text-info:focus {
    color: var(--text-info-hover-color);
}
a.text-primary:hover, a.text-primary:focus {
    color: var(--text-primary-hover-color);
}
a.text-success:hover, a.text-success:focus {
    color: var(--text-success-hover-color);
}

.btn .keyboard-hint {
    line-height: 12px;
}

@media (max-width: 640px), (max-width: 834px) and (orientation: portrait) {
    .layout-root .keyboard-hint {
        display: none;
    }
}