@charset "utf-8";
/* CSS Document */

html, body {
    margin: 0;
    padding: 0;
}
body {
    font-family: "Carlito", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
    line-height: 1.3em;
    color: #000000;
}
p {
    margin: 0.25em 0;    
}
.small {
    font-size: 0.8em;
    font-style: italic;
}
.selector {
    text-align: center;
    font-size: 0.95em;
}

#blurer {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    width: 100%;
    height: 100vh;
    background-color: rgba(255,255,255,0.25);
    backdrop-filter: blur(5px);
}
#modal {
    width: 90%;
    max-width: 400px;
    margin-top: -20vh;
    padding: 1em 2em;
    box-sizing: border-box;
    text-align: center;
    border: 2px solid #BE2BBB;
    border-radius: 8px;
    background: #fff;
    -webkit-box-shadow: 0 0 6px 2px rgba(0,0,0,0.1);
    box-shadow: 0 0 6px 2px rgba(0,0,0,0.1);
    z-index: 12;
}
#modal h1 {
    font-size: 1.2em;
    line-height: 1.25em;
    color: #BE2BBB;
    font-weight: 700;
}
#inamiForm {
    display: flex;
    justify-content: center;
    align-items: center;
}
input[type=text] {
    padding: 0.2em 1em;
    border: 1px solid #BE2BBB;
    border-radius: 25px 0 0 25px;
    font-family: "Carlito", sans-serif;
    font-weight: 400;
    color: #666;
    font-size: 0.95em;
    line-height: 1.2em;
    width: 130px;

}
input[type=submit] {
    padding: 0.2em 0.5em;
    border: 3px solid #BE2BBB;
    font-family: "Carlito", sans-serif;
    font-weight: 400;
    color: #FFF;
    font-size: 0.95em;
    line-height: 1em;
    background-color: #BE2BBB;
    border-radius: 0 25px 25px 0;
    cursor: pointer;
}
input[type=submit]:hover {
    background-color: #8A00D9;
}
input[type=submit]:disabled {
    background-color: #CCCCCC;
     border: 3px solid #CCCCCC;  
    color: #666666;           
    cursor: not-allowed;      
    opacity: 0.7;             
}
/* Si vous avez un pseudo-classe de focus sur le bouton, assurez-vous qu'elle n'annule pas le disabled */
input[type=submit]:disabled:focus {
    outline: none; /* Supprimer l'outline de focus si vous en aviez un, pour ne pas casser le style désactivé */
}
.input-wrapper {
    position: relative; /* Indispensable pour positionner l'icône */
    display: inline-block; /* Le wrapper prend juste la largeur de son contenu */
}
.input-wrapper::after {
    content: ''; /* Vide par défaut, sera rempli par JS via une classe */
    font-size: 1.2em;
    font-weight: bold;
    position: absolute;
    right: 5px; /* Ajustez cette valeur pour positionner l'icône */
    top: 50%;
    transform: translateY(-50%);
    opacity: 0; /* Caché par défaut */
    transition: opacity 0.3s ease, content 0s; /* Transition pour l'apparition/disparition, pas de transition sur content */
}

/* Style de la coche verte */
.input-wrapper.show-check::after {
    content: '✓'; /* Le caractère du V vert */
    color: green;
    opacity: 1; /* Affiche le V */
}

