/*
 * DIRECTION C — « Écrin noir, atelier clair »
 * Alignement du portail B2B sur l'identité auryabrands.com
 * Maquettes validées le 05/07/2026 (artifact claude.ai, direction C).
 *
 * Principe : le noir là où la marque parle (home publique, sidebar,
 * modal de connexion), l'ivoire là où le revendeur travaille
 * (catalogue, panier, commandes, tableaux).
 *
 * Cette feuille est une COUCHE DE PEAU chargée en dernier
 * (priorité PHP_INT_MAX). Les !important répondent aux ~200 fichiers
 * de fixes legacy qui en sont truffés ; à terme la dette doit être
 * fusionnée et les !important retirés.
 */

/* ============ 1. POLICES (auto-hébergées, reprises d'auryabrands) ============ */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('../fonts/cormorant-garamond-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('../fonts/cormorant-garamond-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200 600;
  font-display: swap;
  src: url('../fonts/montserrat-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200 600;
  font-display: swap;
  src: url('../fonts/montserrat-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ============ 2. TOKENS ============ */
:root {
  /* écrin (chrome noir) */
  --ax-black: #0a0a0a;
  --ax-black-soft: #1a1a1a;
  --ax-black-warm: #252320;
  /* or */
  --ax-gold: #b8a066;
  --ax-gold-light: #d4bc7c;
  --ax-gold-dark: #9a8655;
  --ax-gold-deep: #7e6c42;      /* or lisible sur fond clair */
  /* atelier (surface claire) */
  --ax-ivory: #f7f5f0;
  --ax-card: #fffefc;
  --ax-ink: #1a1a1a;
  --ax-sub: #6b6b6b;
  --ax-line: rgba(26, 26, 26, .13);
  --ax-line-gold: rgba(184, 160, 102, .28);
  /* sémantique */
  --ax-ok: #5d7d5f;
  --ax-off: #a05a44;
  /* typo */
  --ax-serif: 'Cormorant Garamond', Georgia, serif;
  --ax-sans: 'Montserrat', -apple-system, sans-serif;

  /* écrase les tokens legacy (crème/vert) encore lus par d'anciens composants */
  --bg: var(--ax-ivory);
  --text: var(--ax-ink);
  --muted: var(--ax-sub);
  --brand: var(--ax-black);
  --brand-2: var(--ax-gold);
  --accent: var(--ax-gold-dark);
  --radius: 0;
  --shadow: none;
}

/* ============ 3. BASE ============ */
body {
  font-family: var(--ax-sans) !important;
  font-weight: 300;
  color: var(--ax-ink);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4 {
  font-family: var(--ax-serif) !important;
  font-weight: 400;
  letter-spacing: .02em;
}

/* ============ 4. HOME PUBLIQUE (front-page.php) — l'écrin ============ */
body.home,
body.page-template-front-page {
  background: var(--ax-black) !important;
  color: #faf9f7;
}

/*
 * Nav identique à auryabrands.com (portage 1:1 de son style.css, classes
 * préfixées ab- pour ne pas collisionner avec la cascade legacy WP).
 * Le portail = une page d'auryabrands : liens absolus vers auryabrands.com,
 * seul le bouton « Revendeur » agit localement (ouvre la modal de connexion).
 * Autonome : structure + peau (le markup ab-nav n'existe pas dans le legacy).
 */
.ab-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  padding: 1.5rem 0;
  transition: all .3s ease;
  background: transparent;
}
.ab-nav.scrolled {
  background: rgba(10, 10, 10, .95);
  backdrop-filter: blur(10px);
  padding: 1rem 0;
  border-bottom: 1px solid rgba(184, 160, 102, .15);
}
.ab-nav-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.ab-logo {
  font-family: var(--ax-serif) !important;
  font-size: 1.4rem;
  letter-spacing: .3em;
  font-weight: 400;
  color: var(--ax-gold-light) !important;
  text-decoration: none !important;
}
.ab-nav-links {
  display: flex;
  gap: 2.5rem;
  list-style: none;
  align-items: center;
  margin: 0;
  padding: 0;
}
.ab-nav-links > li > a {
  font-family: var(--ax-sans) !important;
  font-size: .8rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  font-weight: 400;
  position: relative;
  white-space: nowrap;
  color: #faf9f7 !important;
  text-decoration: none !important;
  transition: color .3s ease;
}
.ab-nav-links > li > a:hover,
.ab-nav-links > li > a.active { color: var(--ax-gold-light) !important; }
.ab-nav-links > li > a::after {
  content: '';
  position: absolute;
  bottom: -6px; left: 0;
  width: 0; height: 1px;
  background: var(--ax-gold);
  transition: width .3s;
}
.ab-nav-links > li > a:hover::after,
.ab-nav-links > li > a.active::after { width: 100%; }
/* !important : des styles legacy de button (fond coloré) fuient dessus */
.ab-hamburger {
  display: none;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  cursor: pointer;
  color: var(--ax-gold-light) !important;
  font-size: 1.5rem !important;
}
.ab-lang-switch {
  display: flex;
  align-items: center;
  gap: .6rem;
  margin-left: 1rem;
  padding-left: 1.5rem;
  border-left: 1px solid rgba(184, 160, 102, .25);
}
.ab-lang-switch a {
  font-size: .75rem !important;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--ax-sub) !important;
  text-decoration: none !important;
  transition: color .3s;
  cursor: pointer;
}
.ab-lang-switch a:hover { color: var(--ax-gold-light) !important; }
.ab-lang-switch a.active { color: var(--ax-gold-light) !important; cursor: default; }
.ab-lang-switch .sep { color: rgba(184, 160, 102, .3); font-size: .7rem; }
.ab-nav-cta { margin-left: .5rem }
.ab-nav-links > li.ab-nav-cta > a {
  display: inline-block;
  white-space: nowrap;
  padding: .55rem 1.2rem;
  border: 1px solid var(--ax-gold);
  color: var(--ax-gold-light) !important;
  font-size: .72rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  transition: all .3s ease;
}
.ab-nav-links > li.ab-nav-cta > a:hover {
  background: var(--ax-gold);
  color: var(--ax-black) !important;
}
.ab-nav-links > li.ab-nav-cta > a::after { content: none }
@media (max-width: 900px) {
  .ab-nav-links {
    display: none;
    position: fixed;
    top: 0; right: 0;
    width: 70%;
    height: 100vh;
    background: var(--ax-black);
    flex-direction: column;
    padding: 6rem 2rem;
    gap: 2rem;
    border-left: 1px solid rgba(184, 160, 102, .2);
    align-items: flex-start;
  }
  .ab-nav-links.open { display: flex }
  .ab-hamburger { display: block; z-index: 101 }
  .ab-lang-switch {
    margin: 1rem 0 0;
    padding: 1rem 0 0;
    border-left: none;
    border-top: 1px solid rgba(184, 160, 102, .2);
    width: 100%;
    justify-content: flex-start;
  }
  .ab-nav-cta { margin: .5rem 0 0 }
}

/* hero (padding-top : la nav ab-nav est fixed, comme sur auryabrands).
   height auto : le legacy force height:70vh, trop court sur mobile quand
   les boutons s'empilent (le contenu débordait sur la section suivante). */
body.home .hero-section {
  background: radial-gradient(ellipse at center, #181510 0%, var(--ax-black) 70%) !important;
  color: #faf9f7 !important;
  margin-bottom: 0 !important;
  height: auto !important;
  min-height: 70vh !important;
  padding: 130px 20px 70px !important;
  position: relative;
}
body.home .hero-section::before {
  content: '';
  position: absolute;
  top: 11vh;
  left: 50%;
  transform: translateX(-50%);
  width: 160px;
  height: 1px;
  background: var(--ax-gold);
}
body.home .hero-content h2 {
  font-family: var(--ax-serif) !important;
  font-weight: 300 !important;
  font-size: clamp(2.4rem, 5vw, 3.6rem) !important;
  letter-spacing: .08em !important;
  line-height: 1.2;
}
body.home .hero-content p {
  color: #b0aa99 !important;
  font-size: .95rem !important;
  line-height: 1.8 !important;
}
body.home .hero-content .hero-kicker {
  font-family: var(--ax-sans) !important;
  font-size: .66rem !important;
  letter-spacing: .34em !important;
  text-transform: uppercase;
  color: var(--ax-gold) !important;
  margin-bottom: 26px;
}

/* boutons (hero + génériques home) */
body.home .btn,
body.home .hero-buttons .btn {
  display: inline-block;
  padding: 1.05rem 2.4rem !important;
  border: 1px solid var(--ax-gold) !important;
  border-radius: 0 !important;
  background: var(--ax-gold) !important;
  color: var(--ax-black) !important;
  font-family: var(--ax-sans) !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transition: all .4s ease;
}
body.home .btn.btn-secondary {
  background: transparent !important;
  color: var(--ax-gold-light) !important;
}
body.home .btn:hover {
  background: var(--ax-gold-light) !important;
  border-color: var(--ax-gold-light) !important;
  color: var(--ax-black) !important;
  transform: none !important;
}
body.home .btn.btn-secondary:hover {
  background: var(--ax-gold) !important;
}
/* le gros CTA « Accéder à la plateforme » (styles inline verts dans le PHP) */
body.home .cta-button {
  background: transparent !important;
  border: 1px solid var(--ax-gold) !important;
  border-radius: 0 !important;
  color: var(--ax-gold-light) !important;
  font-family: var(--ax-sans) !important;
  font-size: .75rem !important;
  font-weight: 500 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}
body.home .cta-button:hover {
  background: var(--ax-gold) !important;
  color: var(--ax-black) !important;
  transform: none !important;
}

/* comment commander */
body.home .process-section {
  background: var(--ax-black) !important;
  border-top: 1px solid var(--ax-line-gold);
  padding: 5.5rem 2rem !important;
}
body.home .process-section > h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 300 !important;
  font-size: 2.1rem !important;
  letter-spacing: .05em;
  color: #faf9f7 !important;
}
body.home .process-section > p {
  color: var(--ax-gold) !important;
  font-size: .72rem !important;
  letter-spacing: .34em !important;
  text-transform: uppercase !important;
}
body.home .process-card {
  background: transparent !important;
  border: 1px solid var(--ax-line-gold) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 2.4rem 1.8rem !important;
  transition: border-color .4s ease;
}
body.home .process-card:hover {
  border-color: var(--ax-gold) !important;
  transform: none !important;
}
body.home .process-icon {
  width: 54px !important;
  height: 54px !important;
  margin: 0 auto 1.2rem !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: var(--ax-gold-light) !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.home .process-card h4 {
  font-family: var(--ax-serif) !important;
  font-size: 1.15rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase;
  color: var(--ax-gold-light) !important;
}
body.home .process-card p {
  color: #9a947f !important;
  font-size: .84rem !important;
}

/* maisons partenaires : typographie serif + filets, plus de cartes blanches */
body.home .partners-section {
  background: var(--ax-black-soft) !important;
  border-top: 1px solid var(--ax-line-gold);
  padding: 5.5rem 2rem 6rem !important;
}
body.home .partners-section > h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 300 !important;
  font-size: 2.1rem !important;
  color: #faf9f7 !important;
  margin-bottom: 10px;
}
body.home .partners-section > p {
  color: var(--ax-gold) !important;
  font-size: .68rem !important;
  letter-spacing: .34em !important;
  text-transform: uppercase !important;
  margin-bottom: 48px;
}
body.home .brands-row {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  row-gap: 2.4rem;
  max-width: 1280px;
  margin: 0 auto;
}
body.home .brands-row > div {
  padding: 0 34px;
  border-left: 1px solid var(--ax-line-gold);
}
body.home .brands-row > div:first-child {
  border-left: none;
}
body.home .brands-row .brand-name {
  display: block;
  font-family: var(--ax-serif);
  font-size: 1.3rem;
  letter-spacing: .14em;
  line-height: 1.25;
  color: #faf9f7;
}

/* CTA final « Devenez revendeur » (équiv. cta-section auryabrands) */
body.home .reseller-cta {
  background: var(--ax-black);
  border-top: 1px solid var(--ax-line-gold);
  text-align: center;
  padding: 6rem 2rem 6.5rem;
}
body.home .reseller-cta h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 300 !important;
  font-size: 2.1rem !important;
  letter-spacing: .05em;
  color: #faf9f7 !important;
  margin-bottom: 14px;
}
body.home .reseller-cta p {
  color: #9a947f !important;
  font-size: .9rem !important;
  max-width: 520px;
  margin: 0 auto 36px;
}

/* footer identique à auryabrands (portage 1:1, classes ab-) */
.ab-footer {
  background: var(--ax-black) !important;
  padding: 4rem 2rem 2rem;
  border-top: 1px solid rgba(184, 160, 102, .15);
}
.ab-footer-inner { max-width: 1280px; margin: 0 auto; text-align: center }
.ab-footer .ab-logo { display: block; margin-bottom: 2rem }
.ab-footer-nav {
  display: flex;
  justify-content: center;
  gap: 2.5rem;
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  flex-wrap: wrap;
}
.ab-footer-nav a {
  font-family: var(--ax-sans) !important;
  font-size: .75rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  white-space: nowrap;
  color: #faf9f7 !important;
  text-decoration: none !important;
  transition: color .3s;
}
.ab-footer-nav a:hover { color: var(--ax-gold-light) !important }
.ab-footer-social { display: flex; justify-content: center; gap: 1.5rem; margin-bottom: 2rem }
.ab-footer-social a {
  width: 36px; height: 36px;
  border: 1px solid rgba(184, 160, 102, .4);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .8rem;
  color: var(--ax-gold-light) !important;
  text-decoration: none !important;
  transition: all .3s;
}
.ab-footer-social a:hover {
  background: var(--ax-gold);
  color: var(--ax-black) !important;
  border-color: var(--ax-gold);
}
.ab-gold-line {
  width: 100%; height: 1px;
  background: linear-gradient(90deg, transparent, var(--ax-gold), transparent);
  border: none;
  margin: 0;
}
.ab-footer-bottom {
  padding-top: 2rem;
  font-family: var(--ax-sans);
  font-size: .7rem;
  color: var(--ax-sub);
  letter-spacing: .15em;
}
.ab-footer-bottom p { margin: .3rem 0; opacity: .8; color: var(--ax-sub) !important }
.ab-footer-legal { margin-top: 1.5rem; display: flex; justify-content: center; gap: 1.5rem; flex-wrap: wrap }
.ab-footer-legal a {
  font-size: .7rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--ax-sub) !important;
  text-decoration: none !important;
  transition: color .3s;
}
.ab-footer-legal a:hover { color: var(--ax-gold-light) !important }

