/* Additional profile actions in the dot menu */
@media only screen and (min-width: 990px) {
    .services-profile {
        display: none;
    }
}

.services-profile ul {
    margin: 0;
    padding: 0;
}

.services-profile a {
    color: inherit;
}

.services-profile a.btn-default:hover {
    text-decoration: underline;
}

/* Form validation error should not be white */
.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline {
    color: #c00
}

.has-error .form-control {
    border-color: #c00;
    -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.075)
}

.has-error .form-control:focus {
    border-color: #c00;
    -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c00;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c00;
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c00
}

.has-error .form-control-feedback {
    color: #c00
}

/* Selectbox with unknown value */
.form-horizontal select.form-control.has-unknown option {
    color: #666;
}

select.form-control.unknown, select.form-control.has-unknown option.unknown {
    color: #c00;
}

/* Custom margin for elements after floating */
.form-margin-xs, .form-margin-s, .form-margin-m, .form-margin-l, .form-margin-xl  {
    margin-top: 15px
}

.form-margin-bottom {
    margin-bottom: 15px;
}

.row-xs-center {
    display:flex;
    align-items:center;
}

@media (min-width: 520px) {
    .form-margin-s {
        margin: 0
    }

    .row-s-center {
        display:flex;
        align-items:center;
    }
}
@media (min-width: 768px) {
    .form-margin-m {
        margin: 0
    }

    .row-m-center {
        display:flex;
        align-items:center;
    }
}
@media (min-width: 990px) {
    .form-margin-l {
        margin: 0
    }

    .row-l-center {
        display:flex;
        align-items:center;
    }
}
@media (min-width: 1200px) {
    .form-margin-xl {
        margin: 0
    }

    .row-xl-center {
        display:flex;
        align-items:center;
    }
}

.form-horizontal {
    position: relative;
}

.progress-full {
    display: none;
}

.progress {
    margin: 0 0 2em;
    text-align: center;
}

.progress .steps {
    display: block;
    text-align: left;
    margin: 20px 0;
    padding: 0;
    vertical-align: top;
}

.progress .steps-more {
    font-size: 0.9em;
    margin: -10px 0;
    color: #666;
    cursor: pointer;
}

.progress .step  {
    position: relative;
    display: block;
    width: 100%;
    background: none;
    padding: 0;
    margin: 0;
    border: 0;
    color: #000;
    text-align: left;
}

.progress .step[disabled] {
    color: #bbb;
}

.progress .step-icon {
    position: relative;
    width: 40px;
    height: 40px;
    background: #ccc;
    line-height: 40px;
    border-radius: 20px;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    margin: 0 10px;
}

.progress .step-label {
    font-size: .9em;
}

.progress .step:hover .step-label {
    text-decoration: underline;
}

.progress .step[disabled]:hover .step-label,
.progress .step.nohover:hover .step-label{
    text-decoration: none;
}

.progress .error .step-icon {
    color: #c00;
}

.progress .steps-more .step-icon {
    background: none;
    height: 1em;
    line-height: 1em;
    font-weight: normal;
    margin-left: 11px;
}

.progress .step:after {
    content: '';
    background: #ccc;
    position: absolute;
    z-index: -1;
    height: 60px;
    width: 2px;
    left: 30px;
    top: -10px;
}

.progress .step.ready:after {
    background: #f00;
}

.progress .steps:first-child .step:after {
    height: 30px;
    top: 20px;
    left: 30px;
}

.progress .steps:last-child .step:after {
    height: 30px;
}

.progress .close {
    display: none;
}

.progress-hidden {
    display: block;
    position: absolute;
    background: #fff;
    z-index: 1000;
    border: 2px solid #ccc;
    width: 100%;
    margin: 0 -2px;
}

.progress-hidden .close {
    display: block;
    position: absolute;
    top: 10px;
    right: 15px;
    background: #fff;
}

