.wc-stripe-payment-button-preview{align-items:center;background-color:#000;border-radius:5px;display:flex;height:40px;justify-content:center}.wc-stripe-payment-button-preview img{height:22px}.wc-stripe-payment-button-preview:hover{cursor:pointer;filter:opacity(.7)}.wc-stripe-payment-button-preview.wc-stripe-amazon-pay-preview{background-color:#ffd814}.wc-stripe-payment-button-preview.wc-stripe-amazon-pay-preview img{height:40px}.wc-stripe-payment-button-preview.wc-stripe-link-preview{background-color:#00d66f}.wc-stripe-payment-button-preview.wc-stripe-link-preview img{height:40px}
button.stripe-gateway-stripelink-modal-trigger{background:no-repeat url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjQiIGhlaWdodD0iNDgiIHZpZXdCb3g9IjAgMCA3MiAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2LjEyIDMuNjc2ODNDMzYuMTIgMi41NDg4MiAzNy4wNzA0IDEuNjMyMDIgMzguMTg4OCAxLjYzMjAyQzM5LjMwNzIgMS42MzIwMiA0MC4yNTc2IDIuNTUzNjIgNDAuMjU3NiAzLjY3NjgzQzQwLjI1NzYgNC44MDAwMyAzOS4zNDA4IDUuNzQ1NjMgMzguMTg4OCA1Ljc0NTYzQzM3LjAzNjggNS43NDU2MyAzNi4xMiA0LjgyODgzIDM2LjEyIDMuNjc2ODNaIiBmaWxsPSIjMDExRTBGIi8+CjxwYXRoIGQ9Ik0yOS45ODA4IDEuOTIwMDFIMzMuNTgwOFYyMi4wOEgyOS45ODA4VjEuOTIwMDFaIiBmaWxsPSIjMDExRTBGIi8+CjxwYXRoIGQ9Ik00MC4wMDggNy42ODAwMUgzNi4zNzkyVjIyLjA4SDQwLjAwOFY3LjY4MDAxWiIgZmlsbD0iIzAxMUUwRiIvPgo8cGF0aCBkPSJNNjYuMDk2IDE0LjM5MDRDNjguODI3MiAxMi43MTA0IDcwLjY4NDggMTAuMjA5NiA3MS40MTkyIDcuNjc1MjRINjcuNzkwNEM2Ni44NDQ4IDEwLjA5NDQgNjQuNjc1MiAxMS45MTM2IDYyLjI4OTYgMTIuNjg2NFYxLjkxNTIzSDU4LjY2MDhWMjIuMDc1Mkg2Mi4yODk2VjE2LjA4QzY1LjA1OTIgMTYuNzcxMiA2Ny4yNDggMTkuMTY2NCA2Ny45OTY4IDIyLjA3NTJINzEuNjQ5NkM3MS4wOTI4IDE5LjAyMjQgNjkuMDA0OCAxNi4xNjY0IDY2LjA5NiAxNC4zOTA0WiIgZmlsbD0iIzAxMUUwRiIvPgo8cGF0aCBkPSJNNDYuNDQgOS4yOTI4M0M0Ny4zOTA0IDguMDMwNDMgNDkuMjQzMiA3LjI5NjAyIDUwLjc0NTYgNy4yOTYwMkM1My41NDg4IDcuMjk2MDIgNTUuODY3MiA5LjM0NTYzIDU1Ljg3MiAxMi40NDE2VjIyLjA3NTJINTIuMjQzMlYxMy4yNDMyQzUyLjI0MzIgMTEuOTcxMiA1MS42NzY4IDEwLjUwMjQgNDkuODM4NCAxMC41MDI0QzQ3LjY3ODQgMTAuNTAyNCA0Ni40MzUyIDEyLjQxNzYgNDYuNDM1MiAxNC42NTkyVjIyLjA4NDhINDIuODA2NFY3LjY4OTYySDQ2LjQ0VjkuMjkyODNaIiBmaWxsPSIjMDExRTBGIi8+CjxwYXRoIGQ9Ik0xMiAyNEMxOC42Mjc0IDI0IDI0IDE4LjYyNzQgMjQgMTJDMjQgNS4zNzI1NyAxOC42Mjc0IDAgMTIgMEM1LjM3MjU5IDAgMCA1LjM3MjU3IDAgMTJDMCAxOC42Mjc0IDUuMzcyNTkgMjQgMTIgMjRaIiBmaWxsPSIjMDBENjZGIi8+CjxwYXRoIGQ9Ik0xMS40NDc5IDQuODAwMDVINy43NDcwN0M4LjQ2NzA3IDcuODA5NjUgMTAuNTY5NSAxMC4zODI0IDEzLjE5OTkgMTJDMTAuNTY0NyAxMy42MTc2IDguNDY3MDcgMTYuMTkwNCA3Ljc0NzA3IDE5LjJIMTEuNDQ3OUMxMi4zNjQ3IDE2LjQxNiAxNC45MDM5IDEzLjk5NjggMTguMDIzOSAxMy41MDI0VjEwLjQ5MjlDMTQuODk5MSAxMC4wMDMzIDEyLjM1OTkgNy41ODQwNSAxMS40NDc5IDQuODAwMDVaIiBmaWxsPSIjMDExRTBGIi8+Cjwvc3ZnPgo=);background-color:transparent!important;border:none;cursor:pointer;display:none;height:40px;position:absolute;right:5px;width:64px}button.stripe-gateway-stripelink-modal-trigger:hover{background-color:transparent;border-color:transparent}.wc-block-checkout__payment-method .wc-block-components-radio-control__label>span{width:100%}.wc-block-checkout__payment-method .wc-block-components-radio-control__label>span>span{align-items:center;display:flex;float:right;justify-content:center}#radio-control-wc-payment-method-options-stripe__content.optimized-checkout-element{padding-top:1.4em}#radio-control-wc-payment-method-options-stripe__content.optimized-checkout-element .content:empty{display:none}#radio-control-wc-payment-method-options-stripe__label>span>span{border:none}@keyframes wc-skeleton-shimmer{to{transform:translateX(100%)}}body.wc-block-product-gallery-modal-open,body.wc-modal--open{overflow:hidden}.wc-block-grid__products .wc-block-grid__product-image{display:block;position:relative;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image a{border:0;box-shadow:none;outline:0;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image img{height:auto;max-width:100%;width:100%}.wc-block-grid__products .wc-block-grid__product-image img[hidden]{display:none}.wc-block-grid__products .wc-block-grid__product-image img[alt=""]{border:1px solid #f2f2f2}.edit-post-visual-editor .editor-block-list__block .wc-block-grid__product-title,.editor-styles-wrapper .wc-block-grid__product-title,.wc-block-grid__product-title{color:inherit;display:block;font-family:inherit;font-size:inherit;font-weight:700;line-height:1.2;padding:0}.wc-block-grid__product-price{display:block}.wc-block-grid__product-price .wc-block-grid__product-price__regular{margin-right:.5em}.wc-block-grid__product-add-to-cart.wp-block-button{white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{display:inline-flex;font-size:1em;justify-content:center;text-align:center;white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading{opacity:.25}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.added:after{content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-left:.5em;width:auto}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading:after{animation:spin 2s linear infinite;content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-left:.5em;width:auto}.has-5-columns:not(.alignfull) .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-6-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-7-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-8-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-9-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after{content:"";margin:0}.wc-block-grid__product-rating,.wp-block-woocommerce-product-review-rating{display:block}.wc-block-grid__product-rating .star-rating,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars,.wc-block-grid__product-rating .wc-block-product-review-rating__stars,.wp-block-woocommerce-product-review-rating .star-rating,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars{font-family:WooCommerce;font-size:1em;font-weight:400;height:1.618em;line-height:1.618;margin:0 auto;overflow:hidden;position:relative;text-align:left;width:5.3em}.wc-block-grid__product-rating .star-rating:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars:before,.wp-block-woocommerce-product-review-rating .star-rating:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars:before{content:"SSSSS";left:0;opacity:.5;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-grid__product-rating .star-rating span,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span,.wp-block-woocommerce-product-review-rating .star-rating span,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span{left:0;overflow:hidden;padding-top:1.5em;position:absolute;right:0;top:0}.wc-block-grid__product-rating .star-rating span:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span:before,.wp-block-woocommerce-product-review-rating .star-rating span:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span:before{color:inherit;content:"SSSSS";left:0;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-grid .wc-block-grid__product-onsale,.wc-block-grid__product-image .wc-block-grid__product-onsale{background:#fff;border:1px solid #43454b;border-radius:4px;color:#43454b;display:inline-block;font-size:.875em;font-weight:600;left:auto;padding:.25em .75em;position:absolute;right:4px;text-align:center;text-transform:uppercase;top:4px;width:auto;z-index:9}.wc-block-grid__product .wc-block-grid__product-image,.wc-block-grid__product .wc-block-grid__product-link{display:inline-block;position:relative}.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image),.wc-block-grid__product .wc-block-grid__product-title{margin:0 0 12px}.wc-block-grid__product .wc-block-grid__product-add-to-cart,.wc-block-grid__product .wc-block-grid__product-onsale,.wc-block-grid__product .wc-block-grid__product-price,.wc-block-grid__product .wc-block-grid__product-rating{margin:0 auto 12px}.theme-twentysixteen .wc-block-grid .price ins{color:#77a464}.theme-twentynineteen .wc-block-grid__product{font-size:.88889em}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-components-product-title,.theme-twentynineteen .wc-block-grid__product-onsale,.theme-twentynineteen .wc-block-grid__product-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.theme-twentynineteen .wc-block-grid__product-title:before{display:none}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-grid__product-onsale{line-height:1}.theme-twentynineteen .editor-styles-wrapper .wp-block-button .wp-block-button__link:not(.has-text-color){color:#fff}.theme-twentytwenty .wc-block-grid__product-link{color:#000}.theme-twentytwenty .wc-block-components-product-title,.theme-twentytwenty .wc-block-grid__product-title{color:#cd2653;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:1em}.theme-twentytwenty .wp-block-columns .wc-block-components-product-title{margin-top:0}.theme-twentytwenty .wc-block-components-product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-components-product-price__value,.theme-twentytwenty .wc-block-grid__product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-grid__product-price__value{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:.9em}.theme-twentytwenty .wc-block-components-product-price del,.theme-twentytwenty .wc-block-grid__product-price del{opacity:.7}.theme-twentytwenty .wc-block-components-product-price ins,.theme-twentytwenty .wc-block-grid__product-price ins{text-decoration:none}.theme-twentytwenty .star-rating,.theme-twentytwenty .wc-block-grid__product-rating{font-size:.7em}.theme-twentytwenty .star-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .star-rating .wc-block-grid__product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-grid__product-rating__stars{line-height:1}.theme-twentytwenty .wc-block-components-product-button>.wp-block-button__link,.theme-twentytwenty .wc-block-grid__product-add-to-cart>.wp-block-button__link{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif}.theme-twentytwenty .wc-block-components-product-sale-badge,.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{background:#cd2653;color:#fff;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.2;text-transform:uppercase}.theme-twentytwenty .wc-block-grid__products .wc-block-components-product-sale-badge{position:static}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-image .wc-block-components-product-sale-badge{position:absolute}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale:not(.wc-block-components-product-sale-badge){position:absolute;right:4px;top:4px;z-index:1}.theme-twentytwenty .wc-block-active-filters__title,.theme-twentytwenty .wc-block-attribute-filter__title,.theme-twentytwenty .wc-block-price-filter__title,.theme-twentytwenty .wc-block-stock-filter__title{font-size:1em}.theme-twentytwenty .wc-block-active-filters .wc-block-active-filters__clear-all,.theme-twentytwenty .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{font-size:.75em}@media only screen and (min-width:768px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}@media only screen and (min-width:1168px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}.theme-twentytwentytwo .wc-block-grid__product-add-to-cart .added_to_cart{display:block;margin-top:12px}.theme-twentytwentytwo .wc-block-components-product-price ins,.theme-twentytwentytwo .wc-block-grid__product-price ins{text-decoration:none}.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;overflow-wrap:normal!important;padding:0;position:absolute!important;width:1px}.screen-reader-text:focus{clip:auto!important;background-color:#fff;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip-path:none;color:#2b2d2f;display:block;font-size:.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}.wp-block-group.woocommerce.product .up-sells.upsells.products{max-width:var(--wp--style--global--wide-size)}
@keyframes wc-skeleton-shimmer{to{transform:translateX(100%)}}.wc-block-components-notice-banner{align-content:flex-start;align-items:stretch;background-color:#fff;border:1px solid #2f2f2f;border-radius:4px;box-sizing:border-box;color:#2f2f2f;display:flex;font-size:.875em;font-weight:400;gap:12px;line-height:1.5;margin:16px 0;padding:16px!important}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content{align-self:center;flex-basis:100%;padding-right:16px;white-space:normal}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content:last-child{padding-right:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-block-components-notice-banner__summary{font-weight:600;margin:0 0 8px}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul{margin:0 0 0 24px;padding:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol li:after,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul li:after{clear:both;content:"";display:block}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward{appearance:none;background:transparent!important;border:0;color:#2f2f2f!important;float:right;margin:0;opacity:.7;padding:0!important;text-decoration-line:underline;text-underline-position:under;transition:all .2s ease-in-out}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:active,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:focus,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:hover{opacity:1;text-decoration:none}.wc-block-components-notice-banner>svg{fill:#fff;background-color:#2f2f2f;border-radius:50%;flex-grow:0;flex-shrink:0;height:100%;padding:2px}.wc-block-components-notice-banner>.wc-block-components-button{background:transparent none!important;border:0!important;box-shadow:none!important;color:#2f2f2f!important;flex:0 0 16px;height:16px!important;margin:6px 0 0 auto!important;min-height:auto!important;min-width:0!important;opacity:.6;outline:none!important;padding:0!important;width:16px!important}.wc-block-components-notice-banner>.wc-block-components-button>svg{margin:0!important}.wc-block-components-notice-banner>.wc-block-components-button:active,.wc-block-components-notice-banner>.wc-block-components-button:focus,.wc-block-components-notice-banner>.wc-block-components-button:hover{opacity:1}.wc-block-components-notice-banner>.wc-block-components-button:focus{outline:2px solid currentColor!important;outline-offset:0}.wc-block-components-notice-banner.is-error{background-color:#fff0f0;border-color:#cc1818}.wc-block-components-notice-banner.is-error>svg{background-color:#cc1818;transform:rotate(180deg)}.wc-block-components-notice-banner.is-warning{background-color:#fffbf4;border-color:#f0b849}.wc-block-components-notice-banner.is-warning>svg{background-color:#f0b849;transform:rotate(180deg)}.wc-block-components-notice-banner.is-success{background-color:#f4fff7;border-color:#4ab866}.wc-block-components-notice-banner.is-success>svg{background-color:#4ab866}.wc-block-components-notice-banner.is-info{background-color:#f4f8ff;border-color:#007cba}.wc-block-components-notice-banner.is-info>svg{background-color:#007cba}.wc-block-components-notice-banner:focus{outline-width:0}.wc-block-components-notice-banner:focus-visible{outline-style:solid;outline-width:2px}.woocommerce.wc-block-store-notices.alignwide{max-width:var(--wp--style--global--wide-size)}/**
 * GENTOLOGIE MAGAZINES - Styles CSS
 * Fichier : css/magazines.css
 * Version : 1.0.0
 */

/* ========================================
   STYLES GÉNÉRAUX DE LA PAGE
   ======================================== */

.gentologie-magazines-page {
    background-color: var(--color-gentologie-background);
    min-height: 100vh;
}

.container {
    max-width: var(--container-max-width);
    margin: 0 auto;
    padding: 0 var(--spacing-medium);
}

/* ========================================
   HEADER DE LA PAGE
   ======================================== */

.page-header {
    text-align: center;
    padding: var(--spacing-large) 0;
    background: var(--color-gentologie-background);
    margin-bottom: var(--spacing-large);
}

.page-title {
  font-size: clamp(3rem, 8vw, 6rem);
  font-weight: 300;
  color: var(--color-gentologie-green);
  margin-bottom: var(--spacing-lg);
  font-family: var(--font-family-primary);
  text-align: center !important;
}

.page-subtitle {
    font-size: var(--font-size-lg);
    color: var(--color-gentologie-text-secondary);
    max-width: 600px;
    margin: 0 auto var(--spacing-medium);
    line-height: var(--line-height-relaxed);
    text-align: center !important;
}

.woocommerce-breadcrumb {
    margin-top: var(--spacing-medium);
    font-size: var(--font-size-sm);
}

.woocommerce-breadcrumb a {
    color: var(--color-gentologie-green);
    text-decoration: none;
    transition: var(--transition-fast);
}

.woocommerce-breadcrumb a:hover {
    text-decoration: underline;
    color: var(--color-gentologie-hover-green);
}

/* ========================================
   ÉTAT DE CHARGEMENT
   ======================================== */

.loading {
    text-align: center;
    padding: var(--spacing-xxl);
    color: var(--color-gentologie-text-secondary);
}

.loading-spinner {
    width: 40px;
    height: 40px;
    border: 3px solid var(--color-gentologie-background-box);
    border-top: 3px solid var(--color-gentologie-green);
    animation: spin 1s linear infinite;
    margin: 0 auto var(--spacing-medium);
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ========================================
   MAGAZINE EN VEDETTE
   ======================================== */

.featured-magazine {
    margin: var(--spacing-large) 0;
    background: var(--color-gentologie-background);
    overflow: hidden;
}

.featured-content {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: var(--spacing-large);
    align-items: center;
    padding: var(--spacing-large);
}

.featured-cover {
    position: relative;
    overflow: hidden;
}

.featured-cover img {
    width: 100%;
    height: auto;
    display: block;
}


.featured-badge {
    position: absolute;
    top: var(--spacing-small);
    left: var(--spacing-small);
    background: var(--color-gentologie-green);
    color: var(--color-gentologie-text-alt);
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 10;
}

.featured-info h2 {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-4xl);
    color: var(--color-gentologie-title);
    margin-bottom: var(--spacing-medium);
    line-height: var(--line-height-tight);
}

.featured-description {
    font-size: var(--font-size-lg);
    color: var(--color-gentologie-text-secondary);
    margin-bottom: var(--spacing-large);
    line-height: var(--line-height-relaxed);
}

.featured-meta {
    display: flex;
    gap: var(--spacing-medium);
    margin-bottom: var(--spacing-large);
    flex-wrap: wrap;
}

.meta-item {
    background: var(--color-gentologie-background-box);
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-sm);
    color: var(--color-gentologie-text-green);
    font-weight: var(--font-weight-medium);
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-xs);
}

