/*
Theme Name: Vesicapiscis
Description: Thème enfant de Twenty Twenty-Five
Author: Thomas Dufranne
Author URI: https://td-plugins.com
Template: twentytwentyfive
Version: 1.0.0
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: vesicapiscis
*/

/* 
 * Les styles du thème parent sont chargés automatiquement via functions.php
 * Ajoutez vos personnalisations CSS ci-dessous
 */

/* Styles pour le shortcode de liste aléatoires des auteurs sur la page d'accueil */
.autores-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin: 20px 0;
}
.autor-item {
    text-align: center;
}
.autor-item img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin-bottom: 10px;
}
.autor-item h3 {
    font-size: 22px;
    margin: 0;
    text-decoration:none;
}
.autor-item h3 a{
    text-decoration:none;
}


/* Styles pour les cartes auteurs dans la page auteurs */
/* Carte auteur */
.woocommerce ul.products li.product-category {
  box-sizing: border-box;
  border: 1px solid #e0e0e0; /* bordure gris clair */
  padding: 0.8rem; /* marge intérieure */
  text-align: center;
  background: transparent; /* pas de fond */
}

/* Image auteur uniforme */
.woocommerce ul.products li.product-category a img {
  display: block;
  width: 100%;
  height: 250px; /* fixe la taille de toutes les photos */
  object-fit: cover; /* pour garder le ratio et recadrer si nécessaire */
  margin: 0 auto 0.5rem;
  filter: grayscale(100%);
}

/* Effets au survol */
.woocommerce ul.products li.product-category a:hover img {
  transform: scale(1.05); /* zoom 5% */
}

/* Nom sous la photo */
.woocommerce ul.products li.product-category h2.woocommerce-loop-category__title {
  font-family: 'Cardo', serif;
  font-size: 1.1rem;
  font-weight: 400;
  margin: 0;
  color: #333;
}             

/* Styles pour le shortcode de photo de l'auteur dans la page catégorie */
.categorie-active-image img {
    width: 350px;       /* largeur fixe */
    height: 400px;      /* hauteur fixe */
    object-fit: cover;  /* garde le ratio et recadre si nécessaire */
    /* filter: grayscale(100%); */
    display: block;
    margin: 0 auto;     /* centre l'image */
}
.wp-block-term-description p{
	margin-block-start: 1rem;
}


/* Styles pour le shortcode de filtre par catégories dans la page boutique */
.vesica-categorias-filtro {
    margin: 15px 0;
}
.vesica-categorias-filtro select {
    padding: 8px 12px;
    font-size: 18px;
    color: #666;
    border:0;
    background:transparent;
    border-radius: 6px;
}

input.wp-block-search__input{
    padding: 8px 12px;
    border:0;
    background:transparent;
}

div.woocommerce.wc-block-catalog-sorting select.orderby{
    padding: 8px 12px;
    font-size: 18px;
    color: #666;
    border:0;
    background:transparent;
}

/* Page produit - lien téléchargements */
.descargas__ul{ 
    padding:0; 
    display: flex;
    gap: 15px; 
    flex-direction: column; 

}
    .descargas__li{ 
        list-style:none; 
        padding:0;     
        display: inline-block;  
    }
        .descargas__link{ 
            padding: 2px 13px; 
            border-radius:5px; 
            text-decoration:none; 

            background-color: transparent;
            border: 1px solid #ccc; 
            font-family: var(--wp--preset--font-family--cardo);

            display: flex;
            width: 280px;

            align-items: center;
            justify-content: space-between;
        }
        .descargas__link:hover,
        .descargas__link:focus
        {
            color: #fff; 
            background-color: #314b5c;
            border-color: #314b5c; 
        }   
            .descargas__icon{
                width: 40px;
                height: 40px;
                display: block;
                background-repeat: no-repeat;
                    background-size: contain;
            }
            .descargas-icon_dossier{
                background-image: url(img/icon_dossier-presse.png);
            }
            .descargas-icon_extrait{
                background-image: url(img/icon_extrait.png);
            }

/* Styles pour la boutique */

/* Page produit */
.woocommerce table.shop_attributes td {
    font-style: normal;
}


/* Styles pour le formulaire de contact */
/* Conteneur global CF7 */
.wpcf7 form {
    max-width: 600px;
    margin: 0 auto;
    background: transparent;
    padding: 0.5rem 2rem;
    border-radius: 1rem;
    font-family: 'Inter', sans-serif;
}
.wpcf7 form .wpcf7-form-control{
    box-sizing: border-box;
}
 
/* Labels */
.wpcf7 form label {
  display: block;

  margin-bottom: 0.5rem;
  
  color: #314b5c;
    font-family: var(--wp--preset--font-family--cardo);
    font-size: var(--wp--preset--font-size--medium);
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.1px;
}

/* Champs de saisie */
.wpcf7 form input[type='text'],
.wpcf7 form input[type='email'],
.wpcf7 form input[type='url'],
.wpcf7 form input[type='tel'],
.wpcf7 form input[type='number'],
.wpcf7 form input[type='date'],
.wpcf7 form select,
.wpcf7 form textarea {
  width: 100%;
  padding: 0.9rem 1rem;
  font-size: 0.95rem;
  border: 1px solid #ddd;
  border-radius: 0.6rem;
  background: #f9f9f9;
  transition: all 0.25s ease;
  margin-top:0.5em;
}

/* Focus states */
.wpcf7 form input:focus,
.wpcf7 form select:focus,
.wpcf7 form textarea:focus {
  border-color: #0073e6;
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.15);
}

/* Boutons */
.wpcf7 form input[type='submit'] {
display:block;
margin-left:auto;
margin-right:auto;
  background: #a79764;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  padding: 0.9rem 2rem;
  border: none;
  border-radius: 2rem;
  cursor: pointer;
  transition: transform 0.2s ease, background 0.3s ease;
  min-width: 30%;
}

.wpcf7 form input[type='submit']:hover {
  background: #314b5c;
  transform: translateY(-2px);
}

/* Messages de validation */
.wpcf7 form .wpcf7-response-output {
  margin-top: 1rem;
  padding: 1rem;
  border-radius: 0.6rem;
  font-size: 0.9rem;
}

.wpcf7 form .wpcf7-validation-errors {
  background: #fff3cd;
  color: #856404;
  border: 1px solid #ffeeba;
}

.wpcf7 form .wpcf7-mail-sent-ok {
  background: #d4edda;
  color: #155724;
  border: 1px solid #c3e6cb;
}

/* Erreurs sur champs */
.wpcf7-not-valid {
  border-color: #dc3545 !important;
  background: #fff5f5;
}

.wpcf7 form .wpcf7-not-valid-tip {
  font-size: 0.8rem;
  color: #dc3545;
  margin-top: 0.2rem;
}