@media (min-width: 768px) {
    .progress-short {
        display: none;
    }

    .progress-full {
        display: block;
    }

    .progress {
        margin-top: 2em;
    }

    .progress-hidden {
        position: relative;
        background: none;
        border: 0;
    }

    .progress .steps {
        margin: 0;
        display: inline-block;
        text-align: center;
    }

    .progress .steps-1 { width: 30%; }
    .progress .steps-2 { width: 30%; }
    .progress .steps-3 { width: 30%; }
    .progress .steps-4 { width: 25%; }
    .progress .steps-5 { width: 20%; }
    .progress .steps-6 { width: 16.5%; }
    .progress .steps-7 { width: 14.2%; }
    .progress .steps-8 { width: 12.5%; }
    .progress .steps-9 { width: 11%; }

    .progress .step {
        text-align: center;
    }

    .progress .step:after {
        width: 100%;
        height: 2px;
        left: 0;
        top: 20px;
    }

    .progress .steps:first-child .step:after {
        width: 50%;
        left: 50%;
        height: 2px;
    }

    .progress .steps:last-child .step:after {
        width: 50%;
        height: 2px;
    }

    .progress .step-icon {
        display: block;
        margin: auto auto 10px;
    }
}

/* Tabs */
.nav-tabs {
    margin-bottom: 21px;
}

.nav.nav-tabs li:first-child a {
    margin-left: 10px;
}

.nav.nav-tabs li a {
    margin-right: 5px;
    margin-left: 5px;
    border: 1px solid #ddd;
}

.nav.nav-tabs li.active a {
    border-bottom-color: transparent;
    background-color: #fff;
    color: #000;
}

/* Center the pagination */
nav.pagination-wrapper {
    text-align: center;
}

/* Each title on a separate line. */
.box-search-list-title span.multivalue {
    display: block;
}

.box-search-list .snippet {
    color: #555;
    font-size: 0.9em;
}

.box-search-list .box-pubtype {
    top: -3px;
    left: -5px;
}

/* Highlight */
span.highlight {
    background: yellow;
    font-weight: bold;
}

/* Static text in dropdown */
.dropdown-menu .gear-option-selected,
.dropdown-menu .gear-option-selected .fa {
    font-weight: normal;
    line-height: 21px;
    color: #333;
}

.dropdown-menu .gear-option-selected {
    display: block;
    padding: 3px 20px;
    clear: both;
    white-space: nowrap;
}

.dropdown-menu .gear-option-selected .fa {
    margin-left: -17px;
    position: absolute;
}

/* Reset custom styles for search input */
input#aspect_discovery_SimpleSearch_field_query {
    height: inherit;
    font-size: inherit;
    float: inherit;
    display: inherit;
}

/* Some fixes for the margins of the search-form box. */
div#toggle-filter-wrapper {
    margin-bottom: -20px;
}

.search-filter.filler {
    margin-bottom: 10px;
}

.box-search-list {
    margin-bottom: 0;
}

/* Fix link tags as buttons */
a.btn:active, a.btn:hover, a.btn:focus {
    text-decoration: none;
    border: 1px solid transparent;
}

a.btn-default {
    color: #333;
    background-color: #fff;
}

a.btn-default:active, a.btn-default:hover, a.btn-default:focus {
    border-color: #999;
}

a.btn-primary {
    color: #fff;
    background-color: #06c;
}

/* General helper. */
.text-center {
    text-align: center;
}

.no-margin {
    margin: 0;
}

/* Center the button toolbar */
.btn-toolbar.text-center > .btn-group, .btn-toolbar.text-center > .btn-group > .btn {
    float: none;
}

/* Center buttons in forms */
.form-group.text-center > div[class*='col-'] {
    float: none;
    display: inline-block;
    text-align: left;
}

.form-group.text-center > div[class*='col-'] > .btn {
    width: 100%;
    display: block;
    padding-left: 0;
    padding-right: 0;
}