.price-tag {
    background: var(--color-gentologie-green);
    color: var(--color-gentologie-text-alt);
    font-weight: var(--font-weight-bold);
}

/* ========================================
   BOUTONS D'ACTION
   ======================================== */

.action-buttons {
    display: flex;
    gap: var(--spacing-sm);
    flex-wrap: wrap;
}

.btn {
    padding: var(--spacing-small) var(--spacing-medium);
    border: none;
    text-decoration: none;
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-sm);
    text-align: center;
    cursor: pointer;
    transition: var(--transition-normal);
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-sm);
    min-height: 44px;
    font-family: inherit;
    position: relative;
    overflow: hidden;
}

.btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: var(--transition-fast);
}

.btn:hover::before {
    left: 100%;
}

.btn:focus {
    outline: 2px solid var(--color-gentologie-focus);
    outline-offset: 2px;
}

.btn-primary {
    background: var(--color-gentologie-background-button);
    color: var(--color-gentologie-text-button);
}

.btn-primary:hover {
    background: var(--color-gentologie-hover-green);
    transform: translateY(-1px);
    color: var(--color-gentologie-text-button);
    text-decoration: none;
    box-shadow: var(--shadow-medium);
}

.btn-secondary {
    background: transparent;
    color: var(--color-gentologie-green);
    border: 2px solid var(--color-gentologie-green);
}