/* footer WP legacy si présent */
body.home .site-footer {
  background: var(--ax-black) !important;
  border-top: 1px solid var(--ax-line-gold);
  color: var(--ax-sub) !important;
}

/* ============ 5. MODAL CONNEXION / INSCRIPTION — le sas noir et or ============ */
.modal-overlay {
  background: rgba(6, 5, 3, .78) !important;
}
.modal-content {
  background: #0f0e0b !important;
  border: 1px solid rgba(184, 160, 102, .4) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #faf9f7 !important;
}
.modal-header {
  background: transparent !important;
  border-radius: 0 !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
  color: #faf9f7 !important;
  text-align: center;
}
.modal-header h3, .modal-header #modalTitle {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase;
  color: var(--ax-gold-light) !important;
}
.modal-header .close-modal {
  color: var(--ax-gold) !important;
  background: transparent !important;
}
.modal-body label {
  font-family: var(--ax-sans) !important;
  font-size: .64rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--ax-gold) !important;
  font-weight: 500 !important;
}
.modal-body input, .modal-body select, .modal-body textarea {
  background: var(--ax-black) !important;
  border: 1px solid rgba(184, 160, 102, .35) !important;
  border-radius: 0 !important;
  color: #faf9f7 !important;
  font-family: var(--ax-sans) !important;
}
.modal-body input:focus, .modal-body select:focus, .modal-body textarea:focus {
  outline: none !important;
  border-color: var(--ax-gold) !important;
  box-shadow: none !important;
}
.modal-btn {
  background: var(--ax-gold) !important;
  border: 1px solid var(--ax-gold) !important;
  border-radius: 0 !important;
  color: var(--ax-black) !important;
  font-family: var(--ax-sans) !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}
