* {
    margin: 0;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    color: #094869;
    background: #ffffff;
    font-family: "Helvetica Neue", Roboto, Arial, "Droid Sans", sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.471;
}

#search::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #b7b7b7;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #b7b7b7;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #b7b7b7;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
}
::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: #008dce;
    -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, .5);
}

.header-menu-wrapper {
    border-bottom: 1px solid gray;
    border-top: 1px solid gray;
    font-size: 16px;
}

.content {
    margin-top: 10px;
    padding-bottom: 110px;
}

.sidebar {
    color: #b08f8f;
    margin-bottom: 30px;
}

/*navbar*/
.navbar-light .navbar-nav .nav-link {
    color: #264186;
}

.navbar-light .navbar-nav .nav-link.active {
    color: #264186;
    text-decoration: underline;
}

.navbar-light .navbar-nav .nav-link:hover {
    font-weight: 500;
    color: white;
}
.nav-item:hover{
    border-radius: 3px;
    background-color: #0480ad;
}

@media (max-width: 992px) {
    .navbar-nav {
        margin-top: 15px;
    }

    .navbar-nav .nav-item {
        padding-left: 6px!important;
    }
}

h2.title {
    margin-top: 15px;
}

.bg-light {
    background-color: #ffffff!important;
}

.login-box {
    width: 300px;
    margin: 0 auto;
    margin-top: 60px;
    min-height: 400px;
}

.login-box .message {
    margin-bottom: 15px;
    display: none;
    color: red;
}

input[name="email"] {
    border-radius: 10px;
}

input[name="username"] {
    border-radius: 10px;
}

button {
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    background: #008dce;
    color: #ffffff;
    transition: all .2s;
    border-width: 0px;
    border-style: solid;
    border-color: #ffffff;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
    -webkit-border-radius: 25px;
    outline: none;
}


button:hover {
    background-color: #0480ad;
}

button:focus {
    outline: none;
}

button:active:not(.close) {
    background-color: #008dce!important;
    box-shadow: 0 0 0 0.2rem rgba(50, 57, 96, 0.5);
}

.login-box .btn-primary:not(:disabled):not(.disabled):active:focus {
    background-color: #008dce!important;
    box-shadow: 0 0 0 0.2rem rgba(50, 57, 96, 0.5);
}

.login-box label {
    color: #2f2f2f;
}

.form-control {
    border: 1px solid #d8d0d0;
    border-radius: 0;
}

.form-control:focus {
    border-color: #a29389;
    box-shadow: none;
}

.search-result img, .annotations-table img {
    border: 1px solid #e6e6e6;
}

.search-result .table-striped tbody tr:nth-of-type(odd) {
    background-color: transparent;
}

#search {
    border-radius: 10px;
}

.pagination .page-link {
    border-radius: 10px;
    margin-right: 4px;
}

.pagination .page-link:active {
    background: #D4D7DA;
    box-shadow: none !important;
}

.pagination .active .page-link {
    color: white;
    background: #008dce;
}

/* Change jsTree icons */
.jstree-closed > .jstree-icon.jstree-ocl{
    background: url("/static/img/jstree-icons/ocl-closed.png") no-repeat !important;
}
.jstree-open > .jstree-icon.jstree-ocl{
    background: url("/static/img/jstree-icons/ocl-open.png") no-repeat !important;
}
.jstree-icon.jstree-checkbox {
    background: url("/static/img/jstree-icons/checkbox.png") no-repeat !important;
}
.jstree-icon.jstree-checkbox:hover {
    background: url("/static/img/jstree-icons/checkbox-hover.png") no-repeat !important;
    transition: 0.2s;
}
.jstree-clicked .jstree-icon.jstree-checkbox {
    background: url("/static/img/jstree-icons/checked.png") no-repeat !important;
}
.jstree-clicked .jstree-icon.jstree-checkbox:hover {
    background: url("/static/img/jstree-icons/checked-hover.png") no-repeat !important;
    transition: 0.2s;
}
.jstree-icon.jstree-checkbox.jstree-undetermined {
    background: url("/static/img/jstree-icons/undetermined.png") no-repeat !important;
}
.jstree-icon.jstree-checkbox.jstree-undetermined:hover {
    background: url("/static/img/jstree-icons/undetermined-hover.png") no-repeat !important;
    transition: 0.2s;
}

