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

a:not(.fr-btn) {
    box-shadow: none !important
}

a:hover {
    text-decoration: initial;
    color: initial
}

body {
    margin-bottom: 220px
}

header img {
    max-height: 90px
}

:root[data-fr-scrolling] body {
    position: unset
}

footer {
    position: absolute;
    bottom: 0;
    width: 100%
}

.gn-logo {
    background-image: url(../img/sn_logo.png);
    background-repeat: no-repeat;
    background-size: 250px 92px;
    background-position: -20px -10px;
    height: 70px;
    width: 210px
}

.fr-tag .badge-light {
    font-size: 15px
}

div.noscript-message {
    background-image: url(../img/warning.png);
    background-repeat: no-repeat;
    height: 64px;
    padding-left: 80px;
    padding-top: 25px
}

@media screen and (min-width: 78em) {

    .fr-container,
    .fr-container-lg,
    .fr-container-md,
    .fr-container-sm {
        max-width: 95rem !important
    }
}

.btn-sm {
    padding: 0.1rem .6em !important
}

.fr-error-text {
    display: none
}

label {
    margin-bottom: 0 !important
}

.fr-footer__brand .fr-logo:before {
    background-image: url(../img/sn_puce.jpg);
    background-repeat: no-repeat;
    background-size: 30px 30px;
    height: 30px;
    width: 30px
}

.fr-footer__brand .fr-logo:after {
    background: none
}

a.mime,
span.mime {
    --blend-position: 0% !important;
    background-repeat: no-repeat;
    background-size: 30px;
    padding: 4px 0 4px 40px;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 10px
}

.mime.folder {
    background-image: url(../img/folder.png);
    background-size: 40px;
    padding: 6px 0 6px 40px
}

.mime.pdf {
    background-image: url(../img/mime_pdf.png)
}

.mime.doc {
    background-image: url(../img/mime_doc.png)
}

.mime.docx {
    background-image: url(../img/mime_docx.png)
}

.mime.html {
    background-image: url(../img/mime_html.png)
}

.mime.odg {
    background-image: url(../img/mime_odg.png)
}

.mime.odp {
    background-image: url(../img/mime_odp.png)
}

.mime.ods {
    background-image: url(../img/mime_ods.png)
}

.mime.odt {
    background-image: url(../img/mime_odt.png)
}

.mime.ppt {
    background-image: url(../img/mime_ppt.png)
}

.mime.pptx {
    background-image: url(../img/mime_pptx.png)
}

.mime.txt {
    background-image: url(../img/mime_txt.png)
}

.mime.xls {
    background-image: url(../img/mime_xls.png)
}

.mime.xlsx {
    background-image: url(../img/mime_xlsx.png)
}

.mime.vsd {
    background-image: url(../img/mime_vsd.png)
}

.mime.rtf {
    background-image: url(../img/mime_rtf.png)
}

.mime.xml {
    background-image: url(../img/mime_xml.png)
}

.mime.csv {
    background-image: url(../img/mime_csv.png)
}

.mime.json {
    background-image: url(../img/mime_json.png)
}

.mime.audio {
    background-image: url(../img/file_audio.png)
}

.mime.video {
    background-image: url(../img/file_video.png)
}

.mime.image {
    background-image: url(../img/file_image.png)
}

.mime.base {
    background-image: url(../img/file_base.png)
}

span.address {
    display: block;
    margin-top: 15px;
    font-style: italic;
    font-size: 0.75rem
}

span.online-date {
    display: block;
    margin-top: 8px;
    font-style: normal;
    font-size: 0.73rem
}

@media screen and (max-width:1024px) {
    .document-header span.title {
        width: 60% !important
    }
}

@media screen and (max-width:950px) {
    header img {
        display: none
    }
}

@media screen and (max-width:880px) {
    header h1 {
        background-image: none;
        margin-left: 25px;
        padding-left: 0
    }
}

@media screen and (max-width:770px) {
    #results-area li.list-group-item iframe {
        display: none
    }

    header h1 span {
        display: none
    }
}

div.pdf-display {
    margin-top: 20px;
    max-width: 300px;
    max-height: 220px;
    overflow-y: scroll;
    overflow-x: hidden;
    border: 1px solid rgba(0, 0, 0, .125)
}

div.pdf-display .spinner-border {
    margin: 6rem !important
}

div.pdf-display .message {
    width: 300px;
    height: 220px;
    line-height: 220px
}

div.pdf-display canvas {
    margin-left: -20px;
    max-width: 340px
}

span.permalink {
    cursor: pointer;
    font-style: italic;
    display: block;
    font-size: 14px;
    margin: 0px 5px 10px;
    width: 300px
}