.modal-btn:hover {
  background: var(--ax-gold-light) !important;
  border-color: var(--ax-gold-light) !important;
}

/*
 * modal.css (legacy) force du vert avec des sélecteurs #b2bModal ... !important
 * (« Force les styles même si d'autres CSS interfèrent »). On répond à
 * spécificité égale : cette feuille charge en dernier, donc elle gagne.
 */
#b2bModal .modal-content {
  background: #0f0e0b !important;
  border: 1px solid rgba(184, 160, 102, .4) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
#b2bModal .modal-header {
  background: transparent !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
  justify-content: center;
}
#b2bModal .modal-header * { color: var(--ax-gold-light) !important; }
#b2bModal .modal-header .logo { display: none !important; } /* goutte + 'Aurya' : la typographie suffit */
#b2bModal .modal-header h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  font-size: 1.15rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase;
}
#b2bModal .close-modal {
  background: transparent !important;
  border: 1px solid rgba(184, 160, 102, .4) !important;
}
#b2bModal .close-modal:hover {
  background: rgba(184, 160, 102, .15) !important;
  border-color: var(--ax-gold) !important;
}
#b2bModal .modal-body { background: transparent !important; }
#b2bModal .modal-body label {
  color: var(--ax-gold) !important;
  font-family: var(--ax-sans) !important;
  font-size: .64rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
#b2bModal .modal-body input {
  background: var(--ax-black) !important;
  border: 1px solid rgba(184, 160, 102, .35) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #faf9f7 !important;
  font-family: var(--ax-sans) !important;
}
#b2bModal .modal-body input:focus {
  outline: none !important;
  border-color: var(--ax-gold) !important;
}
#b2bModal .modal-btn {
  background: var(--ax-gold) !important;
  border: 1px solid var(--ax-gold) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--ax-black) !important;
  font-family: var(--ax-sans) !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
}
#b2bModal .modal-btn:hover {
  background: var(--ax-gold-light) !important;
  border-color: var(--ax-gold-light) !important;
}
#b2bModal .switch-mode {
  color: #8b8570 !important;
  border-top: 1px solid var(--ax-line-gold) !important;
  font-size: .74rem;
}
#b2bModal .switch-mode a {
  color: var(--ax-gold-light) !important;
  border-bottom: 1px solid rgba(184, 160, 102, .5) !important;
}
#b2bModal .error-message {
  background: rgba(160, 90, 68, .12) !important;
  border: 1px solid rgba(160, 90, 68, .5) !important;
  border-radius: 0 !important;
  color: #d89e8c !important;
}
#b2bModal .success-message {
  background: rgba(93, 125, 95, .12) !important;
  border: 1px solid rgba(93, 125, 95, .5) !important;
  border-radius: 0 !important;
  color: #a9c3aa !important;
}

