* {
    margin: 0;
    padding: 0;
    text-decoration: none;
    /* list-style: none; */
}

p {
    text-align: justify;
}

.fs-title {
    font-size: calc(1rem + 2.5vw);
    font-weight: 300;
    line-height: 1.2;
}

.h-full {
    height: 100vh;
    max-height: 100vh;
}

.h-90 {
    height: 90%;
}

.navbar .navbar-nav .navbar-band {
    color: #fff;
    font-size: 1em;
    font-family: droidarabickufi, majalla;
}

.navbar .navbar-nav .navbar-band:hover {
  background-color: beige;
  color: #010000;
  padding: 0 5px;
}

#navbarMobile .navbar-brand {
    color: #fff;
    font-family: droidarabickufi, majalla;
    font-size: 1.1em;
    margin-right: 1rem;
}

.qtext--header .nav-item{
    color: white;
    margin: 0 10px;
    font-family: droidarabickufi, majalla;
    padding: 10px 0px 10px 0px;
    font-size: 1.3em;
}

.navbar-quran {
    background: linear-gradient(
        to right,
        #0f5132,
        #198754,
        #0f5132
    );
}

#myInput.form-control, #mySouar.form-control, #search-input {
    width: 100%;
    font-size: 1.1em;
}

.list-group-item.active .SuraItem .number, .SuraItem:hover .number, .aya-active{
    background: #00437a;
    color: #fff !important;
}

.list-group-item.active .item-font {
    color: white;
}

.list-group-item {
    background-color: rgba(255, 255, 255, 0.7);
}

.list-group-scroll {
    max-height: 71vh; 
    overflow-y: auto;
}

.item-font {
    /* font-weight: bold; */
    font-family: droidarabickufi;
    color: darkblue;
    font-size: 1rem;
    padding: 5px;
}

.text-small{
    font-size: 1em;
}

.text-medium{
    font-size: 1.2em;
}

.title-para {
    font-family: droidarabickufi, majalla;
    font-size: 1rem;
    font-weight: bold;
}

#detail_tafsir {
    height: 80vh;
    overflow-y: auto;
    padding: 30px;
    border: 2px;
    font-size: 1.5rem;
    text-align: justify;
}

.h-cadre {
    max-height: 80vh;
    overflow-y: auto;
    background: rgba(255, 255, 255, 0.7);
}

.nav-tabs {
    font-family: droidarabickufi, majalla;
    font-size: 0.8em;
    border: none;
}

.nav-link {
    display: block;
    padding: 0 10px;
}

.SuraItem {
    padding: 10px 0;
    font-family: droidarabickufi, majalla;
    font-size: 0.8em;
}

#list-souar .SuraItem .name {
    font-size: 1.2em;
}

.name {
    font-size: 1.2em;
}


.number {
    font-size: 1.2em;
    margin: 0 5px 0 10px;
}

.SuraItem .number {
    height: 25px;
    width: 25px;
    border-radius: 25px;
    display: inline-block;
    text-align: center;
    font-weight: 600;
    background: #ede9dc;
}

#mosshaf-box, #nav-soura, #nav-jouze, #nav-hizb {
    /* height: calc(100vh - 100px); */
    height: 80vh;
    overflow: auto;
    margin-bottom: 10px;
}

#nav-soura-tab, #nav-jouze-tab, #nav-hizb-tab {
    font-size: 1.1rem;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-link:focus {
    background: linear-gradient(135deg, #063e32, #086348);
    color: #fff;
}

#bayan-box {
    height: 100%; /*calc(86vh - 68px);*/
    display: flex;
    flex-direction: column;
    padding: 0;
    overflow: hidden;
}

#bayan-aya {
    flex: 0 0 auto;

    max-height: 25%;
    overflow-y: auto;

    margin: 15px;
    padding: 18px 25px;

    background: linear-gradient(to bottom, #fffdf8, #f7f4ec);

    border: 2px solid #d9c8a1;
    border-radius: 16px;

    box-shadow: 0 3px 10px rgba(0,0,0,.08);

    text-align: center;
    direction: rtl;

    font-family: QuranTitles, "Amiri", serif;
    font-size: 2.1rem;
    line-height: 2;
    color: #163c87;
}

#bayan-text {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 18px 22px;
    font-size: 1.3rem; 
}

.title-tafsir {
    color: darkred;
    font-family: droidarabickufi, majalla;
    font-size: 1rem;
    padding: 10px 0;
    font-weight: bold;
    /* background-color: beige; */
}

.basmala {
    display: block;
    margin: 0 auto;
}

.text-aya {
    font-family: thmanichafs1, majalla;
    font-size: 1.5rem;
    color: #020486;
    text-align: center;
}

#ls-souar, #ls-ajzae, #ls-ahzab {
    height: calc(100vh - 60px);  
}

.card {
    /* height: calc(100vh - 60px); */
    height: 86vh;
    margin-top: 1px;
    padding-bottom: 3px;
}

.text-mosshaf {
    font-family: thmanichafs1, majalla;
    margin-left: 2px;
    margin-right: 2px;
    font-size: 1.8rem;
    line-height: 2em;
    font-weight: 400;
}