/* Style de la croix rouge */
.input-wrapper.show-cross::after {
    content: '✖'; /* Le caractère de la croix rouge (ou '✗', '✕') */
    color: red;
    opacity: 1; /* Affiche la croix */
}
#container {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    min-height: 100vh;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    box-sizing: border-box;
}
#header {
    width: 100%;
    text-align: center;
}
#header img {
    width: 85%;
    max-width: 440px;
}
#content {
    width: 90%;
    margin: 0 auto;
}
#homelanguage {
    margin-top: 2em;
}
.langbuttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
}
.langbuttons a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    background-color: #BE2BBB;
    color: #fff; 
    text-decoration: none;
    font-weight: 700;
    border-radius: 50%;
    transition: background-color 0.3s ease;
    font-size: 1.8em;
}
.langbuttons a:hover {
    background-color: #8A00D9; /* A slightly darker purple on hover */
}
footer {
    width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
    margin-top: 1em;
}
footer .legaline {
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    font-size: 0.75em;
    padding: 1.8em 2em;
    display: flex;
    justify-content : space-between;
    align-items: center;
    flex-direction: row;
}
footer .legaline a {
    text-decoration: none;
    color: #000;
}
footer .footlogo {
    padding: 1.8em 2em 0.25em;
    text-align: center
}
footer .footlogo img {
    width: 85%;
    max-width: 275px;
}
#approbation {
    font-size: 0.55em;
    line-height: 1.1em;
    font-weight: 100;
    position: fixed;
    right: .7em;
    bottom: 18em;
    -moz-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    transform-origin: 100% 100%;
}

  /*------------------------------*/
 /*          PAGE LISTE          */
/*------------------------------*/

#pagelanguage .langbuttons {
    gap: 8px;
    justify-content: flex-end;
}
#pagelanguage .langbuttons a {
    width: 60px;
    height: 60px;
    font-size: 1.2em;
    color: rgba(255,255,255,0.4);
}
#pagelanguage .langbuttons a.selected {
    color: #fff
}
#podcastlist {
    display: block;
    width: 100%;
    margin: 0 auto;
}
.podcast {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-bottom: 2.5em;
    column-gap: 2em;
}
.picto_podcast img {
    width: 100px;
    vertical-align: sub;
}
.picto_podcast.soon img {
    opacity: 0.5;
}
.descri_podcast {
    width: 100%;
    text-align: left;
}
.comingsoon {
    -moz-transform: rotate(-12deg);
    -webkit-transform: rotate(-12deg);
    -o-transform: rotate(-12deg);
    -ms-transform: rotate(-12deg);
    transform: rotate(-12deg);
    font-weight: 700;
    color: #BE2BBB;
    display: inline-block;
    float: left;
    margin-left: 1em;
    margin-top: -0.5em;
    text-transform: uppercase;
    font-size: 1.25em
}


  /*------------------------------*/
 /*          PAGE PODCAST        */
/*------------------------------*/

.bloctitre {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 0 1em 1em 1em;
    border: solid 1px #707070;
    border-radius: 10px;
    margin: 50px auto 1.5em;
}
.bloclogo {
    width: 90%;
    max-width: 280px;
    height: 80px;
    display: block;
    padding: 0 1em;
    background: #fff;
    margin: -40px auto 20px;
    text-align: center;
}
.bloclogo img {
    width: 100%;
    max-height: 80px;
}
.blocpodcastplayer {
    padding: 1.5em 0;
    text-align: center;
}
audio {
    width: 90%;
}

/*Formulaire*/

.form-container {
    background-color: #fff;
    padding: 30px;
    border: solid 1px #707070;
    border-radius: 10px;
/*    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);*/
    width: 100%;
    max-width: 550px;
    margin: 0 auto;
    display: none;
}
.form-container h3 {
    margin-bottom: 1em;
}
.radio-options label {
    margin-right: 10px;
    cursor: pointer;
    display: inline-block; /* Pour aligner les labels */
}
.radio-options input[type="radio"] {
    margin-right: 3px;
}
.rating-group {
    margin-bottom: 20px;
    padding: 0 10px;
}
.rating-label {
    font-weight: bold;
    margin-right: 10px;
}
button {
    background-color: #BE2BBB;
    color: white;
    padding: 10px 15px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1em;
    width: 100%;
}
button:hover {
    background-color: #8A00D9;
}
.error-message {
    color: red;
    font-size: 0.9em;
    margin-top: 5px;
    display: none; /* Caché par défaut */
}
.success-message {
    color: green;
    text-align: center;
    margin-top: 5px;
    margin-bottom: 5px;
    display: none;
}

p.approbation {
    font-size: 0.55em;
    line-height: 1.1em;
    font-weight: 100;
    text-align: right;
}















































