/**
 * UCAPR - Personnalisation globale WCFM Marketplace
 * Palette verte de l'association
 *
 * Couleurs:
 * - Vert foncé (principal)  : #1D5C29
 * - Vert clair (secondaire) : #96B83D
 * - Vert moyen (accent)     : #59A545
 * - Texte                   : #333333
 * - Fond clair              : #f8faf5
 */

/* =========================================================================
   VARIABLES CSS
   ========================================================================= */
:root {
    --ucapr-green-dark: #1D5C29;
    --ucapr-green-light: #96B83D;
    --ucapr-green-accent: #59A545;
    --ucapr-white: #ffffff;
    --ucapr-text: #333333;
    --ucapr-text-light: #666666;
    --ucapr-bg-light: #f8faf5;
    --ucapr-bg-card: #ffffff;
    --ucapr-border: #e2e8d9;
    --ucapr-shadow: 0 2px 12px rgba(29, 92, 41, 0.08);
    --ucapr-shadow-hover: 0 8px 30px rgba(29, 92, 41, 0.15);
    --ucapr-radius: 12px;
    --ucapr-radius-sm: 8px;
    --ucapr-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* =========================================================================
   STORE LIST - CARTES DES COMMERÇANTS
   ========================================================================= */

/* Conteneur de la liste des stores */
#wcfmmp-store-lists {
    background: var(--ucapr-bg-light);
    padding: 30px 0;
}

#wcfmmp-store-lists .store-lists-wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Carte individuelle - design moderne */
.wcfmmp-single-store .store-wrapper {
    background: var(--ucapr-bg-card) !important;
    border-radius: var(--ucapr-radius) !important;
    box-shadow: var(--ucapr-shadow) !important;
    border: 1px solid var(--ucapr-border) !important;
    overflow: hidden !important;
    transition: var(--ucapr-transition) !important;
    margin-bottom: 24px !important;
}

.wcfmmp-single-store .store-wrapper:hover {
    box-shadow: var(--ucapr-shadow-hover) !important;
    transform: translateY(-4px) !important;
    border-color: var(--ucapr-green-light) !important;
}

/* Bannière de la carte */
.wcfmmp-single-store .store-content .store-info {
    height: 180px !important;
    border-radius: var(--ucapr-radius) var(--ucapr-radius) 0 0 !important;
    background-size: cover !important;
    background-position: center !important;
    position: relative !important;
}

.wcfmmp-single-store .store-content .store-info::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(transparent, rgba(29, 92, 41, 0.1));
}

/* Footer de la carte (info du store) */
.wcfmmp-single-store .store-footer {
    padding: 20px !important;
    position: relative !important;
}

/* Avatar du store */
.wcfmmp-single-store .store-footer .store-avatar {
    width: 70px !important;
    height: 70px !important;
    margin-top: -50px !important;
    position: relative !important;
    z-index: 2 !important;
}

.wcfmmp-single-store .store-footer .store-avatar img {
    width: 70px !important;
    height: 70px !important;
    border-radius: 50% !important;
    border: 3px solid var(--ucapr-white) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    object-fit: cover !important;
}

/* Nom du store */
.wcfmmp-single-store .store-data h2 {
    font-size: 1.15em !important;
    font-weight: 700 !important;
    margin: 8px 0 6px !important;
    line-height: 1.3 !important;
}

.wcfmmp-single-store .store-data h2 a {
    color: var(--ucapr-green-dark) !important;
    text-decoration: none !important;
    transition: var(--ucapr-transition) !important;
}

.wcfmmp-single-store .store-data h2 a:hover {
    color: var(--ucapr-green-accent) !important;
}

/* Infos du store (adresse, tél, email) */
.wcfmmp-single-store .store-data p {
    color: var(--ucapr-text-light) !important;
    font-size: 0.85em !important;
    margin: 4px 0 !important;
    line-height: 1.4 !important;
}

.wcfmmp-single-store .store-data p .wcfmfa {
    color: var(--ucapr-green-accent) !important;
    margin-right: 6px !important;
    width: 16px !important;
}

/* Boutons de la carte */
.wcfmmp-single-store .store-enquiry,
.wcfmmp-single-store .store-enquiry a,
.wcfmmp-single-store .store-action-wrap a {
    background: var(--ucapr-green-dark) !important;
    color: var(--ucapr-white) !important;
    border: none !important;
    border-radius: var(--ucapr-radius-sm) !important;
    padding: 8px 18px !important;
    font-size: 0.85em !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: var(--ucapr-transition) !important;
    cursor: pointer !important;
    display: inline-block !important;
    text-decoration: none !important;
}

