.elementor-1344 .elementor-element.elementor-element-53eaaba3 {
--padding-top: 24px !important;
--padding-bottom: 24px !important;
}
.p2p-step { display:none; }

.p2p-step.is-active {
display: flex;
flex-direction: column;
gap: 40px;
justify-content: center;
}

.p2p-media-remove {
  padding: 0px !important;
  border: none !important;
}

.p2p-tab.tab-toggle.is-active {
  background: rgb(65,65,65) !important;
  color: rgb(240, 232, 213) !important;
}

input::placeholder {
	font-size: 10px !important;
	font-weight:500 !important;
  }
  /* Cache l'item Post Info si le contenu custom est vide */
.elementor-post-info .elementor-icon-list-item
  .elementor-post-info__item--type-custom:empty {
  display: none;
}

/* Cache aussi le <li> parent s'il ne contient rien */
.elementor-post-info .elementor-icon-list-item:has(.elementor-post-info__item--type-custom:empty) {
  display: none;
}

/* Optionnel : si un item ne contient que des espaces/blocs vides */
.elementor-post-info .elementor-icon-list-item .elementor-post-info__item--type-custom:empty::before {
  content: none !important;
}

.p2p-native-select{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* -------------------------------------------------------------------------- */
/* -----------------------------Form Inscription----------------------------- */
/* -------------------------------------------------------------------------- */
.title-inscription {
color: #414141 !important;
display: flex;
justify-content: center;
text-align: center;
font-size: 24px !important;
font-weight: 600 !important;
margin-bottom: 0px;
}

.p2p-step{
gap: 48px;
}

.form-style {
display: flex;
flex-direction: column;
background: #F0E8D5;
padding: 0px;
align-items: center;
justify-content: center;
border-radius: 12px;
gap: 40px;
}

form#p2p-form-account {
display: flex;
flex-direction: column;
gap: 24px;
}

.form-row {
display: flex;
gap: 40px;
align-items: center;
width: 100%;
justify-content: center;
}

.form-col input {
background-color: #f0ede7 !important;
border: 0.5px solid #414141 !important;
border-radius: 12px !important;
padding: 10px 26px !important;
color: #414141 !important;
}

.form-col {
width: 100%;
}

input::placeholder {
color: #414141;
font-size: 16px !important;
font-weight: bold;
opacity: 1; /* important pour certains navigateurs */
}

/* Pour plus de compatibilitÃ© (anciens navigateurs) */
input::-webkit-input-placeholder {
color: #414141;
font-size: 16px;
font-weight: bold;
}
input:-moz-placeholder {
color: #414141;
font-size: 16px;
font-weight: bold;
}
input::-moz-placeholder {
color: #414141;
font-size: 16px;
font-weight: bold;
}
input:-ms-input-placeholder {
color: #414141;
font-size: 16px;
font-weight: bold;
}

.btn-submit {
background: #9A031E !important;
color: #F0E8D5 !important;
font-size: 16px !important;
border: 2px solid #9A031E !important;
border-radius: 12px !important;
padding: 8px 24px !important;
}

.btn-submit:hover{
background: #F0E8D5 !important;
color: #9A031E !important;
}

/* Ajoute une * rouge Ã  tous les champs requis */
label.required::after {
content: " *";
color: red;
}

.required-label::after {
content: " *";
color: red;
}




/* -------------------------------------------------------------------------- */
/* -----------------------------Card Inscription----------------------------- */
/* -------------------------------------------------------------------------- */
div#p2p-step-choose {
flex-direction: column;
justify-content: center;
align-items: center;
}

.card-conteneur, .btn-cards-group{
display: flex;
justify-content: center;
gap: 80px;
}


.btn-profil, .btn-user {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
padding: 16px !important;
width: 300px !important;
gap: 24px !important;
background: #F0E8D5 !important;
padding: 16px 24px !important;
border-radius: 12px !important;
border: solid 1px #9a031e !important;
font-size: 16px !important;
font-weight: bold !important;
cursor: pointer !important;
transition: border 0.2s ease !important;
color: #9a031e !important;
font-size: 16px !important;
font-weight: 600 !important;
font-family: var(--e-global-typography-db8b889-font-family), Sans-serif !important;
}

.card-profil, .btn-card-radio {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
padding: 16px !important;
width: 300px !important;
gap: 24px !important;
background: #F0E8D5 !important;
padding: 16px 24px !important;
border-radius: 12px !important;
border: solid 1px #414141 !important;
font-size: 16px !important;
font-weight: bold !important;
cursor: pointer !important;
transition: border 0.2s ease !important;
color: #414141 !important;
font-size: 16px !important;
font-weight: 600 !important;
font-family: var(--e-global-typography-db8b889-font-family), Sans-serif !important;
}

.card-profil:hover, .card-profil:focus, .card-profil.is-selected, .btn-card-radio:focus, .btn-card-radio:hover, .btn-card-radio.is-selected, .btn-user:hover, .btn-profil:hover, .btn-profil:focus{
border-color: #F0E8D5 !important;
background: #9a031e !important;
color: #F0E8D5 !important;
}

.card-icon {
width: 40px;
height: 40px;
margin-bottom: 0.5em;
font-weight: bold;
font-size: 16px;
}

.recherche-nav {
display: flex;
justify-content: center;
align-items: center;
gap: 40px;
}

#next-step {
background: #EDDEBD !important;
color: #9a031e !important;
font-size: 16px !important;
font-weight: 800 !important;
border: 2px solid #F0E8D5 !important;
border-radius: 12px !important;    
}

#prev-step {
background: #9a031e !important;
color: #EDDEBD !important;
font-size: 16px !important;
font-weight: 800 !important;
border: 2px solid #F0E8D5 !important;
border-radius: 12px !important;    
}

