/* RLD — identité visuelle réservée à l'espace apporteur d'affaires.
   Elle ne s'applique qu'aux pages qui portent .partner-space. */
body.partner-space,
body:has(#company-form) {
  --partner-navy: #071735;
  --partner-navy-soft: #102953;
  --partner-gold: #bd8a27;
  --partner-gold-deep: #896016;
  --partner-gold-soft: #fbf4e3;
  --partner-gold-line: #dec589;
  --partner-ink: #13284e;
  --partner-muted: #66758b;
  --partner-line: #e3d3ac;
}

/* En-têtes et navigation : bleu nuit continu, repères et actions or. */
body.partner-space > header,
body.partner-space .company-header,
body.partner-space .topbar,
body.partner-space .contact-top,
body.partner-space .history-header {
  background: var(--partner-navy) !important;
  border-color: rgba(222, 197, 137, .28) !important;
  color: #fff;
}

body.partner-space > header .brand,
body.partner-space .company-header .brand,
body.partner-space .topbar .brand,
body.partner-space .contact-top .brand,
body.partner-space .history-header .history-brand {
  color: #fff !important;
}

body.partner-space > header > a:last-child,
body.partner-space .topbar > a:last-child,
body.partner-space .history-header > a:last-child,
body.partner-space .contact-top .back {
  color: #f2d894 !important;
}

body.partner-space .company-nav,
body.partner-space .space-nav {
  background: var(--partner-navy);
  border: 1px solid rgba(222, 197, 137, .28);
  border-radius: 14px;
  padding: 8px;
}

body.partner-space .company-nav a,
body.partner-space .space-nav a {
  background: transparent !important;
  border-color: transparent !important;
  color: #f9edcf !important;
}

body.partner-space .company-nav a:hover,
body.partner-space .company-nav a.active,
body.partner-space .company-nav .contact,
body.partner-space .space-nav a:hover,
body.partner-space .space-nav a.active {
  background: var(--partner-gold-deep) !important;
  border-color: var(--partner-gold-deep) !important;
  color: #fff !important;
}

body.partner-space .header-actions a,
body.partner-space .header-actions .secondary {
  border-color: var(--partner-gold-line) !important;
  color: #fff !important;
}

body.partner-space .header-actions a:not(.secondary) {
  background: var(--partner-gold-deep) !important;
}

body.partner-space .header-actions .secondary {
  background: transparent !important;
}