.text-mosshaf a,
li a {
    text-decoration: none;
    color: black;
}

.text-mosshaf a:hover {
    background-color: beige;
    color: rgb(193, 16, 24) !important;
}


.title-soura {
    padding-bottom: 50px;
}

.suraFont {
    color: #00437a;
    font-family: sura_title;
    text-align: center;
    width: 100%;
    font-size: 1.4rem;
}

 .text-white {
    color: #fff;
    background-color: #020486;
 }

 .bg-white-70 {
    background-color: rgba(255, 255, 255, 0.7);
 }

 .btn-link {
    color: white;
    text-decoration: none;
    font-family: droidarabickufi, majalla;
    font-size: 0.9em;
}

.btn-check:focus+.btn,
.Mpanel-Head .btn:focus,
.Mpanel-Head .btn:active {
    outline: 0;
    box-shadow: none!important;
    border: none;
}

.slider {
    background-color: #f9f7f2;
    width: 100%;
    height: 50px; 
}

.slider .show-value {
    position: relative;
    width: 100%;
    height: 55px; 
 }

 .slider .page-slider {
    transform: translate3d(500px, 42px, 0px);
 }

 .slider input[type="range"] {
    appearance: none;
    margin: 0 15px;
    width: calc(100% - 30px);
    height: 2px;
    background: #c5c5cb;
    color: black;
    border-radius: 2px;
    outline: none;
    border: none;
 }

 .slider input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 15px;
    height: 20px;
    background: #9f7b4e;
    border-radius: 10px;
    cursor: pointer;
 }

 .slider .range {
    position: relative;
    padding-bottom: 10px;
    margin: 0 10px 5px;
    font-family: 'Times New Roman', Times, serif;
 }

 .slider .range div {
    position: absolute;
    width: 30px;
    text-align: center;
    color: #9f7b4e;
    font-weight: 600;
    background-color: #fff;
    border-radius: 50%;
 }

 .slider .range div:nth-child(2) {
    left: 0px;
 }

.custom-range {
    width: 100%;
    height: 1.4rem;
    padding: 0;
    background-color: transparent;
    appearance: none;
    -moz-appearance: none;
    appearance: none
}


.SuraTitleWrap .sura-title-bg {
    width: 100%;
    max-width: 650px;
}

.SuraTitletext.suraFont {
    font-size: 26px;
    color: #864b4b
}

.SuraTitleWrap .SuraTitletext {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    align-items: center;
    display: flex;
    width: 100%;
    height: 100%;
}

.SuraTitleWrap {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 1rem;
    position: relative;
}

.date-font {
    font-family:'Times New Roman', Times, serif;
}

.text-ref {
    font-size: 1rem;
} 

.Mpanel-Head .qtext--header {
    display: flex;
    align-items: center;      /* centrage vertical */
    justify-content: space-between;
    min-height: 56px;
    margin: 0;
    padding: 0 10px;
}

.qtext--header .nav-item.title-bayan {
    display: flex;
    align-items: center;
    gap: 4px;
    height: 100%;
}

.header-tools {
    display: flex;
    align-items: center;
    gap: 6px;
}

#sec-bayan .Mpanel-Head,
#sec-mosshaf .Mpanel-Head,
#sec-search .Mpanel-Head,
#menu-souar .Mpanel-Head{
    background: linear-gradient(135deg, #063e32, #086348);
    color: #fff;
    height: 68px;
    min-height: 68px;
    border-bottom: 1px solid #fff;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}

#sec-bayan .qtext--header,
#sec-mosshaf .qtext--header {
    height: 100%;
    margin-bottom: 0;
    padding: 0 2px;
}

#btSlider {
    padding: 0;
    color: #fff;
    text-decoration: none;
}

.section-tools .btn {
    padding: 2px 6px;
    font-size: 0.85rem;
    line-height: 1.2;
}

.Mpanel-Head .btn-outline-light {
    border-color: rgba(255,255,255,.6);
    color: #fff;
}

.Mpanel-Head .btn-outline-light:hover {
    background-color: rgba(255,255,255,.15);
}

.flex {
    display: flex
}

.flex-row {
    flex-direction: row
}

.flex-col {
    flex-direction: column
}

.disp-mobile {
    display: none;
}

.disp-not-mobile {
    display: inline;
}


#col-tafassir, #col-taarif, #menu-souar, #col-mosshaf, #col-bayan, #col-search {
    height: auto;
    padding-top: 90px;
}

.card-header {
    background-color: #864b4b;
    color: #fff;
}

.close {
    padding: 1rem 1rem;
    margin: -1rem auto -1rem -1rem;
    border:none;
    background:transparent;
    color: #fff;
}

.disp-col-flottante {
    position: relative;
    display: none;
}

.header-souar {
    display: none;
}

.disp-inline-block {
    display: inline-block;
}

#list-souar-search {
    height: 75vh;
    overflow-y: scroll;
}

#search-result {
    height: 65vh;
    overflow-y: scroll;
    font-size: 1.3em;
}

