html,
body {
    font-size: 14px;
}

form {
    margin: 0;
    display: inline-block;
}
@media (min-width: 501px) {
    form.small-text {
        font-size: 13px;
    }
}
.help-block {
    margin-top: 7px;
    font-style: italic;
    font-size: 0.9em;
}

/* Tooltip */
.tooltip-inner {
    min-width: 60px;
    padding: 5px 10px;
    text-align: left;
    white-space: pre-wrap;
}
.top.tooltip .tooltip-arrow {
    /* there is 1px gap on IE between arrow and tooltip body */
    bottom: 1px;
}

.row.no-gutter {
    margin-left: -3px;
    margin-right: -3px;
}
.no-gutter > [class*='col-'] {
    padding-right:0;
    padding-left:0;
}

.row.xs-gutter {
    margin-left: -3px;
    margin-right: -3px;
}
.xs-gutter > [class*='col-'] {
    padding-left: 3px;
    padding-right: 3px;
}

.row.sm-gutter {
    margin-left: -6px;
    margin-right: -6px;
}
.sm-gutter > [class*='col-'] {
    padding-left: 6px;
    padding-right: 6px;
}

.col-no-gutter {
    padding-left: 0;
    padding-right: 0;
}
.col-no-gutter-left {
    padding-left: 0;
}
.col-no-gutter-right {
    padding-right: 0;
}
@media (min-width: 768px) {
    .col-sm-no-gutter {
        padding-left: 0;
        padding-right: 0;
    }
    .col-sm-no-gutter-left {
        padding-left: 0;
    }
    .col-sm-no-gutter-right {
        padding-right: 0;
    }
}

.dropdown .dropdown-button {
    cursor: pointer;
}

.dropdown-menu {
    padding: 0;
    margin-top: 1px; /* move to BS config */
}
.dropdown-menu .divider {
    margin: 0;
}
.dropdown-menu > li > a {
    padding: 10px 14px;
}

.dropdown .dropdown-button .fa {
    font-size: 18px;
}
.dropdown .dropdown-menu .fa {
    font-size: 18px;
    margin-right: 6px;
}

.dropdown-menu.small {
    min-width: 130px;
}
.dropdown-menu.small > li > a {
    padding: 5px 10px;
}

/* css is broken in BS for iPad with border dash style */
.caret {
    border-top: 4px solid currentColor;
}

.checkbox input[type="checkbox"] {
    cursor: pointer;
}
@media (max-width: 500px) {
    .checkbox input[type="checkbox"] {
        margin-top: 2px;
    }
}

.btn-sm, .btn-group-sm>.btn {
    padding: 3px 8px;
    font-size: 13px;
    line-height: 1.4;
}

.btn-hover-border {
    background: transparent;
}
.btn-hover-border:hover {
    border: 1px solid #ccc;
}

/* X icon looks shifted to the top */
.btn .fa.fa-remove {
    margin-top: -2px;
}

/* Tabs */
.nav-tabs {
    font-size: 1.2em;
}
.nav-tabs > li.active > a {
    background-color: #f5f7f7 !important;
    font-weight: bold;
}
.tab-content {
    width: 100%;
    padding: 20px 15px;
    border: 1px solid #ddd;
    border-top: none;
    background-color: #f5f7f7;
}
/* make tabs to switch faster */
.tab-content .fade {
    transition-duration: 0.07s;
}

.panel .panel-heading {
    padding: 5px 8px;
    font-weight: bold;
    font-size: 1.1em;
}

/* it looks like truncated on the right side, make less padding there */
select.form-control {
    padding: 6px 4px 6px 8px;
}

/* smaller fonts and inputs height on non-mobile */
@media (min-width: 501px) {
    .small-text .form-control {
        padding: 4px 10px;
        font-size: 13px;
    }
    .small-text .form-control:not(textarea) {
        height: 30px;
    }
    .small-text select.form-control {
        padding: 4px 3px 4px 6px;
    }
    .small-text .form-control-static {
        padding-top: 5px;
        padding-bottom: 5px;
        min-height: 30px;
    }
    .small-text .form-group {
        margin-bottom: 10px;
    }
}
@media (min-width: 768px) {
    .form-horizontal.small-text .control-label {
        padding-top: 5px;
    }
}

/* too large padding by default */
ul.form-control-static {
    padding-left: 20px;
}

.modal .modal-title {
    font-size: 16px;
    font-weight: bold;
}
.modal-header .close {
    font-size: 24px;
}

/* from v4, higher contrast */
.alert-warning {
    background-color: #fff3cd;
    color: #856404;
}
/*higher contrast*/
.alert-success {
    background-color: #dff0d8;
    border: 1px solid #22a900;
    color: #005402;
}

/* table with smaller font */
table.table-small {
    font-size: 13px;
}
table.table-small td,
table.table-small th {
    padding: 5px 8px !important;
}

/**
 * The Bootstrap documentation has really nice callouts to draw attention to important information, but for some reason
 * these callouts are not included in the actual Bootstrap distribution.
 * https://codepen.io/chrisdpratt/pen/IAymB
 */
.bs-callout {
    padding: 20px;
    margin: 20px 0;
    border: 1px solid #eee;
    border-left-width: 5px;
    border-radius: 3px;
}
.bs-callout h4 {
    font-size: 18px;
    margin-top: 0;
    margin-bottom: 5px;
}
.bs-callout p:last-child {
    margin-bottom: 0;
}
.bs-callout code {
    border-radius: 3px;
}
.bs-callout+.bs-callout {
    margin-top: -5px;
}
.bs-callout-default {
    border-left-color: #777;
}
.bs-callout-default h4 {
    color: #777;
}
.bs-callout-primary {
    border-left-color: #337ab7;
}
.bs-callout-primary h4 {
    color: #337ab7;
}
.bs-callout-success {
    border-left-color: #5cb85c;
}
.bs-callout-success h4 {
    color: #5cb85c;
}
.bs-callout-danger {
    border-left-color: #d9534f;
}
.bs-callout-danger h4 {
    color: #d9534f;
}
.bs-callout-warning {
    border-left-color: #f0ad4e;
}
.bs-callout-warning h4 {
    color: #f0ad4e;
}
.bs-callout-info {
    border-left-color: #5bc0de;
}
.bs-callout-info h4 {
    color: #5bc0de;
}