#final-submit {
background: #EDDEBD !important;
color: #9a031e !important;
font-size: 16px !important;
font-weight: 800 !important;
border: 2px solid #F0E8D5 !important;
border-radius: 12px !important; 
}
/* -------------------------------------------------------------------------- */
/* -----------------------------Recherche Step 1----------------------------- */
/* -------------------------------------------------------------------------- */
.dyn-step {
display: none;
}
.dyn-step.is-active {
display: block;
}
.dyn-step.is-hidden { display:none !important; }


div#tpl-rech-1 {
display: flex;
justify-content: center;
}

.step-section.intro-step {
display: flex;
flex-direction: column;
gap: 12px !important;
}

ol.intro-list {
padding: 24px 40px;
background: #F0E8D5;
border-radius: 12px;
color: #414141;
}

li {
padding-bottom: 24px;
}

.alert-warning {
color: #9a031e;
font-weight: 600;
text-align: center;
}

/* -------------------------------------------------------------------------- */
/* -----------------------------Recherche Step 2----------------------------- */
/* -------------------------------------------------------------------------- */
.step-section {
display: flex;
flex-direction: column;
gap: 40px;
justify-content: center;
align-content: center;
margin-bottom: 48px !important;
}

/* -------------------------------------------------------------------------- */
/* -----------------------------Recherche Step 3----------------------------- */
/* -------------------------------------------------------------------------- */
.title-h3 {
color: #414141 !important;
text-align: center;
font-size: 24px !important;
font-weight: 600 !important;
font-family: var( --e-global-typography-primary-font-family ), Sans-serif;
margin-bottom: 0px;
}
.user-block.principal-user, .user-block.co-user {
display: flex;
flex-direction: column;
gap: 20px;
background: #F0E8D5;
padding: 8px 0px;
border-radius: 12px;
}

label {
color: #414141;
padding-bottom: 8px;
font-size: 16px !important;
font-weight: 600 !important;
font-family: var( --e-global-typography-primary-font-family ), Sans-serif !important;
}

select {
background: rgba(161, 64, 45, 0.20);
padding: 16px 24px !important;
font-size: 16px !important;
font-weight: 600 !important;
font-family: var( --e-global-typography-primary-font-family ), Sans-serif !important;
}

#co-users-list {
gap: 40px;
display: flex;
flex-direction: column;
}

/* -------------------------------------------------------------------------- */
/* -----------------------------Recherche Step 4----------------------------- */
/* -------------------------------------------------------------------------- */
.bento, .bento-full, .bento-half {
background: #FDFDFB;
border: solid 1px #414141;
border-radius: 12px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 24px;
}

.bento-title {
font-size: 24px !important;
color: #414141 !important;
}

.bento-full {
width: 100%;
}

.bento-half {
width: 50%;
}

.bento-col {
width: 100%;
}

.bento-row {
display: flex;
flex-wrap: wrap;
gap: 40px;
}


.bento-col input {
background-color: #f0ede7 !important;
border: 0.5px solid #414141 !important;
border-radius: 12px !important;
padding: 10px 26px !important;
color: #414141 !important;
}
summary {
color: #414141 !important;
}
textarea {
background: #f0ede7 !important;
}

.form-container {
display: flex;
flex-direction: column;
padding: 24px 0px;
gap: 40px;
border-radius: 0 12px 12px 12px;


}

.bento-header {
color: #414141;
font-size: 20px;
display: flex;
gap: 12px;
justify-content: start;
align-items: center;
}

.subtitle-bento {
font-size: 16px;
color: #414141;
}

.tab-content.is-hidden { display:none }
.tab-toggle.active {
font-weight: 600;
background: #414141 !important;
color: #F0E8D5 !important;
border: 2px solid #414141;
padding: 8px 12px;
border-radius: 50px !important;
}
.tab-toggle.disabled   { opacity:.4; pointer-events:none }
.tab-toggle {
border: 2px solid #414141;
padding: 8px 12px;
border-radius: 50px !important;
background: #F0E8D5 !important;
color: #414141 !important;
}

.tab-toggle:hover {
border: 2px solid #414141;
background: #414141 !important;
color: #F0E8D5 !important;
}

.btn-card-radio .btn-icon {
color: #414141; /* couleur par dÃ©faut */
transition: color 0.2s;
}


.profile-picture-container {
    display: flex;
    justify-content: center;
    align-items: start;
}

.p2p-edit-photo-button {
    width: 16px;
    height: 16px;
    fill: #9A031E;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 4px;
}


/* -------------------------------------------------------------------------- */
/* ------------------------------Biens Step 3-------------------------------- */
/* -------------------------------------------------------------------------- */				
.btn-card-radio:hover .btn-icon,
.btn-card-radio:focus .btn-icon {
color: #F0E8D5; 
}

#visite-dates-list {
flex-direction: column;
gap: 2px;
}
/* -------------------------------------------------------------------------- */
/* ------------------------------Card radio---------------------------------- */
/* -------------------------------------------------------------------------- */	
.btn-card-radio.active {
border-color: #F0E8D5 !important;
background: #9a031e !important;
color: #F0E8D5 !important;
box-shadow: 0 2px 8px rgba(161, 64, 45, 0.10);
}

.btn-card-radio.active .btn-icon {
color: #F0E8D5 !important;
}


/* -------------------------------------------------------------------------- */
/* ------------------------------Carousel Image------------------------------ */
/* -------------------------------------------------------------------------- */	
/* Style pour le carrousel d'images */
.p2p-image-carousel {
width: 100%;
height: 150px; /* On dÃ©finit la hauteur du carrousel */
}

.p2p-image-carousel .swiper-slide {
background: #eee; /* Couleur de fond en cas de chargement */
}

.p2p-image-carousel .swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover; /* L'image remplit le conteneur sans se dÃ©former */
}

