/*
Theme Name: PG Theme V0.0
Theme URI: https://www.petitgourmand.com/
Author: Petit Gourmand
Author URI: https://www.petitgourmand.com/
Description: Thème WordPress stand-alone pour Petit Gourmand, portant la refonte statique (redesign/) — design system Lumiere : tokens sauge / terra / butter, typographies Playfair Display + Inter. Gabarits couverts : accueil, recette (intégration WPRM), catégories, recherche, auteur, guides, collections. Recherche instantanée côté client, méga-menu dynamique, Schema.org (Recipe, BreadcrumbList, ItemList, Person).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
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: pg-theme
Tags: blog, one-column, custom-menu, featured-images, full-width-template, threaded-comments, translation-ready
*/

/*
 * Le design system vit dans assets/css/pg.css (enqueue séparé).
 * Ce fichier ne contient que les correctifs WordPress indispensables :
 * admin bar, alignements, contenu éditorial hors recette, commentaires.
 */

:root {
  --adminbar: 0px;
}

/* ── Admin bar ── */
.admin-bar .site-header { top: 32px; }
.admin-bar .nav-mobile { top: 0; }
@media screen and (max-width: 782px) {
  .admin-bar .site-header { top: 46px; }
}

/* ── Contenu éditorial générique (pages, articles sans recette) ── */
.entry-content,
.page-content {
  font-size: 1.05rem;
  line-height: 1.75;
  color: var(--text);
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4,
.page-content h1, .page-content h2, .page-content h3, .page-content h4 {
  font-family: var(--font-display);
  color: var(--text);
  line-height: 1.25;
  scroll-margin-top: calc(var(--header-h) + 1rem);
}
.entry-content h2, .page-content h2 {
  font-size: clamp(1.6rem, 3vw, 2rem);
  margin: 2.75rem 0 1rem;
  padding-top: 2rem;
  border-top: 1px solid var(--border-soft);
}
.entry-content h2:first-child, .page-content h2:first-child { margin-top: 0; border-top: none; }
.entry-content h3, .page-content h3 { font-size: 1.3rem; margin: 2rem 0 0.75rem; }
.entry-content p, .page-content p { margin: 0 0 1.25rem; }
.entry-content ul, .page-content ul,
.entry-content ol, .page-content ol { margin: 0 0 1.25rem; padding-left: 1.5rem; }
.entry-content li, .page-content li { margin-bottom: 0.5rem; }
.entry-content img, .page-content img { border-radius: var(--r-lg); height: auto; }
.entry-content a, .page-content a { color: var(--sage-dark); text-decoration: underline; text-underline-offset: 3px; }
.entry-content blockquote, .page-content blockquote {
  border-left: 3px solid var(--sage);
  padding: 0.5rem 0 0.5rem 1.5rem;
  margin: 1.5rem 0;
  font-family: var(--font-display);
  font-style: italic;
  font-size: 1.2rem;
  color: var(--text-2);
}
.entry-content table, .page-content table { width: 100%; border-collapse: collapse; margin: 0 0 1.5rem; }
.entry-content th, .page-content th, .entry-content td, .page-content td {
  border-bottom: 1px solid var(--border-soft);
  padding: 0.75rem 0.5rem;
  text-align: left;
  font-size: 0.95rem;
}
.entry-content th, .page-content th { font-family: var(--font-display); color: var(--text); }
.entry-content .alignleft { float: left; margin: 0.5rem 1.5rem 1rem 0; }
.entry-content .alignright { float: right; margin: 0.5rem 0 1rem 1.5rem; }
.entry-content .aligncenter { display: block; margin: 1.5rem auto; }
.entry-content .alignwide, .entry-content .alignfull { margin-left: auto; margin-right: auto; }
.entry-content figure, .page-content figure { margin: 1.5rem 0; }
.wp-caption { max-width: 100%; }
.wp-caption-text { font-size: 0.85rem; color: var(--text-muted); text-align: center; padding: 0.5rem 0; }
.screen-reader-text { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); }

/* ── Commentaires WordPress (masqués en `comment` du design) ── */
.comments-list__count { font-family: var(--font-body); font-size: 1rem; color: var(--text-muted); font-weight: 400; margin: 0 0 1.5rem; }
.comments-list__closed { color: var(--text-muted); font-size: 0.95rem; }
.comments-list .comment-navigation { display: flex; gap: 1rem; justify-content: space-between; margin: 1.5rem 0; font-size: 0.95rem; }
.comments-list .comment-navigation a { color: var(--sage-dark); font-weight: 600; }
.comments-list .comment-list,
.comments-list ol.children { list-style: none; margin: 0; padding: 0; }
.comments-list .comment-list > .comment { border-bottom: 1px solid var(--border-soft); padding-bottom: 1.5rem; margin-bottom: 1.5rem; }
.comments-list .comment-body { display: flex; gap: 1rem; }
.comments-list .avatar { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; flex: none; background: var(--sage-tint); }
.comments-list .comment-body p:last-child { margin-bottom: 0; }
.comments-list .comment-metadata { font-size: 0.82rem; color: var(--text-muted); margin: 0.25rem 0 0.75rem; }
.comments-list .comment-metadata a { color: var(--text-muted); }
.comments-list .comment-author { font-family: var(--font-display); font-weight: 600; color: var(--text); font-size: 1.05rem; font-style: normal; }
.comments-list .comment-author .says { display: none; }
.comments-list .comment-respond { margin-top: 2rem; }
.comments-list .comment-form label { display: block; font-size: 0.9rem; font-weight: 600; color: var(--text); margin: 1rem 0 0.35rem; }
.comments-list .comment-form input[type="text"],
.comments-list .comment-form input[type="email"],
.comments-list .comment-form input[type="url"],
.comments-list .comment-form textarea {
  width: 100%; padding: 0.85rem 1rem; font-family: var(--font-body); font-size: 1rem;
  border: 1px solid var(--border); border-radius: var(--r-md); background: var(--bg); color: var(--text);
}
.comments-list .comment-form input:focus, .comments-list .comment-form textarea:focus { outline: none; border-color: var(--sage); box-shadow: 0 0 0 3px var(--sage-tint); }
.comments-list .comment-form p.comment-form-comment { display: flex; flex-direction: column; }
.comments-list .comment-form .submit { margin-top: 1rem; }

/* ── Pagination ── */
.pagination { display: flex; justify-content: center; gap: 0.5rem; margin-top: 3rem; flex-wrap: wrap; }
.pagination .page-numbers {
  display: inline-grid; place-items: center; min-width: 42px; height: 42px; padding: 0 0.75rem;
  border: 1px solid var(--border-soft); border-radius: var(--r-full); font-size: 0.9rem; color: var(--text);
  transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease), color var(--dur) var(--ease);
}
.pagination .page-numbers:hover, .pagination .page-numbers.current { border-color: var(--sage); background: var(--sage); color: #fff; }
.pagination .page-numbers.prev, .pagination .page-numbers.next { border-color: var(--border-soft); }

/* ── Divers ── */
.search-form { display: flex; gap: 0.75rem; }
.sticky { }
.bypostauthor { }