/* Some space after the elements in inline forms. */
.form-inline label, .form-inline input, .form-inline select {
    margin-right: 5px;
}

/* Some box with a background (like box-search-form but without the extra margin). */
.box-bg {
    background-color: #eee;
    border: 1px solid #ddd;
}

/* Some space between the checkbox and the label. */
input[type="checkbox"], input[type="radio"]{
    margin-right: 10px;
}

/* Padding instead of margin for form boxes, so that the background is
   distributed equal around the input. */
.form-group.box {
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 20px;

}

/* Some background to see the different input fields. */
.form-group.box:nth-child(2n+1) {
    background: #eee;
}

/* Mark required fields. */
.required label {
    font-weight: bold;
    font-size: 1.1em;
}

/* The label for composite fields should be smaller. */
label.composite {
    padding-left: 12px;
    font-size: .8em;
    color: #999;
}

/* Highlight label for composite fields on focus. */
input:focus + label.composite,
select:focus + label.composite,
textarea:focus + label.composite {
    color: #000;
}

/* Fix vertical offset. */
label {
    line-height: 35px;
    vertical-align: middle;
    margin-bottom: 0;
}

/* Alignment and indentation for checkboxes with labels. */
.checkbox-group {
    display: table;
}

.checkbox-group > * {
    display: table-cell;
}

.checkbox-group > input {
    vertical-align: bottom;
}

/* Fix padding of the select boxes that are not fully stylable within webkit.*/
select.form-control {
    padding-left: 9px;
}

option {
    /* This is the default in webkit and does not seem to be changeable. */
    padding-left: 2px;
}

/* Authority confidence icons */
img.ds-authority-confidence {
    width: 16px;
    height: 16px;
    margin-left: 5px;
    margin-bottom: 5px;
    padding: 0;
    vertical-align: middle;
    display: inline-block;
    background: transparent no-repeat center;
}

img.ds-authority-confidence.cf-blank {
    display: none;
}

img.ds-authority-confidence.cf-unset {
    background-image: url(../../images/authority_control/confidence/bug.png);
}

img.ds-authority-confidence.cf-novalue {
    background-image: url(../../images/authority_control/confidence/3-circleslash.gif);
}

img.ds-authority-confidence.cf-rejected,
img.ds-authority-confidence.cf-failed {
    background-image: url(../../images/authority_control/confidence/2-errortriangle.gif);
}

img.ds-authority-confidence.cf-notfound {
    background-image: url(../../images/authority_control/confidence/3-thumb2.gif);
}

img.ds-authority-confidence.cf-ambiguous {
    background-image: url(../../images/authority_control/confidence/4-question.gif);
}

img.ds-authority-confidence.cf-uncertain {
    background-image: url(../../images/authority_control/confidence/5-pinion.gif);
}

img.ds-authority-confidence.cf-accepted {
    background-image: url(../../images/authority_control/confidence/6-thumb2.gif);
}

input.ds-authority-lock {
    position: absolute;
    width: 22px;
    height: 22px;
    top: 2px;
    margin-left: -24px;
    background-color: #fff;
    background-size: contain;
}

input.ds-authority-lock.is-locked {
    background-image: url(../../images/authority_control/lock24.png);
}

input.ds-authority-lock.is-unlocked {
    background-image: url(../../images/authority_control/unlock24.png);
}

input.ds-authority-value {
    display: none;
}

input.ds-authority-value.ds-authority-visible {
    display: inline;
    width: 100%;
}

fieldset+fieldset {
    margin: 2em 0;
}

/* SHERPA/RoMEO formatting */
.sherpaList {
    margin: 0;
}

.sherpaList dt {
    font-weight: bold;
}

.sherpaMoreInfo {
    font-size: .8em;
    text-align: center;
    display: block;
    margin-top: -21px;
}

.sherpaVersion {
    border: 1px solid #ccc;
    padding: 14px 10px;
    margin-bottom: 21px;
}