/* ============ 6. DASHBOARD — sidebar : l'écrin ============ */
body.page-template-page-dashboard {
  background: var(--ax-ivory) !important;
}
.b2b-dashboard .dashboard-sidebar {
  background: var(--ax-black) !important;
  border-right: 1px solid var(--ax-line-gold);
  color: #faf9f7 !important;
}
.b2b-dashboard .dashboard-sidebar * {
  color: inherit;
}
.b2b-dashboard .sidebar-header {
  border-bottom: 1px solid var(--ax-line-gold);
  padding: 28px 24px !important;
}
.b2b-dashboard .sidebar-header .logo-icon {
  display: none !important; /* la typographie remplace le picto goutte */
}
.b2b-dashboard .sidebar-header .logo-text {
  font-family: var(--ax-serif) !important;
  font-size: 1.4rem !important;
  letter-spacing: .3em !important;
  text-transform: uppercase;
  color: var(--ax-gold-light) !important;
}
.b2b-dashboard .sidebar-header .logo::after {
  content: 'Portail B2B';
  display: block;
  font-family: var(--ax-sans);
  font-size: .56rem;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: #89836f;
  margin-top: 6px;
}
.b2b-dashboard .sidebar-nav .nav-item {
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  font-weight: 400 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: #89836f !important;
  border-left: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: .78rem 24px !important;
  transition: color .3s ease;
}
.b2b-dashboard .sidebar-nav .nav-item:hover {
  color: #faf9f7 !important;
  background: transparent !important;
}
.b2b-dashboard .sidebar-nav .nav-item.active {
  color: var(--ax-gold-light) !important;
  border-left-color: var(--ax-gold) !important;
  background: linear-gradient(90deg, rgba(184, 160, 102, .1), transparent) !important;
}
.b2b-dashboard .sidebar-nav .nav-item .nav-icon {
  display: none !important; /* typographie, pas pictos (cf. nav auryabrands) */
}
.b2b-dashboard .sidebar-nav .cart-count {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark);
  border-radius: 50% !important;
  color: var(--ax-gold-light) !important;
  font-size: .6rem !important;
  min-width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .user-section {
  border-top: 1px solid var(--ax-line-gold);
}
.b2b-dashboard .user-info strong {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  letter-spacing: .06em;
  color: #faf9f7 !important;
}
.b2b-dashboard .user-info span {
  color: #89836f !important;
  font-size: .66rem !important;
}
.b2b-dashboard .logout-btn {
  color: #89836f !important;
  font-size: .6rem !important;
  letter-spacing: .24em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: none !important;
}
.b2b-dashboard .logout-btn:hover { color: var(--ax-gold-light) !important; }

