/*
Theme Name: Evofia
Theme URI: https://evofia.fr
Author: Evofia Team
Author URI: https://evofia.fr
Description: Un thème WordPress moderne et responsive utilisant Bootstrap 5
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: evofia
Tags: bootstrap, responsive, modern, flexible, custom-menu, featured-images
*/

/*
 * Style principal du thème Evofia
 * Bootstrap 5 est chargé via functions.php
 * Ce fichier contient les styles personnalisés
 */

/* ==========================================================================
   Variables CSS personnalisées
   ========================================================================== */
:root {
    /* Couleurs personnalisées Evofia */
    --evofia-green: #46B370;
    --evofia-teal: #004052;
    --evofia-cream: #F9EABD;
    --evofia-orange: #D98622;
    
    /* Couleurs Bootstrap (utilisant nos couleurs) */
    --evofia-primary: #46B370;
    --evofia-secondary: #004052;
    --evofia-success: #46B370;
    --evofia-warning: #D98622;
    --evofia-info: #004052;
    --evofia-light: #F9EABD;
    --evofia-danger: #dc3545;
    /* Polices */
    --evofia-font-family: 'Barlow', sans-serif;
    --evofia-heading-font: 'Barlow Semi Condensed', 'Barlow Condensed', sans-serif;
    --evofia-font-family-condensed: 'Barlow Condensed', 'Barlow Semi Condensed', sans-serif;
    --evofia-font-loveya: 'Loveya Script', cursive;
    --evofia-font-loveya-brush: 'Loveya Brush', cursive;
    --evofia-font-loveya-doodle: 'Loveya Doodle', cursive;
}

/* ==========================================================================
   Styles généraux
   ========================================================================== */
body {
    font-family: var(--evofia-font-family);
    /*line-height: 1.6;*/
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--evofia-heading-font);
    font-weight: 700;
    margin-bottom: 1rem;
}

/* ==========================================================================
   Navigation
   ========================================================================== */
.navbar-brand {
    font-weight: 700;
    font-size: 1.5rem;
}

/* ==========================================================================
   Articles et contenus
   ========================================================================== */
.entry-content {
    margin-top: 0rem;
    margin-bottom: 2rem;
}

.entry-content img {
    max-width: 100%;
    height: auto;
}

.entry-meta {
    color: #6c757d;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.entry-footer {
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid #dee2e6;
}

/* ==========================================================================
   Sidebar et Widgets
   ========================================================================== */
.widget {
    margin-bottom: 2rem;
}

.widget-title {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--evofia-primary);
}

/* ==========================================================================
   Footer
   ========================================================================== */
.site-footer {
    /*background-color: #f8f9fa;*/
    /*padding: 3rem 0 1rem;
    margin-top: 4rem;*/
}

.site-info {
    text-align: center;
    padding: 1rem 0;
    border-top: 1px solid #dee2e6;
    margin-top: 2rem;
}

/* ==========================================================================
   Pagination
   ========================================================================== */
.pagination {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* ==========================================================================
   Commentaires
   ========================================================================== */
.comment-list {
    list-style: none;
    padding: 0;
}

.comment {
    margin-bottom: 2rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border-radius: 0.25rem;
}

.comment-author {
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.comment-metadata {
    font-size: 0.875rem;
    color: #6c757d;
    margin-bottom: 0.5rem;
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 768px) {
    .navbar-brand {
        font-size: 1.25rem;
    }
}

/* ==========================================================================
   Accessibilité
   ========================================================================== */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #21759b;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}


/* ==========================================================================
   Alignements Gutenberg (alignwide, alignfull)
   ========================================================================== */

/* Largeur normale du contenu */
.entry-content > * {
    max-width: 100%;
}

/* Largeur étendue (alignwide) - 1200px max */
.entry-content .alignwide {
    max-width: 1200px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

/* Pleine largeur (alignfull) */
.entry-content .alignfull {
    max-width: 100vw;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

/* Centrer */
.entry-content .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* Flotter à gauche */
.entry-content .alignleft {
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 1rem;
}

/* Flotter à droite */
.entry-content .alignright {
    float: right;
    margin-left: 1.5rem;
    margin-bottom: 1rem;
}

/* Assurer que les images dans alignwide/alignfull respectent la largeur */
.entry-content .alignwide img,
.entry-content .alignfull img {
    width: 100%;
    height: auto;
}

/* Pour les blocs wp-block-image avec alignwide/alignfull */
.entry-content .wp-block-image.alignwide,
.entry-content .wp-block-image.alignfull,
.entry-content .wp-block-cover.alignwide,
.entry-content .wp-block-cover.alignfull,
.entry-content .wp-block-group.alignwide,
.entry-content .wp-block-group.alignfull {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

/* Gestion responsive des alignements étendus */
@media (max-width: 1200px) {
    .entry-content .alignwide {
        max-width: 100%;
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

@media (max-width: 768px) {
    .entry-content .alignfull {
        margin-left: -1rem;
        margin-right: -1rem;
        width: calc(100% + 2rem);
        max-width: calc(100% + 2rem);
    }
    
    .entry-content .alignleft,
    .entry-content .alignright {
        float: none;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
}