/* Style pour les flÃ¨ches du carrousel */
.p2p-image-carousel .swiper-button-next,
.p2p-image-carousel .swiper-button-prev {
color: #9a031e; /* Votre couleur personnalisÃ©e pour les flÃ¨ches */
}

/* Grille simple pour les vidÃ©os */
.p2p-video-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 15px;
}

.delete-co-user-btn {
display: inline-block;
padding: 6px 12px;
background-color: #d9534f; /* Couleur rouge pour la suppression */
color: #ffffff !important; /* Texte en blanc */
font-size: 13px;
font-weight: 600;
text-decoration: none;
border-radius: 4px;
margin-top: 10px;
transition: opacity 0.2s;
}

.delete-co-user-btn:hover {
opacity: 0.8;
}
/* -------------------------------------------------------------------------- */
/* ------------------------------Cartes explorez------------------------------- */
/* -------------------------------------------------------------------------- */				

.p2p-grid{
display:grid;
grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
gap:24px;
}

.p2p-card{
position:relative;
width:100%;
max-width:340px;
border-radius:20px;
border:1px solid #9a031e;
background:#F0E8D5;
overflow:hidden;
display:flex;
flex-direction:column;
color:#414141;
box-shadow:0 1px 2px rgba(16,24,40,.04);
}

.p2p-card__media{
width:100%;
background:#f5f5f5;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden;
position:relative;
}

.p2p-card__media img{
width:100%;
height:250px;
object-fit:cover;
display:block;
}