/* ============ 7. DASHBOARD — surface de travail : l'atelier ============ */
.b2b-dashboard .dashboard-main {
  background: var(--ax-ivory) !important;
}
.b2b-dashboard .dashboard-header {
  background: var(--ax-ivory) !important;
  border-bottom: 1px solid var(--ax-line) !important;
  box-shadow: none !important;
}
.b2b-dashboard .dashboard-header h1 {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  font-size: 1.7rem !important;
  letter-spacing: .05em;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .search-bar {
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  background: var(--ax-card) !important;
  box-shadow: none !important;
}
.b2b-dashboard .search-bar input {
  background: transparent !important;
  border: none !important;
  font-family: var(--ax-sans) !important;
  font-size: .78rem !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .search-bar button,
.b2b-dashboard .cart-icon-btn,
.b2b-dashboard .mobile-search-btn {
  background: transparent !important;
  color: var(--ax-gold-deep) !important;
  border: none !important;
}
.b2b-dashboard .header-cart .cart-count,
.b2b-dashboard .cart-icon-btn .cart-count {
  background: var(--ax-gold) !important;
  color: var(--ax-black) !important;
  border: none !important;
  border-radius: 50% !important;
  font-variant-numeric: tabular-nums;
}

/* titres de sections */
.b2b-dashboard .section-header h2 {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  font-size: 1.9rem !important;
  letter-spacing: .04em;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .section-header p {
  color: var(--ax-gold-deep) !important;
  font-size: .68rem !important;
  letter-spacing: .3em !important;
  text-transform: uppercase !important;
}

/* onglets (commandes / devis / factures) */
.b2b-dashboard .dashboard-tabs { border-bottom: 1px solid var(--ax-line); }
.b2b-dashboard .tab-btn {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .7rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--ax-sub) !important;
  box-shadow: none !important;
}
.b2b-dashboard .tab-btn.active {
  color: var(--ax-gold-deep) !important;
  border-bottom-color: var(--ax-gold) !important;
}

/* tableaux */
.b2b-dashboard .table-wrapper table {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border-collapse: collapse;
}
.b2b-dashboard .table-wrapper th {
  background: var(--ax-card) !important;
  font-family: var(--ax-sans) !important;
  font-size: .62rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-gold-deep) !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
}
.b2b-dashboard .table-wrapper td {
  font-size: .84rem !important;
  color: var(--ax-ink) !important;
  border-bottom: 1px solid var(--ax-line) !important;
  font-variant-numeric: tabular-nums;
}

/* filtres catalogue */
.b2b-dashboard .filters-bar {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.b2b-dashboard .filters-bar .filter-label {
  font-size: .62rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--ax-sub) !important;
}
.b2b-dashboard .filters-bar select {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .74rem !important;
  letter-spacing: .06em;
  color: var(--ax-ink) !important;
  box-shadow: none !important;
}
.b2b-dashboard .filters-bar select:focus {
  outline: none !important;
  border-color: var(--ax-gold-dark) !important;
}

/* cartes produits */
.b2b-dashboard .product-card {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden;
  transition: border-color .3s ease;
}
.b2b-dashboard .product-card:hover {
  border-color: var(--ax-gold-dark) !important;
  transform: none !important;
  box-shadow: none !important;
}
.b2b-dashboard .product-image {
  border-radius: 0 !important;
  border-bottom: 1px solid var(--ax-line);
  background-color: #efeadd; /* fond des vignettes sans photo */
}
.b2b-dashboard .product-brand {
  font-size: .58rem !important;
  letter-spacing: .3em !important;
  text-transform: uppercase !important;
  color: var(--ax-gold-deep) !important;
  font-weight: 500 !important;
}
.b2b-dashboard .product-info h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  font-size: 1.25rem !important;
  letter-spacing: .03em;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .product-price {
  font-family: var(--ax-serif) !important;
  font-size: 1.4rem !important;
  color: var(--ax-gold-deep) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .product-price .price-ht {
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  letter-spacing: .12em;
  color: var(--ax-sub) !important;
}
.b2b-dashboard .quantity-selector {
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}
.b2b-dashboard .qty-btn {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: var(--ax-sub) !important;
  font-family: var(--ax-sans) !important;
}
.b2b-dashboard .qty-btn:hover { color: var(--ax-gold-deep) !important; }
.b2b-dashboard .qty-input {
  border: none !important;
  background: transparent !important;
  font-family: var(--ax-sans) !important;
  color: var(--ax-ink) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .add-to-cart {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 0 !important;
  color: var(--ax-gold-deep) !important;
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  font-weight: 500 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
  transition: all .3s ease;
}
.b2b-dashboard .add-to-cart:hover {
  background: var(--ax-gold) !important;
  border-color: var(--ax-gold) !important;
  color: var(--ax-black) !important;
}

/* charger plus */
.b2b-dashboard .load-more-btn {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 0 !important;
  color: var(--ax-gold-deep) !important;
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}
.b2b-dashboard .load-more-btn:hover {
  background: var(--ax-gold) !important;
  color: var(--ax-black) !important;
}

/* marques */
.b2b-dashboard .brand-card {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.b2b-dashboard .brand-card:hover { border-color: var(--ax-gold-dark) !important; }
.b2b-dashboard .brand-info h3 {
  font-family: var(--ax-serif) !important;
  color: var(--ax-ink) !important;
  letter-spacing: .06em;
}
.b2b-dashboard .brand-link {
  color: var(--ax-gold-deep) !important;
  font-size: .64rem !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--ax-line-gold);
}

/*
 * DEVIS DÉSACTIVÉS (demande David 07/07/2026) : toute l'UI de demande de
 * devis est masquée (menu, onglet, blocs, boutons B2BKing, FAB).
 * Masquage CSS et non suppression du markup : des scripts legacy écoutent
 * ces IDs (#b2bking_request_custom_quote_button*), retirer les éléments
 * casserait leur init. Pour couper la fonctionnalité côté serveur :
 * wp-admin → B2BKing → Modules → Request a Quote → off.
 */
.b2b-dashboard .sidebar-nav .nav-item[data-section="demander-devis"],
.b2b-dashboard .tab-btn[data-tab="devis"],
.b2b-dashboard .quote-request-section,
.b2b-dashboard #demander-devis,
.b2bking_request_custom_quote_button,
.fab-new-quote,
[class*="b2bking_request_quote"],
[id*="b2bking_request_quote"],
[class*="b2bking_request_custom_quote"],
[id*="b2bking_request_custom_quote"] {
  display: none !important;
}

/* panier (section dashboard) : mêmes codes que les tableaux, plus d'arc-en-ciel
   (legacy : Supprimer rouge #dc3545, Vider gris #6c757d, hover vert #1f3329) */
.b2b-dashboard .cart-table {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border-collapse: collapse;
}
.b2b-dashboard .cart-table thead,
.b2b-dashboard .cart-table th {
  background: var(--ax-card) !important;
  font-family: var(--ax-sans) !important;
  font-size: .62rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-gold-deep) !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
}
.b2b-dashboard .cart-table td {
  background: var(--ax-card) !important;
  font-size: .84rem !important;
  color: var(--ax-ink) !important;
  border-bottom: 1px solid var(--ax-line) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .cart-table .product-brand {
  font-size: .58rem !important;
  letter-spacing: .3em !important;
  text-transform: uppercase !important;
  color: var(--ax-gold-deep) !important;
}
.b2b-dashboard .cart-total-row td {
  font-family: var(--ax-serif) !important;
  font-size: 1.1rem !important;
  border-top: 1px solid var(--ax-line-gold) !important;
  border-bottom: none !important;
}
.b2b-dashboard .cart-quantity {
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ax-ink) !important;
  font-family: var(--ax-sans) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .cart-quantity:focus {
  outline: none !important;
  border-color: var(--ax-gold-dark) !important;
}
.b2b-dashboard .remove-from-cart {
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--ax-off) !important;
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
.b2b-dashboard .remove-from-cart:hover {
  background: transparent !important;
  border-color: var(--ax-off) !important;
  color: var(--ax-off) !important;
}
.b2b-dashboard .cart-actions button {
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  font-weight: 500 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  transition: all .3s ease;
}
.b2b-dashboard .cart-actions .primary-btn {
  background: var(--ax-gold) !important;
  border: 1px solid var(--ax-gold) !important;
  color: var(--ax-black) !important;
}
.b2b-dashboard .cart-actions .primary-btn:hover {
  background: var(--ax-gold-light) !important;
  border-color: var(--ax-gold-light) !important;
  color: var(--ax-black) !important;
}
.b2b-dashboard .cart-actions .secondary-btn {
  background: transparent !important;
  border: 1px solid var(--ax-line) !important;
  color: var(--ax-sub) !important;
}
.b2b-dashboard .cart-actions .secondary-btn:hover {
  border-color: var(--ax-sub) !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .empty-cart-title {
  font-family: var(--ax-serif) !important;
  font-size: 1.4rem !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .empty-cart-text { color: var(--ax-sub) !important; }
.b2b-dashboard .empty-cart-action {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 0 !important;
  color: var(--ax-gold-deep) !important;
  font-size: .68rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
}
.b2b-dashboard .empty-cart-action:hover {
  background: var(--ax-gold) !important;
  color: var(--ax-black) !important;
}

/* paniers sauvegardés (module b2b-saved-carts-interface : CSS inline violet/
   vert/rouge sans !important, donc ces surcharges gagnent) */
.b2b-dashboard .cart-actions {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.b2b-dashboard .saved-carts-section {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.b2b-dashboard .saved-carts-title {
  font-family: var(--ax-serif) !important;
  font-weight: 400 !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .saved-carts-count {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 50% !important;
  color: var(--ax-gold-deep) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .refresh-btn,
.b2b-dashboard .save-cart-btn {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--ax-gold-deep) !important;
  font-family: var(--ax-sans) !important;
  font-size: .62rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  transition: all .3s ease;
}
.b2b-dashboard .refresh-btn:hover,
.b2b-dashboard .save-cart-btn:hover {
  background: var(--ax-gold) !important;
  border-color: var(--ax-gold) !important;
  color: var(--ax-black) !important;
}
.b2b-dashboard .saved-carts-table {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border-collapse: collapse;
}
.b2b-dashboard .saved-carts-table thead,
.b2b-dashboard .saved-carts-table th {
  background: var(--ax-card) !important;
  font-family: var(--ax-sans) !important;
  font-size: .62rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-gold-deep) !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
}
.b2b-dashboard .saved-carts-table td {
  background: transparent !important;
  font-size: .84rem !important;
  color: var(--ax-ink) !important;
  border-bottom: 1px solid var(--ax-line) !important;
  font-variant-numeric: tabular-nums;
}
.b2b-dashboard .cart-items-count {
  background: transparent !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  color: var(--ax-sub) !important;
  font-size: .66rem !important;
}
.b2b-dashboard .saved-carts-table .cart-total {
  font-family: var(--ax-serif) !important;
  color: var(--ax-gold-deep) !important;
}
.b2b-dashboard .cart-action-btn {
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  font-weight: 500 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  transition: all .3s ease;
}
.b2b-dashboard .cart-action-btn.btn-load-cart {
  background: transparent !important;
  border: 1px solid var(--ax-gold-dark) !important;
  color: var(--ax-gold-deep) !important;
}
.b2b-dashboard .cart-action-btn.btn-load-cart:hover {
  background: var(--ax-gold) !important;
  border-color: var(--ax-gold) !important;
  color: var(--ax-black) !important;
}
.b2b-dashboard .cart-action-btn.btn-view-cart {
  background: transparent !important;
  border: 1px solid var(--ax-line) !important;
  color: var(--ax-sub) !important;
}
.b2b-dashboard .cart-action-btn.btn-view-cart:hover {
  border-color: var(--ax-sub) !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .cart-action-btn.btn-delete-cart {
  background: transparent !important;
  border: 1px solid transparent !important;
  color: var(--ax-off) !important;
}
.b2b-dashboard .cart-action-btn.btn-delete-cart:hover {
  border-color: var(--ax-off) !important;
}
.b2b-dashboard .no-saved-carts-text { color: var(--ax-sub) !important; }

/* notifications / états sémantiques (hors accent or) */
.b2b-dashboard .status-ok, .b2b-dashboard .status-completed { color: var(--ax-ok) !important; }
.b2b-dashboard .status-pending { color: var(--ax-gold-deep) !important; }
.b2b-dashboard .status-cancelled, .b2b-dashboard .status-failed { color: var(--ax-off) !important; }

/* ============ 8. DÉTAIL MARQUE DANS LE DASHBOARD (page-dashboard.php) ============ */
/* Fusion « maison + produits » dans l'atelier ivoire. Les URLs /marque/<slug>/
   redirigent vers ces sections (portail 100 % privé, le public = auryabrands). */

.brand-detail-back {
  display: inline-block;
  margin-bottom: 1.5rem;
  color: var(--ax-gold-deep) !important;
  font-size: .82rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none !important;
}
.brand-detail-back:hover { color: var(--ax-ink) !important; }

.brand-detail-header {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  padding-bottom: 1.8rem;
  border-bottom: 1px solid var(--ax-line-gold);
  margin-bottom: 1.8rem;
}
.brand-detail-logo {
  max-height: 64px;
  max-width: 180px;
  object-fit: contain;
  background: var(--ax-card);
  border: 1px solid var(--ax-line);
  padding: .5rem .8rem;
}
.brand-detail-header h2 { font-size: 2.2rem; margin: 0 0 .2rem; }
.brand-detail-tagline {
  font-family: var(--ax-serif);
  font-style: italic;
  font-size: 1.15rem;
  color: var(--ax-gold-deep);
  margin: 0 0 .4rem;
}
.brand-detail-facts {
  font-size: .75rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ax-sub);
}
.brand-detail-facts .sep { color: var(--ax-gold); }
.brand-detail-facts a { color: var(--ax-gold-deep) !important; }

.brand-detail-story {
  max-width: 720px;
  font-family: var(--ax-serif);
  font-size: 1.12rem;
  line-height: 1.7;
  color: var(--ax-ink);
  margin-bottom: 1.8rem;
}

.brand-detail-resources {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-bottom: 2.2rem;
}
.brand-detail-resource {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .7rem 1.3rem;
  border: 1px solid var(--ax-gold);
  background: var(--ax-card);
  color: var(--ax-gold-deep) !important;
  font-size: .78rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: background .3s, color .3s, border-color .3s;
}
.brand-detail-resource:hover {
  background: var(--ax-black);
  border-color: var(--ax-black);
  color: var(--ax-gold-light) !important;
}

.brand-detail h3 { font-size: 1.4rem; margin: 2.2rem 0 1.2rem; }

.brand-detail-videos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.2rem;
  max-width: 900px;
  margin-bottom: .5rem;
}
.brand-detail-video {
  position: relative;
  aspect-ratio: 16 / 9;
  background: var(--ax-black-soft);
  border: 1px solid var(--ax-line);
}
.brand-detail-video iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.brand-detail-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: .8rem;
}
.brand-detail-gallery figure {
  margin: 0;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border: 1px solid var(--ax-line);
  background: var(--ax-card);
}
.brand-detail-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
.brand-detail-gallery figure:hover img { transform: scale(1.04); }

/* cartes de la section Marques : lien vers le détail */
.b2b-dashboard .brand-card .brand-page-link {
  display: block;
  margin-bottom: .5rem;
  color: var(--ax-gold-deep) !important;
  font-size: .82rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none !important;
}
.b2b-dashboard .brand-card .brand-page-link:hover { color: var(--ax-ink) !important; }

/* ============ 9. CONVERSATIONS — messagerie directe (09/07/2026) ============
   Le composer est toujours visible et le seul bouton envoie (demande David).
   Le FAB devis et le bouton « Nouvelle demande » ont été supprimés du markup ;
   fab-fix.css est désenqueué. Ici : peau noir/or/ivoire sur la base dashboard.css. */

.b2b-dashboard .conversations-list {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.b2b-dashboard .conversations-sidebar {
  background: var(--ax-ivory) !important;
  border-right: 1px solid var(--ax-line) !important;
}
.b2b-dashboard .conversations-header {
  background: var(--ax-ivory) !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
}
.b2b-dashboard .conversations-header h3 {
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-gold-deep) !important;
}

/* bouton « Nouveau message » : discret, il ne fait que vider la sélection */
.b2b-dashboard .conv-new-btn {
  display: inline-flex !important;
  align-items: center;
  gap: .4rem;
  background: transparent !important;
  border: 1px solid var(--ax-line-gold) !important;
  border-radius: 0 !important;
  padding: .35rem .7rem !important;
  font-family: var(--ax-sans) !important;
  font-size: .62rem !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  color: var(--ax-gold-deep) !important;
  cursor: pointer;
  transition: border-color .25s ease, color .25s ease;
}
.b2b-dashboard .conv-new-btn:hover {
  border-color: var(--ax-gold) !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .conv-new-btn [data-feather] { width: 13px; height: 13px; }

/* items de la liste */
.b2b-dashboard .conversation-item {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
}
.b2b-dashboard .conversation-item:hover { background: var(--ax-card) !important; }
.b2b-dashboard .conversation-item.active {
  background: var(--ax-card) !important;
  border-left: 2px solid var(--ax-gold) !important;
}
.b2b-dashboard .conv-title { color: var(--ax-ink) !important; font-weight: 500 !important; }
.b2b-dashboard .conv-date, .b2b-dashboard .conv-preview { color: var(--ax-sub) !important; }
.b2b-dashboard .conv-status {
  border-radius: 0 !important;
  font-size: .6rem !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

/* fil de messages */
.b2b-dashboard .conversation-messages { background: var(--ax-card) !important; }
.b2b-dashboard .no-conversation { color: var(--ax-sub) !important; }
.b2b-dashboard .no-conversation [data-feather] { color: var(--ax-gold) !important; opacity: .7 !important; }
.b2b-dashboard .message-item.admin .message-bubble {
  background: var(--ax-ivory) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .message-item.user .message-bubble {
  background: var(--ax-black-warm) !important;
  border: 1px solid var(--ax-black-warm) !important;
  border-radius: 0 !important;
  color: var(--ax-ivory) !important;
}
.b2b-dashboard .message-item.user .message-time { color: rgba(247, 245, 240, .65) !important; }
.b2b-dashboard .message-author { color: var(--ax-gold-deep) !important; }

/* composer : toujours visible, textarea ivoire + bouton or */
.b2b-dashboard .conversation-reply {
  display: flex !important;
  background: var(--ax-ivory) !important;
  border-top: 1px solid var(--ax-line-gold) !important;
}
.b2b-dashboard .conversation-reply textarea,
.b2b-dashboard #reply-message {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .85rem !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .conversation-reply textarea:focus,
.b2b-dashboard #reply-message:focus {
  border-color: var(--ax-gold) !important;
  outline: none !important;
  box-shadow: none !important;
}
.b2b-dashboard .conversation-reply .btn-send {
  background: var(--ax-black) !important;
  color: var(--ax-gold-light) !important;
  border: 1px solid var(--ax-black) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  transform: none !important;
}
.b2b-dashboard .conversation-reply .btn-send:hover {
  background: var(--ax-black-soft) !important;
  color: var(--ax-gold-light) !important;
}
.b2b-dashboard .conversation-reply .btn-send:disabled { opacity: .5; cursor: default; }

/* ============ 10. MON COMPTE — peau Direction C (09/07/2026) ============
   Remplace l'ancien code couleur (vert legacy var(--brand), gradients violets
   « premium luxe » d'addresses.css, badges/boutons arc-en-ciel, emojis CSS).
   Couvre : onglets, formulaires, adresses (cartes + modal). */

/* onglets */
.b2b-dashboard .account-tabs {
  border-bottom: 1px solid var(--ax-line-gold) !important;
  gap: 0 !important;
}
.b2b-dashboard .account-tabs .tab-btn,
.b2b-dashboard .tab-btn {
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-sub) !important;
  border-bottom: 2px solid transparent !important;
  background: transparent !important;
}
.b2b-dashboard .account-tabs .tab-btn.active,
.b2b-dashboard .account-tabs .tab-btn:hover,
.b2b-dashboard .tab-btn.active,
.b2b-dashboard .tab-btn:hover {
  color: var(--ax-gold-deep) !important;
  border-bottom-color: var(--ax-gold) !important;
}

/* conteneur + titres */
.b2b-dashboard .account-content {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.b2b-dashboard .account-form-container h3 {
  font-family: var(--ax-serif) !important;
  font-size: 1.45rem !important;
  font-weight: 500 !important;
  color: var(--ax-ink) !important;
  border-bottom: 1px solid var(--ax-line-gold) !important;
}

/* formulaires (compte + modal adresse) */
.b2b-dashboard .form-group label,
.address-modal .form-group label,
.address-modal label {
  font-family: var(--ax-sans) !important;
  font-size: .72rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .form-group input,
.b2b-dashboard .form-group select,
.address-modal .form-group input,
.address-modal .form-group select,
.address-modal input,
.address-modal select {
  background: var(--ax-card) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  color: var(--ax-ink) !important;
  font-family: var(--ax-sans) !important;
  font-size: .88rem !important;
}
.b2b-dashboard .form-group input:focus,
.b2b-dashboard .form-group select:focus,
.address-modal .form-group input:focus,
.address-modal .form-group select:focus,
.address-modal input:focus,
.address-modal select:focus {
  border-color: var(--ax-gold) !important;
  box-shadow: none !important;
  outline: none !important;
}
.b2b-dashboard .form-group input[readonly] { background: var(--ax-ivory) !important; color: var(--ax-sub) !important; }
.b2b-dashboard .form-group small, .address-modal .form-help { color: var(--ax-sub) !important; }

/* bouton enregistrer (compte + modal) */
.b2b-dashboard .btn-save,
.address-modal .btn-save {
  background: var(--ax-black) !important;
  color: var(--ax-gold-light) !important;
  border: 1px solid var(--ax-black) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  transform: none !important;
  box-shadow: none !important;
}
.b2b-dashboard .btn-save:hover,
.address-modal .btn-save:hover {
  background: var(--ax-black-soft) !important;
  transform: none !important;
}

/* adresses : en-tête */
.b2b-dashboard .addresses-header { border-bottom: 1px solid var(--ax-line-gold) !important; }
.b2b-dashboard .addresses-header::after { background: var(--ax-gold) !important; }
.b2b-dashboard .addresses-header h3 {
  font-family: var(--ax-serif) !important;
  font-size: 1.45rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: var(--ax-ink) !important;
  color: var(--ax-ink) !important;
}
.b2b-dashboard .btn-add-billing-address,
.b2b-dashboard .btn-add-address {
  background: var(--ax-black) !important;
  color: var(--ax-gold-light) !important;
  border: 1px solid var(--ax-black) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .66rem !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  box-shadow: none !important;
  transform: none !important;
  backdrop-filter: none !important;
}
.b2b-dashboard .btn-add-billing-address:hover,
.b2b-dashboard .btn-add-address:hover {
  background: var(--ax-black-soft) !important;
  transform: none !important;
  box-shadow: none !important;
}
.b2b-dashboard .btn-add-billing-address::before,
.b2b-dashboard .btn-add-address::before { content: none !important; }
.b2b-dashboard .btn-add-billing-address:hover svg,
.b2b-dashboard .btn-add-address:hover svg { transform: none !important; }

/* adresses : cartes */
.b2b-dashboard .address-card {
  background: var(--ax-ivory) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}
.b2b-dashboard .address-card:hover {
  border-color: var(--ax-gold) !important;
  box-shadow: none !important;
  transform: none !important;
}
.b2b-dashboard .address-card.default { background: var(--ax-card) !important; border-color: var(--ax-line-gold) !important; }
.b2b-dashboard .address-header { border-bottom: 1px solid var(--ax-line) !important; }
.b2b-dashboard .address-header h4 {
  font-family: var(--ax-serif) !important;
  font-size: 1.15rem !important;
  font-weight: 500 !important;
  color: var(--ax-ink) !important;
  letter-spacing: 0 !important;
}
.b2b-dashboard .address-header h4::before { content: none !important; }
.b2b-dashboard .shipping-addresses .address-header h4::before { content: none !important; }
.b2b-dashboard .address-content p { color: var(--ax-sub) !important; font-family: var(--ax-sans) !important; }
.b2b-dashboard .address-content p:first-child { color: var(--ax-ink) !important; }

/* badge « par défaut » : liseré or sobre */
.b2b-dashboard .default-badge,
.b2b-dashboard .address-title.default::after {
  background: transparent !important;
  color: var(--ax-gold-deep) !important;
  border: 1px solid var(--ax-line-gold) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  letter-spacing: .14em !important;
  font-weight: 500 !important;
}
.b2b-dashboard .default-badge::before { content: none !important; }

/* boutons d'action des cartes : fantômes neutres, rouge sourd pour supprimer */
.b2b-dashboard .address-actions button {
  background: transparent !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
  color: var(--ax-ink) !important;
  box-shadow: none !important;
  transform: none !important;
  backdrop-filter: none !important;
  font-family: var(--ax-sans) !important;
}
.b2b-dashboard .address-actions button:hover {
  background: var(--ax-card) !important;
  border-color: var(--ax-gold) !important;
  color: var(--ax-gold-deep) !important;
}
.b2b-dashboard .btn-delete-address,
.b2b-dashboard .btn-delete-billing-address { color: var(--ax-off) !important; }
.b2b-dashboard .btn-delete-address:hover,
.b2b-dashboard .btn-delete-billing-address:hover {
  border-color: var(--ax-off) !important;
  color: var(--ax-off) !important;
}
.b2b-dashboard .address-actions button:hover svg { transform: none !important; }
#shipping-addresses-list::before, #billing-addresses-list::before { content: none !important; }

/* checkbox « par défaut » : accent or au lieu du violet */
.checkbox-wrapper, .address-modal .checkbox-wrapper {
  background: var(--ax-ivory) !important;
  border: 1px solid var(--ax-line) !important;
  border-radius: 0 !important;
}
.checkbox-wrapper:hover, .address-modal .checkbox-wrapper:hover { background: var(--ax-card) !important; border-color: var(--ax-line-gold) !important; }
.checkbox-wrapper input[type="checkbox"] { border: 1px solid var(--ax-line) !important; border-radius: 0 !important; }
.checkbox-wrapper input[type="checkbox"]:hover,
.checkbox-wrapper input[type="checkbox"]:focus { border-color: var(--ax-gold) !important; box-shadow: none !important; }
.checkbox-wrapper input[type="checkbox"]:checked {
  background: var(--ax-black) !important;
  border-color: var(--ax-black) !important;
  box-shadow: none !important;
}
.checkbox-wrapper.checked { background: var(--ax-card) !important; border-color: var(--ax-line-gold) !important; }
.checkbox-wrapper.checked span, .checkbox-wrapper span { color: var(--ax-ink) !important; font-family: var(--ax-sans) !important; }

/* modal adresse */
.address-modal { border-radius: 0 !important; }
.address-modal-header {
  background: var(--ax-black) !important;
  border-bottom: 1px solid var(--ax-gold-dark) !important;
  border-radius: 0 !important;
}
.address-modal-header h3 {
  font-family: var(--ax-serif) !important;
  font-weight: 500 !important;
  color: var(--ax-ivory) !important;
}
.close-address-modal { color: var(--ax-gold-light) !important; background: transparent !important; }
.address-modal-body { background: var(--ax-card) !important; }

/* surcharges au niveau #mon-compte : feather-icons-mon-compte.css et
   mon-compte-header-fix.css imposent badge vert + icones bleu/jaune/rouge
   avec des selecteurs a ID ; on rejoue les memes selecteurs, charges apres. */
#mon-compte .default-badge,
#mon-compte .address-card .default-badge {
  background: transparent !important;
  color: var(--ax-gold-deep) !important;
  border: 1px solid var(--ax-line-gold) !important;
  border-radius: 0 !important;
  font-family: var(--ax-sans) !important;
  font-size: .6rem !important;
  letter-spacing: .14em !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}
#mon-compte .default-badge:before { content: none !important; }
#mon-compte .address-header h4 {
  font-family: var(--ax-serif) !important;
  font-weight: 500 !important;
  color: var(--ax-ink) !important;
}
#mon-compte .btn-edit-address,
#mon-compte .btn-edit-billing-address,
#mon-compte .btn-set-default,
#mon-compte .btn-set-default-billing {
  border-color: var(--ax-line) !important;
  color: var(--ax-ink) !important;
  background: transparent !important;
  border-radius: 0 !important;
}
#mon-compte .btn-edit-address:hover,
#mon-compte .btn-edit-billing-address:hover,
#mon-compte .btn-set-default:hover,
#mon-compte .btn-set-default-billing:hover {
  border-color: var(--ax-gold) !important;
  color: var(--ax-gold-deep) !important;
  background: var(--ax-card) !important;
}
#mon-compte .btn-delete-address,
#mon-compte .btn-delete-billing-address {
  border-color: var(--ax-line) !important;
  color: var(--ax-off) !important;
  background: transparent !important;
  border-radius: 0 !important;
}
#mon-compte .btn-delete-address:hover,
#mon-compte .btn-delete-billing-address:hover {
  border-color: var(--ax-off) !important;
  color: var(--ax-off) !important;
  background: var(--ax-card) !important;
}

/* fiche marque = contenu + téléchargements only (09/07/2026) : CTA de renvoi
   vers le catalogue (brand-link → handleBrandClick, filtre marque prérempli) */
.brand-detail-order {
  margin-top: 2.4rem;
  padding-top: 1.6rem;
  border-top: 1px solid var(--ax-line-gold);
}
.b2b-dashboard .brand-detail-order-cta {
  display: inline-block;
  background: var(--ax-black) !important;
  color: var(--ax-gold-light) !important;
  border: 1px solid var(--ax-black) !important;
  border-radius: 0 !important;
  padding: .85rem 1.8rem !important;
  font-family: var(--ax-sans) !important;
  font-size: .68rem !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  cursor: pointer;
  transition: background .3s ease;
}
.b2b-dashboard .brand-detail-order-cta:hover {
  background: var(--ax-black-soft) !important;
  color: var(--ax-gold-light) !important;
}