.btn-secondary:hover {
    background: var(--color-gentologie-green);
    color: var(--color-gentologie-text-alt);
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: var(--shadow-medium);
}

.btn-disabled,
.btn:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    transform: none !important;
    box-shadow: none !important;
}

.btn-small {
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-xs);
    min-height: 36px;
}

/* ========================================
   GRILLE DES MAGAZINES
   ======================================== */

.magazines-section {
    margin: var(--spacing-large) 0;
}

.section-title {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-3xl);
    color: var(--color-gentologie-title);
    text-align: center;
    margin-bottom: var(--spacing-large);
    line-height: var(--line-height-tight);
}

.magazines-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-large);
}

.magazines-grid:has(> :only-child) {
    grid-template-columns: repeat(3, 1fr);
}

.magazine-card {
    background: var(--color-gentologie-background);
    overflow: hidden;
    position: relative;
    padding: 1rem;
    border: 2px solid var(--color-gentologie-border);
}


.magazine-cover-page {
    position: relative;
    overflow: hidden;
}

.magazine-cover-page img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}

.magazine-info {
    padding: var(--spacing-medium);    
    background: var(--color-gentologie-background);
}

.magazines-grid .magazine-info h3,
.gentologie-magazines-page .magazine-info h3 {
    font-family: var(--font-family-primary);
    font-size: var(--font-size-xl);
    color: var(--color-gentologie-title);
    margin-bottom: var(--spacing-small);
    line-height: var(--line-height-tight);
}

