body {
    padding-top: 50px;
    padding-bottom: 20px;
}

/* Set padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}

/* Ensure navbar dropdown menus are scrollable on smaller/scaled viewports */
.navbar .dropdown-menu {
    max-height: calc(100vh - 120px);
    overflow-y: auto;
}

/* Set width on the form input elements since they're 100% wide by default */
input,
select,
textarea {
    max-width: 280px;
}

.comment {
    color: green;
}

.attribute {
    color: grey;
}

.key-word {
    color: #0000FF;
}

.str {
    color: #800000;
}

/* Custom Checkbox */
.checkbox {
  width: 20px;
  position: relative;
  margin: 7px 5px;
}

.checkbox label {
  width: 20px;
  height: 20px;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  border-radius: 4px;
  border: solid 1px #ccc;
}

.checkbox label:after {
  content: '';
  width: 17px;
  height: 9px;
  position: absolute;
  top: 3px;
  left: 1px;
  border: 3px solid #000;
  border-top: none;
  border-right: none;
  background: transparent;
  opacity: 0;
  -webkit-transform: rotate(-50deg);
      -ms-transform: rotate(-50deg);
          transform: rotate(-50deg);
}

.checkbox input[type=checkbox] {
  visibility: hidden;
}

.checkbox input[type=checkbox]:checked + label:after {
  opacity: 1;
}

.checkboxDisabled {
    opacity:0.4;
}

/* Custom FileInput*/
.fileinput-button {
    overflow: hidden;
    position: relative;
}

.fileinput-button input {
    cursor: pointer;
    direction: ltr;
    font-size: 200px;
    margin: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.icon-button {
    cursor:pointer;
}

.help {
    cursor:help;
}

/* Fix the header in a table so the body scrolls under it */
.header-fixed {
    width: 100% 
    }

.header-fixed > thead,
.header-fixed > tbody,
.header-fixed > thead > tr,
.header-fixed > tbody > tr,
.header-fixed > thead > tr > th,
.header-fixed > tbody > tr > td,
.header-fixed > thead > tr > td {
    display: block;
}
.header-fixed > tbody > tr:after,
.header-fixed > thead > tr:after {
    content: ' ';
    display: block;
    visibility: hidden;
    clear: both;
}
.header-fixed > tbody {
    overflow-y: auto;
    height: 425px;
}
.header-fixed > thead > tr,
.header-fixed > tbody > tr {
    display: flex;
    word-wrap: break-word;
}
.header-fixed > tbody > tr > td,
.header-fixed > thead > tr > th,
.header-fixed > thead > tr > td {
    width: 25%;
    float: left;
}
.input-validation-error, input.input-validation-error
{
    border: 1px solid #ff0000;
    background-color: #ffeeee;
}
.validation-summary-errors
{
    font-weight: bold;
    color: #ff0000;
}
#allocate-table-body {
    max-height: 425px !important;
    overflow-y: auto;
}
/*.header-fixed-pl > tbody {
    overflow-y: auto;
    height: 425px;
}

    .header-fixed-pl > thead,
    .header-fixed-pl > tbody,
    .header-fixed-pl > thead > tr,
    .header-fixed-pl > tbody > tr,
    .header-fixed-pl > thead > tr > th,
    .header-fixed-pl > tbody > tr > td,
    .header-fixed-pl > thead > tr > td {
        display: block;
    }
        .header-fixed-pl > tbody > tr > td,
        .header-fixed-pl > thead > tr > th,
        .header-fixed-pl > thead > tr > td {
            float: left;
        }

        .header-fixed-pl > tbody > tr:after,
        .header-fixed-pl > thead > tr:after {
            content: ' ';
            display: block;
            visibility: hidden;
            clear: both;
        }*/

/*remove spin box from number inputs*/ 
input[type='number'] {
    -moz-appearance:textfield;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

.view-key-device-activity-table dd {
    white-space: nowrap;
}

.view-key-device-activity-table .dates dt {
    width: 87px;
}

.view-key-device-activity-table .dates dd {
    margin-left: 92px;
}

.view-key-device-activity-table .dates a {
    font-weight: normal;
}

.view-key-device-activity-table .key dt {
    width: 85px;
}

.view-key-device-activity-table .key dd {
    margin-left: 90px;
}

.view-key-device-activity-table .key .ellipsis,
.view-key-device-activity-table .key .ellipsis {
    display: block;
    max-width: 10em;
    overflow: hidden;
    text-overflow: ellipsis;
}

.view-key-device-activity-table .popover,
.manage-devices-table .popover {
    width: 300px;
}

.view-key-device-activity-table .popover-content,
.manage-devices-table .popover-content {
    overflow: auto;
    max-height: 100px;
}

.view-key-device-activity-table .network .popover-content dt,
.manage-devices-table .network .popover-content dt {
    width: 101px;
}

.view-key-device-activity-table .network .popover-content dd,
.manage-devices-table .network .popover-content dd {
    margin-left: 106px;
}

.view-logs-form label {
    font-size: 14px;
    font-weight: normal;
    padding-left: 1em;
}

.view-logs-table .message {
    display: block;
    max-height: 100px;
    overflow: auto;
    word-break: break-word;
}

.datetimepicker tfoot th {
    cursor: pointer;
}