#info-btn {
    width: 26px;
    height: 26px;
    padding: 6px 0px;
    /* margin-right: 3px; */
    border-radius: 13px;
    border-width: 2px;
    border-color: #008dce;
    background: white;
    text-align: center;
    float: right;
    font-size: 20px;
    font-family: 'Times New Roman', Times, serif;
    line-height: 0px;
    color: #008dce;
}

#info-btn:hover {
    background-color: #277aa4;
    border-color: #277aa4;
    color: white;
}

button.close:hover {
    background: white;
}

#reading-page .category-list .category-item a:hover {
    background: #0480ad;
    transition: 0.2s;
    color: white;
}

#reading-page .category-list .category-item a {
    display: block;
    color: #264186;
    padding: 10px;
    margin: 5px 5px 5px 0;
    border: solid 1px #008dce;
    border-radius: 10px;
    text-decoration: none;
}

#reading-page .breadcrumbs {
    margin-bottom: 25px;
}

#reading-page .breadcrumbs a {
    padding: 5px;
    color: #264186;
}
.column-title {
    color: #264186;
}
.book-info {
    color: #264186;
}
.book-link a {
    padding: 10px 0;
    color: #264186;
}

/*jstree custom*/
.jstree-default .jstree-wholerow-clicked {
    background: none!important;
}

.jstree-default .jstree-wholerow-hovered {
    background: none!important;
}

/*pagination*/
.pagination .disabled {
    color: black;
}

.pagination .active {
    color: #cec8c0;
}

.pagination .active a {
    background: #0f3c69;
}

.pagination .page-link {
    color: #052e81;
}

.pagination .page-link:focus {
    box-shadow: 0 0 0 0.2rem #052e81;
}

/*footer*/
.footer-wrapper {
    position: relative;
}

.footer {
    border-top: 1px solid #d3d3d3;
    padding-top: 5px;
    height: 80px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.footer .left-box {
    color: #094869;
}
.footer .left-box .label {
    font-size: 14px;
}
.footer .left-box .email a {
    font-size: 12px;
    color: #094869;
}
.footer img {
    float: right;
    width: 140px;
}

.footer .copyright {
    margin-top: 5px;
    text-align: center;
    font-size: 13px;
}

/*reading-page*/


/*home-page*/
#home-page .home-content {
    color: #0f3c69;
}

#home-page .home-content p {
    font-size: 16px;
    line-height: 26px;
}

#home-page .home-content h2 {
    color: #0f3c69;
    margin-bottom: 25px;
}

blockquote {
    background: #f5f5f5;
    color: #af9072;
    border-left: 4px solid #a07a41;
    padding: 15px;
    margin-top: 2em;
    margin-bottom: 2em;
}

blockquote p {
    margin-bottom: 0;
    font-style: italic;
}

.sep-line {
    border-bottom: 1px solid gray;
}

/*spinner*/
/* FullScreen Loader/Spiner */
.fullscreenloader {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(255,255,255,0.7);
    z-index: 1050;
}

.fullscreenloader > .fa {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -20px;
    margin-top: -20px;
    color: #000;
    font-size: 40px;
}

.hidden {
    display: none;
}

/*******************************/
/* viewer page */
/*******************************/
.viewer-box {
    padding-bottom: 110px;
    margin-top: 50px;
}

.viewer-box .controls-wrapper {
    text-align: center;
    margin-bottom: 15px;
}

.viewer-box .controls {
    display: inline;
}

.viewer-box .controls .previous-page, .viewer-box .controls .next-page {
    display: inline-block;
}

.viewer-box .controls .jump-to-input, .viewer-box .controls .jump-to-btn, .pages-view-format {
    display: inline-block;
}

.viewer-box .controls .jump-to-input input {
    width: 80px;
    height: 40px;
    font-size: 14px;
}

.viewer-box .controls button {
    height: 40px;
    width: 40px;
    background: border-box;
    box-shadow: inset 0 0 2px 1px #e0e0e0;
    border: 1px solid #b7b7b7;
    border-radius: 0;
    font-size: 14px;
    line-height: 1;
}