/* Centre d'aide et assistance. */
body.partner-space .eyebrow,
body:has(#company-form) .eyebrow,
body.partner-space h1 i,
body:has(#company-form) h1 i,
body.partner-space h2 i,
body.partner-space .help-card b,
body.partner-space .answer a,
body.partner-space .support-channel a {
  color: var(--partner-gold-deep) !important;
}

body.partner-space .question-row button,
body.partner-space .primary-action,
body.partner-space .send {
  background: linear-gradient(110deg, var(--partner-gold-deep), var(--partner-gold)) !important;
}

body.partner-space .guide-card,
body.partner-space .help-topic,
body.partner-space .help-introduction article,
body.partner-space .help-card,
body.partner-space .info-card,
body.partner-space .form-card {
  border-color: var(--partner-line) !important;
}

body.partner-space .help-jump a,
body.partner-space .suggestions button {
  border-color: var(--partner-gold-line) !important;
  color: var(--partner-gold-deep) !important;
}

body.partner-space .help-introduction aside,
body.partner-space .rld-charter {
  background: linear-gradient(135deg, var(--partner-navy), var(--partner-navy-soft)) !important;
}

/* Aide partenaire : les blocs de décision restent lisibles à la première lecture. */
body.partner-space .help-introduction { gap: 20px; }

body.partner-space .help-introduction aside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
  padding: 28px;
  border-color: var(--partner-gold-line) !important;
}

body.partner-space .help-introduction aside b { color: #fff !important; }
body.partner-space .help-introduction aside p { color: #f7eed7 !important; }

body.partner-space .help-introduction aside a {
  align-self: flex-start;
  padding: 10px 13px;
  background: var(--partner-gold) !important;
  color: var(--partner-navy) !important;
  text-decoration: none;
}

body.partner-space .rld-charter { border-color: var(--partner-gold-line) !important; }
body.partner-space .charter-grid article { background: rgba(0, 0, 0, .18) !important; border-color: rgba(242, 216, 148, .42) !important; }
body.partner-space .charter-grid b { color: #fff !important; }
body.partner-space .charter-grid p { color: #f7eed7 !important; }

body.partner-space .help-card { border-top: 3px solid var(--partner-gold) !important; }
body.partner-space .help-card p { color: #53647b !important; }
body.partner-space .help-card b { color: var(--partner-gold-deep) !important; }

body.partner-space .note {
  background: #fffaf0 !important;
  border-left-color: var(--partner-gold) !important;
  color: #5e4717 !important;
}

body.partner-space .help-topic-toggle > span {
  background: var(--partner-gold-soft) !important;
  color: var(--partner-gold-deep) !important;
}

body.partner-space .help-topic-toggle > i,
body.partner-space .rld-charter h2 i,
body.partner-space .rld-charter .eyebrow {
  color: #f2d894 !important;
}

body.partner-space .notice {
  background: #fffaf0 !important;
  border-color: var(--partner-gold-line) !important;
  color: #715116 !important;
}

/* Formulaire de demande partenaire. */
body.partner-space .vehicles .active,
body:has(#company-form) .vehicles .active,
body.partner-space .reservation-choice .active,
body.partner-space .payment-responsibility-options button.active {
  border-color: var(--partner-gold-deep) !important;
  box-shadow: inset 3px 0 var(--partner-gold-deep) !important;
  background: #fffaf0 !important;
}

body.partner-space .payment-responsibility-options button:hover,
body:has(#company-form) .payment-responsibility-options button:hover,
body.partner-space .rld-transfer-pricing,
body:has(#company-form) .rld-transfer-pricing,
body.partner-space .payment-responsibility-note.link-mode {
  border-color: var(--partner-gold-deep) !important;
  color: var(--partner-gold-deep) !important;
}

body.partner-space .total strong,
body:has(#company-form) .total strong,
body.partner-space .total button {
  color: var(--partner-gold-deep) !important;
}

body.partner-space .total button,
body:has(#company-form) .total button {
  background: linear-gradient(115deg, var(--partner-gold-deep), var(--partner-gold)) !important;
  color: #fff !important;
}

body.partner-space input:focus,
body:has(#company-form) input:focus,
body.partner-space select:focus,
body:has(#company-form) select:focus,
body.partner-space textarea:focus {
  outline-color: var(--partner-gold) !important;
  border-color: var(--partner-gold) !important;
}

/* Le sélecteur de langue en bas à droite fait partie de l'espace partenaire. */
body.partner-space .rld-language-control,
body:has(#company-form) .rld-language-control {
  background: var(--partner-navy) !important;
  border-color: var(--partner-gold-line) !important;
  color: #fff8e8 !important;
}

/* Depuis l'espace partenaire, le menu RLD public garde les repères or.
   Le fond reste bleu nuit pour préserver la lisibilité. */
body.partner-space .site-header .outline-button,
body.partner-space .site-header .menu-button {
  border-color: var(--partner-gold-line) !important;
  color: #fff8e8 !important;
}

body.partner-space .site-header .menu-button i {
  background: #f2d894 !important;
}

body.partner-space .site-menu {
  background: linear-gradient(160deg, var(--partner-navy), var(--partner-navy-soft)) !important;
  border-right: 1px solid rgba(222, 197, 137, .42);
}

body.partner-space .site-menu .menu-top,
body.partner-space .site-menu .access-links p,
body.partner-space .site-menu .access-links em {
  color: #f2d894 !important;
}

body.partner-space .site-menu .menu-links,
body.partner-space .site-menu .access-links a {
  border-color: rgba(242, 216, 148, .32) !important;
}

body.partner-space .site-menu .menu-links a,
body.partner-space .site-menu .access-links a,
body.partner-space .site-menu .access-links b {
  color: #fff8e8 !important;
}

body.partner-space .site-menu .access-links span {
  color: var(--partner-gold) !important;
}

body.partner-space .site-menu .menu-links a:hover,
body.partner-space .site-menu .access-links a:hover {
  color: #f2d894 !important;
}

/* Carte « Espace connecté » : l'apporteur d'affaires conserve l'or jusque
   dans ses raccourcis, au lieu de reprendre le violet générique. */
body.partner-space .menu-session-entreprise {
  border-color: rgba(222, 197, 137, .58) !important;
  background: linear-gradient(135deg, rgba(137, 96, 22, .42), rgba(7, 23, 53, .72)) !important;
}

body.partner-space .menu-session-entreprise > span {
  color: #f2d894 !important;
}

body.partner-space .menu-session-entreprise .menu-session-role,
body.partner-space .menu-session-entreprise .menu-session-links a {
  color: #f9edcf !important;
}

body.partner-space .menu-session-entreprise .menu-session-return {
  background: linear-gradient(135deg, var(--partner-gold-deep), var(--partner-gold)) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(73, 46, 4, .35);
}

body.partner-space .menu-session-entreprise .menu-session-return:hover,
body.partner-space .menu-session-entreprise .menu-session-return:focus-visible {
  background: linear-gradient(135deg, #a9771d, #d5a848) !important;
}

body.partner-space .menu-session-entreprise .menu-session-logout:hover,
body.partner-space .menu-session-entreprise .menu-session-logout:focus-visible {
  border-color: var(--partner-gold-line) !important;
  color: #fff8e8 !important;
}

body.partner-space .rld-language-control select,
body:has(#company-form) .rld-language-control select {
  background: var(--partner-gold-soft) !important;
  color: var(--partner-navy) !important;
}

@media (max-width: 760px) {
  body.partner-space .company-nav,
  body.partner-space .space-nav { border-radius: 12px; }
  body.partner-space .help-introduction aside { padding: 22px 19px; }
}