.magazine-date {
    color: var(--color-gentologie-text-secondary);
    font-size: var(--font-size-sm);
    margin-bottom: var(--spacing-small);
    font-weight: var(--font-weight-medium);
}

.magazine-description {
   color: var(--color-gentologie-text-secondary);
   font-size: var(--font-size-base);
   margin-bottom: var(--spacing-medium);
   line-height: var(--line-height-normal);
   display: -webkit-box;
   -webkit-line-clamp: 3;
   -webkit-box-orient: vertical;
   overflow: hidden;
   max-height: calc(var(--font-size-base) * var(--line-height-normal) * 3);
   line-clamp: 3;
   text-overflow: ellipsis;
   word-wrap: break-word;
   hyphens: auto;
}

.magazine-actions {
    display: flex;
    gap: var(--spacing-sm);
    flex-wrap: wrap;
}

/* ========================================
   BADGES DE STOCK
   ======================================== */

.stock-badge {
    position: absolute;
    top: var(--spacing-small);
    right: var(--spacing-small);
    padding: var(--spacing-xs) var(--spacing-sm);
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
    z-index: 10;
    letter-spacing: 0.5px;
}

.stock-badge.in-stock {
    background: var(--color-success);
    color: white;
    border-radius: 0px !important;
}

.stock-badge.low-stock {
    background: var(--color-warning);
    color: var(--color-gentologie-text);
}

