/* Direction Bataille validée — couche commune, sans modification fonctionnelle.
   Les composants commerciaux gardent leurs sélecteurs et états WooCommerce. */
:root {
 --bg:#090c0e; --bg-elevated:#111619; --surface:#151a1d; --surface-2:#1b2226;
 --text:#e9e7df; --text-muted:#b7bdba; --text-dim:#a5ada9;
 --ink:#101619; --brass:#d0ad6c; --brass-light:#e3c48d; --wine:#cf9993;
 --violet:#b79a67; --violet-deep:#293238; --neon-blue:var(--brass); --magenta:#d2b480;
 --border:#78684c; --border-soft:#343e43; --success:#a3c5aa;
 --wh-red:#d0ad6c; --club-red:#d0ad6c; --radius-s:1px; --radius-m:2px;
 color-scheme:dark;
}
body { background:var(--bg); color:var(--text); }
::selection { background:#b39865; color:#080b0d; }
:focus-visible { outline:2px solid #e3c48d; outline-offset:4px; }
.site-header { background:#080b0d; border-bottom:1px solid #514535; }
.site-header .logo { font-size:28px; letter-spacing:.06em; gap:7px; }
.site-header .logo-mark { display:none; }
.logo-custom img { max-height:64px; max-width:240px; }
.rr-header-action { border-color:#495254; color:#d5d7d0; }
.rr-shopbar { background:#101518; border-bottom:1px solid #292e30; }
.rr-header-search input { background:#080c0e; border-color:#414d51; }
.rr-header-search button { background:#b6965f; color:#101619; }
.main-nav a[href*="catalogue"], .main-nav a[href*="boutique"] { color:var(--brass-light); }
.btn { border-radius:1px; letter-spacing:.06em; }
.btn-primary,.rr-club-btn-primary,.wh-btn-primary { background:#d0ad6c; color:#101619; border-color:#d0ad6c; box-shadow:none; }
.btn-primary:hover,.rr-club-btn-primary:hover,.wh-btn-primary:hover { background:#e3c48d; color:#101619; }
.btn-secondary { color:#e6e3d9; border-color:#69716d; }
.btn-secondary:hover { background:#ffffff0a; border-color:#d0ad6c; }
.site-footer { background:#070a0c; --bg-elevated:#070a0c; }

/* Les titres évoquent un arsenal ; la lecture et les formulaires restent sobres. */
.rr-catalog-header,.rr-club-hero,.wh-hero,.page-hero,.article-hero--no-image {
 background:radial-gradient(ellipse at 80% 35%,#24384455,transparent 60%),repeating-linear-gradient(115deg,transparent 0 190px,#9c8b6c0d 191px,transparent 192px 380px),#0b1014;
 border-bottom:1px solid #534734;
}
.rr-catalog-header { padding:36px 24px 28px; margin-bottom:24px; }
.rr-catalog-header .section-title,.rr-club-hero h1,.wh-hero h1 { font-family:var(--font-display); text-transform:uppercase; letter-spacing:.015em; }
.rr-filters-sidebar { background:#11181c; border-color:#39434a; }
.rr-filter-group__title { color:#c0a577; letter-spacing:.09em; }
.rr-filter-checkbox input { accent-color:#c9ab75; }
.rr-active-filters { border-color:var(--border-soft); }
.rr-product-card { background:#151c20; border:1px solid #343d42; border-radius:1px; }
.rr-product-card:hover { border-color:#b79a67; box-shadow:none; transform:translateY(-2px); }
.rr-product-card__media { background:#10171b; border-bottom:1px solid #343d42; }
.rr-product-card__media img { object-fit:contain; }
.rr-product-card__universe,.rr-product-card__faction { color:#c2a776; }
.rr-product-card__price-current,.rr-product-card__price-member { color:#e6cf9f; font-variant-numeric:tabular-nums; }
.rr-product-card__stock { color:#a3c5aa; }
.rr-product-card__cta { color:#d2c8b3; border-top-color:#343d42; }
.rr-badge { border-radius:1px; }

/* Fiches : photos intactes, prix et actions fortement hiérarchisés. */
.woocommerce div.product .product_title { font-family:var(--font-display); line-height:1.1; }
.woocommerce div.product p.price,.woocommerce div.product span.price { color:#e6cf9f; }
.woocommerce div.product .woocommerce-product-gallery { background:#11171b; border:1px solid #343d42; }
.woocommerce div.product .woocommerce-product-gallery img { object-fit:contain; }
.woocommerce div.product .woocommerce-product-gallery__image img { max-height:620px; width:100%; object-fit:contain; }
.woocommerce div.product .stock.in-stock { color:#a3c5aa; }
.woocommerce div.product .stock.out-of-stock { color:#d6aba2; }
.rr-member-offer { background:#201e18; border-color:#706044; }
.rr-member-offer > strong { color:#e3c48d; }
.rr-product-reassurance,.rr-product-tabs__panel,.rr-stock-alert__content { background:#12191d; border-color:#3d484f; }
.rr-product-tabs__trigger.is-active { color:#e3c48d; border-color:#b79a67; }
.rr-product-wishlist__button { color:#d8c39b; border-color:#78684c; }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.rr-mobile-buybar button,.wc-block-components-button:not(.is-link) {
 background:#d0ad6c; color:#101619; border:1px solid #d0ad6c; border-radius:1px; box-shadow:none; font-weight:700;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce div.product form.cart button.single_add_to_cart_button:hover { background:#e3c48d; color:#101619; box-shadow:none; }
.woocommerce button:disabled,.woocommerce button.disabled { opacity:.55; cursor:not-allowed; }
.woocommerce select,.woocommerce input.input-text,.woocommerce textarea,.rr-stock-alert input[type="email"],
.rr-club-private-panel input,.rr-club-private-panel textarea,.wh-order-form input,.wh-order-form textarea {
 background:#0d1316; color:#e9e7df; border:1px solid #64706f; border-radius:1px;
}
input::placeholder,textarea::placeholder { color:#a5ada9; opacity:1; }
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color:#ddaaa2; }
.woocommerce-error { border-top-color:#c8867d; }
.woocommerce-message { border-top-color:#96b79a; }
.woocommerce-info { border-top-color:#c3a873; }
.woocommerce #payment,.woocommerce-checkout #payment { background:#151c20; }
.woocommerce-checkout #payment div.payment_box { background:#222c31; color:#e9e7df; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color:#222c31; }
.woocommerce table.shop_table { background:#12191d; }
.woocommerce table.shop_table td,.woocommerce table.shop_table th { border-color:#343d42; }
.wc-block-cart,.wc-block-checkout { --wp--preset--color--contrast:#e9e7df; --wp--preset--color--base:#151a1d; color:#e9e7df; }
.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__input,
.wc-block-components-textarea,.wc-block-components-form .wc-block-components-text-input input {
 background:#0d1316; color:#e9e7df; border-color:#64706f;
}
.wc-block-components-text-input label,.wc-block-components-form .wc-block-components-text-input label { color:#b7bdba; }
.wc-block-components-totals-wrapper,.wc-block-components-order-summary { border-color:#343d42; }

/* Club, Warhammer et journal : même matière, contenus conservés. */
.rr-club-card,.rr-club-form-card,.rr-club-private-panel,.rr-club-stat-grid > div,.wh-card,.wh-feature-card,.wh-order-card { background:#141b1f; border-color:#3b454a; box-shadow:none; }
.rr-club-wish { background:#10171b; }
.rr-club-wish .button-link { color:#d7a49c; }
.rr-club-stat-grid strong { color:#e1c58e; }
.article-card { background:#141b1f; border-color:#3b454a; box-shadow:none; }
.article-thumb { background:#1d272d; }
.article-content { color:#d7dbd6; }
.article-content h2,.article-content h3,.article-content h4 { color:#eee8db; }
.article-content blockquote { background:#151c20; color:#d6c8ac; border-left-color:#ad905e; }
.article-content table,.article-content pre { background:#11181c; }
.article-content th { background:#222a2d; color:#e9e7df; }
.article-content td,.article-content th { border-color:#485253; }
.article-content a { color:#e0c18c; text-underline-offset:3px; }
.article-toc { background:#12191d; border-color:#3b454a; }
.article-hero--no-image { min-height:280px; }
.article-hero__cat { background:#b79a67; color:#101619; border-radius:1px; }
@media(max-width:700px) {
 .woocommerce div.product .woocommerce-product-gallery__image img { max-height:360px; }
 .site-header .logo { font-size:22px; }
 .logo-custom img { max-width:150px; max-height:56px; }
 .rr-catalog-header { padding:26px 16px; }
 .rr-product-card__body { padding:14px; }
 .rr-product-card__title { overflow-wrap:anywhere; }
}
@media(prefers-reduced-motion:reduce) { .rr-product-card { transition:none; } }
