/* Fallah360 Listings - styles génériques.
   Réutilise les variables de couleur définies par le thème (--f360-green etc.)
   si présentes, sinon retombe sur ce vert par défaut. */
:root{
	--f360l-green: var(--f360-green, #2d6a4f);
	--f360l-green-dark: var(--f360-green-dark, #1f4d3a);
	--f360l-radius: 10px;
	--f360l-border: #e4e4e4;
}

.f360-btn{
	display:inline-block; background:var(--f360l-green); color:#fff;
	padding:10px 20px; border:none; border-radius:var(--f360l-radius);
	font-weight:600; cursor:pointer; text-decoration:none;
}
.f360-btn:hover{ background:var(--f360l-green-dark); color:#fff; }
.f360-btn-outline{ background:transparent; color:var(--f360l-green); border:2px solid var(--f360l-green); }

.f360-notice{ background:#eaf4ef; border:1px solid var(--f360l-green); border-radius:var(--f360l-radius); padding:16px; margin-bottom:20px; }
.f360-notice-success{ background:#eaf4ef; }

/* Grille de cartes */
.f360-listings-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px,1fr)); gap:24px; margin:24px 0; }
.f360-card{ position:relative; border:1px solid var(--f360l-border); border-radius:var(--f360l-radius); overflow:hidden; background:#fff; transition:box-shadow .2s ease, transform .2s ease; }
.f360-card:hover{ box-shadow:0 6px 18px rgba(0,0,0,.08); transform:translateY(-2px); }
.f360-card-image{ display:block; position:relative; aspect-ratio:4/3; background:#f2f2f2; overflow:hidden; }
.f360-card-image img{ width:100%; height:100%; object-fit:cover; }
.f360-card-noimage{ display:flex; align-items:center; justify-content:center; height:100%; color:#999; font-size:.9rem; }
.f360-card-body{ padding:14px; }
.f360-card-category{ font-size:.75rem; text-transform:uppercase; color:var(--f360l-green); font-weight:700; }
.f360-card-title{ font-size:1.05rem; margin:6px 0; }
.f360-card-title a{ color:#222; text-decoration:none; }
.f360-card-meta{ display:flex; gap:12px; font-size:.8rem; color:#777; margin-bottom:8px; }
.f360-card-price{ font-weight:800; color:var(--f360l-green); font-size:1.1rem; }

/* Badges */
.f360-badge{ position:absolute; top:10px; left:10px; background:var(--f360l-green); color:#fff; font-size:.75rem; padding:4px 10px; border-radius:20px; font-weight:700; }
.f360-badge-sold{ background:#b3261e; }

/* Favoris */
.f360-favorite-btn{ position:absolute; top:10px; right:10px; width:34px; height:34px; border-radius:50%; border:none; background:rgba(255,255,255,.9); color:#bbb; font-size:1.1rem; cursor:pointer; }
.f360-favorite-btn.is-active{ color:#e0245e; }

/* Formulaires */
.f360-form p, .f360-contact-form p, .f360-search-form{ margin-bottom:16px; }
.f360-form label, .f360-contact-form label{ display:block; font-weight:600; margin-bottom:4px; }
.f360-form input[type=text], .f360-form input[type=number], .f360-form input[type=tel],
.f360-form select, .f360-form textarea,
.f360-contact-form input, .f360-contact-form textarea{
	width:100%; padding:10px; border:1px solid var(--f360l-border); border-radius:6px; font-size:1rem;
}
.f360-form-note{ font-size:.85rem; color:#777; }

.f360-search-form{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; background:#fff; padding:14px; border-radius:var(--f360l-radius); border:1px solid var(--f360l-border); margin-bottom:20px; }
.f360-search-form select, .f360-search-form input[type=text]{ padding:10px; border:1px solid var(--f360l-border); border-radius:6px; flex:1; min-width:160px; }

/* Fiche annonce */
.f360-single{ padding:40px 0; }
.f360-single-thumbs{ display:flex; gap:8px; margin-top:8px; flex-wrap:wrap; }
.f360-single-thumbs img{ width:70px; height:70px; object-fit:cover; border-radius:6px; }
.f360-single-title{ font-size:1.8rem; margin:10px 0; }
.f360-single-meta{ display:flex; gap:16px; color:#777; font-size:.9rem; margin-bottom:10px; }
.f360-single-price{ font-size:1.6rem; font-weight:800; color:var(--f360l-green); margin-bottom:16px; }
.f360-single-description{ margin:20px 0; line-height:1.7; }
.f360-single-contact-info{ background:#f7f5f0; border-radius:var(--f360l-radius); padding:16px; margin-bottom:20px; }

/* Tableau de bord */
.f360-dashboard-table{ width:100%; border-collapse:collapse; margin:20px 0; }
.f360-dashboard-table th, .f360-dashboard-table td{ text-align:left; padding:10px; border-bottom:1px solid var(--f360l-border); }
.f360-dashboard-actions a, .f360-link-btn{ margin-right:10px; color:var(--f360l-green); background:none; border:none; cursor:pointer; padding:0; font:inherit; text-decoration:underline; }
.f360-link-btn-danger{ color:#b3261e; }

/* Pagination */
.f360-pagination{ display:flex; gap:8px; margin:30px 0; }
.f360-pagination .page-numbers{ padding:8px 12px; border:1px solid var(--f360l-border); border-radius:6px; text-decoration:none; color:#333; }
.f360-pagination .current{ background:var(--f360l-green); color:#fff; border-color:var(--f360l-green); }
