/* FORMULAIRE "REFERER UN CAS" */

div#referercas {margin:10px auto 70px auto; max-width:1100px; color:#243746;}

/* EN-TETE */
.rc_entete {text-align:center; margin:0 auto 35px auto; max-width:760px;}
.rc_titre {display:inline-block; font-size:3em; font-weight:normal; color:#062a78; letter-spacing:1px; padding:4px 10px;}
.rc_intro {margin:18px 0 0 0; font-size:1.05em; line-height:1.5em; color:#5c5c5c;}

/* ENCARTS */
.rc_encart {position:relative; min-width:0; margin:0 0 28px 0; padding:30px 30px 26px 30px; background:#FFF; border:1px solid #e3e6ec; border-left:6px solid #062a78; border-radius:0.5em; box-shadow:0 4px 14px rgba(6, 42, 120, 0.06);}
.rc_encart_client {border-left-color:#00a89e;}
.rc_encart_animal {border-left-color:#f47300;}
.rc_encart_cas {border-left-color:#243746;}
.rc_encart_documents {border-left-color:#00a89e;}
/* retour sur la zone des documents après ajout / retrait d'un fichier : marge pour ne pas passer sous le bandeau fixe */
#rc_documents {scroll-margin-top:140px;}

.rc_encart legend {display:flex; align-items:center; padding:0 12px 0 0; font-family:'Bebas Neue', cursive; font-size:1.9em; letter-spacing:1px; color:#062a78; background:#FFF;}
.rc_num {display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; margin:0 12px 0 0; border-radius:50%; background:#062a78; color:#FFF; font-family:'Montserrat', sans-serif; font-size:0.5em; font-weight:700;}
.rc_encart_client .rc_num {background:#00a89e;}
.rc_encart_animal .rc_num {background:#f47300;}
.rc_encart_cas .rc_num {background:#243746;}
.rc_encart_documents .rc_num {background:#00a89e;}

/* GRILLE DES CHAMPS */
.rc_grille {display:grid; grid-template-columns:1fr 1fr; gap:18px 24px;}
.rc_grille_3 {grid-template-columns:1fr 1fr 1fr;}
.rc_champ_large {grid-column:1 / -1;}

.rc_champ label {display:block; margin:0 0 6px 0; font-size:0.9em; font-weight:700; color:#243746;}
.rc_obligatoire {color:#c00000; font-weight:700;}

div#referercas input[type="text"],
div#referercas input[type="tel"],
div#referercas input[type="email"],
div#referercas select,
div#referercas textarea {
	width:100%;
	padding:11px 14px;
	font-size:0.95em;
	color:#243746;
	background:#f7f8fa;
	border:1px solid #d5dae3;
	border-radius:0.4em;
	box-sizing:border-box;
	transition:border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
div#referercas textarea {resize:vertical; min-height:110px; line-height:1.45em;}
div#referercas select {cursor:pointer;}
div#referercas input:focus,
div#referercas select:focus,
div#referercas textarea:focus {outline:none; background:#FFF; border-color:#062a78; box-shadow:0 0 0 3px rgba(6, 42, 120, 0.15);}
div#referercas ::placeholder {color:#9aa3b2;}

/* CHAMPS EN ERREUR */
.rc_champ_erreur input,
.rc_champ_erreur select,
.rc_champ_erreur textarea {border-color:#c00000 !important; background:#fff5f5 !important;}
.rc_champ_erreur > label,
.rc_choix.rc_champ_erreur .rc_choix_titre {color:#c00000;}

/* CHOIX DU TYPE DE DEMANDE */
.rc_choix {margin:26px 0 0 0; padding:20px 0 0 0; border-top:1px dashed #d5dae3;}
.rc_choix_titre {margin:0 0 12px 0; font-size:0.9em; font-weight:700;}

.rc_radio {display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; margin:0 0 10px 0; padding:12px 16px; background:#f7f8fa; border:1px solid #e3e6ec; border-radius:0.4em; transition:border-color 0.2s, background 0.2s;}
.rc_radio label {display:flex; align-items:center; flex:1 1 280px; cursor:pointer; font-size:0.95em;}
.rc_radio input[type="radio"] {flex:0 0 auto; width:20px; height:20px; margin:0 12px 0 0; accent-color:#062a78; cursor:pointer;}
.rc_radio:has(input[type="radio"]:checked) {background:#eef2fa; border-color:#062a78;}
.rc_radio_examen label {flex:0 0 auto;}
.rc_radio_examen input[type="text"] {flex:1 1 220px; width:auto !important; background:#FFF !important;}
.rc_radio_examen.rc_champ_erreur input[type="text"] {border-color:#c00000 !important;}

/* ZONE DE DEPOT DES DOCUMENTS */
.rc_depot {position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:30px 20px; text-align:center; background:#f3fbfa; border:2px dashed #00a89e; border-radius:0.6em; cursor:pointer; transition:background 0.2s, border-color 0.2s;}
.rc_depot:hover, .rc_depot_survol {background:#e2f6f4; border-color:#008d84;}
.rc_depot input[type="file"] {position:absolute; top:0; left:0; width:100%; height:100%; opacity:0; cursor:pointer;}
.rc_depot_picto {display:block; font-size:2.4em; line-height:1em; color:#00a89e;}
.rc_depot_texte {display:block; margin:10px 0 6px 0; font-size:1.05em; color:#243746;}
.rc_depot_texte u {color:#008d84;}
.rc_depot_info {display:block; font-size:0.82em; color:#5c5c5c;}
.rc_depot_envoi {opacity:0.6; pointer-events:none;}

.rc_noscript {margin:10px 0 0 0; text-align:center;}
.rc_bouton_secondaire {padding:8px 18px; font-size:0.9em; color:#FFF; background:#00a89e; border:0; border-radius:0.4em; cursor:pointer;}

.rc_chargement {margin:12px 0 0 0; padding:10px 14px; font-size:0.9em; color:#062a78; background:#eef2fa; border-radius:0.4em;}
.rc_chargement[hidden] {display:none;}
.rc_chargement:before {content:''; display:inline-block; width:14px; height:14px; margin:0 10px -2px 0; border:2px solid #062a78; border-right-color:transparent; border-radius:50%; animation:rc_rotation 0.8s linear infinite;}
@keyframes rc_rotation {to {transform:rotate(360deg);}}

.rc_erreur_fichier {margin:12px 0 0 0;}
.rc_erreur_fichier:empty {display:none;}
.rc_erreur_fichier p.erreur {margin:0 0 6px 0; padding:8px 12px; font-size:0.88em; color:#a60000; background:#fff0f0; border-left:4px solid #c00000; border-radius:0.3em;}

/* JAUGE DE POIDS */
.rc_jauge {margin:22px 0 0 0;}
.rc_jauge_barre {display:flex; height:14px; overflow:hidden; background:#e9edf2; border-radius:7px;}
.rc_jauge_segment {display:block; height:100%; background:#00a89e; border-right:2px solid #FFF; box-sizing:border-box; transition:width 0.4s;}
.rc_jauge_segment:nth-child(even) {background:#008d84;}
.rc_jauge_attention .rc_jauge_segment {background:#f47300;}
.rc_jauge_attention .rc_jauge_segment:nth-child(even) {background:#d96600;}
.rc_jauge_plein .rc_jauge_segment {background:#c00000;}
.rc_jauge_plein .rc_jauge_segment:nth-child(even) {background:#a60000;}
.rc_jauge_attente {display:block; width:0; height:100%; background:repeating-linear-gradient(45deg, #9fd9d4, #9fd9d4 6px, #c9ebe8 6px, #c9ebe8 12px); transition:width 0.3s;}
.rc_jauge_attente_trop {background:repeating-linear-gradient(45deg, #e88a8a, #e88a8a 6px, #f5c6c6 6px, #f5c6c6 12px);}
.rc_jauge_legende {display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 20px; margin:8px 0 0 0; font-size:0.85em; color:#5c5c5c;}
.rc_jauge_legende strong {color:#243746;}
.rc_jauge_plein .rc_jauge_restant strong {color:#c00000;}

/* LISTE DES DOCUMENTS */
.rc_liste_fichier {margin:18px 0 0 0; padding:0; list-style:none;}
.rc_fichier {display:flex; align-items:center; gap:14px; margin:0 0 8px 0; padding:10px 12px; background:#f7f8fa; border:1px solid #e3e6ec; border-radius:0.4em;}
.rc_fichier_type {flex:0 0 46px; height:46px; display:flex; align-items:center; justify-content:center; font-family:'Montserrat', sans-serif; font-size:0.72em; font-weight:700; color:#FFF; border-radius:0.35em;}
.rc_fichier_type_pdf {background:#c00000;}
.rc_fichier_type_img {background:#062a78;}
.rc_fichier_info {flex:1 1 auto; min-width:0;}
.rc_fichier_nom {display:block; font-weight:700; font-size:0.92em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.rc_fichier_poids {display:block; font-size:0.8em; color:#5c5c5c;}
.rc_fichier_suppr {flex:0 0 34px; width:34px; height:34px; font-size:1.4em; line-height:1em; color:#5c5c5c; background:#FFF; border:1px solid #d5dae3; border-radius:50%; cursor:pointer; transition:color 0.2s, border-color 0.2s, background 0.2s;}
.rc_fichier_suppr:hover {color:#FFF; background:#c00000; border-color:#c00000;}
.rc_aucun_fichier {margin:14px 0 0 0; font-size:0.88em; font-style:italic; color:#9aa3b2;}

/* ERREURS GENERALES */
.rc_erreurs {margin:0 0 28px 0; padding:18px 22px; background:#fff0f0; border:1px solid #ffcbcb; border-left:6px solid #c00000; border-radius:0.5em;}
.rc_erreurs_titre {margin:0 0 8px 0; font-weight:700; color:#a60000;}
.rc_erreurs p.erreur {margin:0 0 4px 0; font-size:0.9em; color:#a60000;}

/* ENVOI */
.rc_envoi {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; margin:10px 0 20px 0;}
/* le captcha prend 99% de son conteneur (max 330px) : le conteneur doit donc avoir une largeur propre */
.rc_captcha {flex:0 1 330px; width:330px; max-width:100%;}
.rc_captcha .iconcaptcha-holder {width:100%;}
.rc_captcha.rc_champ_erreur {padding:4px; border:2px solid #c00000; border-radius:0.4em;}
.rc_bouton_envoyer {padding:16px 42px; font-family:'Montserrat', sans-serif; font-size:1em; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; color:#FFF; background:#f47300; border:0; border-radius:2em; box-shadow:0 6px 16px rgba(244, 115, 0, 0.3); cursor:pointer; transition:background 0.2s, transform 0.2s, box-shadow 0.2s;}
.rc_bouton_envoyer:hover {background:#062a78; box-shadow:0 6px 16px rgba(6, 42, 120, 0.3); transform:translateY(-2px);}
.rc_bouton_envoi_en_cours, .rc_bouton_envoi_en_cours:hover {background:#9aa3b2; box-shadow:none; transform:none; cursor:wait;}

.rc_rgpd {font-size:0.8em; line-height:1.5em; color:#5c5c5c;}
.rc_rgpd p {margin:0 0 6px 0;}

/* MESSAGE DE CONFIRMATION */
.rc_succes {max-width:720px; margin:0 auto; padding:40px 30px; text-align:center; background:#f3fbfa; border:1px solid #bfe7e3; border-top:6px solid #00a89e; border-radius:0.6em;}
.rc_succes_picto {display:inline-flex; align-items:center; justify-content:center; width:64px; height:64px; margin:0 0 16px 0; font-size:2em; color:#FFF; background:#00a89e; border-radius:50%;}
.rc_succes_titre {margin:0 0 12px 0; font-size:1.4em; font-weight:700; color:#062a78;}
.rc_succes p {line-height:1.6em;}
.rc_succes_tel {font-weight:700; color:#f47300; text-decoration:none; white-space:nowrap;}
.rc_succes_lien {margin:22px 0 0 0;}
.rc_succes_lien a {display:inline-block; padding:10px 26px; color:#FFF; background:#062a78; border-radius:2em; text-decoration:none;}
.rc_succes_lien a:hover {background:#f47300;}

/* ANTI-ROBOTS ET BOUTON PAR DEFAUT : invisibles */
.rc_piege, .rc_bouton_neutre {position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden;}


@media screen and (max-width : 850px) {

	.rc_grille_3 {grid-template-columns:1fr 1fr;}
}

@media screen and (max-width : 750px) {

	/* captcha et bouton d'envoi l'un sous l'autre, centrés
	   (en colonne, la base flex de 330px s'appliquerait à la hauteur : on la remet à auto) */
	.rc_envoi {flex-direction:column; align-items:center; gap:16px;}
	.rc_captcha {flex:0 0 auto;}
	.rc_bouton {width:100%; max-width:330px;}
	.rc_bouton_envoyer {width:100%;}
}

@media screen and (max-width : 650px) {

	#rc_documents {scroll-margin-top:90px;}

	div#referercas {margin-bottom:40px;}
	.rc_titre {font-size:2.4em;}
	.rc_encart {padding:24px 16px 18px 16px; border-left-width:4px;}
	.rc_encart legend {font-size:1.6em;}
	.rc_grille, .rc_grille_3 {grid-template-columns:1fr; gap:14px;}
	.rc_radio {padding:10px 12px;}
	.rc_radio_examen input[type="text"] {flex-basis:100%;}
	.rc_jauge_legende {flex-direction:column;}
}

@media screen and (max-width : 350px) {

	.rc_captcha {transform:scale(0.85); transform-origin:center;}
}
