/* ═══════════════════════════════════════════════════════════════════════════
   LES MÊMES PAS — Styles principaux du thème
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Icônes Material ── */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    user-select: none;
}

/* ── Utilitaires typographiques ── */
.text-balance { text-wrap: balance; }

/* ── Animation carte livre ── */
.book-card:hover .book-image { transform: scale(1.02); }
.book-image { transition: transform 0.5s ease; }

/* ── Cadre vidéo ── */
.video-frame {
    position: relative;
    padding: 12px;
    background: #fff;
    box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05);
    border: 1px solid #E5E1DA;
}
.video-frame::before {
    content: '';
    position: absolute;
    inset: -4px;
    border: 1px solid rgba(0, 70, 79, 0.1);
    pointer-events: none;
}

/* ── Scroll fluide (déjà sur html mais au cas où) ── */
html { scroll-behavior: smooth; }

/* ══════════════════════════════════════════════════════════════════════════
   WOOCOMMERCE — Surcharges de style
   ══════════════════════════════════════════════════════════════════════════ */

/* Prix */
.woocommerce .woo-price .price,
.woocommerce .price,
.woocommerce span.price,
.woocommerce .amount {
    font-family: 'Libre Caslon Text', serif;
    font-weight: 600;
    color: #00464f; /* --primary */
}

.woocommerce del .amount {
    color: #6f797b; /* --outline */
    font-size: 0.85em;
}

.woocommerce ins .amount {
    text-decoration: none;
    color: #ba1a1a; /* --error — prix soldé */
}

/* Bouton Ajouter au panier (single product) */
.woocommerce .single_add_to_cart_button,
.woocommerce button.button.alt {
    background-color: #00464f !important;
    color: #fff !important;
    border-radius: 0.125rem !important;
    padding: 0.875rem 2.5rem !important;
    font-family: 'Hanken Grotesk', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    text-transform: none !important;
    transition: background-color 0.2s ease !important;
    border: none !important;
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover {
    background-color: #005f6b !important;
}

/* Quantité */
.woocommerce .quantity .qty {
    border: 1px solid #E5E1DA;
    border-radius: 0.125rem;
    padding: 0.75rem 1rem;
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 16px;
    color: #1a1c1b;
    width: 80px;
}

/* Onglets produit */
.woocommerce .woocommerce-tabs ul.tabs {
    border-bottom: 2px solid #E5E1DA;
    padding: 0;
    margin-bottom: 2rem;
}
.woocommerce .woocommerce-tabs ul.tabs li {
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
}
.woocommerce .woocommerce-tabs ul.tabs li a {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #3f484a;
    padding: 0.75rem 1.5rem;
    text-transform: uppercase;
}
.woocommerce .woocommerce-tabs ul.tabs li.active {
    border-bottom-color: #00464f;
}
.woocommerce .woocommerce-tabs ul.tabs li.active a {
    color: #00464f;
}

/* Notices WooCommerce */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 16px;
    border-radius: 0.125rem !important;
    padding: 1rem 1.5rem !important;
}
.woocommerce-message { background-color: #e3f5f7 !important; color: #00464f !important; border-left-color: #00464f !important; }
.woocommerce-error   { background-color: #ffdad6 !important; color: #93000a !important; border-left-color: #ba1a1a !important; }

/* Sélecteur de tri (orderby) */
.woocommerce-ordering select {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 14px;
    border: 1px solid #E5E1DA;
    border-radius: 0.125rem;
    padding: 0.5rem 2rem 0.5rem 1rem;
    color: #1a1c1b;
    background-color: #fff;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul {
    border: none;
}
.woocommerce nav.woocommerce-pagination ul li {
    border: none;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 0.5rem 1rem;
    border: 1px solid #E5E1DA;
    margin: 0 2px;
    color: #3f484a;
    transition: all 0.2s ease;
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
    background-color: #00464f;
    color: #fff;
    border-color: #00464f;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
    background-color: #00464f;
    color: #fff;
    border-color: #00464f;
}

/* Étoiles d'avis */
.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
    color: #C69B01 !important; /* --accent-gold */
}

/* Formulaires checkout et panier */
.woocommerce-checkout .form-row label,
.woocommerce-cart .form-row label {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.05em;
    color: #1a1c1b;
    text-transform: uppercase;
    margin-bottom: 0.25rem;
    display: block;
}
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row textarea,
.woocommerce-cart .form-row input {
    font-family: 'Hanken Grotesk', sans-serif;
    font-size: 16px;
    border: 1px solid #E5E1DA;
    border-radius: 0.125rem;
    padding: 0.75rem 1rem;
    width: 100%;
    transition: border-color 0.2s ease;
}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row textarea:focus {
    outline: none;
    border-color: #00464f;
    box-shadow: 0 0 0 2px rgba(0, 70, 79, 0.1);
}

/* Bouton place_order */
#place_order {
    width: 100%;
    background-color: #C69B01 !important;
    color: #0D1111 !important;
    font-family: 'Hanken Grotesk', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    padding: 1rem 2rem !important;
    border: none !important;
    border-radius: 0.125rem !important;
    transition: background-color 0.2s ease !important;
}
#place_order:hover {
    background-color: #a88300 !important;
}

/* Table panier */
.woocommerce table.shop_table {
    border: 1px solid #E5E1DA;
    border-radius: 0;
    font-family: 'Hanken Grotesk', sans-serif;
}
.woocommerce table.shop_table th {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #3f484a;
    background-color: #f4f3f1;
    border-bottom: 1px solid #E5E1DA;
    padding: 0.75rem 1rem;
}
.woocommerce table.shop_table td {
    border-bottom: 1px solid #E5E1DA;
    padding: 1rem;
    vertical-align: middle;
}

/* ══════════════════════════════════════════════════════════════════════════
   ADD-TO-CART AJAX — Feedback visuel
   ══════════════════════════════════════════════════════════════════════════ */

.add-to-cart-btn.loading .btn-text { display: none; }
.add-to-cart-btn.loading .btn-loading { display: inline-flex; }
.add-to-cart-btn.added {
    background-color: #2d7a2d !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   RESPONSIVE — Ajustements mobiles
   ══════════════════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    .woocommerce-checkout .col2-set {
        width: 100%;
    }
    .woocommerce-checkout #order_review_heading,
    .woocommerce-checkout #order_review {
        width: 100%;
    }
}

/* ══════════════════════════════════════════════════════════════════════════
   LOGO WooCommerce / WordPress — Nettoyage
   ══════════════════════════════════════════════════════════════════════════ */

/* Cacher le texte du logo custom WordPress si on a une image */
.custom-logo-link img {
    height: 48px;
    width: auto;
    object-fit: contain;
}

/* Logo footer en inversion */
footer .custom-logo-link img {
    filter: invert(1);
    opacity: 0.8;
}
