.book {
    margin: 50px 0 0;
}

.book .col-no-l-margin {
    padding-left: 0 !important;
}

.book .col-no-r-margin {
    padding-right: 0 !important;
}

.book .alert.margin {
    margin: 20px 25% 25px;
}

.book .fa-question-circle.margin {
    margin: 10px;
}

.book .control-label {
    font-weight: 100;
}

.panel-book {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
    *float: left;
    margin: 0 auto 20px;
    *width: 41.66666667%;
    width: 99%;
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}

.panel-book .panel-heading {
    background-color: #f5f5f5;
    border-color: #ddd;
    color: #333;
}

.panel-book .panel-label {
    margin: 0;
    position: relative;
}

.panel-label.panel-label-margin {
    top: calc(60px/2 - 17px/2) !important;
}

.panel-book .panel-label:hover,
.panel-book .panel-label>input[type='checkbox'] {
    cursor: pointer;
}

.panel-book .panel-label:hover span {
    text-decoration: underline;
}

.panel-book .panel-label>input[type='checkbox'] {
    margin: 0;
}

.panel-book .panel-label>span {
    font-weight: 100;
    margin: 0 0 0 5px;
    padding: 0;
    position: relative;
    transition: all .3s;
}

.panel-book .panel-label.label {
    padding: 0;
}

.panel-label.opened span {
    font-weight: bold;
}

.panel-book>.panel-body {
    padding: 0px;
}

.panel-book>.panel-body .panel-row {
    border-bottom: 1px solid #ddd;
    height: 50px;
    padding: 14px 10px;
    width: 100%;
}

fieldset input[type='radio']:checked+span {
    cursor: pointer;
    *font-weight: bold;
    text-decoration: underline;
    transition: all .3s;
}

.panel-book>.panel-body .panel-row:last-of-type {
    padding: 9px 10px;
}

.panel-book>.panel-body .panel-row--sub {
    display: none;
    height: 0px;
    position: relative;
    transition: all .3s;
}

.panel-row--sub .panel-label {
    font-weight: 100;
    padding: 0 15px;
    text-align: right;
    top: calc(34px/2 - 17px/2);
}

.panel-book>.panel-body .panel-row.opened+.panel-row--sub {
    border-bottom: 1px solid #ddd;
    display: inherit;
    height: auto;
    min-height: 50px;
    padding: 14px 10px;
}

.panel-book>.panel-body .panel-row.opened .panel-label>span {
    font-weight: 900;
}

.panel-book>.panel-body .panel-row--sub:before {
    background: #337AB7;
    content: '';
    height: 100%;
    left: 0px;
    position: absolute;
    top: 0px;
    width: 2.5px;
}

.panel-book>.panel-body .panel-row--sub.book-container-highlight-error:before {
    background: red;
}

.panel-book>.panel-body fieldset {
    margin: 0 0 10px;
}

.panel-book>.panel-body fieldset:last-of-type {
    margin: 0
}

.float-right {
    float: right;
}

.panel-body .book-textarea {
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    color: #555;
    font-size: 12px;
    height: 60px;
    line-height: 1.42857143;
    padding: 5px 10px;
    position: relative;
    resize: none;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    width: 100%;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
}

.control-label .color-required,
.panel-label .color-required {
    color: red;
    margin-right: 5px;
}

.required-subtitle {
    position: relative;
    top: 7px;
}

.book-hidden {
    display: none;
}

.btn-clear-filter {
    margin: 0 10px 0 0 ;
}

.book .ui-select-multiple input.ui-select-search {
    position: absolute;
    z-index: 10;
    cursor: default;
}

.book-label-option {
  font-weight: normal;
  display: inline;
  cursor: pointer;
  margin-bottom: 0;
}

.book-label-option:hover {
  text-decoration: underline;
}