.viewer-box .controls .fa {
    font-size: 10px;
    color: brown;
}

.viewer-box .highlight {
    opacity: 0.6;
    border-radius: 4px;
    background-color: yellow;
}

.viewer-box .description-wrapper {
    /* background: #f5f5f5; */
    border: 1px solid #d0d0d0;
    padding: 15px 15px 6px 15px;
    margin-top: 25px;
}

.viewer-box .description-wrapper .description-item {
    color: #094869;
}

.viewer-box #right-page-viewer {
    border: 1px solid #dbdbdb;
    box-shadow: 3px 4px 4px 2px #f0f0f0;
}

.viewer-box #left-page-viewer {
    border: 1px solid #dbdbdb;
    box-shadow: -3px 4px 4px 2px #f0f0f0;
}

.viewer-box #single-page-viewer {
    border: 1px solid #dbdbdb;
    box-shadow: 3px 4px 4px 2px #f0f0f0;
}

#prev-btn, #next-btn, #jump-btn, #pages-view-format-btn {
    /* background: blue; */
    border-radius: 15px;
    border: none;
}

#prev-btn:hover, #next-btn:hover, #jump-btn:hover {
    background-color: #F7F5F5;
}
#prev-btn:active, #next-btn:active, #jump-btn:active {
    background-color: #E2D9D9 !important;
}

#prev-btn i, #next-btn i, #jump-btn i, #pages-view-format-btn i {
    font-size: 12px;
    color: #277aa6;
}

#pages-view-format-btn.active {
    background: #fff1e2;
    border: 1px solid #277aa6;
}

.jump-to-input input {
    border-radius: 10px;
    border: none;
    box-shadow: inset 0 0 2px 1px #e0e0e0;
}

.jump-to-input input:focus {
    border-radius: 10px;
    border: none;
    box-shadow: inset 0 0 2px 2px #D4CDC9;
}

#left-page-number, #right-page-number {
    font-size: 14px;
    text-align: center;
}

/*******************************/
/* Profile page */
/*******************************/
#profile-page .profile-details {
    color: #094869;
    font-size: 14px;
}

#profile-page .profile-details .value.active {
    color: white;
    background: #00800070;
    border-radius: 2px;
    padding: 4px;
}

#profile-page .profile-details .value.expired {
    color: white;
    background: #f304049c;
    border-radius: 2px;
    padding: 4px;
}

#profile-page .profile-details .value.trial {
    color: white;
    background: #277aa6;
    border-radius: 2px;
    padding: 4px;
}

#profile-page .profile-details .note {
    color: #fb3232;
}

#profile-page .profile-details .note a {
    color: #277aa6;
}

#profile-page .section-title {
    margin-bottom: 20px;
    font-size: 20px;
    color: #277aa6;
    text-decoration: underline;
}

input[name="password"], input[name="password_confirm"] {
    border-radius: 10px;
}


#profile-page #change-password-form .message {
    margin-bottom: 15px;
    display: none;
}

#profile-page #change-password-form .message.success {
    color: green;
}

#profile-page #change-password-form .message.error {
    color: red;
}

#loading-spinner-left, #loading-spinner-right {
    position: absolute;
    width: 100%;
    top: 50%;
    text-align: center;
}

/*ANNOTATIONS*/
.annotations-table {
    width: 100%;
    border-collapse: collapse;
}

/*SEARCH RESULT PAGE-MODAL*/
#searchResultModal {
    padding-bottom: 15px;
}

@media (min-width: 576px) {
    #searchResultModal .modal-dialog {
        max-width: 100%;
        margin: .5rem;
    }
}

.hit-controls-box {
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    top: 12px;
}

.previous-hit, .next-hit {
    display: inline-block;
}

.hit-controls-box #prev-hit-btn, .hit-controls-box #next-hit-btn {
    height: 27px;
    line-height: 17px;
    width: 95px;
}

.hit-controls-box #prev-hit-btn:hover, .hit-controls-box #next-hit-btn:hover {
    background: #008dce;
}

.hit-controls-box #prev-hit-btn:disabled, .hit-controls-box #next-hit-btn:disabled {
    background-color: #008dce8f;
}