.sherpaVersion .row {
    margin: 5px 0;
}

.ub-datenbank-search .search-button {
    padding: 4px 0;
    right: 10px;
    top: 0;
    text-align: right;
}

.ub-datenbank-search {
    margin: 0;
}

/* Browse button group */
.browse {
    text-align: center;
    margin: 20px 0;
    clear: both;
}

/* Remove border-radius from bootstrap pager buttons. */
.pager li > a, .pager li > span {
    border-radius: 0;
}

/* no-javascript banner */
#no-js-warning {
    background: #c00;
    text-align: center;
    color: #fff;
    font-weight: bold;
}

/* stacktrace on error page */
#errorstack {
    white-space: pre;
}

/* Item view page */
img.thumbnail {
    margin-top: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
}

.file-name {
    font-weight: bold;
    color: #666;
}

.file-label {
    margin-bottom: 1em;
}

img.file-locked {
    position: absolute;
    top: -3px;
}

.box-search-list.list-group .box-search-list-label {
    display: block;
}

.box-search-list.list-group {
    float: none;
}

.box-search-list-language {
    color: #888;
}

.box-pubtype {
    position: relative;
    top: -5px;
    margin-bottom: 5px;
    margin-right: 5px;
}

.license {
    font-weight: bold;
}

.license-logo img {
    width: 100%;
    max-width: 200px;
}

.list-group-item.row.hidden-metadata,
.list-group-item:nth-of-type(odd).row.hidden-metadata,
.list-group-item:nth-of-type(even).row.hidden-metadata {
    background: repeating-linear-gradient(
        135deg,
        transparent,
        transparent 10px,
        #eee 10px,
        #eee 20px
    );
}

.item-view-detail-refubium_note_intern {
    white-space: pre-line;
}

/* Replace NexusSans font through license-free SourceSan-family */
h1, h2, h3, /* later overwritten without NexusSans: h4, h5, h6, */
.h1, .h2, .h3, .h4, .h5, .h6,
.nada-identity-text,
.services-quick-access-caption,
.services-search .search-input,
.identity-text-parent-first, .identity-text-parent-second, .identity-text-parent-third,
.tabbed-breadcrumb .btn-group.level-0 .btn, .tabbed-breadcrumb .btn-group.level-1 .btn, .tabbed-breadcrumb .btn-group.level-2 .btn, .tabbed-breadcrumb .btn-group.level-3 .btn, .tabbed-breadcrumb .btn-group.level-4 .btn, .tabbed-breadcrumb .btn-group.level-5 .btn,
.main-nav-toggle-text,
.main-nav-item-link.level-1,
.box-text-headline {
    font-family: SourceSansPro, SourceSans, Arial, Helvetica, sans-serif;
}

@media only screen and (max-width: 989px) {
    .services .services-dropdown-button {
        font-family: SourceSansPro, SourceSans, Arial, Helvetica, sans-serif;
    }
}

.form-control.vocabulary {
    height: auto;
}

.form-control.vocabulary a {
    display: block;
}

/* The vocabulary container uses static form elements inside form groups for
   status messages. We have to move the margin to different elements, so that
   it disappears when the status message is hidden. */
.vocabulary-container .form-group {
    margin-bottom: 0;
}

.vocabulary-container fieldset {
    margin-bottom: 1em;
}

.vocabulary-container .form-control-static {
    padding-top: 0;
    margin-top: 1em;
}

/* Controlled vocabulary list (inside the dialog) */
ul.vocabulary .node.fa-li {
    font-size: 0.9em;
    top: 0.3em;
    left: -1.9em;
}

ul.vocabulary .fa-li.category {
    font-size: 1.2em;
    top: 0.03em;
    left: -1.9em;
}

ul.vocabulary {
    margin-left: 2.3em;
}

ul.vocabulary .fa-ul {
    margin-left: 1.5em;
}

