/*
Theme Name: Zoolito v2
Theme URI: https://example.com/zoolito
Author: Zoolito
Author URI: https://example.com
Description: Thème boutique animalerie inspiré des grandes boutiques pour animaux : barre de recherche produits, navigation par catégories (chiens, chats, oiseaux, poissons, rongeurs), grille produits WooCommerce, pages À propos et Contact créées automatiquement, et description produit repliée par défaut (à dérouler d'un clic).
Version: 1.1.0
Requires at least: 6.4
Tested up to: 6.8
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: zoolito-v2
Tags: e-commerce, woocommerce, custom-menu, featured-images, full-site-editing
*/

/* ---------- Base ---------- */
body { background: #fff; color: #222; }
a { color: #2e7d32; }
.wp-block-button__link, .button, button[type="submit"], input[type="submit"] {
  background: #2e7d32; color: #fff; border: 0; border-radius: 6px; padding: 12px 22px; font-weight: 700; cursor: pointer;
}
.wp-block-button__link:hover, .button:hover { background: #1b5e20; }

/* ---------- Top bar / header ---------- */
.zoolito-topbar { background: #1b5e20; color: #fff; font-size: 14px; }
.zoolito-topbar a { color: #fff; text-decoration: none; }
.zoolito-header { border-bottom: 1px solid #e5e5e5; }
.zoolito-logo { font-size: 30px; font-weight: 800; letter-spacing: -0.5px; }
.zoolito-logo a { color: #2e7d32; text-decoration: none; }
.zoolito-logo span { color: #ff6f00; }
.zoolito-catnav { background: #2e7d32; }
.zoolito-catnav a { color: #fff !important; text-decoration: none; font-weight: 600; }
.zoolito-catnav li { list-style: none; }

/* ---------- Hero / categories ---------- */
.zoolito-hero { background: #e8f5e9; border-radius: 12px; padding: 48px 32px; }
.zoolito-hero h1 { font-size: 42px; margin: 0 0 12px; }
.zoolito-cat-tile { background: #f6f6f6; border-radius: 12px; padding: 28px 16px; text-align: center; }
.zoolito-cat-tile a { text-decoration: none; color: #222; font-weight: 700; font-size: 18px; }
.zoolito-cat-tile p { color: #666; font-size: 14px; }
.zoolito-advantage { background: #f6f6f6; border-radius: 12px; padding: 20px; text-align: center; }
.zoolito-advantage strong { display: block; margin-bottom: 4px; }

/* ---------- WooCommerce ---------- */
.woocommerce ul.products li.product .price, .woocommerce div.product p.price { color: #2e7d32; font-weight: 800; font-size: 18px; }
.woocommerce span.onsale { background: #ff6f00 !important; border-radius: 6px; min-height: 0; line-height: 1.6; padding: 4px 10px; }
.woocommerce .star-rating span::before, .woocommerce .star-rating::before { color: #ff6f00; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background: #fff; }
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background: #2e7d32; color: #fff; border-radius: 6px; }
.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: #1b5e20; color: #fff; }

/* ---------- Description produit : repliée par défaut ---------- */
.zoolito-accordion { border: 1px solid #e5e5e5; border-radius: 10px; margin: 24px 0; overflow: hidden; }
.zoolito-accordion-toggle { width: 100%; text-align: left; background: #f6f6f6; color: #222; border: 0; padding: 16px 20px; font-size: 17px; font-weight: 700; cursor: pointer; display: flex; justify-content: space-between; align-items: center; }
.zoolito-accordion-toggle:hover { background: #e8f5e9; }
.zoolito-accordion-toggle .chev { transition: transform .2s; font-size: 20px; }
.zoolito-accordion.open .chev { transform: rotate(180deg); }
.zoolito-accordion-panel { display: none; padding: 20px; }
.zoolito-accordion.open .zoolito-accordion-panel { display: block; }

/* ---------- Formulaires / footer ---------- */
.zoolito-form label { display: block; font-weight: 600; margin: 12px 0 4px; }
.zoolito-form input[type="text"], .zoolito-form input[type="email"], .zoolito-form textarea { width: 100%; border: 1px solid #ccc; border-radius: 6px; padding: 10px; box-sizing: border-box; }
.zoolito-footer { background: #222; color: #ccc; }
.zoolito-footer a { color: #fff; text-decoration: none; }
.zoolito-footer h3 { color: #fff; }

@media (max-width: 768px) {
  .zoolito-hero h1 { font-size: 28px; }
  .zoolito-hero { padding: 28px 18px; }
}

/* ---------- Écran de chargement : patte d'animal ---------- */
#zoolito-preloader { position: fixed; inset: 0; z-index: 99999; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; transition: opacity .45s ease, visibility .45s; }
body.zoolito-loaded #zoolito-preloader { opacity: 0; visibility: hidden; pointer-events: none; }
.zoolito-paw-track { display: flex; gap: 14px; align-items: flex-end; }
.zoolito-paw { width: 64px; height: 64px; fill: #2e7d32; opacity: 0; animation: zoolito-pawstep 1.2s infinite; }
.zoolito-paw.p2 { animation-delay: .25s; width: 78px; height: 78px; }
.zoolito-paw.p3 { animation-delay: .5s; }
.zoolito-paw.p1 { transform: rotate(-12deg); }
.zoolito-paw.p3 { transform: rotate(12deg); }
@keyframes zoolito-pawstep { 0% { opacity: 0; transform: translateY(10px) rotate(-12deg); } 30% { opacity: 1; transform: translateY(0) rotate(-12deg); } 70% { opacity: 1; } 100% { opacity: 0; } }
.zoolito-paw.p3 { animation-name: zoolito-pawstep-r; }
@keyframes zoolito-pawstep-r { 0% { opacity: 0; transform: translateY(10px) rotate(12deg); } 30% { opacity: 1; transform: translateY(0) rotate(12deg); } 70% { opacity: 1; } 100% { opacity: 0; } }
.zoolito-preloader-name { font-size: 30px; font-weight: 800; color: #2e7d32; margin: 10px 0 0; }
.zoolito-preloader-tag { color: #666; margin: 0; font-size: 15px; }

/* ---------- Photos de la démo ---------- */
.zoolito-hero-photo { background-image: url('assets/images/hero.jpg'); background-size: cover; background-position: center; border-radius: 12px; min-height: 300px; }
.zoolito-cat-photo { height: 150px; background-size: cover; background-position: center; border-radius: 10px; margin-bottom: 14px; }
.zoolito-cat-chiens { background-image: url('assets/images/dog.jpg'); }
.zoolito-cat-chats { background-image: url('assets/images/cat.jpg'); }
.zoolito-cat-oiseaux { background-image: url('assets/images/parrot.jpg'); }
.zoolito-cat-poissons { background-image: url('assets/images/fish.jpg'); }
.zoolito-cat-rongeurs { background-image: url('assets/images/rabbit.jpg'); }
