html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.content-nosidebar {
    margin-left: 10px;
    margin-right: 10px;
}

/*demo*/
.ribbonbox {
    width: 200px;
    height: 300px;
    position: relative;
    border: 1px solid #BBB;
    background: #eee;
}

.ribbon {
    position: absolute;
    left: -5px;
    top: -5px;
    z-index: 1999999;
    overflow: hidden;
    width: 75px;
    height: 75px;
    text-align: right;
    animation: blinker 1s linear infinite;
}

    .ribbon span {
        font-size: 10px;
        font-weight: bold;
        color: #FFF;
        text-transform: uppercase;
        text-align: center;
        line-height: 20px;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        width: 100px;
        display: block;
        background: #79A70A;
        background: linear-gradient(#F79E05 0%, #8F5408 100%);
        box-shadow: 0 3px 10px -5px rgba(0, 0, 0, 1);
        position: absolute;
        top: 19px;
        left: -21px;
    }

        .ribbon span::before {
            content: "";
            position: absolute;
            left: 0px;
            top: 100%;
            z-index: -1;
            border-left: 3px solid #8F5408;
            border-right: 3px solid transparent;
            border-bottom: 3px solid transparent;
            border-top: 3px solid #8F5408;
        }

        .ribbon span::after {
            content: "";
            position: absolute;
            right: 0px;
            top: 100%;
            z-index: -1;
            border-left: 3px solid transparent;
            border-right: 3px solid #8F5408;
            border-bottom: 3px solid transparent;
            border-top: 3px solid #8F5408;
        }

.x_panel {
    position: relative;
    width: 100%;
    padding: 10px 0;
    display: inline-block;
    background: #fff;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    opacity: 1;
}

.page-toolbar:after {
    content: '';
    display: block;
    clear: both;
}

.page-toolbar > .btn {
    margin: 0;
}

.x_title {
    padding: 10px;
    margin-bottom: 10px;
    /*background-color: #f7f7f7;*/
    align-items: center;
    justify-content: center;
}

.caption-flex {
    display: flex;
    width: 100%;
    align-items: center;
}

.level-caption {
    padding: 10px 0px 10px 5px !important;
}

.x_title .filter {
    width: 40%;
    margin-left: auto;
}

.x_title h2 {
    margin: 5px 0 6px;
    float: left;
    display: block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin-right: auto;
}

    .x_title h2 small {
        margin-left: 10px
    }

.x_content {
    padding: 0 0px 6px;
    position: relative;
    width: 100%;
    float: left;
    clear: both;
    margin-top: 5px;
}

    .x_content h4 {
        font-size: 16px;
        font-weight: 500
    }

    .x_content > .card {
        margin: 0 10px;
    }

.x_title .caption {
    float: left;
    font-size: 18px;
    line-height: 18px;
    font-weight: 500;
    align-self: flex-start;
    margin-right: auto;
}

.x_title > .caption > i {
    color: #777;
    font-size: 18px;
    font-weight: 400;
    float: left;
    margin-right: 10px;
}

.x_title > .caption > small {
    margin-left: 10px;
}

    .x_title > .caption > small > i {
        margin-right: 5px;
    }

.x_title .actions {
    display: inline-block;
    float: right;
    padding: 0px 0 10px;
    margin-left: auto;
}

legend {
    padding-bottom: 7px
}

.demo-placeholder {
    height: 280px
}

.form-horizontal {
    padding-top: 10px;
}

.dropdown-menu-lg {
    max-width: 400px !important;
    min-width: 380px !important;
    padding: 0;
}