/* Recent submissions on the collection/community pages */
.box-recent-submission {
    border: 1px solid #ccc;
    padding: 14px 10px;
    margin-bottom: 21px;
}

.box-recent-submission .box-title {
    font-size: 19px;
    line-height: 21px;
    font-weight: bold;

    margin-bottom: .4em;
    display: block;
}

.box-recent-submission .box-date {
    float: right;

    font-size: .9em;
    color: #999;
}

.box-recent-submission .box-abstract {
    margin-top: .8em;
    font-size: .9em;
    color: #555;
}

.box-recent-submission .box-abstract .hide-abstract {
    text-align: center;
    background: #efefef;
    padding: 2px;
}

.box-recent-submission .box-abstract .panel {
    /* This is just a dummy panel to make the accordion like collapsing. So
       disable all visible spacers around. */
    margin: 0;
    border: 0;
    padding: 0;
}

/* Disable transitions for collapsible bootstrap component */
.collapsing {
    -webkit-transition: none;
    transition: none;
}

/* Help links in the submission form. */
.help-link {
    padding-left: 5px;
}

.help-link i {
    color: #6b9e1f;
}

/*
  Fix colors of alert boxes:
  The default green does not fit so well to the green from the FuCD.
  Border of the box should be darker than its content.
*/
.alert-success {
    background-color: #c4d7a7;
    border-color: #6b9e1f;
}

.alert-info {
    background-color: #eee;
    border-color: #ddd;
}

.alert-danger {
    border-color: #900;
}

/*
  Badges with contextual classes. (This is a backport of a bootstrap 4 feature,
  with the colors of our btn-* classes.)
*/
.badge {
    color: #666;
}

.badge-primary {
    color: #fff;
    background-color: #06c
}

.badge-success {
    color: #fff;
    background-color: #9c0;
}

.badge-danger {
    color: #fff;
    background-color: #c00;
}

.badge-warning {
    color: #fff;
    background-color: #f90;
}

.badge-info {
    color: #fff;
    background-color: #999;
}

.badge-pubtype {
    color: #fff;
    background-color: #6b9e1f;
}

.doiStatus {
    vertical-align: middle;
    margin-top: -3px;
}

.imported-description {
    white-space: pre-line;
}

.context-actions {
    float: right;
    font-size: 1.2em;
    line-height: 1.6em;
}

.context-actions li {
    display: inline;
    margin-right: 5px;
}

.context-actions a {
    display: inline-block;
    width: 2em;
    text-align: center;
    border: 3px solid #6b9e1f;
    color: #6b9e1f;
}

.context-actions a:hover {
    color: #666;
    border-color: #666;
}

.context-actions + h1, .context-actions + h2,
.box > div:first-child > h1:first-child, .box > div:first-child > h2:first-child {
    margin-top: 0;
}

.create-context-action {
    font-weight: bold;
    font-style: italic;
}

.homepage-logo, .community-logo, .collection-logo {
    margin: 50px 0;
    text-align: center;
}

.homepage-logo img, .community-logo img, .collection-logo img {
    margin: 0;
}

img.dini-logo, img.dini-logo-footer {
    width: 200px;
}

img.dini-logo {
    display: none;
    margin: 2em auto 0;
}

img.dini-logo-footer {
    display: block;
    margin: 3em auto 0;
}

@media (max-width: 1200px) {
    .homepage-logo img, .community-logo img, .collection-logo img {
        max-height: 200px;
    }

    .homepage-logo img.dini-logo {
        width: 150px;
    }
}

@media (min-width: 768px) {
    .homepage-logo, .community-logo, .collection-logo {
        float: right;
        margin-top: 0;
        margin-left: 50px;
    }

    .homepage-logo img, .community-logo img, .collection-logo img, .homepage-logo img.dini-logo {
        display: block;
    }

    img.dini-logo-footer {
        display: none;
    }
}