.document-header {
    --hover-tint: var(--hover);
    --active-tint: var(--active);
    margin: -0.75rem -1.25rem;
    padding: 0.75rem 1.25rem
}

.document-header:hover {
    background-color: var(--hover-tint);
    cursor: pointer
}

.document-header[aria-expanded=true],
.document-title {
    background-color: var(--active-tint)
}

.document-header span.title::first-letter,
.document-title span.title::first-letter {
    text-transform: uppercase;
    font-size: 1.3rem;
    font-weight: bold
}

.document-header span.title,
.document-title span.title {
    text-transform: lowercase;
    position: absolute;
    top: 11px;
    left: 50px;
    height: 27px;
    width: 80%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.document-header span.date,
.document-title span.date {
    position: absolute;
    top: 12px;
    right: 20px
}

#results-area li.list-group-item iframe {
    border: 1px solid black;
    height: 100%;
    margin-left: 20px
}

#results-area li.list-group-item ul {
    list-style-type: none;
    margin-left: -17px
}

#results-area li.list-group-item a.fr-btn:hover {
    text-decoration: none;
    color: var(--text-action-high-blue-france)
}

#results-area li.list-group-item a.fr-btn[target=_blank]:after {
    display: none
}

#results-area ul.list-group,
#admin-results-area ul.list-group {
    margin-top: 20px !important
}

#results-area ul.list-group>li div.collapse,
#results-area ul.list-group>li div.collapsing {
    margin-top: 15px !important;
    font-size: 0.95rem;
    color: #383838
}

#admin-results-area ul.list-group>li {
    padding: 0
}

#admin-results-area ul.list-group>li span.date {
    position: absolute;
    top: 6px !important;
    right: 45px !important
}

#admin-results-area ul.list-group>li i.fa-times {
    position: absolute;
    top: 5px;
    right: 10px;
    cursor: pointer;
    font-size: 26px;
    color: #d00707
}

#admin-results-area ul.list-group>li a {
    margin-left: 5px
}

#admin-results-area span.permalink {
    width: 275px;
    font-size: 11pt;
    margin-left: 35px
}

#admin-results-area input[type="checkbox"] {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto
}

#admin-results-area .form-check {
    margin: 15px 0 0 -10px
}

#admin-results-area .form-check label {
    margin-left: 10px
}

#admin-results-area #select-all-document {
    cursor: pointer
}

#admin-results-area input.select-document {
    cursor: pointer;
    float: left;
    margin: 10px
}

#admin-results-area .document-link {
    margin-left: 30px
}

#admin-results-area span.title {
    height: 30px;
    margin: 3px 0 0 0;
    width: 80%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

#results-area a[href],
#results-area a[href]:hover {
    background-position: inherit;
    background-size: 30px
}

#results-area a[href]:hover {
    text-decoration: underline
}

.modal-dialog {
    max-width: 800px
}

ul#documents {
    list-style: none !important
}

ul#documents>li.folder {
    margin: -7px -5px -5px -5px
}

ul#documents>li.file {
    margin: -5px
}

#documents a[href],
#documents a[href]:hover {
    background-position: inherit;
    background-size: 30px
}

#documents a[href].folder,
#documents a[href].folder:hover {
    background-size: contain
}

#documentsa[href]:hover {
    text-decoration: underline
}

.dm-uploader {
    text-align: center;
    border: 1px solid #ced4da;
    border-radius: .2rem
}

.dm-uploader img {
    width: 90px
}

.card {
    border: 1px solid #ced4da
}

.card .card-header {
    padding: .40rem 0.75rem
}

.card #files li.media {
    font-size: 13px
}

.card #files li.media i.fas {
    float: right;
    cursor: pointer;
    font-size: 18px;
    color: #d00707
}

h3.dropzone {
    display: block;
    margin: auto;
    background-image: url(../img/dropzonim.jpg);
    background-repeat: no-repeat;
    background-size: 90px;
    height: 90px;
    text-align: left;
    padding: 30px 0 0 100px
}

.custom-file-input~.custom-file-label:lang(fr)::after {
    content: "Choisir un document..."
}

nav#breadcrumb {
    position: relative;
    margin-top: 25px
}

nav#breadcrumb .fas {
    position: absolute;
    top: 17px;
    right: 15px
}

#document-viewer .fr-highlight p,
#document-viewer .fr-highlight .fr-download .fr-download__link {
    font-size: 0.75rem;
    line-height: 1rem;
    margin: 0
}

#document-viewer .document-title {
    position: relative;
    margin-bottom: 30px;
    background-color: #f6f6f6;
    height: 50px
}

#document-viewer .fr-highlight hr {
    padding: 1px
}