.stock-badge.out-of-stock {
    background: var(--color-error);
    color: white;
}

/* ========================================
   ÉTATS VIDES ET ERREURS
   ======================================== */

.empty-state {
    text-align: center;
    padding: var(--spacing-xxl);
    color: var(--color-gentologie-text-secondary);
}

.empty-state h3 {
    font-size: var(--font-size-xl);
    margin-bottom: var(--spacing-medium);
    color: var(--color-gentologie-title);
    font-family: var(--font-family-primary);
}

.empty-state p {
    margin-bottom: var(--spacing-medium);
    line-height: var(--line-height-relaxed);
}

.empty-state details {
    max-width: 600px;
    margin: 0 auto;
    text-align: left;
}

.empty-state summary {
    cursor: pointer;
    color: var(--color-gentologie-text-secondary);
    font-size: var(--font-size-sm);
}

.empty-state pre {
    background: var(--color-gentologie-background-box);
    padding: var(--spacing-small);
    margin-top: var(--spacing-small);
    font-size: var(--font-size-xs);
    overflow-x: auto;
    white-space: pre-wrap;
}
/* ========================================
   ICÔNES
   ======================================== */

.icon {
    width: 16px;
    height: 16px;
    fill: currentColor;
    flex-shrink: 0;
}

/* ========================================
   NOTIFICATIONS
   ======================================== */