.container-footer .logo-container {
    margin-top: 20px;
    text-align: left;
}

@media (min-width: 990px) {
    .container-footer .logo-container {
        text-align: right;
    }
}

.login-option {
    border: 2px solid #ccc;
}

.scroll-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 99;
    display: none;

    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;

    font-size: 1em;
    line-height: 35px;
    width: 35px;
    height: 35px;

    text-align: center;
}

@media (min-width: 768px) {
    .scroll-top {
        -webkit-border-radius: 18px;
        -moz-border-radius: 18px;
        border-radius: 18px;

        font-size: 1.4em;
        line-height: 50px;
        width: 50px;
        height: 50px;
    }
}

.scroll-top, .scroll-top:focus, .scroll-top:hover, .scroll-top:visited, .scroll-top:link {
    color: #6b9e1f;
    background: #fff;
    border: 2px solid #6b9e1f;
}

/* Fix breakpoints for modal width */
@media (min-width: 768px) {
    .modal-lg {
        width: 600px;
    }
}

@media (min-width: 990px) {
    .modal-lg {
        width: 900px;
    }
}

/* Choice Lookup */
#modal_choices_lookup .results {
    height: 300px;
}

@media (min-height: 800px) {
    #modal_choices_lookup .results {
        height: 600px;
    }
}

.modal .results {
    margin: 15px 5px 0;
    border: 1px solid #ccc;
    position: relative;
    overflow: auto;
}

.modal .results .result {
    display: block;
    line-height: 2.5em;
    border-bottom: 1px solid #ccc;
    padding: 0 10px;
}

.modal .results .load-more {
    text-align: center;
}

.filter-input {
    padding-right: 33px;
}

.filter-clear {
    position: absolute;
    right: 12px;
    top: 2px;
    bottom: 0;
    height: 1em;
    width: 20px;
    margin: auto;
    font-size: 1.4em;
    cursor: pointer;
    color: #ccc;
    background: #fff;
}

.loader {
    border: 7px solid #ccc;
    border-top: 7px solid #6b9e1f;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -25px 0 0 -25px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#lookup-search-results .bold {
    font-weight: bold;
}

#lookup-search-results ul.publication-records-modal {
    margin: 0;
}

#lookup-search-results ul.publication-records-modal > li {
    margin-top: 1.5em;
}

#lookup-search-results ul.publication-records-modal ul {
    list-style: none;
    padding: 0;
}

#lookup-search-results .loader {
    position: relative;
    margin: 0;
}

.publication-record {
    margin-bottom: 3em;
}

.publication-record .bold {
    font-weight: bold;
}


/* Admin: Edit metadata "table" */
.admin-edit-item-metadata .row.header {
    font-weight: bold;
    border-bottom: 2px solid #ccc;
    color: #666;
    display: none;
}

.admin-edit-item-metadata .box-search-list-label {
    display: block;
    margin-top: 5px;
}

@media (min-width: 768px) {
    /* responsive: Change headings to field labels on smaller screens. */
    .admin-edit-item-metadata .row.header {
        display: block;
    }

    .admin-edit-item-metadata .list-group-item .box-search-list-label {
        display: none;
    }
}

/* Buttons in confirm message for workflow actions */
.confirm-message {
    text-align: center;
}

.confirm-message input {
    padding-left: 3em;
    padding-right: 3em;
    margin-right: 2em;
}

.confirm-message input:last-child {
    margin-right: 0;
}

/* Tables */
table, tr.ds-table-row {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    border-left: 0;
    border-right: 0;
}

th.ds-table-header-cell {
    border-bottom: 2px solid #ccc;
}

table>thead>tr>th, table>thead>tr>td,
table>tbody>tr>th, table>tbody>tr>td,
table>tfoot>tr>th, table>tfoot>tr>td {
    border: 0;
}

/* Research Data */
.research-data-index pre,
.research-data-index code {
    color: #222;
}