.p2p-card__media--placeholder{
  width:100%;
  height:100%;
  background-image: url("/wp-content/plugins/p2plocation/assets/img/img_fallback_bien.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}


.p2p-like{
all:unset;
cursor:pointer;
position:absolute;
top:12px;
right:12px;
border:none !important;
background:rgba(255,255,255,.9);
width:36px;
height:36px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 3px 10px rgba(0,0,0,.1);
}
					
.p2p-card .p2p-like {
z-index: 3;
padding: 0px;
width: fit-content;
height: fit-content;
background-color: transparent !important;
}
					
.p2p-heart{
  width:22px;
  height:22px;
  display:block;
  background-image:url('../img/heart.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain; /* <= important si le SVG nâ€™a pas dâ€™intrinsic size */
  transition:.2s;
}
.p2p-heart.liked{
  background-image:url('../img/heart-active.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

/* Si co-user a likÃ© : bleu en fond, mÃªme si .liked (union) est active */
.p2p-heart.liked.liked-couser{
  background-image:url('../img/heart-active-couser.svg') !important;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

/* Si owner a likÃ© : rouge en fond explicite */
.p2p-heart.liked.liked-owner{
  background-image:url('../img/heart-active.svg') !important;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}


.p2p-card__body{
padding:1rem;
display:flex;
flex-direction:column;
align-items:center;
gap:.5rem;
}

.p2p-card__head{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:.5rem;
font-size:.9rem;
}
.p2p-card__location{
font-weight:600;
color:#9a031e;
font-size: 14px;
}
.p2p-card__price{
font-weight:600;
color:#414141;
text-align:right;
font-size: 15px;
}

.p2p-card__title{
font-size:15px;
font-weight:600;
}

.p2p-card__meta{
font-size:14px;
color:#555;
}

.p2p-card__tags{
display:flex;
flex-wrap:wrap;
gap:.35rem;
}
.p2p-card__tag{
font-size:12px;
padding: .2rem .5rem;
border-radius:999px;
border:1px solid #414141;
background:#fff;
color:#414141;
}
.p2p-card__status{
font-size:12px;
font-weight:600;
padding:.3rem .6rem;
border-radius:999px;
position:absolute;
top:12px;
left:50%;
transform:translateX(-50%);
z-index:5;
display:inline-block;
text-align:center;
background:#fff;
box-shadow:0 6px 16px rgba(0,0,0,.15);
}
.p2p-card__status--match{background:#e8f6ef;color:#1c7c54;}
.p2p-card__status--pending{background:#fff4e5;color:#9a031e;max-width: 200px!important;width: 100%!important;}}
.p2p-card__status--rejected{background:#f0f0f0;color:#7a7a7a;}
.p2p-card__status--rented{background:#f3f3f3;color:#6b6b6b;}
.p2p-card--matched{box-shadow:0 0 0 2px rgba(28,124,84,.12);}
.p2p-card--pending{opacity:0.9;}
.p2p-card--rejected{opacity:0.6;}
.p2p-card--rented{opacity:0.9;}
.p2p-card--rented .p2p-card__media img{filter:grayscale(0.55);}
.p2p-card__overlay{
  position:absolute;
  inset:0;
  background:rgba(255,255,255,0.65);
  border-radius:20px;
  z-index:4;
  pointer-events:none;
}
.p2p-possession-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid #9a031e;
  background:#fff;
  color:#9a031e;
  font-weight:600;
  font-size:13px;
  cursor:pointer;
  position:relative;
  z-index:6;
}
.p2p-possession-btn[disabled]{opacity:0.6;cursor:default;}
.p2p-disabled{opacity:.55;pointer-events:none !important;}
.p2p-link       {position:absolute;inset:0;}

					/* --- Galerie P2P 150 px --- */
/* ── Galerie médias existants (modification bien) ─────────────────────── */
.p2p-existing-media-label {
  margin-top: 18px;
  font-weight: 600;
  font-size: 14px;
  color: #333;
}
.p2p-existing-media-hint {
  font-weight: 400;
  font-size: 12px;
  color: #888;
}

.p2p-media-gallery-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.p2p-gallery-item {
  position: relative;
  width: 90px;
  height: 90px;
  border-radius: 8px;
  overflow: hidden;
  background: #f0f0f0;
  border: 1.5px solid #ddd;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: border-color .2s, opacity .2s;
}

.p2p-gallery-item img {
  width: 100% !important;
  height: 70px !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
}

.p2p-gallery-item-video-icon {
  font-size: 28px;
  color: #fff;
  background: #1a1a2e;
  width: 100%;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p2p-gallery-item-label {
  display: block;
  width: 100%;
  font-size: 10px;
  color: #555;
  text-align: center;
  padding: 3px 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: #f8f8f8;
  border-top: 1px solid #eee;
  line-height: 1.3;
  height: 20px;
}

/* ── Croix supprimer ──────────────────────────────────────────────────── */
.p2p-media-remove {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,0.92);
  color: #9A031E;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(0,0,0,.18);
  z-index: 2;
  transition: background .15s, color .15s, transform .15s;
  padding: 0;
  line-height: 1;
}
.p2p-media-remove:hover {
  background: #9A031E;
  color: #fff;
  transform: scale(1.12);
}

/* ── État "marqué pour suppression" ──────────────────────────────────── */
.p2p-gallery-item.is-marked-for-delete {
  opacity: .45;
  border-color: #9A031E;
  filter: grayscale(.3);
}
.p2p-gallery-item.is-marked-for-delete .p2p-media-remove {
  background: #9A031E;
  color: #fff;
}

/* Compatibilité anciens éléments si encore présents */
.p2p-media-thumb.is-marked-for-delete img,
.p2p-video-item.is-marked-for-delete video {
  opacity: .4;
  filter: grayscale(0.2);
}
.p2p-media-thumb.is-marked-for-delete .p2p-media-remove,
.p2p-video-item.is-marked-for-delete .p2p-media-remove {
  background: #9A031E;
  color: #fff;
}


.p2p-media-section {
  display: flex;
  flex-direction: column;
}
					
					.dropdown-cv summary      {cursor:pointer;font-weight:600;padding:4px 0;}
.dropdown-cv .cv-inner    {max-height:240px;overflow:auto;padding:4px 0 0 8px;}
.dropdown-cv label        {display:block;margin:2px 0;}
.dropdown-cv strong       {display:block;margin:6px 0 2px;}

.bento-col.date-group {
  display: flex;
  gap: 12px;
  width: fit-content;
}
					
					.p2p-biens-criteres {
  text-align: center;
}
					
.btn-explore-critere, .btn-explore-filter, .btn-explore-exchange, .btn-explore-wishlist, .btn-explore-matches, .btn-explore-rejected {
  border-radius: 8px !important;
  box-shadow: none;
  border: 2px solid #F0E8D5 !important;
  color: #F0E8D5 !important;
  padding: 4px 12px !important;
height: fit-content;
  background-color: #9a031e !important;
}
					
.btn-explore-critere:hover,.btn-explore-critere.active, .btn-explore-wishlist.active, .btn-explore-wishlisthover, .btn-explore-filter:hover, .btn-explore-filter.active, .btn-explore-exchange:hover, .btn-explore-exchange.active, .btn-explore-matches:hover, .btn-explore-rejected:hover, .btn-explore-matches.active, .btn-explore-rejected.active  {
  border: 2px solid #F0E8D5 !important;
  color: #9a031e !important;
  padding: 4px 12px !important;
height: fit-content;
  background-color: #F0E8D5 !important;
}

.avatar.rounded-full {
  border-radius: 99px;
}
			
#p2p-explore-nav {
  margin-bottom: 12px !important;
  display: flex;
  gap: 32px;
}
#p2p-explore-container {
  color: #F0E8D5;
}
/* ===== Barre de filtres ===== */
.p2p-filters{
  display:flex; flex-wrap:wrap; gap:12px; align-items:center;
  margin: 0 0 12px 0;
}
.p2p-filter--dropdown{ position:relative; }
.p2p-dd-btn{
  padding: 8px 12px !important;
  border: 1px solid !important;
  background-color: #EDDEBD !important;
  color: #9a031e !important;
}
					
.p2p-dd-btn:hover{
  padding: 8px 12px !important;
  border: 1px solid !important;
  background-color: #F0E8D5 !important;
  color: #9a031e !important;
}
					
.p2p-dd{
  position:absolute; top: calc(100% + 6px); left:0; z-index:20;
  min-width: 240px; max-height: 280px; overflow:auto;
  background:#fff; border:1px solid #e5e5e5; border-radius:12px; box-shadow:0 8px 20px rgba(0,0,0,.08);
  padding:10px;
}
.p2p-dd-list{ display:grid; gap:8px; }
.p2p-dd-item{ display:flex; align-items:center; gap:8px; }
.p2p-dd-label{ margin-left:6px; font-size:14px; }
.p2p-reset{
border: 1px solid #EDDEBD !important; background:#f5f5f5; padding:8px 12px !important; border-radius:8px; cursor:pointer;
}

/* ===== Inputs Ã  suffixe ===== */
.p2p-num{ position:relative; display:inline-block; padding-bottom: 0px !important;}
.p2p-num input{
  padding:8px 36px 8px 10px; border-radius:8px; border:1px solid #ddd; min-width:140px;
}
.p2p-num .suffix{
  position:absolute; right:10px; top:50%; transform:translateY(-50%); pointer-events:none; opacity:.7; font-size:12px; 
}

#p2p-price-max, #p2p-surface-min, #p2p-pieces-min {
  border-radius: 8px !important;
  background-color:  #EDDEBD !important;
}
/* ===== Style checkbox Uiverse (adaptÃ©) ===== */
/* Hide the default checkbox */
.container input {
  position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0;
}
.container {
  display: inline-flex; align-items:center; gap:8px;
  position: relative; cursor: pointer; font-size: 16px; user-select: none;
}
/* Custom checkbox */
.checkmark {
  position: relative; top: 0; left: 0; height: 1.2em; width: 1.2em;
  background-color: #343434; border-radius: 5px; transition: all 0.5s;
}
/* Checked */
.container input:checked ~ .checkmark { background-color: #f0f0f0; border: 2px solid #343434; }
/* Tick */
.checkmark:after {
  content: ""; position: absolute; display: none; filter: drop-shadow(0 0 10px #888);
}
.container input:checked ~ .checkmark:after { display: block; }
.container .checkmark:after {
  left: 0.28em; top: 0.02em; width: 0.28em; height: 0.62em;
  border: solid #343434; border-width: 0 0.18em 0.18em 0; border-radius: 4px;
  transform: rotate(45deg); animation: bounceFadeIn 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@keyframes bounceFadeIn {
  from { transform: translate(0,-10px) rotate(45deg); opacity: 0; }
  to   { transform: translate(0,0)   rotate(45deg); opacity: 1; }
}

.p2p-empty {
  color: #F0E8D5 !important;
}

.p2p-btn-primary {
	color: #F0E8D5 !important;
	background: #9a031e !important;
	border-color:#9a031e !important;
  padding: 4px 12px !important;
  height: fit-content;
					}

			
.p2p-btn-cancel {
	color: #9a031e !important;
	background: #F0E8D5 !important;
	border-color:#9a031e !important;
  padding: 4px 12px !important;
  height: fit-content;
					}

.p2p-btn-primary:hover {
	color: #9a031e !important;
	background: #F0E8D5 !important;
	border-color:#9a031e !important;
					}
			
.p2p-btn-cancel:hover {
	color: #F0E8D5 !important;
	background: #9a031e !important;
	border-color:#9a031e !important;
					}			

.p2p-list-icon {
  font-size: 16px !important;
  width: 8px !important;
  height: 8px !important;
  fill: #9a031e !important;
}
					
.p2p-icon-list {
  list-style: none;
  padding: 0px !important;
  display: flex;
  justify-content: start;
  align-content: center;
}
					
.p2p-modal { position: fixed; inset: 0; z-index: 9999; }
.p2p-modal[hidden] { display: none !important; }
.p2p-modal.is-open { display: block; }
.p2p-modal .p2p-modal-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.4); }
.p2p-modal .p2p-modal-dialog-2{
  position:absolute; left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(560px, 92vw);
					  height: fit-content;
  background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:0 10px 40px rgba(0,0,0,.25);
  padding: 24px;
}
					.modal-title{
					  font-size:24px !important;
					}
.p2p-modal .p2p-modal-close{ position:absolute; right:8px; top:6px; border:0; background:transparent; font-size:22px; cursor:pointer; }
.p2p-modal .p2p-modal-body h3{ margin:.25rem 0 .75rem; }
.p2p-modal .p2p-modal-body .row{ display:flex; flex-direction:column; gap:.25rem; margin-bottom:.5rem; }
.p2p-form-message{ margin-top:.5rem; min-height:1.25rem; }

					.p2p-dash-widget .p2p-dash-cta { margin-top: .5rem; }
.p2p-dash-widget .p2p-dash-link {
  position: static !important;
  inset: auto !important;
  z-index: auto !important;
  display: inline-block;
  line-height: 1.4;
  text-decoration: none;
}
.p2p-dash-widget .p2p-dash-link:hover { text-decoration: underline; }
.p2p-dash-widget.p2p-dash-repreneur{text-align: center;}
.p2p-dash-widget.p2p-dash-repreneur, .p2p-dash-widget.p2p-dash-rendeur{text-align: center;}

.elementor-756 .elementor-element.elementor-element-6e59e61.active .elementor-button,
.elementor-756 .elementor-element.elementor-element-f335d27.active .elementor-button, 
.elementor-756 .elementor-element.elementor-element-9188f30.active .elementor-button  {
background-color: #F0E8D5 !important;
color: #9a031e !important;
					  border-color: #9a031e !important;
}
				  
.p2p-card__status.p2p-card__status--rejected {
background: #f6e9e9 !important;
color: #9A031E !important;
}

/* cache les menus dâ€™Ã©dition pour les observateurs */
.p2p-role-viewer #profil_btn,
.p2p-role-viewer #folders_btn,
.p2p-role-viewer #settings_btn,
.p2p-role-viewer #pack,
.p2p-role-viewer #visite_bloc { display:none !important; }

.p2p-bien-visites-fields > li {
  padding: 0px !important;
}				  
/* -------------------------------------------------------------------------- */
/* -------------------------------- Profil ---------------------------------- */
/* -------------------------------------------------------------------------- */	  
.bento-row.form-profil-row{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 16px;
}
.bento-row.form-profil-row > *{
  flex: 1 1 calc(50% - 16px); /* 2 colonnes */
  min-width: 280px;           /* optionnel : Ã©vite des colonnes trop Ã©troites */
}

/* ==== Toggle confidentialitÃ© photo (style 35 adaptÃ©) ==== */
.checkbox-wrapper-35 .switch { display: none; }

.checkbox-wrapper-35 .switch + label {
  align-items: center;
  color: #78768d;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  line-height: 15px;
  user-select: none;
  position: relative;
  gap: 8px;
}

.checkbox-wrapper-35 .switch + label::before,
.checkbox-wrapper-35 .switch + label::after {
  content: ''; display: block;
}

.checkbox-wrapper-35 .switch + label::before {
  background-color: #9A031E; /* OFF */
  border-radius: 500px;
  height: 15px; width: 25px;
  transition: background-color .125s ease-out;
}

.checkbox-wrapper-35 .switch + label::after {
  background-color: #fff;
  border-radius: 13px;
  box-shadow: 0 3px 1px rgba(37,34,71,.05), 0 2px 2px rgba(37,34,71,.1), 0 3px 3px rgba(37,34,71,.05);
  height: 13px; width: 13px;
  left: 1px; top: 1px;
  position: absolute;
  transition: transform .125s ease-out;
}

.checkbox-wrapper-35 .switch + label .switch-x-text { display: flex; gap: 6px; }
.checkbox-wrapper-35 .switch + label .switch-x-toggletext {
  display: block; font-weight: bold; height: 15px; overflow: hidden; width: 25px;
}
.checkbox-wrapper-35 .switch + label .switch-x-unchecked,
.checkbox-wrapper-35 .switch + label .switch-x-checked {
  position: absolute; left: 0; top: 0; transition: transform .125s ease-out, opacity .125s ease-out;
}
.checkbox-wrapper-35 .switch + label .switch-x-unchecked { opacity: 1; transform: none; }
.checkbox-wrapper-35 .switch + label .switch-x-checked { opacity: 0; transform: translate3d(0,100%,0); }
.checkbox-wrapper-35 .switch + label .switch-x-hiddenlabel { position: absolute; visibility: hidden; }

.checkbox-wrapper-35 .switch:checked + label::before { background-color: #E1711E; } /* ON */
.checkbox-wrapper-35 .switch:checked + label::after { transform: translate3d(10px,0,0); }
.checkbox-wrapper-35 .switch:checked + label .switch-x-unchecked { opacity: 0; transform: translate3d(0,-100%,0); }
.checkbox-wrapper-35 .switch:checked + label .switch-x-checked { opacity: 1; transform: none; }

/* Couleurs des libellÃ©s selon lâ€™Ã©tat (gÃ©rÃ©es aussi en JS pour lâ€™accessibilitÃ©) */
.p2p-privacy-label { transition: color .125s ease-out; }
.p2p-privacy-private { color: #9A031E; } /* prioritÃ© par dÃ©faut (off) */
.checkbox-wrapper-35 .switch:checked + label .p2p-privacy-private { color: inherit; }
.checkbox-wrapper-35 .switch:checked + label .p2p-privacy-public { color: #E1711E; }


/* look & feel dÃ©sactivÃ© (mais on laisse les events pour intercepter en JS) */
#contact_seeker[aria-disabled="true"],
#contact_seeker.p2p-disabled {
  cursor: not-allowed;
  opacity: .6;
  text-decoration: none;
}

.p2p-ac-list {
  position: relative;
  margin-top: 4px;
}

.p2p-ac-list .p2p-ac-item {
  display: block;
  width: 100%;
  text-align: left;
  padding: 6px 10px;
  border: 1px solid #9A031E;
  border-top: none;
  background: #F0E8D5;
color: #9A031E;
  cursor: pointer;
  font-size: 0.9rem;
}

.p2p-ac-list .p2p-ac-item:first-child {
  border-top: 1px solid #ddd;
  border-radius: 6px 6px 0 0;
}

.p2p-ac-list .p2p-ac-item:last-child {
  border-radius: 0 0 6px 6px;
}

.p2p-ac-list .p2p-ac-item:hover {
  background: #f5f5f5;
}

.p2p-multiselect {
  position: relative;
  width: 100%;
}

.p2p-ms-toggle {
  width: 100%;
  display: flex;
  color: #F0E8D5 !important;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  border-radius: 4px;
  border: 1px solid #414141;
  background: #414141 !important;
  cursor: pointer;
  font-size: 14px;
}

.p2p-ms-toggle:hover {
  color: #414141 !important;
  border: 1px solid #F0E8D5;
  background: #414141 !important;
}

.p2p-ms-toggle:focus {
  outline: 2px solid #414141;
  outline-offset: 2px;
}

.p2p-ms-caret {
  margin-left: 8px;
  font-size: 10px;
}

.p2p-ms-dropdown {
  position: absolute;
  left: 0;
  right: 0;
  margin-top: 4px;
  background: #ffffff;
  border-radius: 4px;
  border: 1px solid #e5e7eb;
  box-shadow: 0 8px 16px rgba(15, 23, 42, 0.12);
  max-height: 220px;
  overflow-y: auto;
  z-index: 50;
  display: none;
}

.p2p-multiselect.is-open .p2p-ms-dropdown {
  display: block;
}

.p2p-ms-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  font-size: 14px;
  cursor: pointer;
}

.p2p-ms-option:hover {
  background: #f3f4f6;
}

.p2p-ms-option input {
  margin: 0;
}

.p2p-ms-empty {
  padding: 8px 10px;
  font-size: 13px;
  color: #6b7280;
}

/* Autocomplete ville (Je rends) */
#bien_ville_results.p2p-ac-list{
  background: #F0E8D5 !important;
  border: 1px solid #9A031E !important;
  border-top: 0 !important;
}

/* Items */
#bien_ville_results .p2p-ac-item,
#bien_ville_results button{
  color: #9A031E !important;
  background: transparent !important;
  border: 0 !important;
}

/* SÃ©parateurs entre items */
#bien_ville_results button{
  border-top: 1px solid rgba(154, 3, 30, 0.25) !important;
}

/* Hover */
#bien_ville_results button:hover{
  background: rgba(154, 3, 30, 0.08) !important;
}

h5 {
    font-size: 20px !important;
}

label.gen_letter {
    width: 100%;
}

form.p2p-resi-form {
    width: 45vw;
}

.lg-canton-pickers{
  display:flex;
  gap:12px;
  align-items:stretch;
  margin-bottom:14px;
}

.lg-picker{ position:relative; flex:1; min-width:0; }

.lg-picker__btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  background:#fff;
  cursor:pointer;
}

.lg-picker__btn[disabled]{ opacity:.55; cursor:not-allowed; }

.lg-picker__left{ display:flex; align-items:center; gap:10px; min-width:0; }
.lg-picker__label{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.lg-picker__blason-wrap img{
  width:22px; height:22px; object-fit:contain; display:block;
}

div#lg-canton-source {
    display: none;
}
.lg-picker__menu{
  position:absolute;
  z-index:20;
  top:calc(100% + 8px);
  left:0;
  right:0;
  max-height:320px;
  overflow:auto;
  border:1px solid rgba(0,0,0,.12);
  border-radius:10px;
  background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.12);
}

.lg-picker__item{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  background:none;
  border:0;
  text-align:left;
  cursor:pointer;
}
.lg-picker__item:hover{ background:rgba(0,0,0,.04); }

.lg-quartiers-panel{
  border:1px solid rgba(0,0,0,.12);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.lg-quartiers-panel__head{
  padding:10px 12px;
  border-bottom:1px solid rgba(0,0,0,.08);
  font-weight:600;
}

.lg-quartiers-panel__body{
  padding:10px 12px;
}

ul.lg-quartiers {
    padding: 0px;
}
				  
/* -------------------------------------------------------------------------- */
/* ------------------------------Media queries------------------------------- */
/* -------------------------------------------------------------------------- */
/* Mobile : 1 colonne */
@media (max-width: 768px){
  .bento-row.form-profil-row > *{
    flex-basis: 100%;
  }

  form.p2p-resi-form {
	  width: 80vw;
  }

h5 {
    font-size: 18px !important;
}

}

@media(max-width:1828px){
    .bento-half {
	  width: 100%;
	}

	.bento-row {
	  display: flex;
	  gap: 40px;
	  flex-wrap: wrap;
	}
}

@media(max-width:1829px){
    .bento-half {
	  width: 48%;
	}
}

@media(max-width:640px){
    .p2p-thumb-grid{grid-template-columns:repeat(2, 150px);}
    .p2p-media-gallery-grid { gap: 8px; }
    .p2p-gallery-item { width: 80px; height: 80px; }
    .p2p-gallery-item img, .p2p-gallery-item-video-icon { height: 60px !important; }
}

@media (max-width: 1179px) {
  .elementor-kit-126 h3 {
  font-size: 24px;
  }
  
  .elementor-element.elementor-element-59467fdd.e-con-full.e-flex.e-con.e-child {
  padding: 0px !important;
  }
  
  .elementor-element.elementor-element-429eac07.e-flex.e-con-boxed.e-con.e-parent.e-lazyloaded {
  padding: 12px !important;
  }
  
  
  .form-row {
  flex-direction: column;
  }
  
  .card-conteneur, .btn-cards-group {
  flex-direction: column;
  align-items: center;
  gap: 40px;
  }			
  
  .form-container {
  flex-direction: column;
  padding: 12px;
  }
  
  .bento-row {
  flex-direction: column;
  }
  
  .bento-half {
  width: 100%;
  }
  
  .bento-col input {
  width: 100%;
  }
  .bento-col {
  width: 100%;
  }
  
  .bento-row.radio-class {
  flex-direction: row !important;
  }
  .bento-row.check-class {
  gap: 0px !important;
  }
}

				  /* ===================== */
/*  MON-COMPTE DASHBOARD  */
/* ===================== */

/* Steps & layout du wizard Ã  l'intÃ©rieur du dashboard */
.p2p-dashboard-root .p2p-step {
  display: none;
  gap: 48px;
}

.p2p-dashboard-root .p2p-step.is-active {
  display: flex;
  flex-direction: column;
  gap: 40px;
  justify-content: center;
}

/* Formulaire wrapper */
.p2p-dashboard-root .form-style,
.p2p-dashboard-root .form-container {
  display: flex;
  flex-direction: column;
  background: #F0E8D5;
  padding: 40px;
  border-radius: 12px;
  gap: 40px;
}

/* RangÃ©es / colonnes du form */
.p2p-dashboard-root .form-row {
  display: flex;
  gap: 40px;
}

.p2p-dashboard-root .form-col {
  width: 100%;
}

.p2p-dashboard-root .form-col input,
.p2p-dashboard-root .bento-col input {
  background-color: rgba(161, 64, 45, 0.20) !important;
  border: 0.5px solid #9a031e !important;
  border-radius: 12px !important;
  padding: 10px 26px !important;
  color: #9a031e !important;
}

/* Labels / selects dans le dashboard (au cas oÃ¹ Elementor les reset) */
.p2p-dashboard-root label {
  color: #9a031e;
  padding-bottom: 8px;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif !important;
}

.p2p-dashboard-root select {
  background: rgba(161, 64, 45, 0.20);
  padding: 16px 24px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif !important;
}

/* Bento dans le dashboard */
.p2p-dashboard-root .bento,
.p2p-dashboard-root .bento-full,
.p2p-dashboard-root .bento-half {
  background: #F0E8D5;
  border: solid 1px #9a031e;
  border-radius: 12px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.p2p-dashboard-root .bento-row {
  display: flex;
  gap: 40px;
}

/* Cartes explore / grid dans le dashboard */
.p2p-dashboard-root .p2p-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 24px;
}

.p2p-dashboard-root .p2p-card,
.p2p-dashboard-root .p2p-card.card {
  position: relative;
  width: 100%;
  max-width: 340px;
  border-radius: 20px;
  border: 1px solid #9a031e;
  background: #F0E8D5;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  color: #414141;
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
}

/* Media / images des cards (Elementor essaie de foutre height:auto partout) */
.p2p-dashboard-root .p2p-card__media img,
.p2p-dashboard-root .p2p-card .card-media img {
  width: 100%;
  height: 250px !important;
  object-fit: cover !important;
  display: block;
}

/* Avatars dans le dashboard (protÃ¨ge ton arrondi) */
.p2p-dashboard-root .avatar.rounded-full,
.p2p-dashboard-root .card__avatar {
  border-radius: 99px !important;
  overflow: hidden;
}

/* Carrousel image dans le dashboard */
.p2p-dashboard-root .p2p-image-carousel .swiper-slide img {
  display: block;
  width: 100%;
  height: 100% !important;
  object-fit: cover;
}

/* Vignettes galerie */
.p2p-dashboard-root .p2p-thumb-grid img {
  width: 150px !important;
  height: 150px !important;
  object-fit: cover !important;
  border-radius: 12px !important;
}

/* Boutons primaires / secondaires du dashboard */
.p2p-dashboard-root .p2p-btn-primary {
  color: #F0E8D5 !important;
  background: #9a031e !important;
  border-color:#9a031e !important;
  padding: 4px 12px !important;
  height: fit-content;
}

.p2p-dashboard-root .p2p-btn-cancel {
  color: #9a031e !important;
  background: #F0E8D5 !important;
  border-color:#9a031e !important;
  padding: 4px 12px !important;
  height: fit-content;
}

/* Modals dashboard (au cas oÃ¹ Elementor injecte ses propres modals/styles) */
.p2p-dashboard-root .p2p-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.p2p-dashboard-root .p2p-modal[hidden] {
  display: none !important;
}

.p2p-dashboard-root .p2p-modal.is-open {
  display: block;
}

.p2p-legal-text {
  color:#414141 !important;
  font-size: 12px !important;
  line-height: 1.4;
  opacity: 0.85;
  margin: 6px 0 0;
}

.p2p-role-reminder {
  font-size: 14px !important;
color: #414141;
  line-height: 1.4;
  opacity: 0.85;
  margin: 8px 0 0;
}

/* Responsive dashboard */
@media (max-width: 1179px) {
  .p2p-dashboard-root .form-row {
    flex-direction: column;
  }

  .p2p-dashboard-root .card-conteneur,
  .p2p-dashboard-root .btn-cards-group {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }

  .p2p-dashboard-root .form-container {
    flex-direction: column;
    padding: 12px;
  }

  .p2p-dashboard-root .bento-row {
    flex-direction: column;
  }

  .p2p-dashboard-root .bento-half,
  .p2p-dashboard-root .bento-col {
    width: 100%;
  }
}

.p2p-panel.is-hidden{ display:none !important; }
.p2p-panel.is-active{ display:block; }


/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
 * Opt-in rÃ©seaux sociaux (inscription)
 * â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.p2p-checkline{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:12px;
  line-height:1.4;
  opacity:.95;
}
.p2p-checkline input[type="checkbox"]{
  margin-top:2px;
}

/* ─────────────────────────────────────────────────────────────
 * Step "Mot de passe" (inscription)
 * ───────────────────────────────────────────────────────────── */
.p2p-step-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:12px;
}

.p2p-step-back{
  color:#414141 !important;
  text-decoration:underline !important;
}

.p2p-password-field{
  position:relative;
}

.p2p-password-field .p2p-toggle-pass{
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  background:transparent;
  border:0;
  color:#414141;
  cursor:pointer;
  padding:0;
}

.p2p-password-field .p2p-toggle-pass:hover{
  background:transparent;
  border:0;
  color:#414141;
  cursor:pointer;
  padding:0;
}

.p2p-pass-criteria{
  width:100%;
  background:#f0ede7;
  border:0.5px solid #414141;
  border-radius:12px;
  padding:14px 16px;
}

.p2p-pass-criteria-title{
  font-weight:700;
  color:#2e7d32;
  margin-bottom:10px;
}

.p2p-pass-criteria-list{
  margin:0;
  padding-left:18px;
}

.p2p-pass-criteria-list li{
  color:#414141;
  opacity:0.9;
  margin:0;
  padding: 0 !important;
}

.p2p-pass-criteria-list li.is-ok{
  color:#2e7d32;
  opacity:1;
  font-weight:700;
}

#p2p-form-password {
display: flex;
flex-direction: column;
gap: 24px;
}

/* ================================================================
 * Upload media : hint, loader, preview, erreur
 * ================================================================ */

.p2p-upload-hint {
  font-size: 13px;
  color: #666;
  margin: 4px 0 10px;
}

.p2p-upload-zone {
  position: relative;
}

/* Loader */
.p2p-upload-loader {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding: 10px 14px;
  background: #f8f3ec;
  border: 1px solid #e0d3be;
  border-radius: 8px;
  font-size: 14px;
  color: #555;
}

.p2p-upload-spinner {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 3px solid #e0d3be;
  border-top-color: #9A031E;
  border-radius: 50%;
  animation: p2p-spin 0.8s linear infinite;
  flex-shrink: 0;
}

@keyframes p2p-spin {
  to { transform: rotate(360deg); }
}

/* Prévisualisation des fichiers sélectionnés */
.p2p-upload-preview {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.p2p-upload-preview-item {
  position: relative;
  width: 90px;
  height: 90px;
  border-radius: 8px;
  overflow: hidden;
  background: #f0f0f0;
  border: 1px solid #ddd;
  flex-shrink: 0;
}

.p2p-upload-preview-item img,
.p2p-upload-preview-item video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.p2p-upload-preview-item .p2p-preview-label {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  background: rgba(0,0,0,0.55);
  color: #fff;
  font-size: 10px;
  padding: 3px 5px;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.p2p-upload-preview-item .p2p-preview-video-icon {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -60%);
  font-size: 22px;
  color: #fff;
  text-shadow: 0 1px 4px rgba(0,0,0,0.6);
}

/* Erreur */
.p2p-upload-error {
  margin-top: 10px;
  padding: 10px 14px;
  background: #fdecea;
  border: 1px solid #f5c6cb;
  border-radius: 8px;
  color: #9A031E;
  font-size: 14px;
  font-weight: 600;
}