.gentologie-notifications {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: var(--z-top);
    pointer-events: none;
}

.gentologie-notification {
    background: var(--color-info);
    color: white;
    padding: var(--spacing-medium);
    margin-bottom: var(--spacing-small);
    box-shadow: var(--shadow-large);
    pointer-events: auto;
    cursor: pointer;
    transform: translateX(100%);
    transition: transform var(--transition-normal);
    max-width: 300px;
    word-wrap: break-word;
}

.notification-success {
    background: var(--color-success);
}

.notification-error {
    background: var(--color-error);
}

.notification-warning {
    background: var(--color-warning);
    color: var(--color-gentologie-text);
}

/* ========================================
   STYLES ADMIN
   ======================================== */

.admin-preview-notice {
    background: var(--color-info);
    color: white;
    padding: var(--spacing-medium);
    text-align: center;
    margin-bottom: var(--spacing-large);
}

.admin-preview-notice button {
    background: white;
    color: var(--color-info);
    border: none;
    padding: var(--spacing-xs) var(--spacing-small);
    cursor: pointer;
    font-weight: var(--font-weight-medium);
    transition: var(--transition-fast);
}

.admin-preview-notice button:hover {
    background: var(--color-gentologie-background-box);
}

.admin-preview-notice code {
    background: rgba(255,255,255,0.2);
    padding: 2px 6px;
    font-family: monospace;
}