.wcfmmp-single-store .store-enquiry:hover,
.wcfmmp-single-store .store-enquiry a:hover,
.wcfmmp-single-store .store-action-wrap a:hover {
    background: var(--ucapr-green-accent) !important;
    transform: translateY(-1px) !important;
}

/* Bouton VISITER */
.wcfmmp-single-store .store-action-wrap a.wcfmmp-visit-store {
    background: var(--ucapr-green-light) !important;
    color: var(--ucapr-white) !important;
}

.wcfmmp-single-store .store-action-wrap a.wcfmmp-visit-store:hover {
    background: var(--ucapr-green-dark) !important;
}

/* Étoiles de notation */
.wcfmmp-single-store .star-rating span::before,
#wcfmmp-store .star-rating span::before {
    color: #f0ad4e !important;
}

/* =========================================================================
   SEARCH FORM - BARRE DE RECHERCHE
   ========================================================================= */

.wcfmmp-store-search-form {
    background: var(--ucapr-bg-card) !important;
    border-radius: var(--ucapr-radius) !important;
    box-shadow: var(--ucapr-shadow) !important;
    padding: 20px 24px !important;
    margin-bottom: 30px !important;
    border: 1px solid var(--ucapr-border) !important;
}

.wcfmmp-store-search-form input[type="text"],
.wcfmmp-store-search-form input[type="search"],
.wcfmmp-store-search-form select {
    border: 2px solid var(--ucapr-border) !important;
    border-radius: var(--ucapr-radius-sm) !important;
    padding: 10px 14px !important;
    font-size: 0.95em !important;
    transition: var(--ucapr-transition) !important;
}

.wcfmmp-store-search-form input:focus,
.wcfmmp-store-search-form select:focus {
    border-color: var(--ucapr-green-accent) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(89, 165, 69, 0.15) !important;
}

.wcfmmp-store-search-form button,
.wcfmmp-store-search-form input[type="submit"] {
    background: var(--ucapr-green-dark) !important;
    color: var(--ucapr-white) !important;
    border: none !important;
    border-radius: var(--ucapr-radius-sm) !important;
    padding: 10px 24px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: var(--ucapr-transition) !important;
}

.wcfmmp-store-search-form button:hover,
.wcfmmp-store-search-form input[type="submit"]:hover {
    background: var(--ucapr-green-accent) !important;
}

/* =========================================================================
   PAGINATION
   ========================================================================= */
   
.wcfmmp-store-lists .page-numbers,
.woocommerce-pagination .page-numbers li a,
.woocommerce-pagination .page-numbers li span {
    border-radius: var(--ucapr-radius-sm) !important;
    transition: var(--ucapr-transition) !important;
}

.wcfmmp-store-lists .page-numbers.current,
.woocommerce-pagination .page-numbers li span.current {
    background: var(--ucapr-green-dark) !important;
    color: var(--ucapr-white) !important;
}

/* =========================================================================
   SIDEBAR DU STORE - ACTUALITÉS
   ========================================================================= */

.ucapr-sidebar-news {
    background: var(--ucapr-bg-card);
    border-radius: var(--ucapr-radius-sm);
    padding: 18px;
    margin-top: 20px;
    border: 1px solid var(--ucapr-border);
}

.ucapr-sidebar-news h3 {
    font-size: 1em;
    font-weight: 700;
    color: var(--ucapr-green-dark);
    margin: 0 0 12px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--ucapr-green-light);
}

.ucapr-sidebar-news h3 .wcfmfa {
    margin-right: 6px;
    color: var(--ucapr-green-accent);
}

.ucapr-sidebar-news ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ucapr-sidebar-news ul li {
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
}

.ucapr-sidebar-news ul li:last-child {
    border-bottom: none;
}

.ucapr-sidebar-news ul li a {
    color: var(--ucapr-text);
    text-decoration: none;
    font-size: 0.9em;
    font-weight: 500;
    display: block;
    transition: var(--ucapr-transition);
}

.ucapr-sidebar-news ul li a:hover {
    color: var(--ucapr-green-accent);
}

.ucapr-sidebar-news .news-date {
    display: block;
    font-size: 0.78em;
    color: #999;
    margin-top: 2px;
}