#list-souar-search .form-check {
    margin-bottom: 0.8rem;
}

.bg-head {
    background: linear-gradient(135deg, #063e32, #086348);
    color: #fff;
    font-size: 1.3em;
}

.table {
    --bs-table-striped-bg: #f9fbde !important;
  }

.table a {
    text-decoration: none;
    color: black;
    cursor: pointer;
}

.table a:hover {
    background-color: beige;
    color: rgb(193, 16, 24) !important;
}

#bt-prev .bi,
#bt-next .bi,
#bt-slider .bi {
    font-size: 1.5rem;
    color: white;
    padding: 0;
}

#col-taarif .Mpanel-Head {
    background: linear-gradient(135deg, #063e32, #086348);
    color: #fff;
    height: 68px;
    min-height: 68px;
    border-bottom: 1px solid #fff;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}

.navbar-nav .nav-link,
.navbar-nav .navbar-brand {
    padding: 8px 16px;
    margin: 0 4px;    
    border-radius: 999px;
    transition: all .3s ease;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .navbar-brand:hover {
    background-color: #fff;
    color: #063e32 !important;
    border-radius: 100px;
    box-shadow: 0 2px 8px rgba(0,0,0,.15);
}

.dropdown-menu {
    border: none;
    border-radius: 12px;
    padding: 8px;
    box-shadow: 0 8px 20px rgba(0,0,0,.15);
}

.dropdown-item {
    font-family: droidarabickufi, majalla;
    font-size: 1em;
    border-radius: 999px;
    margin: 4px 0;
    padding: 8px 16px;
    transition: all .2s ease;
}

.dropdown-item:hover,
.dropdown-item:focus {
    background: linear-gradient(135deg, #063e32, #086348);
    color: #fff;
}

.navbar-nav .nav-link:hover,
.navbar-nav .navbar-brand:hover {
    transform: translateY(-2px) scale(1.03);
    box-shadow: 0 4px 10px rgba(0,0,0,.15);
}

.navbar .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all .25s ease;
}

.navbar .dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.construction-page {
    min-height: calc(100vh - 120px);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 40px 20px;
    background:
        linear-gradient(rgba(255,255,255,.92),
                        rgba(255,255,255,.92)),
        url("../img/bg-pattern.png");
}

.construction-card {
    max-width: 750px;
    width: 100%;
    text-align: center;
    background: #fff;
    padding: 50px;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
    border-top: 6px solid #086348;
}

.construction-logo {
    width: 120px;
    margin-bottom: 25px;
}

.construction-title {
    color: #063e32;
    font-size: 2.3rem;
    font-weight: bold;
    margin-bottom: 20px;
    font-family: droidarabickufi, sans-serif;
}

.construction-subtitle {
    font-size: 1.3rem;
    color: #8c6a3b;
    margin-bottom: 20px;
    font-family: droidarabickufi, sans-serif;
}

.construction-text {
    font-size: 1.15rem;
    line-height: 2;
    color: #444;
    margin-bottom: 30px;
}

.construction-icon {
    font-size: 5rem;
    color: #086348;
    margin-bottom: 25px;
}

.construction-btn {
    padding: 10px 25px;
    border-radius: 999px;
    font-family: droidarabickufi, sans-serif;
}


@media (max-width: 450px) {
    .fs-sm-6 {
        font-size: 1rem;
        font-weight: 300;
        line-height: 1.2;
    }

    .image-reduite {
        width: 180px;
        height: auto;
        padding-top: 20px;
    }

    .image-reduite-title {
        width: 350px;
        height: auto;
        padding-top: 20px;
    }

    .image-reduite-logo {
        width: 120px;
        height: auto;
        padding-bottom: 20px;
    }

    .image-reduite-title-top {
        width: auto;
        height: auto;
        padding-bottom: 20px;
    }


    .disp-col-mobile {
        display: none;
    }

    #ico-close {
        display: none;
    }

    .col-flottante {
        position: absolute; 
        top: 90px;
        left: 0; 
        right: -1000px; 
        width: fit-content;
        z-index: 10; 
    }

    .disp-col-flottante {
        right: 0; 
        display: block;
    }

    .header-souar {
        display: block;
    }

    #nav-soura {
        height: 75vh;
    }

    #navbarMobile .nav-item {
        margin: 1rem 0;
    }
}

@media (max-width: 995px) {
    .disp-mobile {
        display: inline;
    }

    .disp-not-mobile {
        display: none;
    }

    .col-flottante {
        position: absolute; 
        top: 90px;
        left: 0; 
        right: -1000px; 
        width: fit-content;
        z-index: 10; 
        height: calc(1em - 90px);
    }

    .disp-col-flottante {
        right: 0; 
        display: block;
    }

    .header-souar {
        display: block;
    }

    #nav-soura {
        height: 75vh;
    }

    .navbar .dropdown-menu {
        position: static;
        display: none;
        float: none;
        margin-top: 5px;
        padding: 1px;
        text-align: right;
    }

    .navbar .dropdown-menu.show {
        display: block;
    }    
}

@media (min-width: 992px) {
    .navbar .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 8px;
    }
}