/* ========================================
   RESPONSIVE DESIGN
   ======================================== */

@media (max-width: 1024px) {
    .featured-content {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .magazines-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: var(--spacing-medium);
    }

    .info-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (max-width: 768px) {
    .container {
        padding: 0 var(--spacing-small);
    }

    .page-title {
        font-size: var(--font-size-4xl);
    }

    .featured-info h2 {
        font-size: var(--font-size-3xl);
    }

    .featured-content {
        padding: var(--spacing-medium);
        gap: var(--spacing-medium);
    }

    .action-buttons,
    .magazine-actions {
        justify-content: center;
    }

    .btn {
        flex: 1;
        min-width: 120px;
        justify-content: center;
    }

    .magazines-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-medium);
    }

    .info-grid {
        grid-template-columns: 1fr;
    }

    .info-card {
        padding: var(--spacing-medium);
    }

    .gentologie-notifications {
        right: var(--spacing-small);
        left: var(--spacing-small);
    }

    .gentologie-notification {
        max-width: none;
    }
}

@media (max-width: 480px) {
    .page-title {
        font-size: var(--font-size-3xl);
    }

    .featured-info h2 {
        font-size: var(--font-size-2xl);
    }

    .featured-meta {
        justify-content: center;
    }

    .btn {
        min-width: 100px;
        font-size: var(--font-size-xs);
        padding: var(--spacing-sm);
    }

    .magazine-cover img {
        height: 300px;
    }
}

/* ========================================
   ANIMATIONS ET TRANSITIONS
   ======================================== */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}


/* ========================================
   PRINT STYLES
   ======================================== */

@media print {
    .loading,
    .action-buttons,
    .magazine-actions,
    .admin-preview-notice,
    .gentologie-notifications {
        display: none !important;
    }

    .magazine-card,
    .featured-magazine,
    .info-card {
        box-shadow: none !important;
        border: 1px solid #ccc;
    }

    .magazine-cover img {
        height: auto !important;
    }
}